import * as z from "zod/v3";
import { Result as SafeParseResult } from "../types/fp.js";
import { SDKValidationError } from "./sdkvalidationerror.js";
export type CreateEdgeConfigRequestBody = {
    slug: string;
    items?: {
        [k: string]: any;
    } | undefined;
};
export type CreateEdgeConfigRequest = {
    /**
     * The Team identifier to perform the request on behalf of.
     */
    teamId?: string | undefined;
    /**
     * The Team slug to perform the request on behalf of.
     */
    slug?: string | undefined;
    requestBody?: CreateEdgeConfigRequestBody | undefined;
};
export type CreateEdgeConfigPurpose2 = {
    type: "experimentation";
    resourceId: string;
};
export type CreateEdgeConfigPurpose1 = {
    type: "flags";
    projectId: string;
};
export type CreateEdgeConfigPurpose = CreateEdgeConfigPurpose1 | CreateEdgeConfigPurpose2;
/**
 * Keeps track of the current state of the Global Config while it gets transferred.
 */
export type CreateEdgeConfigTransfer = {
    fromAccountId: string;
    startedAt: number;
    doneAt: number | null;
};
export type CreateEdgeConfigSchema = {};
/**
 * A Global Config
 */
export type CreateEdgeConfigResponseBody = {
    id: string;
    createdAt: number;
    /**
     * The ID of the user who created the Global Config, optional because it is not always set.
     */
    createdBy?: string | undefined;
    ownerId: string;
    /**
     * Name for the Global Config Names are not unique. Must start with an alphabetic character and can contain only alphanumeric characters and underscores).
     */
    slug: string;
    updatedAt: number;
    digest: string;
    purpose?: CreateEdgeConfigPurpose1 | CreateEdgeConfigPurpose2 | undefined;
    deletedAt?: number | null | undefined;
    /**
     * Keeps track of the current state of the Global Config while it gets transferred.
     */
    transfer?: CreateEdgeConfigTransfer | undefined;
    schema?: CreateEdgeConfigSchema | undefined;
    /**
     * Timestamp of when the Global Config was synced to DynamoDB initially. It is only set when syncing the entire Global Config, not when updating.
     */
    syncedToDynamoAt?: number | undefined;
    sizeInBytes: number;
    itemCount: number;
};
/** @internal */
export type CreateEdgeConfigRequestBody$Outbound = {
    slug: string;
    items?: {
        [k: string]: any;
    } | undefined;
};
/** @internal */
export declare const CreateEdgeConfigRequestBody$outboundSchema: z.ZodType<CreateEdgeConfigRequestBody$Outbound, z.ZodTypeDef, CreateEdgeConfigRequestBody>;
export declare function createEdgeConfigRequestBodyToJSON(createEdgeConfigRequestBody: CreateEdgeConfigRequestBody): string;
/** @internal */
export type CreateEdgeConfigRequest$Outbound = {
    teamId?: string | undefined;
    slug?: string | undefined;
    RequestBody?: CreateEdgeConfigRequestBody$Outbound | undefined;
};
/** @internal */
export declare const CreateEdgeConfigRequest$outboundSchema: z.ZodType<CreateEdgeConfigRequest$Outbound, z.ZodTypeDef, CreateEdgeConfigRequest>;
export declare function createEdgeConfigRequestToJSON(createEdgeConfigRequest: CreateEdgeConfigRequest): string;
/** @internal */
export declare const CreateEdgeConfigPurpose2$inboundSchema: z.ZodType<CreateEdgeConfigPurpose2, z.ZodTypeDef, unknown>;
export declare function createEdgeConfigPurpose2FromJSON(jsonString: string): SafeParseResult<CreateEdgeConfigPurpose2, SDKValidationError>;
/** @internal */
export declare const CreateEdgeConfigPurpose1$inboundSchema: z.ZodType<CreateEdgeConfigPurpose1, z.ZodTypeDef, unknown>;
export declare function createEdgeConfigPurpose1FromJSON(jsonString: string): SafeParseResult<CreateEdgeConfigPurpose1, SDKValidationError>;
/** @internal */
export declare const CreateEdgeConfigPurpose$inboundSchema: z.ZodType<CreateEdgeConfigPurpose, z.ZodTypeDef, unknown>;
export declare function createEdgeConfigPurposeFromJSON(jsonString: string): SafeParseResult<CreateEdgeConfigPurpose, SDKValidationError>;
/** @internal */
export declare const CreateEdgeConfigTransfer$inboundSchema: z.ZodType<CreateEdgeConfigTransfer, z.ZodTypeDef, unknown>;
export declare function createEdgeConfigTransferFromJSON(jsonString: string): SafeParseResult<CreateEdgeConfigTransfer, SDKValidationError>;
/** @internal */
export declare const CreateEdgeConfigSchema$inboundSchema: z.ZodType<CreateEdgeConfigSchema, z.ZodTypeDef, unknown>;
export declare function createEdgeConfigSchemaFromJSON(jsonString: string): SafeParseResult<CreateEdgeConfigSchema, SDKValidationError>;
/** @internal */
export declare const CreateEdgeConfigResponseBody$inboundSchema: z.ZodType<CreateEdgeConfigResponseBody, z.ZodTypeDef, unknown>;
export declare function createEdgeConfigResponseBodyFromJSON(jsonString: string): SafeParseResult<CreateEdgeConfigResponseBody, SDKValidationError>;
//# sourceMappingURL=createedgeconfigop.d.ts.map