import * as z from "zod/v3";
import { ClosedEnum } from "../types/enums.js";
import { Result as SafeParseResult } from "../types/fp.js";
import { SDKValidationError } from "./sdkvalidationerror.js";
import { UpdateMicrofrontendsAbuse, UpdateMicrofrontendsDefaultResourceConfig, UpdateMicrofrontendsDeploymentPolicy, UpdateMicrofrontendsFeatures, UpdateMicrofrontendsGitComments, UpdateMicrofrontendsGitProviderOptions, UpdateMicrofrontendsInternalRoutes2, UpdateMicrofrontendsLastAliasRequest, UpdateMicrofrontendsLastRollbackTarget, UpdateMicrofrontendsOidcTokenConfig, UpdateMicrofrontendsPermissions, UpdateMicrofrontendsProtectionBypass, UpdateMicrofrontendsSecurity, UpdateMicrofrontendsSsoProtection, UpdateMicrofrontendsStaticIps, UpdateMicrofrontendsTargets, UpdateMicrofrontendsTier, UpdateMicrofrontendsTrustedIps, UpdateMicrofrontendsTrustedSources, UpdateMicrofrontendsUsageStatus, UpdateMicrofrontendsWebAnalytics } from "./updatemicrofrontendsinternalroutes2.js";
import { UpdateMicrofrontendsAlias, UpdateMicrofrontendsAnalytics, UpdateMicrofrontendsBlobs, UpdateMicrofrontendsConnectConfigurations, UpdateMicrofrontendsCreator, UpdateMicrofrontendsCrons, UpdateMicrofrontendsCustomEnvironments, UpdateMicrofrontendsDataCache, UpdateMicrofrontendsDeploymentExpiration, UpdateMicrofrontendsEnv, UpdateMicrofrontendsExpiration, UpdateMicrofrontendsFramework, UpdateMicrofrontendsIpBuckets, UpdateMicrofrontendsJobs, UpdateMicrofrontendsLatestDeployments, UpdateMicrofrontendsLink, UpdateMicrofrontendsMicrofrontends, UpdateMicrofrontendsNodeVersion, UpdateMicrofrontendsOptionsAllowlist, UpdateMicrofrontendsPassport, UpdateMicrofrontendsPasswordProtection, UpdateMicrofrontendsProtectionConfig, UpdateMicrofrontendsResourceConfig, UpdateMicrofrontendsRollbackDescription, UpdateMicrofrontendsRollingRelease, UpdateMicrofrontendsSandbox, UpdateMicrofrontendsServices, UpdateMicrofrontendsSpeedInsights } from "./updatemicrofrontendsprojectsfunctiondefaultmemorytype.js";
export type UpdateMicrofrontendsInternalRoutes1 = {
    src: string;
    status: number;
    expiry?: number | undefined;
};
export type UpdateMicrofrontendsInternalRoutes = UpdateMicrofrontendsInternalRoutes1 | UpdateMicrofrontendsInternalRoutes2;
export declare const UpdateMicrofrontendsAction: {
    readonly Accept: "accept";
    readonly Cancel: "cancel";
    readonly Delete: "delete";
};
export type UpdateMicrofrontendsAction = ClosedEnum<typeof UpdateMicrofrontendsAction>;
export type UpdateMicrofrontendsValuePreviousValue = string | number | boolean;
export type UpdateMicrofrontendsValueCurrentValue = string | number | boolean;
export type UpdateMicrofrontendsValue3 = {
    previousValue: string | number | boolean;
    currentValue: string | number | boolean;
};
export type UpdateMicrofrontendsValue = UpdateMicrofrontendsValue3 | string | number | boolean;
export type UpdateMicrofrontendsDismissedToasts = {
    key: string;
    dismissedAt: number;
    action: UpdateMicrofrontendsAction;
    value: UpdateMicrofrontendsValue3 | string | number | boolean | null;
};
export declare const UpdateMicrofrontendsProjectsEnv: {
    readonly Preview: "preview";
    readonly Production: "production";
};
export type UpdateMicrofrontendsProjectsEnv = ClosedEnum<typeof UpdateMicrofrontendsProjectsEnv>;
/**
 * Which tracing destination this rule applies to. `internal` is the hidden Vercel production-tracing drain (internal delivery); `external` is any customer-configured drain. Derived from the owning drain's delivery type when project tracing is computed; absent on configs persisted before this field existed.
 */
