import { z } from "zod";
import type { VetraCloudEnvironmentDocument, VetraCloudEnvironmentPHState } from "./types.js";
/** Schema for validating the header object of a VetraCloudEnvironment document */
export declare const VetraCloudEnvironmentDocumentHeaderSchema: z.ZodObject<{
    id: z.ZodString;
    name: z.ZodString;
    createdAtUtcIso: z.ZodString;
    lastModifiedAtUtcIso: z.ZodString;
    documentType: z.ZodLiteral<"powerhouse/vetra-cloud-environment">;
}, z.core.$strip>;
/** Schema for validating the state object of a VetraCloudEnvironment document */
export declare const VetraCloudEnvironmentPHStateSchema: z.ZodObject<{
    global: z.ZodObject<Required<{
        customDomain: z.ZodType<import("./types.js").Maybe<import("./types.js").VetraCustomDomain>, unknown, z.core.$ZodTypeInternals<import("./types.js").Maybe<import("./types.js").VetraCustomDomain>, unknown>>;
        defaultPackageRegistry: z.ZodType<import("./types.js").Maybe<string>, unknown, z.core.$ZodTypeInternals<import("./types.js").Maybe<string>, unknown>>;
        genericBaseDomain: z.ZodType<import("./types.js").Maybe<string>, unknown, z.core.$ZodTypeInternals<import("./types.js").Maybe<string>, unknown>>;
        genericSubdomain: z.ZodType<import("./types.js").Maybe<string>, unknown, z.core.$ZodTypeInternals<import("./types.js").Maybe<string>, unknown>>;
        label: z.ZodType<import("./types.js").Maybe<string>, unknown, z.core.$ZodTypeInternals<import("./types.js").Maybe<string>, unknown>>;
        packages: z.ZodType<import("./types.js").VetraCloudPackage[], unknown, z.core.$ZodTypeInternals<import("./types.js").VetraCloudPackage[], unknown>>;
        services: z.ZodType<import("./types.js").VetraCloudEnvironmentService[], unknown, z.core.$ZodTypeInternals<import("./types.js").VetraCloudEnvironmentService[], unknown>>;
        status: z.ZodType<import("./types.js").VetraCloudEnvironmentStatus, unknown, z.core.$ZodTypeInternals<import("./types.js").VetraCloudEnvironmentStatus, unknown>>;
    }>, z.core.$strip>;
}, z.core.$strip>;
export declare const VetraCloudEnvironmentDocumentSchema: z.ZodObject<{
    header: z.ZodObject<{
        id: z.ZodString;
        name: z.ZodString;
        createdAtUtcIso: z.ZodString;
        lastModifiedAtUtcIso: z.ZodString;
        documentType: z.ZodLiteral<"powerhouse/vetra-cloud-environment">;
    }, z.core.$strip>;
    state: z.ZodObject<{
        global: z.ZodObject<Required<{
            customDomain: z.ZodType<import("./types.js").Maybe<import("./types.js").VetraCustomDomain>, unknown, z.core.$ZodTypeInternals<import("./types.js").Maybe<import("./types.js").VetraCustomDomain>, unknown>>;
            defaultPackageRegistry: z.ZodType<import("./types.js").Maybe<string>, unknown, z.core.$ZodTypeInternals<import("./types.js").Maybe<string>, unknown>>;
            genericBaseDomain: z.ZodType<import("./types.js").Maybe<string>, unknown, z.core.$ZodTypeInternals<import("./types.js").Maybe<string>, unknown>>;
            genericSubdomain: z.ZodType<import("./types.js").Maybe<string>, unknown, z.core.$ZodTypeInternals<import("./types.js").Maybe<string>, unknown>>;
            label: z.ZodType<import("./types.js").Maybe<string>, unknown, z.core.$ZodTypeInternals<import("./types.js").Maybe<string>, unknown>>;
            packages: z.ZodType<import("./types.js").VetraCloudPackage[], unknown, z.core.$ZodTypeInternals<import("./types.js").VetraCloudPackage[], unknown>>;
            services: z.ZodType<import("./types.js").VetraCloudEnvironmentService[], unknown, z.core.$ZodTypeInternals<import("./types.js").VetraCloudEnvironmentService[], unknown>>;
            status: z.ZodType<import("./types.js").VetraCloudEnvironmentStatus, unknown, z.core.$ZodTypeInternals<import("./types.js").VetraCloudEnvironmentStatus, unknown>>;
        }>, z.core.$strip>;
    }, z.core.$strip>;
    initialState: z.ZodObject<{
        global: z.ZodObject<Required<{
            customDomain: z.ZodType<import("./types.js").Maybe<import("./types.js").VetraCustomDomain>, unknown, z.core.$ZodTypeInternals<import("./types.js").Maybe<import("./types.js").VetraCustomDomain>, unknown>>;
            defaultPackageRegistry: z.ZodType<import("./types.js").Maybe<string>, unknown, z.core.$ZodTypeInternals<import("./types.js").Maybe<string>, unknown>>;
            genericBaseDomain: z.ZodType<import("./types.js").Maybe<string>, unknown, z.core.$ZodTypeInternals<import("./types.js").Maybe<string>, unknown>>;
            genericSubdomain: z.ZodType<import("./types.js").Maybe<string>, unknown, z.core.$ZodTypeInternals<import("./types.js").Maybe<string>, unknown>>;
            label: z.ZodType<import("./types.js").Maybe<string>, unknown, z.core.$ZodTypeInternals<import("./types.js").Maybe<string>, unknown>>;
            packages: z.ZodType<import("./types.js").VetraCloudPackage[], unknown, z.core.$ZodTypeInternals<import("./types.js").VetraCloudPackage[], unknown>>;
            services: z.ZodType<import("./types.js").VetraCloudEnvironmentService[], unknown, z.core.$ZodTypeInternals<import("./types.js").VetraCloudEnvironmentService[], unknown>>;
            status: z.ZodType<import("./types.js").VetraCloudEnvironmentStatus, unknown, z.core.$ZodTypeInternals<import("./types.js").VetraCloudEnvironmentStatus, unknown>>;
        }>, z.core.$strip>;
    }, z.core.$strip>;
}, z.core.$strip>;
/** Simple helper function to check if a state object is a VetraCloudEnvironment document state object */
export declare function isVetraCloudEnvironmentState(state: unknown): state is VetraCloudEnvironmentPHState;
/** Simple helper function to assert that a document state object is a VetraCloudEnvironment document state object */
export declare function assertIsVetraCloudEnvironmentState(state: unknown): asserts state is VetraCloudEnvironmentPHState;
/** Simple helper function to check if a document is a VetraCloudEnvironment document */
export declare function isVetraCloudEnvironmentDocument(document: unknown): document is VetraCloudEnvironmentDocument;
/** Simple helper function to assert that a document is a VetraCloudEnvironment document */
export declare function assertIsVetraCloudEnvironmentDocument(document: unknown): asserts document is VetraCloudEnvironmentDocument;
//# sourceMappingURL=document-schema.d.ts.map