export declare const UpdateMicrofrontendsDestination: {
    readonly External: "external";
    readonly Internal: "internal";
};
/**
 * Which tracing destination this rule applies to. `internal` is the hidden Vercel production-tracing drain (internal delivery); `external` is any customer-configured drain. Derived from the owning drain's delivery type when project tracing is computed; absent on configs persisted before this field existed.
 */
export type UpdateMicrofrontendsDestination = ClosedEnum<typeof UpdateMicrofrontendsDestination>;
export type UpdateMicrofrontendsSamplingRules = {
    rate: number;
    env?: UpdateMicrofrontendsProjectsEnv | undefined;
    requestPath?: string | undefined;
    /**
     * Which tracing destination this rule applies to. `internal` is the hidden Vercel production-tracing drain (internal delivery); `external` is any customer-configured drain. Derived from the owning drain's delivery type when project tracing is computed; absent on configs persisted before this field existed.
     */
    destination?: UpdateMicrofrontendsDestination | undefined;
};
export type UpdateMicrofrontendsTracing = {
    domains?: string | undefined;
    ignorePaths?: Array<string> | undefined;
    samplingRules?: Array<UpdateMicrofrontendsSamplingRules> | undefined;
};
export type UpdateMicrofrontendsResponseBody = {
    accountId: string;
    creator?: UpdateMicrofrontendsCreator | undefined;
    alias: Array<UpdateMicrofrontendsAlias>;
    analytics?: UpdateMicrofrontendsAnalytics | undefined;
    appliedCve55182Migration?: boolean | undefined;
    speedInsights?: UpdateMicrofrontendsSpeedInsights | undefined;
    autoExposeSystemEnvs?: boolean | undefined;
    autoAssignCustomDomains?: boolean | undefined;
    autoAssignCustomDomainsUpdatedBy?: string | undefined;
    buildCommand?: string | null | undefined;
    commandForIgnoringBuildStep?: string | null | undefined;
    connectConfigurations?: Array<UpdateMicrofrontendsConnectConfigurations> | null | undefined;
    connectConfigurationId?: string | null | undefined;
    connectBuildsEnabled?: boolean | undefined;
    passiveConnectConfigurationId?: string | null | undefined;
    createdAt?: number | undefined;
    customerSupportCodeVisibility?: boolean | undefined;
    crons?: UpdateMicrofrontendsCrons | undefined;
    dataCache?: UpdateMicrofrontendsDataCache | undefined;
    /**
     * Retention policies for deployments. These are enforced at the project level, but we also maintain an instance of this at the team level as a default policy that gets applied to new projects.
     */
    deploymentExpiration: UpdateMicrofrontendsDeploymentExpiration;
    expiration?: UpdateMicrofrontendsExpiration | undefined;
    devCommand?: string | null | undefined;
    directoryListing: boolean;
    installCommand?: string | null | undefined;
    env?: Array<UpdateMicrofrontendsEnv> | undefined;
    customEnvironments?: Array<UpdateMicrofrontendsCustomEnvironments> | undefined;
    framework?: UpdateMicrofrontendsFramework | null | undefined;
    services?: Array<UpdateMicrofrontendsServices> | undefined;
    gitForkProtection?: boolean | undefined;
    gitLFS?: boolean | undefined;
    id: string;
    ipBuckets?: Array<UpdateMicrofrontendsIpBuckets> | undefined;
    jobs?: UpdateMicrofrontendsJobs | undefined;
    latestDeployments?: Array<UpdateMicrofrontendsLatestDeployments> | undefined;
    link?: UpdateMicrofrontendsLink | undefined;
    blobs?: UpdateMicrofrontendsBlobs | undefined;
    microfrontends?: UpdateMicrofrontendsMicrofrontends | undefined;
    name: string;
    nodeVersion: UpdateMicrofrontendsNodeVersion;
    optionsAllowlist?: UpdateMicrofrontendsOptionsAllowlist | null | undefined;
    outputDirectory?: string | null | undefined;
    passwordProtection?: UpdateMicrofrontendsPasswordProtection | null | undefined;
    passport?: UpdateMicrofrontendsPassport | null | undefined;
    protectionConfig?: UpdateMicrofrontendsProtectionConfig | undefined;
    sandbox?: UpdateMicrofrontendsSandbox | undefined;
    productionDeploymentsFastLane?: boolean | undefined;
    resourceConfig: UpdateMicrofrontendsResourceConfig;
    /**
     * Description of why a project was rolled back, and by whom. Note that lastAliasRequest contains the from/to details of the rollback.
     */
    rollbackDescription?: UpdateMicrofrontendsRollbackDescription | undefined;
    /**
     * Project-level rolling release configuration that defines how deployments should be gradually rolled out
     */
    rollingRelease?: UpdateMicrofrontendsRollingRelease | null | undefined;
    defaultResourceConfig: UpdateMicrofrontendsDefaultResourceConfig;
    rootDirectory?: string | null | undefined;
    serverlessFunctionZeroConfigFailover?: boolean | undefined;
    skewProtectionBoundaryAt?: number | undefined;
    skewProtectionMaxAge?: number | undefined;
    skewProtectionAllowedDomains?: Array<string> | undefined;
    skipGitConnectDuringLink?: boolean | undefined;
    staticIps?: UpdateMicrofrontendsStaticIps | undefined;
    sourceFilesOutsideRootDirectory?: boolean | undefined;
    enableAffectedProjectsDeployments?: boolean | undefined;
    enableExternalRewriteCaching?: boolean | undefined;
    ssoProtection?: UpdateMicrofrontendsSsoProtection | null | undefined;
    targets?: {
        [k: string]: UpdateMicrofrontendsTargets | null;
    } | undefined;
    transferCompletedAt?: number | undefined;
    transferStartedAt?: number | undefined;
    transferToAccountId?: string | undefined;
    transferredFromAccountId?: string | undefined;
    updatedAt?: number | undefined;
    live?: boolean | undefined;
    enablePreviewFeedback?: boolean | null | undefined;
    enableProductionFeedback?: boolean | null | undefined;
    permissions?: UpdateMicrofrontendsPermissions | undefined;
    lastRollbackTarget?: UpdateMicrofrontendsLastRollbackTarget | null | undefined;
    lastAliasRequest?: UpdateMicrofrontendsLastAliasRequest | null | undefined;
    protectionBypass?: {
        [k: string]: UpdateMicrofrontendsProtectionBypass;
    } | undefined;
    hasActiveBranches?: boolean | undefined;
    trustedIps?: UpdateMicrofrontendsTrustedIps | null | undefined;
    trustedSources?: UpdateMicrofrontendsTrustedSources | null | undefined;
    gitComments?: UpdateMicrofrontendsGitComments | undefined;
    gitProviderOptions?: UpdateMicrofrontendsGitProviderOptions | undefined;
    paused?: boolean | undefined;
    concurrencyBucketName?: string | undefined;
    webAnalytics?: UpdateMicrofrontendsWebAnalytics | undefined;
    security?: UpdateMicrofrontendsSecurity | undefined;
    oidcTokenConfig?: UpdateMicrofrontendsOidcTokenConfig | undefined;
    /**
     * Project shape. `null` on a rule list clears the project's override for that rule type (fall back to team for every env); omitting is equivalent. Setting `deploymentPolicy` itself to `null` clears every override at once. Kept structurally distinct from {@link TeamDeploymentPolicy} so the two storage locations don't share a type by accident.
     */
    deploymentPolicy?: UpdateMicrofrontendsDeploymentPolicy | null | undefined;
    tier?: UpdateMicrofrontendsTier | undefined;
    usageStatus?: UpdateMicrofrontendsUsageStatus | undefined;
    features?: UpdateMicrofrontendsFeatures | undefined;
    v0?: boolean | undefined;
    v0Created?: boolean | undefined;
    abuse?: UpdateMicrofrontendsAbuse | undefined;
    internalRoutes?: Array<UpdateMicrofrontendsInternalRoutes1 | UpdateMicrofrontendsInternalRoutes2> | undefined;
    hasDeployments?: boolean | undefined;
    dismissedToasts?: Array<UpdateMicrofrontendsDismissedToasts> | undefined;
    protectedSourcemaps?: boolean | undefined;
    tracing?: UpdateMicrofrontendsTracing | undefined;
    avatar?: string | null | undefined;
};
/** @internal */
export declare const UpdateMicrofrontendsInternalRoutes1$inboundSchema: z.ZodType<UpdateMicrofrontendsInternalRoutes1, z.ZodTypeDef, unknown>;
export declare function updateMicrofrontendsInternalRoutes1FromJSON(jsonString: string): SafeParseResult<UpdateMicrofrontendsInternalRoutes1, SDKValidationError>;
/** @internal */
export declare const UpdateMicrofrontendsInternalRoutes$inboundSchema: z.ZodType<UpdateMicrofrontendsInternalRoutes, z.ZodTypeDef, unknown>;
export declare function updateMicrofrontendsInternalRoutesFromJSON(jsonString: string): SafeParseResult<UpdateMicrofrontendsInternalRoutes, SDKValidationError>;
/** @internal */
export declare const UpdateMicrofrontendsAction$inboundSchema: z.ZodNativeEnum<typeof UpdateMicrofrontendsAction>;
/** @internal */
export declare const UpdateMicrofrontendsValuePreviousValue$inboundSchema: z.ZodType<UpdateMicrofrontendsValuePreviousValue, z.ZodTypeDef, unknown>;
export declare function updateMicrofrontendsValuePreviousValueFromJSON(jsonString: string): SafeParseResult<UpdateMicrofrontendsValuePreviousValue, SDKValidationError>;
/** @internal */
export declare const UpdateMicrofrontendsValueCurrentValue$inboundSchema: z.ZodType<UpdateMicrofrontendsValueCurrentValue, z.ZodTypeDef, unknown>;
export declare function updateMicrofrontendsValueCurrentValueFromJSON(jsonString: string): SafeParseResult<UpdateMicrofrontendsValueCurrentValue, SDKValidationError>;
/** @internal */
export declare const UpdateMicrofrontendsValue3$inboundSchema: z.ZodType<UpdateMicrofrontendsValue3, z.ZodTypeDef, unknown>;
export declare function updateMicrofrontendsValue3FromJSON(jsonString: string): SafeParseResult<UpdateMicrofrontendsValue3, SDKValidationError>;
/** @internal */
export declare const UpdateMicrofrontendsValue$inboundSchema: z.ZodType<UpdateMicrofrontendsValue, z.ZodTypeDef, unknown>;
export declare function updateMicrofrontendsValueFromJSON(jsonString: string): SafeParseResult<UpdateMicrofrontendsValue, SDKValidationError>;
/** @internal */
export declare const UpdateMicrofrontendsDismissedToasts$inboundSchema: z.ZodType<UpdateMicrofrontendsDismissedToasts, z.ZodTypeDef, unknown>;
export declare function updateMicrofrontendsDismissedToastsFromJSON(jsonString: string): SafeParseResult<UpdateMicrofrontendsDismissedToasts, SDKValidationError>;
/** @internal */
export declare const UpdateMicrofrontendsProjectsEnv$inboundSchema: z.ZodNativeEnum<typeof UpdateMicrofrontendsProjectsEnv>;
/** @internal */
export declare const UpdateMicrofrontendsDestination$inboundSchema: z.ZodNativeEnum<typeof UpdateMicrofrontendsDestination>;
/** @internal */
export declare const UpdateMicrofrontendsSamplingRules$inboundSchema: z.ZodType<UpdateMicrofrontendsSamplingRules, z.ZodTypeDef, unknown>;
export declare function updateMicrofrontendsSamplingRulesFromJSON(jsonString: string): SafeParseResult<UpdateMicrofrontendsSamplingRules, SDKValidationError>;
/** @internal */
export declare const UpdateMicrofrontendsTracing$inboundSchema: z.ZodType<UpdateMicrofrontendsTracing, z.ZodTypeDef, unknown>;
export declare function updateMicrofrontendsTracingFromJSON(jsonString: string): SafeParseResult<UpdateMicrofrontendsTracing, SDKValidationError>;
/** @internal */
export declare const UpdateMicrofrontendsResponseBody$inboundSchema: z.ZodType<UpdateMicrofrontendsResponseBody, z.ZodTypeDef, unknown>;
export declare function updateMicrofrontendsResponseBodyFromJSON(jsonString: string): SafeParseResult<UpdateMicrofrontendsResponseBody, SDKValidationError>;
//# sourceMappingURL=updatemicrofrontendsresponsebody.d.ts.map