/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: 1794d3ec419f */ import * as z from "zod/v4"; import { remap as remap$ } from "../lib/primitives.js"; import { ClosedEnum } from "../types/enums.js"; import { DeploymentSetupMethod, DeploymentSetupMethod$outboundSchema, } from "./deploymentsetupmethod.js"; import { EnvironmentVariableConfig, EnvironmentVariableConfig$Outbound, EnvironmentVariableConfig$outboundSchema, } from "./environmentvariableconfig.js"; import { StackInputValueRequest, StackInputValueRequest$Outbound, StackInputValueRequest$outboundSchema, } from "./stackinputvaluerequest.js"; /** * Target platform for the deployment */ export const NewDeploymentRequestPlatform = { Aws: "aws", Gcp: "gcp", Azure: "azure", Kubernetes: "kubernetes", Machines: "machines", Local: "local", Test: "test", } as const; /** * Target platform for the deployment */ export type NewDeploymentRequestPlatform = ClosedEnum< typeof NewDeploymentRequestPlatform >; export const NewDeploymentRequestPlatformTest = { Test: "test", } as const; export type NewDeploymentRequestPlatformTest = ClosedEnum< typeof NewDeploymentRequestPlatformTest >; /** * Test platform environment information (mock) */ export type NewDeploymentRequestEnvironmentInfoTest = { /** * Test identifier for this environment */ testId: string; platform: NewDeploymentRequestPlatformTest; }; export const NewDeploymentRequestPlatformLocal = { Local: "local", } as const; export type NewDeploymentRequestPlatformLocal = ClosedEnum< typeof NewDeploymentRequestPlatformLocal >; /** * Local platform environment information */ export type NewDeploymentRequestEnvironmentInfoLocal = { /** * Architecture (e.g., "x86_64", "aarch64") */ arch: string; /** * Hostname of the machine running the deployment */ hostname: string; /** * Operating system (e.g., "linux", "macos", "windows") */ os: string; platform: NewDeploymentRequestPlatformLocal; }; export const NewDeploymentRequestPlatformAzure = { Azure: "azure", } as const; export type NewDeploymentRequestPlatformAzure = ClosedEnum< typeof NewDeploymentRequestPlatformAzure >; /** * Azure-specific environment information */ export type NewDeploymentRequestEnvironmentInfoAzure = { /** * Azure location/region */ location: string; /** * Azure subscription ID */ subscriptionId: string; /** * Azure tenant ID */ tenantId: string; platform: NewDeploymentRequestPlatformAzure; }; export const NewDeploymentRequestPlatformGcp = { Gcp: "gcp", } as const; export type NewDeploymentRequestPlatformGcp = ClosedEnum< typeof NewDeploymentRequestPlatformGcp >; /** * GCP-specific environment information */ export type NewDeploymentRequestEnvironmentInfoGcp = { /** * GCP project ID (e.g., "my-project") */ projectId: string; /** * GCP project number (e.g., "123456789012") */ projectNumber: string; /** * GCP region */ region: string; platform: NewDeploymentRequestPlatformGcp; }; export const NewDeploymentRequestPlatformAws = { Aws: "aws", } as const; export type NewDeploymentRequestPlatformAws = ClosedEnum< typeof NewDeploymentRequestPlatformAws >; /** * AWS-specific environment information */ export type NewDeploymentRequestEnvironmentInfoAws = { /** * AWS account ID */ accountId: string; /** * AWS region */ region: string; platform: NewDeploymentRequestPlatformAws; }; /** * Cloud environment information */ export type NewDeploymentRequestEnvironmentInfoUnion = | NewDeploymentRequestEnvironmentInfoGcp | NewDeploymentRequestEnvironmentInfoAzure | NewDeploymentRequestEnvironmentInfoLocal | NewDeploymentRequestEnvironmentInfoAws | NewDeploymentRequestEnvironmentInfoTest | any; /** * Failure-domain policy selected for a compute pool. */ export type NewDeploymentRequestFailureDomains2 = { /** * Concrete provider domains selected during setup. * * @remarks * Empty delegates deterministic selection to the provider setup implementation. */ selectedFailureDomains?: Array | undefined; /** * Number of distinct failure domains across which new stateful replicas may be spread. */ spread: number; }; export type NewDeploymentRequestFailureDomainsUnion2 = | NewDeploymentRequestFailureDomains2 | any; export type NewDeploymentRequestPoolsAutoscale = { failureDomains?: NewDeploymentRequestFailureDomains2 | any | null | undefined; /** * Provider machine type selected for this deployment. */ machine?: string | null | undefined; /** * Maximum machine count. */ max: number; /** * Minimum machine count. */ min: number; mode: "autoscale"; }; /** * Failure-domain policy selected for a compute pool. */ export type NewDeploymentRequestFailureDomains1 = { /** * Concrete provider domains selected during setup. * * @remarks * Empty delegates deterministic selection to the provider setup implementation. */ selectedFailureDomains?: Array | undefined; /** * Number of distinct failure domains across which new stateful replicas may be spread. */ spread: number; }; export type NewDeploymentRequestFailureDomainsUnion1 = | NewDeploymentRequestFailureDomains1 | any; export type NewDeploymentRequestPoolsFixed = { failureDomains?: NewDeploymentRequestFailureDomains1 | any | null | undefined; /** * Provider machine type selected for this deployment. */ machine?: string | null | undefined; /** * Number of machines to run. */ machines: number; mode: "fixed"; }; /** * User-selected deployment settings for one compute pool. */ export type NewDeploymentRequestPoolsUnion = | NewDeploymentRequestPoolsFixed | NewDeploymentRequestPoolsAutoscale; /** * Deployment-time compute choices for Alien-managed compute pools. * * @remarks * * Application source declares portable pool requirements. This settings * object stores the concrete choices made for one deployment, such as the * provider machine type and selected machine counts. */ export type NewDeploymentRequestCompute = { /** * Selected compute choices keyed by pool ID. */ pools?: { [k: string]: | NewDeploymentRequestPoolsFixed | NewDeploymentRequestPoolsAutoscale; } | undefined; }; export type NewDeploymentRequestComputeUnion = | NewDeploymentRequestCompute | any; /** * Deployment model: how updates are delivered to the remote environment. */ export const NewDeploymentRequestDeploymentModel = { Push: "push", Pull: "pull", } as const; /** * Deployment model: how updates are delivered to the remote environment. */ export type NewDeploymentRequestDeploymentModel = ClosedEnum< typeof NewDeploymentRequestDeploymentModel >; export type NewDeploymentRequestAws = { certificateArn: string; }; export type NewDeploymentRequestAwsUnion = NewDeploymentRequestAws | any; export type NewDeploymentRequestAzure = { keyVaultCertificateId: string; keyVaultResourceId?: string | null | undefined; }; export type NewDeploymentRequestAzureUnion = NewDeploymentRequestAzure | any; export type NewDeploymentRequestGcp = { certificateName: string; }; export type NewDeploymentRequestGcpUnion = NewDeploymentRequestGcp | any; /** * Namespace-scoped Kubernetes TLS Secret reference. */ export type NewDeploymentRequestTlsSecretRef = { /** * Secret namespace. Defaults to the release namespace when omitted. */ namespace?: string | null | undefined; /** * Secret name. */ secretName: string; }; export type NewDeploymentRequestDomainsKubernetes = { /** * Namespace-scoped Kubernetes TLS Secret reference. */ tlsSecretRef: NewDeploymentRequestTlsSecretRef; }; export type NewDeploymentRequestDomainsKubernetesUnion = | NewDeploymentRequestDomainsKubernetes | any; /** * Platform-specific certificate references for custom domains. */ export type NewDeploymentRequestDomainsCertificate = { aws?: NewDeploymentRequestAws | any | null | undefined; azure?: NewDeploymentRequestAzure | any | null | undefined; gcp?: NewDeploymentRequestGcp | any | null | undefined; kubernetes?: NewDeploymentRequestDomainsKubernetes | any | null | undefined; }; /** * Custom domain configuration for a single resource. */ export type NewDeploymentRequestCustomDomains = { /** * Platform-specific certificate references for custom domains. */ certificate: NewDeploymentRequestDomainsCertificate; /** * Fully qualified domain name to use. */ domain: string; }; export const NewDeploymentRequestModeLoadBalancer = { LoadBalancer: "loadBalancer", } as const; export type NewDeploymentRequestModeLoadBalancer = ClosedEnum< typeof NewDeploymentRequestModeLoadBalancer >; export type NewDeploymentRequestPublicEndpointTargetLoadBalancer = { /** * DNS name or URL for the external load balancer. */ cnameTarget: string; mode: NewDeploymentRequestModeLoadBalancer; }; export const NewDeploymentRequestModeMachineAddresses = { MachineAddresses: "machineAddresses", } as const; export type NewDeploymentRequestModeMachineAddresses = ClosedEnum< typeof NewDeploymentRequestModeMachineAddresses >; export type NewDeploymentRequestPublicEndpointTargetMachineAddresses = { mode: NewDeploymentRequestModeMachineAddresses; }; export type NewDeploymentRequestPublicEndpointTargetUnion = | NewDeploymentRequestPublicEndpointTargetLoadBalancer | NewDeploymentRequestPublicEndpointTargetMachineAddresses | any; /** * Domain configuration for the stack. * * @remarks * * When `custom_domains` is set, the specified resources use customer-provided * domains and certificates. Otherwise, Alien auto-generates domains. */ export type NewDeploymentRequestDomains = { /** * Custom domain configuration per resource ID. */ customDomains?: | { [k: string]: NewDeploymentRequestCustomDomains } | null | undefined; publicEndpointTarget?: | NewDeploymentRequestPublicEndpointTargetLoadBalancer | NewDeploymentRequestPublicEndpointTargetMachineAddresses | any | null | undefined; }; export type NewDeploymentRequestDomainsUnion = | NewDeploymentRequestDomains | any; /** * External bindings for pre-existing infrastructure. * * @remarks * Allows using existing resources (MinIO, Redis, shared Container Apps * Environment, etc.) instead of having Alien provision them. * Required for Kubernetes platform, optional for cloud platforms. */ export type NewDeploymentRequestExternalBindings = {}; /** * How heartbeat health checks are handled. */ export const NewDeploymentRequestHeartbeats = { Off: "off", On: "on", } as const; /** * How heartbeat health checks are handled. */ export type NewDeploymentRequestHeartbeats = ClosedEnum< typeof NewDeploymentRequestHeartbeats >; /** * Optional provider-specific identity for a cloud-backed Kubernetes cluster. */ export type NewDeploymentRequestCloud = { accountId?: string | null | undefined; clusterId?: string | null | undefined; clusterName?: string | null | undefined; projectId?: string | null | undefined; region?: string | null | undefined; resourceGroup?: string | null | undefined; subscriptionId?: string | null | undefined; }; export type NewDeploymentRequestCloudUnion = NewDeploymentRequestCloud | any; /** * Ownership model for the Kubernetes cluster. */ export const NewDeploymentRequestOwnership = { Managed: "managed", Existing: "existing", External: "external", } as const; /** * Ownership model for the Kubernetes cluster. */ export type NewDeploymentRequestOwnership = ClosedEnum< typeof NewDeploymentRequestOwnership >; /** * Kubernetes cluster setup settings. */ export type NewDeploymentRequestCluster = { cloud?: NewDeploymentRequestCloud | any | null | undefined; /** * Namespace where the Alien chart and application resources run. */ namespace?: string | null | undefined; /** * Ownership model for the Kubernetes cluster. */ ownership: NewDeploymentRequestOwnership; }; export type NewDeploymentRequestClusterUnion = | NewDeploymentRequestCluster | any; export type NewDeploymentRequestCertificateNone2 = { mode: "none"; }; export type NewDeploymentRequestCertificateManagedTLSSecret2 = { mode: "managedTlsSecret"; /** * Secret name template. Runtime may substitute resource/deployment tokens. */ secretNameTemplate: string; }; export type NewDeploymentRequestCertificateAwsAcmArn2 = { /** * Existing ACM certificate ARN. */ certificateArn: string; mode: "awsAcmArn"; }; export type NewDeploymentRequestCertificateManagedAcmImport2 = { mode: "managedAcmImport"; /** * ACM region. Defaults to the deployment region when omitted. */ region?: string | null | undefined; /** * Tags applied to runtime-imported ACM certificates. */ tags?: { [k: string]: string } | undefined; }; /** * Namespace-scoped Kubernetes TLS Secret reference. */ export type NewDeploymentRequestCertificateTLSSecretRef2 = { /** * Secret namespace. Defaults to the release namespace when omitted. */ namespace?: string | null | undefined; /** * Secret name. */ secretName: string; mode: "tlsSecretRef"; }; /** * Certificate publication or reference mode for Kubernetes public endpoints. */ export type NewDeploymentRequestCertificateUnion2 = | NewDeploymentRequestCertificateTLSSecretRef2 | NewDeploymentRequestCertificateManagedAcmImport2 | NewDeploymentRequestCertificateAwsAcmArn2 | NewDeploymentRequestCertificateManagedTLSSecret2 | NewDeploymentRequestCertificateNone2; export const NewDeploymentRequestModeCustom = { Custom: "custom", } as const; export type NewDeploymentRequestModeCustom = ClosedEnum< typeof NewDeploymentRequestModeCustom >; export const NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum4 = { AzureApplicationGatewayForContainers: "azureApplicationGatewayForContainers", } as const; export type NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum4 = ClosedEnum< typeof NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum4 >; export type NewDeploymentRequestProviderAzureApplicationGatewayForContainers4 = { /** * Optional ALB name when using BYO Application Gateway resources. */ albName?: string | null | undefined; /** * Optional ALB namespace when using BYO Application Gateway resources. */ albNamespace?: string | null | undefined; /** * Public or internal frontend exposure. */ frontend: string; provider: NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum4; }; export const NewDeploymentRequestProviderGkeGatewayEnum4 = { GkeGateway: "gkeGateway", } as const; export type NewDeploymentRequestProviderGkeGatewayEnum4 = ClosedEnum< typeof NewDeploymentRequestProviderGkeGatewayEnum4 >; export type NewDeploymentRequestProviderGkeGateway4 = { provider: NewDeploymentRequestProviderGkeGatewayEnum4; /** * Optional static address name for the Gateway frontend. */ staticAddressName?: string | null | undefined; }; export const NewDeploymentRequestProviderAwsAlbEnum4 = { AwsAlb: "awsAlb", } as const; export type NewDeploymentRequestProviderAwsAlbEnum4 = ClosedEnum< typeof NewDeploymentRequestProviderAwsAlbEnum4 >; export type NewDeploymentRequestProviderAwsAlb4 = { /** * Optional ALB IP address type, such as `dualstack`. */ ipAddressType?: string | null | undefined; provider: NewDeploymentRequestProviderAwsAlbEnum4; /** * Internet-facing or internal ALB scheme. */ scheme: string; /** * Explicit subnet IDs when the profile cannot rely on controller discovery. */ subnetIds?: Array | undefined; /** * ALB target type, usually `ip`. */ targetType: string; }; export type NewDeploymentRequestProviderUnion4 = | NewDeploymentRequestProviderAwsAlb4 | NewDeploymentRequestProviderAzureApplicationGatewayForContainers4 | NewDeploymentRequestProviderGkeGateway4 | any; /** * Shared Gateway API route profile values. */ export type NewDeploymentRequestRouteGateway2 = { /** * Annotations applied to route objects. */ annotations?: { [k: string]: string } | undefined; /** * Route controller identifier, for example a cloud Gateway controller. */ controller?: string | null | undefined; /** * GatewayClass selected for generated Gateways. */ gatewayClassName: string; /** * Labels applied to route objects. */ labels?: { [k: string]: string } | undefined; /** * Listener port, usually 443. */ listenerPort: number; provider?: | NewDeploymentRequestProviderAwsAlb4 | NewDeploymentRequestProviderAzureApplicationGatewayForContainers4 | NewDeploymentRequestProviderGkeGateway4 | any | null | undefined; routeApi: "gateway"; }; export const NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum3 = { AzureApplicationGatewayForContainers: "azureApplicationGatewayForContainers", } as const; export type NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum3 = ClosedEnum< typeof NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum3 >; export type NewDeploymentRequestProviderAzureApplicationGatewayForContainers3 = { /** * Optional ALB name when using BYO Application Gateway resources. */ albName?: string | null | undefined; /** * Optional ALB namespace when using BYO Application Gateway resources. */ albNamespace?: string | null | undefined; /** * Public or internal frontend exposure. */ frontend: string; provider: NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum3; }; export const NewDeploymentRequestProviderGkeGatewayEnum3 = { GkeGateway: "gkeGateway", } as const; export type NewDeploymentRequestProviderGkeGatewayEnum3 = ClosedEnum< typeof NewDeploymentRequestProviderGkeGatewayEnum3 >; export type NewDeploymentRequestProviderGkeGateway3 = { provider: NewDeploymentRequestProviderGkeGatewayEnum3; /** * Optional static address name for the Gateway frontend. */ staticAddressName?: string | null | undefined; }; export const NewDeploymentRequestProviderAwsAlbEnum3 = { AwsAlb: "awsAlb", } as const; export type NewDeploymentRequestProviderAwsAlbEnum3 = ClosedEnum< typeof NewDeploymentRequestProviderAwsAlbEnum3 >; export type NewDeploymentRequestProviderAwsAlb3 = { /** * Optional ALB IP address type, such as `dualstack`. */ ipAddressType?: string | null | undefined; provider: NewDeploymentRequestProviderAwsAlbEnum3; /** * Internet-facing or internal ALB scheme. */ scheme: string; /** * Explicit subnet IDs when the profile cannot rely on controller discovery. */ subnetIds?: Array | undefined; /** * ALB target type, usually `ip`. */ targetType: string; }; export type NewDeploymentRequestProviderUnion3 = | NewDeploymentRequestProviderAwsAlb3 | NewDeploymentRequestProviderAzureApplicationGatewayForContainers3 | NewDeploymentRequestProviderGkeGateway3 | any; /** * Shared Ingress route profile values. */ export type NewDeploymentRequestRouteIngress2 = { /** * Annotations applied to route objects. */ annotations?: { [k: string]: string } | undefined; /** * Route controller identifier, for example `eks.amazonaws.com/alb`. */ controller?: string | null | undefined; /** * `spec.ingressClassName` for generated Ingresses. */ ingressClassName: string; /** * Labels applied to route objects. */ labels?: { [k: string]: string } | undefined; provider?: | NewDeploymentRequestProviderAwsAlb3 | NewDeploymentRequestProviderAzureApplicationGatewayForContainers3 | NewDeploymentRequestProviderGkeGateway3 | any | null | undefined; routeApi: "ingress"; }; /** * Kubernetes route API selected for public endpoints. */ export type NewDeploymentRequestRouteUnion2 = | NewDeploymentRequestRouteIngress2 | NewDeploymentRequestRouteGateway2; export type NewDeploymentRequestExposureCustom = { /** * Certificate publication or reference mode for Kubernetes public endpoints. */ certificate: | NewDeploymentRequestCertificateTLSSecretRef2 | NewDeploymentRequestCertificateManagedAcmImport2 | NewDeploymentRequestCertificateAwsAcmArn2 | NewDeploymentRequestCertificateManagedTLSSecret2 | NewDeploymentRequestCertificateNone2; /** * Hostname routed by the Kubernetes public endpoint. */ domain: string; mode: NewDeploymentRequestModeCustom; /** * Kubernetes route API selected for public endpoints. */ route: NewDeploymentRequestRouteIngress2 | NewDeploymentRequestRouteGateway2; }; export type NewDeploymentRequestCertificateNone1 = { mode: "none"; }; export type NewDeploymentRequestCertificateManagedTLSSecret1 = { mode: "managedTlsSecret"; /** * Secret name template. Runtime may substitute resource/deployment tokens. */ secretNameTemplate: string; }; export type NewDeploymentRequestCertificateAwsAcmArn1 = { /** * Existing ACM certificate ARN. */ certificateArn: string; mode: "awsAcmArn"; }; export type NewDeploymentRequestCertificateManagedAcmImport1 = { mode: "managedAcmImport"; /** * ACM region. Defaults to the deployment region when omitted. */ region?: string | null | undefined; /** * Tags applied to runtime-imported ACM certificates. */ tags?: { [k: string]: string } | undefined; }; /** * Namespace-scoped Kubernetes TLS Secret reference. */ export type NewDeploymentRequestCertificateTLSSecretRef1 = { /** * Secret namespace. Defaults to the release namespace when omitted. */ namespace?: string | null | undefined; /** * Secret name. */ secretName: string; mode: "tlsSecretRef"; }; /** * Certificate publication or reference mode for Kubernetes public endpoints. */ export type NewDeploymentRequestCertificateUnion1 = | NewDeploymentRequestCertificateTLSSecretRef1 | NewDeploymentRequestCertificateManagedAcmImport1 | NewDeploymentRequestCertificateAwsAcmArn1 | NewDeploymentRequestCertificateManagedTLSSecret1 | NewDeploymentRequestCertificateNone1; export const NewDeploymentRequestModeGenerated = { Generated: "generated", } as const; export type NewDeploymentRequestModeGenerated = ClosedEnum< typeof NewDeploymentRequestModeGenerated >; export const NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum2 = { AzureApplicationGatewayForContainers: "azureApplicationGatewayForContainers", } as const; export type NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum2 = ClosedEnum< typeof NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum2 >; export type NewDeploymentRequestProviderAzureApplicationGatewayForContainers2 = { /** * Optional ALB name when using BYO Application Gateway resources. */ albName?: string | null | undefined; /** * Optional ALB namespace when using BYO Application Gateway resources. */ albNamespace?: string | null | undefined; /** * Public or internal frontend exposure. */ frontend: string; provider: NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum2; }; export const NewDeploymentRequestProviderGkeGatewayEnum2 = { GkeGateway: "gkeGateway", } as const; export type NewDeploymentRequestProviderGkeGatewayEnum2 = ClosedEnum< typeof NewDeploymentRequestProviderGkeGatewayEnum2 >; export type NewDeploymentRequestProviderGkeGateway2 = { provider: NewDeploymentRequestProviderGkeGatewayEnum2; /** * Optional static address name for the Gateway frontend. */ staticAddressName?: string | null | undefined; }; export const NewDeploymentRequestProviderAwsAlbEnum2 = { AwsAlb: "awsAlb", } as const; export type NewDeploymentRequestProviderAwsAlbEnum2 = ClosedEnum< typeof NewDeploymentRequestProviderAwsAlbEnum2 >; export type NewDeploymentRequestProviderAwsAlb2 = { /** * Optional ALB IP address type, such as `dualstack`. */ ipAddressType?: string | null | undefined; provider: NewDeploymentRequestProviderAwsAlbEnum2; /** * Internet-facing or internal ALB scheme. */ scheme: string; /** * Explicit subnet IDs when the profile cannot rely on controller discovery. */ subnetIds?: Array | undefined; /** * ALB target type, usually `ip`. */ targetType: string; }; export type NewDeploymentRequestProviderUnion2 = | NewDeploymentRequestProviderAwsAlb2 | NewDeploymentRequestProviderAzureApplicationGatewayForContainers2 | NewDeploymentRequestProviderGkeGateway2 | any; /** * Shared Gateway API route profile values. */ export type NewDeploymentRequestRouteGateway1 = { /** * Annotations applied to route objects. */ annotations?: { [k: string]: string } | undefined; /** * Route controller identifier, for example a cloud Gateway controller. */ controller?: string | null | undefined; /** * GatewayClass selected for generated Gateways. */ gatewayClassName: string; /** * Labels applied to route objects. */ labels?: { [k: string]: string } | undefined; /** * Listener port, usually 443. */ listenerPort: number; provider?: | NewDeploymentRequestProviderAwsAlb2 | NewDeploymentRequestProviderAzureApplicationGatewayForContainers2 | NewDeploymentRequestProviderGkeGateway2 | any | null | undefined; routeApi: "gateway"; }; export const NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum1 = { AzureApplicationGatewayForContainers: "azureApplicationGatewayForContainers", } as const; export type NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum1 = ClosedEnum< typeof NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum1 >; export type NewDeploymentRequestProviderAzureApplicationGatewayForContainers1 = { /** * Optional ALB name when using BYO Application Gateway resources. */ albName?: string | null | undefined; /** * Optional ALB namespace when using BYO Application Gateway resources. */ albNamespace?: string | null | undefined; /** * Public or internal frontend exposure. */ frontend: string; provider: NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum1; }; export const NewDeploymentRequestProviderGkeGatewayEnum1 = { GkeGateway: "gkeGateway", } as const; export type NewDeploymentRequestProviderGkeGatewayEnum1 = ClosedEnum< typeof NewDeploymentRequestProviderGkeGatewayEnum1 >; export type NewDeploymentRequestProviderGkeGateway1 = { provider: NewDeploymentRequestProviderGkeGatewayEnum1; /** * Optional static address name for the Gateway frontend. */ staticAddressName?: string | null | undefined; }; export const NewDeploymentRequestProviderAwsAlbEnum1 = { AwsAlb: "awsAlb", } as const; export type NewDeploymentRequestProviderAwsAlbEnum1 = ClosedEnum< typeof NewDeploymentRequestProviderAwsAlbEnum1 >; export type NewDeploymentRequestProviderAwsAlb1 = { /** * Optional ALB IP address type, such as `dualstack`. */ ipAddressType?: string | null | undefined; provider: NewDeploymentRequestProviderAwsAlbEnum1; /** * Internet-facing or internal ALB scheme. */ scheme: string; /** * Explicit subnet IDs when the profile cannot rely on controller discovery. */ subnetIds?: Array | undefined; /** * ALB target type, usually `ip`. */ targetType: string; }; export type NewDeploymentRequestProviderUnion1 = | NewDeploymentRequestProviderAwsAlb1 | NewDeploymentRequestProviderAzureApplicationGatewayForContainers1 | NewDeploymentRequestProviderGkeGateway1 | any; /** * Shared Ingress route profile values. */ export type NewDeploymentRequestRouteIngress1 = { /** * Annotations applied to route objects. */ annotations?: { [k: string]: string } | undefined; /** * Route controller identifier, for example `eks.amazonaws.com/alb`. */ controller?: string | null | undefined; /** * `spec.ingressClassName` for generated Ingresses. */ ingressClassName: string; /** * Labels applied to route objects. */ labels?: { [k: string]: string } | undefined; provider?: | NewDeploymentRequestProviderAwsAlb1 | NewDeploymentRequestProviderAzureApplicationGatewayForContainers1 | NewDeploymentRequestProviderGkeGateway1 | any | null | undefined; routeApi: "ingress"; }; /** * Kubernetes route API selected for public endpoints. */ export type NewDeploymentRequestRouteUnion1 = | NewDeploymentRequestRouteIngress1 | NewDeploymentRequestRouteGateway1; export type NewDeploymentRequestExposureGenerated = { /** * Certificate publication or reference mode for Kubernetes public endpoints. */ certificate: | NewDeploymentRequestCertificateTLSSecretRef1 | NewDeploymentRequestCertificateManagedAcmImport1 | NewDeploymentRequestCertificateAwsAcmArn1 | NewDeploymentRequestCertificateManagedTLSSecret1 | NewDeploymentRequestCertificateNone1; mode: NewDeploymentRequestModeGenerated; /** * Kubernetes route API selected for public endpoints. */ route: NewDeploymentRequestRouteIngress1 | NewDeploymentRequestRouteGateway1; }; export const NewDeploymentRequestModeDisabled = { Disabled: "disabled", } as const; export type NewDeploymentRequestModeDisabled = ClosedEnum< typeof NewDeploymentRequestModeDisabled >; export type NewDeploymentRequestExposureDisabled = { mode: NewDeploymentRequestModeDisabled; }; export type NewDeploymentRequestExposureUnion = | NewDeploymentRequestExposureCustom | NewDeploymentRequestExposureGenerated | NewDeploymentRequestExposureDisabled | any; /** * Kubernetes runtime substrate configuration. * * @remarks * * This controls how setup chooses the cluster backing `Platform::Kubernetes` * deployments. When omitted, cloud-backed Kubernetes deployments default to a * managed cluster and generic/on-prem Kubernetes defaults to an external * cluster. */ export type NewDeploymentRequestKubernetes = { cluster?: NewDeploymentRequestCluster | any | null | undefined; exposure?: | NewDeploymentRequestExposureCustom | NewDeploymentRequestExposureGenerated | NewDeploymentRequestExposureDisabled | any | null | undefined; }; export type NewDeploymentRequestKubernetesUnion = | NewDeploymentRequestKubernetes | any; export const NewDeploymentRequestTypeByoVnetAzure = { ByoVnetAzure: "byo-vnet-azure", } as const; export type NewDeploymentRequestTypeByoVnetAzure = ClosedEnum< typeof NewDeploymentRequestTypeByoVnetAzure >; export type NewDeploymentRequestNetworkByoVnetAzure = { /** * Name of the dedicated classic Application Gateway subnet within the VNet. */ applicationGatewaySubnetName?: string | null | undefined; /** * Name of the dedicated subnet that hosts Private Endpoints (e.g. for a * * @remarks * Postgres Flexible Server). A Private Endpoint must not share the private * subnet, which is already claimed by the Container Apps environment's * `infrastructure_subnet_id`. Required only when the stack contains a * Postgres resource; otherwise unused. */ privateEndpointSubnetName?: string | null | undefined; /** * Name of the private subnet within the VNet */ privateSubnetName: string; /** * Name of the public subnet within the VNet */ publicSubnetName: string; type: NewDeploymentRequestTypeByoVnetAzure; /** * The full resource ID of the existing VNet */ vnetResourceId: string; }; export const NewDeploymentRequestTypeByoVpcGcp = { ByoVpcGcp: "byo-vpc-gcp", } as const; export type NewDeploymentRequestTypeByoVpcGcp = ClosedEnum< typeof NewDeploymentRequestTypeByoVpcGcp >; export type NewDeploymentRequestNetworkByoVpcGcp = { /** * The name of the existing VPC network */ networkName: string; /** * The region of the subnet */ region: string; /** * The name of the subnet to use */ subnetName: string; type: NewDeploymentRequestTypeByoVpcGcp; }; export const NewDeploymentRequestTypeByoVpcAws = { ByoVpcAws: "byo-vpc-aws", } as const; export type NewDeploymentRequestTypeByoVpcAws = ClosedEnum< typeof NewDeploymentRequestTypeByoVpcAws >; export type NewDeploymentRequestNetworkByoVpcAws = { /** * IDs of private subnets */ privateSubnetIds: Array; /** * IDs of public subnets (required for public ingress) */ publicSubnetIds: Array; /** * Optional security group IDs to use */ securityGroupIds?: Array | undefined; type: NewDeploymentRequestTypeByoVpcAws; /** * The ID of the existing VPC */ vpcId: string; }; export const NewDeploymentRequestTypeCreate = { Create: "create", } as const; export type NewDeploymentRequestTypeCreate = ClosedEnum< typeof NewDeploymentRequestTypeCreate >; export type NewDeploymentRequestNetworkCreate = { /** * Number of availability zones (default: 2). */ availabilityZones?: number | undefined; /** * VPC/VNet CIDR block. If not specified, auto-generated from stack ID * * @remarks * to reduce conflicts (e.g., "10.{hash}.0.0/16"). */ cidr?: string | null | undefined; type: NewDeploymentRequestTypeCreate; }; export const NewDeploymentRequestTypeUseDefault = { UseDefault: "use-default", } as const; export type NewDeploymentRequestTypeUseDefault = ClosedEnum< typeof NewDeploymentRequestTypeUseDefault >; export type NewDeploymentRequestNetworkUseDefault = { type: NewDeploymentRequestTypeUseDefault; }; export type NewDeploymentRequestNetworkUnion = | NewDeploymentRequestNetworkByoVpcAws | NewDeploymentRequestNetworkByoVpcGcp | NewDeploymentRequestNetworkByoVnetAzure | NewDeploymentRequestNetworkUseDefault | NewDeploymentRequestNetworkCreate | any; /** * How telemetry (logs, metrics, traces) is handled. */ export const NewDeploymentRequestTelemetry = { Off: "off", Auto: "auto", ApprovalRequired: "approval-required", } as const; /** * How telemetry (logs, metrics, traces) is handled. */ export type NewDeploymentRequestTelemetry = ClosedEnum< typeof NewDeploymentRequestTelemetry >; /** * How updates are delivered to the deployment. */ export const NewDeploymentRequestUpdates = { Auto: "auto", ApprovalRequired: "approval-required", } as const; /** * How updates are delivered to the deployment. */ export type NewDeploymentRequestUpdates = ClosedEnum< typeof NewDeploymentRequestUpdates >; /** * Stack settings for deployment customization */ export type NewDeploymentRequestStackSettings = { compute?: NewDeploymentRequestCompute | any | null | undefined; /** * Deployment model: how updates are delivered to the remote environment. */ deploymentModel?: NewDeploymentRequestDeploymentModel | undefined; domains?: NewDeploymentRequestDomains | any | null | undefined; /** * External bindings for pre-existing infrastructure. * * @remarks * Allows using existing resources (MinIO, Redis, shared Container Apps * Environment, etc.) instead of having Alien provision them. * Required for Kubernetes platform, optional for cloud platforms. */ externalBindings?: NewDeploymentRequestExternalBindings | null | undefined; /** * How heartbeat health checks are handled. */ heartbeats?: NewDeploymentRequestHeartbeats | undefined; kubernetes?: NewDeploymentRequestKubernetes | any | null | undefined; network?: | NewDeploymentRequestNetworkByoVpcAws | NewDeploymentRequestNetworkByoVpcGcp | NewDeploymentRequestNetworkByoVnetAzure | NewDeploymentRequestNetworkUseDefault | NewDeploymentRequestNetworkCreate | any | null | undefined; /** * Exact externally managed endpoint URLs, keyed by resource ID and endpoint name. * * @remarks * * This is intended for adopted Machines deployments whose DNS and certificates remain * customer-owned. The platform passes these URLs to the runtime without creating or * replacing DNS records or certificates. */ publicEndpoints?: { [k: string]: { [k: string]: string } } | null | undefined; /** * How telemetry (logs, metrics, traces) is handled. */ telemetry?: NewDeploymentRequestTelemetry | undefined; /** * How updates are delivered to the deployment. */ updates?: NewDeploymentRequestUpdates | undefined; }; /** * Desired-release selection for a new deployment. Use none to register an environment without initially requesting a release; later updates can assign one. */ export const InitialDesiredRelease = { Active: "active", None: "none", } as const; /** * Desired-release selection for a new deployment. Use none to register an environment without initially requesting a release; later updates can assign one. */ export type InitialDesiredRelease = ClosedEnum; /** * Customer setup item selected from this deployment-group token. */ export const NewDeploymentRequestSetupItem = { Deployment: "deployment", Models: "models", Keys: "keys", Bucket: "bucket", Registry: "registry", Sandbox: "sandbox", } as const; /** * Customer setup item selected from this deployment-group token. */ export type NewDeploymentRequestSetupItem = ClosedEnum< typeof NewDeploymentRequestSetupItem >; /** * Use await-registration when CloudFormation will create the infrastructure and register this deployment. */ export const SetupHandoff = { Immediate: "immediate", AwaitRegistration: "await-registration", } as const; /** * Use await-registration when CloudFormation will create the infrastructure and register this deployment. */ export type SetupHandoff = ClosedEnum; /** * Request schema for creating a new deployment */ export type NewDeploymentRequest = { /** * Deployment name. */ name: string; /** * Target platform for the deployment */ platform: NewDeploymentRequestPlatform; /** * Required for workspace/project tokens. Deployment group tokens use their own group automatically. */ deploymentGroupId?: string | undefined; managerId?: string | undefined; /** * ID of the pinned release */ pinnedReleaseId?: string | null | undefined; /** * Configuration of environment variables for the deployment */ environmentVariables?: Array | null | undefined; /** * Cloud environment information */ environmentInfo?: | NewDeploymentRequestEnvironmentInfoGcp | NewDeploymentRequestEnvironmentInfoAzure | NewDeploymentRequestEnvironmentInfoLocal | NewDeploymentRequestEnvironmentInfoAws | NewDeploymentRequestEnvironmentInfoTest | any | null | undefined; /** * Project ID or name */ project: string; /** * Stack settings for deployment customization */ stackSettings?: NewDeploymentRequestStackSettings | undefined; /** * Optional physical-name prefix for generated cloud resources. Omit to let the manager generate one. */ resourcePrefix?: string | undefined; /** * Optional deployment subdomain under the project's generated-domain parent. Operator-only and requires a custom project domain; customer deploy-link tokens and the shared system domain are rejected. Omit to generate a random subdomain. */ publicSubdomain?: string | undefined; setupMethod?: DeploymentSetupMethod | undefined; setupMetadata?: { [k: string]: any | null } | undefined; /** * Stack input values provided by the deployment creator. */ inputValues?: { [k: string]: StackInputValueRequest } | undefined; /** * Display-only scope reported by the Operator manifest. */ operatorScope?: string | undefined; /** * Display-only permission tier reported by the Operator manifest. */ operatorPermission?: string | undefined; /** * Desired-release selection for a new deployment. Use none to register an environment without initially requesting a release; later updates can assign one. */ initialDesiredRelease?: InitialDesiredRelease | undefined; /** * Release channel followed while this deployment is not pinned. */ releaseChannel?: string | undefined; /** * Customer setup item selected from this deployment-group token. */ setupItem?: NewDeploymentRequestSetupItem | undefined; /** * Use await-registration when CloudFormation will create the infrastructure and register this deployment. */ setupHandoff?: SetupHandoff | undefined; }; /** @internal */ export const NewDeploymentRequestPlatform$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestPlatform > = z.enum(NewDeploymentRequestPlatform); /** @internal */ export const NewDeploymentRequestPlatformTest$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestPlatformTest > = z.enum(NewDeploymentRequestPlatformTest); /** @internal */ export type NewDeploymentRequestEnvironmentInfoTest$Outbound = { testId: string; platform: string; }; /** @internal */ export const NewDeploymentRequestEnvironmentInfoTest$outboundSchema: z.ZodType< NewDeploymentRequestEnvironmentInfoTest$Outbound, NewDeploymentRequestEnvironmentInfoTest > = z.object({ testId: z.string(), platform: NewDeploymentRequestPlatformTest$outboundSchema, }); export function newDeploymentRequestEnvironmentInfoTestToJSON( newDeploymentRequestEnvironmentInfoTest: NewDeploymentRequestEnvironmentInfoTest, ): string { return JSON.stringify( NewDeploymentRequestEnvironmentInfoTest$outboundSchema.parse( newDeploymentRequestEnvironmentInfoTest, ), ); } /** @internal */ export const NewDeploymentRequestPlatformLocal$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestPlatformLocal > = z.enum(NewDeploymentRequestPlatformLocal); /** @internal */ export type NewDeploymentRequestEnvironmentInfoLocal$Outbound = { arch: string; hostname: string; os: string; platform: string; }; /** @internal */ export const NewDeploymentRequestEnvironmentInfoLocal$outboundSchema: z.ZodType< NewDeploymentRequestEnvironmentInfoLocal$Outbound, NewDeploymentRequestEnvironmentInfoLocal > = z.object({ arch: z.string(), hostname: z.string(), os: z.string(), platform: NewDeploymentRequestPlatformLocal$outboundSchema, }); export function newDeploymentRequestEnvironmentInfoLocalToJSON( newDeploymentRequestEnvironmentInfoLocal: NewDeploymentRequestEnvironmentInfoLocal, ): string { return JSON.stringify( NewDeploymentRequestEnvironmentInfoLocal$outboundSchema.parse( newDeploymentRequestEnvironmentInfoLocal, ), ); } /** @internal */ export const NewDeploymentRequestPlatformAzure$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestPlatformAzure > = z.enum(NewDeploymentRequestPlatformAzure); /** @internal */ export type NewDeploymentRequestEnvironmentInfoAzure$Outbound = { location: string; subscriptionId: string; tenantId: string; platform: string; }; /** @internal */ export const NewDeploymentRequestEnvironmentInfoAzure$outboundSchema: z.ZodType< NewDeploymentRequestEnvironmentInfoAzure$Outbound, NewDeploymentRequestEnvironmentInfoAzure > = z.object({ location: z.string(), subscriptionId: z.string(), tenantId: z.string(), platform: NewDeploymentRequestPlatformAzure$outboundSchema, }); export function newDeploymentRequestEnvironmentInfoAzureToJSON( newDeploymentRequestEnvironmentInfoAzure: NewDeploymentRequestEnvironmentInfoAzure, ): string { return JSON.stringify( NewDeploymentRequestEnvironmentInfoAzure$outboundSchema.parse( newDeploymentRequestEnvironmentInfoAzure, ), ); } /** @internal */ export const NewDeploymentRequestPlatformGcp$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestPlatformGcp > = z.enum(NewDeploymentRequestPlatformGcp); /** @internal */ export type NewDeploymentRequestEnvironmentInfoGcp$Outbound = { projectId: string; projectNumber: string; region: string; platform: string; }; /** @internal */ export const NewDeploymentRequestEnvironmentInfoGcp$outboundSchema: z.ZodType< NewDeploymentRequestEnvironmentInfoGcp$Outbound, NewDeploymentRequestEnvironmentInfoGcp > = z.object({ projectId: z.string(), projectNumber: z.string(), region: z.string(), platform: NewDeploymentRequestPlatformGcp$outboundSchema, }); export function newDeploymentRequestEnvironmentInfoGcpToJSON( newDeploymentRequestEnvironmentInfoGcp: NewDeploymentRequestEnvironmentInfoGcp, ): string { return JSON.stringify( NewDeploymentRequestEnvironmentInfoGcp$outboundSchema.parse( newDeploymentRequestEnvironmentInfoGcp, ), ); } /** @internal */ export const NewDeploymentRequestPlatformAws$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestPlatformAws > = z.enum(NewDeploymentRequestPlatformAws); /** @internal */ export type NewDeploymentRequestEnvironmentInfoAws$Outbound = { accountId: string; region: string; platform: string; }; /** @internal */ export const NewDeploymentRequestEnvironmentInfoAws$outboundSchema: z.ZodType< NewDeploymentRequestEnvironmentInfoAws$Outbound, NewDeploymentRequestEnvironmentInfoAws > = z.object({ accountId: z.string(), region: z.string(), platform: NewDeploymentRequestPlatformAws$outboundSchema, }); export function newDeploymentRequestEnvironmentInfoAwsToJSON( newDeploymentRequestEnvironmentInfoAws: NewDeploymentRequestEnvironmentInfoAws, ): string { return JSON.stringify( NewDeploymentRequestEnvironmentInfoAws$outboundSchema.parse( newDeploymentRequestEnvironmentInfoAws, ), ); } /** @internal */ export type NewDeploymentRequestEnvironmentInfoUnion$Outbound = | NewDeploymentRequestEnvironmentInfoGcp$Outbound | NewDeploymentRequestEnvironmentInfoAzure$Outbound | NewDeploymentRequestEnvironmentInfoLocal$Outbound | NewDeploymentRequestEnvironmentInfoAws$Outbound | NewDeploymentRequestEnvironmentInfoTest$Outbound | any; /** @internal */ export const NewDeploymentRequestEnvironmentInfoUnion$outboundSchema: z.ZodType< NewDeploymentRequestEnvironmentInfoUnion$Outbound, NewDeploymentRequestEnvironmentInfoUnion > = z.union([ z.lazy(() => NewDeploymentRequestEnvironmentInfoGcp$outboundSchema), z.lazy(() => NewDeploymentRequestEnvironmentInfoAzure$outboundSchema), z.lazy(() => NewDeploymentRequestEnvironmentInfoLocal$outboundSchema), z.lazy(() => NewDeploymentRequestEnvironmentInfoAws$outboundSchema), z.lazy(() => NewDeploymentRequestEnvironmentInfoTest$outboundSchema), z.any(), ]); export function newDeploymentRequestEnvironmentInfoUnionToJSON( newDeploymentRequestEnvironmentInfoUnion: NewDeploymentRequestEnvironmentInfoUnion, ): string { return JSON.stringify( NewDeploymentRequestEnvironmentInfoUnion$outboundSchema.parse( newDeploymentRequestEnvironmentInfoUnion, ), ); } /** @internal */ export type NewDeploymentRequestFailureDomains2$Outbound = { selectedFailureDomains?: Array | undefined; spread: number; }; /** @internal */ export const NewDeploymentRequestFailureDomains2$outboundSchema: z.ZodType< NewDeploymentRequestFailureDomains2$Outbound, NewDeploymentRequestFailureDomains2 > = z.object({ selectedFailureDomains: z.array(z.string()).optional(), spread: z.int(), }); export function newDeploymentRequestFailureDomains2ToJSON( newDeploymentRequestFailureDomains2: NewDeploymentRequestFailureDomains2, ): string { return JSON.stringify( NewDeploymentRequestFailureDomains2$outboundSchema.parse( newDeploymentRequestFailureDomains2, ), ); } /** @internal */ export type NewDeploymentRequestFailureDomainsUnion2$Outbound = | NewDeploymentRequestFailureDomains2$Outbound | any; /** @internal */ export const NewDeploymentRequestFailureDomainsUnion2$outboundSchema: z.ZodType< NewDeploymentRequestFailureDomainsUnion2$Outbound, NewDeploymentRequestFailureDomainsUnion2 > = z.union([ z.lazy(() => NewDeploymentRequestFailureDomains2$outboundSchema), z.any(), ]); export function newDeploymentRequestFailureDomainsUnion2ToJSON( newDeploymentRequestFailureDomainsUnion2: NewDeploymentRequestFailureDomainsUnion2, ): string { return JSON.stringify( NewDeploymentRequestFailureDomainsUnion2$outboundSchema.parse( newDeploymentRequestFailureDomainsUnion2, ), ); } /** @internal */ export type NewDeploymentRequestPoolsAutoscale$Outbound = { failure_domains?: | NewDeploymentRequestFailureDomains2$Outbound | any | null | undefined; machine?: string | null | undefined; max: number; min: number; mode: "autoscale"; }; /** @internal */ export const NewDeploymentRequestPoolsAutoscale$outboundSchema: z.ZodType< NewDeploymentRequestPoolsAutoscale$Outbound, NewDeploymentRequestPoolsAutoscale > = z.object({ failureDomains: z.nullable( z.union([ z.lazy(() => NewDeploymentRequestFailureDomains2$outboundSchema), z.any(), ]), ).optional(), machine: z.nullable(z.string()).optional(), max: z.int(), min: z.int(), mode: z.literal("autoscale"), }).transform((v) => { return remap$(v, { failureDomains: "failure_domains", }); }); export function newDeploymentRequestPoolsAutoscaleToJSON( newDeploymentRequestPoolsAutoscale: NewDeploymentRequestPoolsAutoscale, ): string { return JSON.stringify( NewDeploymentRequestPoolsAutoscale$outboundSchema.parse( newDeploymentRequestPoolsAutoscale, ), ); } /** @internal */ export type NewDeploymentRequestFailureDomains1$Outbound = { selectedFailureDomains?: Array | undefined; spread: number; }; /** @internal */ export const NewDeploymentRequestFailureDomains1$outboundSchema: z.ZodType< NewDeploymentRequestFailureDomains1$Outbound, NewDeploymentRequestFailureDomains1 > = z.object({ selectedFailureDomains: z.array(z.string()).optional(), spread: z.int(), }); export function newDeploymentRequestFailureDomains1ToJSON( newDeploymentRequestFailureDomains1: NewDeploymentRequestFailureDomains1, ): string { return JSON.stringify( NewDeploymentRequestFailureDomains1$outboundSchema.parse( newDeploymentRequestFailureDomains1, ), ); } /** @internal */ export type NewDeploymentRequestFailureDomainsUnion1$Outbound = | NewDeploymentRequestFailureDomains1$Outbound | any; /** @internal */ export const NewDeploymentRequestFailureDomainsUnion1$outboundSchema: z.ZodType< NewDeploymentRequestFailureDomainsUnion1$Outbound, NewDeploymentRequestFailureDomainsUnion1 > = z.union([ z.lazy(() => NewDeploymentRequestFailureDomains1$outboundSchema), z.any(), ]); export function newDeploymentRequestFailureDomainsUnion1ToJSON( newDeploymentRequestFailureDomainsUnion1: NewDeploymentRequestFailureDomainsUnion1, ): string { return JSON.stringify( NewDeploymentRequestFailureDomainsUnion1$outboundSchema.parse( newDeploymentRequestFailureDomainsUnion1, ), ); } /** @internal */ export type NewDeploymentRequestPoolsFixed$Outbound = { failure_domains?: | NewDeploymentRequestFailureDomains1$Outbound | any | null | undefined; machine?: string | null | undefined; machines: number; mode: "fixed"; }; /** @internal */ export const NewDeploymentRequestPoolsFixed$outboundSchema: z.ZodType< NewDeploymentRequestPoolsFixed$Outbound, NewDeploymentRequestPoolsFixed > = z.object({ failureDomains: z.nullable( z.union([ z.lazy(() => NewDeploymentRequestFailureDomains1$outboundSchema), z.any(), ]), ).optional(), machine: z.nullable(z.string()).optional(), machines: z.int(), mode: z.literal("fixed"), }).transform((v) => { return remap$(v, { failureDomains: "failure_domains", }); }); export function newDeploymentRequestPoolsFixedToJSON( newDeploymentRequestPoolsFixed: NewDeploymentRequestPoolsFixed, ): string { return JSON.stringify( NewDeploymentRequestPoolsFixed$outboundSchema.parse( newDeploymentRequestPoolsFixed, ), ); } /** @internal */ export type NewDeploymentRequestPoolsUnion$Outbound = | NewDeploymentRequestPoolsFixed$Outbound | NewDeploymentRequestPoolsAutoscale$Outbound; /** @internal */ export const NewDeploymentRequestPoolsUnion$outboundSchema: z.ZodType< NewDeploymentRequestPoolsUnion$Outbound, NewDeploymentRequestPoolsUnion > = z.union([ z.lazy(() => NewDeploymentRequestPoolsFixed$outboundSchema), z.lazy(() => NewDeploymentRequestPoolsAutoscale$outboundSchema), ]); export function newDeploymentRequestPoolsUnionToJSON( newDeploymentRequestPoolsUnion: NewDeploymentRequestPoolsUnion, ): string { return JSON.stringify( NewDeploymentRequestPoolsUnion$outboundSchema.parse( newDeploymentRequestPoolsUnion, ), ); } /** @internal */ export type NewDeploymentRequestCompute$Outbound = { pools?: { [k: string]: | NewDeploymentRequestPoolsFixed$Outbound | NewDeploymentRequestPoolsAutoscale$Outbound; } | undefined; }; /** @internal */ export const NewDeploymentRequestCompute$outboundSchema: z.ZodType< NewDeploymentRequestCompute$Outbound, NewDeploymentRequestCompute > = z.object({ pools: z.record( z.string(), z.union([ z.lazy(() => NewDeploymentRequestPoolsFixed$outboundSchema), z.lazy(() => NewDeploymentRequestPoolsAutoscale$outboundSchema), ]), ).optional(), }); export function newDeploymentRequestComputeToJSON( newDeploymentRequestCompute: NewDeploymentRequestCompute, ): string { return JSON.stringify( NewDeploymentRequestCompute$outboundSchema.parse( newDeploymentRequestCompute, ), ); } /** @internal */ export type NewDeploymentRequestComputeUnion$Outbound = | NewDeploymentRequestCompute$Outbound | any; /** @internal */ export const NewDeploymentRequestComputeUnion$outboundSchema: z.ZodType< NewDeploymentRequestComputeUnion$Outbound, NewDeploymentRequestComputeUnion > = z.union([ z.lazy(() => NewDeploymentRequestCompute$outboundSchema), z.any(), ]); export function newDeploymentRequestComputeUnionToJSON( newDeploymentRequestComputeUnion: NewDeploymentRequestComputeUnion, ): string { return JSON.stringify( NewDeploymentRequestComputeUnion$outboundSchema.parse( newDeploymentRequestComputeUnion, ), ); } /** @internal */ export const NewDeploymentRequestDeploymentModel$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestDeploymentModel > = z.enum(NewDeploymentRequestDeploymentModel); /** @internal */ export type NewDeploymentRequestAws$Outbound = { certificateArn: string; }; /** @internal */ export const NewDeploymentRequestAws$outboundSchema: z.ZodType< NewDeploymentRequestAws$Outbound, NewDeploymentRequestAws > = z.object({ certificateArn: z.string(), }); export function newDeploymentRequestAwsToJSON( newDeploymentRequestAws: NewDeploymentRequestAws, ): string { return JSON.stringify( NewDeploymentRequestAws$outboundSchema.parse(newDeploymentRequestAws), ); } /** @internal */ export type NewDeploymentRequestAwsUnion$Outbound = | NewDeploymentRequestAws$Outbound | any; /** @internal */ export const NewDeploymentRequestAwsUnion$outboundSchema: z.ZodType< NewDeploymentRequestAwsUnion$Outbound, NewDeploymentRequestAwsUnion > = z.union([z.lazy(() => NewDeploymentRequestAws$outboundSchema), z.any()]); export function newDeploymentRequestAwsUnionToJSON( newDeploymentRequestAwsUnion: NewDeploymentRequestAwsUnion, ): string { return JSON.stringify( NewDeploymentRequestAwsUnion$outboundSchema.parse( newDeploymentRequestAwsUnion, ), ); } /** @internal */ export type NewDeploymentRequestAzure$Outbound = { keyVaultCertificateId: string; keyVaultResourceId?: string | null | undefined; }; /** @internal */ export const NewDeploymentRequestAzure$outboundSchema: z.ZodType< NewDeploymentRequestAzure$Outbound, NewDeploymentRequestAzure > = z.object({ keyVaultCertificateId: z.string(), keyVaultResourceId: z.nullable(z.string()).optional(), }); export function newDeploymentRequestAzureToJSON( newDeploymentRequestAzure: NewDeploymentRequestAzure, ): string { return JSON.stringify( NewDeploymentRequestAzure$outboundSchema.parse(newDeploymentRequestAzure), ); } /** @internal */ export type NewDeploymentRequestAzureUnion$Outbound = | NewDeploymentRequestAzure$Outbound | any; /** @internal */ export const NewDeploymentRequestAzureUnion$outboundSchema: z.ZodType< NewDeploymentRequestAzureUnion$Outbound, NewDeploymentRequestAzureUnion > = z.union([z.lazy(() => NewDeploymentRequestAzure$outboundSchema), z.any()]); export function newDeploymentRequestAzureUnionToJSON( newDeploymentRequestAzureUnion: NewDeploymentRequestAzureUnion, ): string { return JSON.stringify( NewDeploymentRequestAzureUnion$outboundSchema.parse( newDeploymentRequestAzureUnion, ), ); } /** @internal */ export type NewDeploymentRequestGcp$Outbound = { certificateName: string; }; /** @internal */ export const NewDeploymentRequestGcp$outboundSchema: z.ZodType< NewDeploymentRequestGcp$Outbound, NewDeploymentRequestGcp > = z.object({ certificateName: z.string(), }); export function newDeploymentRequestGcpToJSON( newDeploymentRequestGcp: NewDeploymentRequestGcp, ): string { return JSON.stringify( NewDeploymentRequestGcp$outboundSchema.parse(newDeploymentRequestGcp), ); } /** @internal */ export type NewDeploymentRequestGcpUnion$Outbound = | NewDeploymentRequestGcp$Outbound | any; /** @internal */ export const NewDeploymentRequestGcpUnion$outboundSchema: z.ZodType< NewDeploymentRequestGcpUnion$Outbound, NewDeploymentRequestGcpUnion > = z.union([z.lazy(() => NewDeploymentRequestGcp$outboundSchema), z.any()]); export function newDeploymentRequestGcpUnionToJSON( newDeploymentRequestGcpUnion: NewDeploymentRequestGcpUnion, ): string { return JSON.stringify( NewDeploymentRequestGcpUnion$outboundSchema.parse( newDeploymentRequestGcpUnion, ), ); } /** @internal */ export type NewDeploymentRequestTlsSecretRef$Outbound = { namespace?: string | null | undefined; secretName: string; }; /** @internal */ export const NewDeploymentRequestTlsSecretRef$outboundSchema: z.ZodType< NewDeploymentRequestTlsSecretRef$Outbound, NewDeploymentRequestTlsSecretRef > = z.object({ namespace: z.nullable(z.string()).optional(), secretName: z.string(), }); export function newDeploymentRequestTlsSecretRefToJSON( newDeploymentRequestTlsSecretRef: NewDeploymentRequestTlsSecretRef, ): string { return JSON.stringify( NewDeploymentRequestTlsSecretRef$outboundSchema.parse( newDeploymentRequestTlsSecretRef, ), ); } /** @internal */ export type NewDeploymentRequestDomainsKubernetes$Outbound = { tlsSecretRef: NewDeploymentRequestTlsSecretRef$Outbound; }; /** @internal */ export const NewDeploymentRequestDomainsKubernetes$outboundSchema: z.ZodType< NewDeploymentRequestDomainsKubernetes$Outbound, NewDeploymentRequestDomainsKubernetes > = z.object({ tlsSecretRef: z.lazy(() => NewDeploymentRequestTlsSecretRef$outboundSchema), }); export function newDeploymentRequestDomainsKubernetesToJSON( newDeploymentRequestDomainsKubernetes: NewDeploymentRequestDomainsKubernetes, ): string { return JSON.stringify( NewDeploymentRequestDomainsKubernetes$outboundSchema.parse( newDeploymentRequestDomainsKubernetes, ), ); } /** @internal */ export type NewDeploymentRequestDomainsKubernetesUnion$Outbound = | NewDeploymentRequestDomainsKubernetes$Outbound | any; /** @internal */ export const NewDeploymentRequestDomainsKubernetesUnion$outboundSchema: z.ZodType< NewDeploymentRequestDomainsKubernetesUnion$Outbound, NewDeploymentRequestDomainsKubernetesUnion > = z.union([ z.lazy(() => NewDeploymentRequestDomainsKubernetes$outboundSchema), z.any(), ]); export function newDeploymentRequestDomainsKubernetesUnionToJSON( newDeploymentRequestDomainsKubernetesUnion: NewDeploymentRequestDomainsKubernetesUnion, ): string { return JSON.stringify( NewDeploymentRequestDomainsKubernetesUnion$outboundSchema.parse( newDeploymentRequestDomainsKubernetesUnion, ), ); } /** @internal */ export type NewDeploymentRequestDomainsCertificate$Outbound = { aws?: NewDeploymentRequestAws$Outbound | any | null | undefined; azure?: NewDeploymentRequestAzure$Outbound | any | null | undefined; gcp?: NewDeploymentRequestGcp$Outbound | any | null | undefined; kubernetes?: | NewDeploymentRequestDomainsKubernetes$Outbound | any | null | undefined; }; /** @internal */ export const NewDeploymentRequestDomainsCertificate$outboundSchema: z.ZodType< NewDeploymentRequestDomainsCertificate$Outbound, NewDeploymentRequestDomainsCertificate > = z.object({ aws: z.nullable( z.union([z.lazy(() => NewDeploymentRequestAws$outboundSchema), z.any()]), ).optional(), azure: z.nullable( z.union([z.lazy(() => NewDeploymentRequestAzure$outboundSchema), z.any()]), ).optional(), gcp: z.nullable( z.union([z.lazy(() => NewDeploymentRequestGcp$outboundSchema), z.any()]), ).optional(), kubernetes: z.nullable( z.union([ z.lazy(() => NewDeploymentRequestDomainsKubernetes$outboundSchema), z.any(), ]), ).optional(), }); export function newDeploymentRequestDomainsCertificateToJSON( newDeploymentRequestDomainsCertificate: NewDeploymentRequestDomainsCertificate, ): string { return JSON.stringify( NewDeploymentRequestDomainsCertificate$outboundSchema.parse( newDeploymentRequestDomainsCertificate, ), ); } /** @internal */ export type NewDeploymentRequestCustomDomains$Outbound = { certificate: NewDeploymentRequestDomainsCertificate$Outbound; domain: string; }; /** @internal */ export const NewDeploymentRequestCustomDomains$outboundSchema: z.ZodType< NewDeploymentRequestCustomDomains$Outbound, NewDeploymentRequestCustomDomains > = z.object({ certificate: z.lazy(() => NewDeploymentRequestDomainsCertificate$outboundSchema ), domain: z.string(), }); export function newDeploymentRequestCustomDomainsToJSON( newDeploymentRequestCustomDomains: NewDeploymentRequestCustomDomains, ): string { return JSON.stringify( NewDeploymentRequestCustomDomains$outboundSchema.parse( newDeploymentRequestCustomDomains, ), ); } /** @internal */ export const NewDeploymentRequestModeLoadBalancer$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestModeLoadBalancer > = z.enum(NewDeploymentRequestModeLoadBalancer); /** @internal */ export type NewDeploymentRequestPublicEndpointTargetLoadBalancer$Outbound = { cnameTarget: string; mode: string; }; /** @internal */ export const NewDeploymentRequestPublicEndpointTargetLoadBalancer$outboundSchema: z.ZodType< NewDeploymentRequestPublicEndpointTargetLoadBalancer$Outbound, NewDeploymentRequestPublicEndpointTargetLoadBalancer > = z.object({ cnameTarget: z.string(), mode: NewDeploymentRequestModeLoadBalancer$outboundSchema, }); export function newDeploymentRequestPublicEndpointTargetLoadBalancerToJSON( newDeploymentRequestPublicEndpointTargetLoadBalancer: NewDeploymentRequestPublicEndpointTargetLoadBalancer, ): string { return JSON.stringify( NewDeploymentRequestPublicEndpointTargetLoadBalancer$outboundSchema.parse( newDeploymentRequestPublicEndpointTargetLoadBalancer, ), ); } /** @internal */ export const NewDeploymentRequestModeMachineAddresses$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestModeMachineAddresses > = z.enum(NewDeploymentRequestModeMachineAddresses); /** @internal */ export type NewDeploymentRequestPublicEndpointTargetMachineAddresses$Outbound = { mode: string; }; /** @internal */ export const NewDeploymentRequestPublicEndpointTargetMachineAddresses$outboundSchema: z.ZodType< NewDeploymentRequestPublicEndpointTargetMachineAddresses$Outbound, NewDeploymentRequestPublicEndpointTargetMachineAddresses > = z.object({ mode: NewDeploymentRequestModeMachineAddresses$outboundSchema, }); export function newDeploymentRequestPublicEndpointTargetMachineAddressesToJSON( newDeploymentRequestPublicEndpointTargetMachineAddresses: NewDeploymentRequestPublicEndpointTargetMachineAddresses, ): string { return JSON.stringify( NewDeploymentRequestPublicEndpointTargetMachineAddresses$outboundSchema .parse(newDeploymentRequestPublicEndpointTargetMachineAddresses), ); } /** @internal */ export type NewDeploymentRequestPublicEndpointTargetUnion$Outbound = | NewDeploymentRequestPublicEndpointTargetLoadBalancer$Outbound | NewDeploymentRequestPublicEndpointTargetMachineAddresses$Outbound | any; /** @internal */ export const NewDeploymentRequestPublicEndpointTargetUnion$outboundSchema: z.ZodType< NewDeploymentRequestPublicEndpointTargetUnion$Outbound, NewDeploymentRequestPublicEndpointTargetUnion > = z.union([ z.lazy(() => NewDeploymentRequestPublicEndpointTargetLoadBalancer$outboundSchema ), z.lazy(() => NewDeploymentRequestPublicEndpointTargetMachineAddresses$outboundSchema ), z.any(), ]); export function newDeploymentRequestPublicEndpointTargetUnionToJSON( newDeploymentRequestPublicEndpointTargetUnion: NewDeploymentRequestPublicEndpointTargetUnion, ): string { return JSON.stringify( NewDeploymentRequestPublicEndpointTargetUnion$outboundSchema.parse( newDeploymentRequestPublicEndpointTargetUnion, ), ); } /** @internal */ export type NewDeploymentRequestDomains$Outbound = { customDomains?: | { [k: string]: NewDeploymentRequestCustomDomains$Outbound } | null | undefined; publicEndpointTarget?: | NewDeploymentRequestPublicEndpointTargetLoadBalancer$Outbound | NewDeploymentRequestPublicEndpointTargetMachineAddresses$Outbound | any | null | undefined; }; /** @internal */ export const NewDeploymentRequestDomains$outboundSchema: z.ZodType< NewDeploymentRequestDomains$Outbound, NewDeploymentRequestDomains > = z.object({ customDomains: z.nullable( z.record( z.string(), z.lazy(() => NewDeploymentRequestCustomDomains$outboundSchema), ), ).optional(), publicEndpointTarget: z.nullable( z.union([ z.lazy(() => NewDeploymentRequestPublicEndpointTargetLoadBalancer$outboundSchema ), z.lazy(() => NewDeploymentRequestPublicEndpointTargetMachineAddresses$outboundSchema ), z.any(), ]), ).optional(), }); export function newDeploymentRequestDomainsToJSON( newDeploymentRequestDomains: NewDeploymentRequestDomains, ): string { return JSON.stringify( NewDeploymentRequestDomains$outboundSchema.parse( newDeploymentRequestDomains, ), ); } /** @internal */ export type NewDeploymentRequestDomainsUnion$Outbound = | NewDeploymentRequestDomains$Outbound | any; /** @internal */ export const NewDeploymentRequestDomainsUnion$outboundSchema: z.ZodType< NewDeploymentRequestDomainsUnion$Outbound, NewDeploymentRequestDomainsUnion > = z.union([ z.lazy(() => NewDeploymentRequestDomains$outboundSchema), z.any(), ]); export function newDeploymentRequestDomainsUnionToJSON( newDeploymentRequestDomainsUnion: NewDeploymentRequestDomainsUnion, ): string { return JSON.stringify( NewDeploymentRequestDomainsUnion$outboundSchema.parse( newDeploymentRequestDomainsUnion, ), ); } /** @internal */ export type NewDeploymentRequestExternalBindings$Outbound = {}; /** @internal */ export const NewDeploymentRequestExternalBindings$outboundSchema: z.ZodType< NewDeploymentRequestExternalBindings$Outbound, NewDeploymentRequestExternalBindings > = z.object({}); export function newDeploymentRequestExternalBindingsToJSON( newDeploymentRequestExternalBindings: NewDeploymentRequestExternalBindings, ): string { return JSON.stringify( NewDeploymentRequestExternalBindings$outboundSchema.parse( newDeploymentRequestExternalBindings, ), ); } /** @internal */ export const NewDeploymentRequestHeartbeats$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestHeartbeats > = z.enum(NewDeploymentRequestHeartbeats); /** @internal */ export type NewDeploymentRequestCloud$Outbound = { accountId?: string | null | undefined; clusterId?: string | null | undefined; clusterName?: string | null | undefined; projectId?: string | null | undefined; region?: string | null | undefined; resourceGroup?: string | null | undefined; subscriptionId?: string | null | undefined; }; /** @internal */ export const NewDeploymentRequestCloud$outboundSchema: z.ZodType< NewDeploymentRequestCloud$Outbound, NewDeploymentRequestCloud > = z.object({ accountId: z.nullable(z.string()).optional(), clusterId: z.nullable(z.string()).optional(), clusterName: z.nullable(z.string()).optional(), projectId: z.nullable(z.string()).optional(), region: z.nullable(z.string()).optional(), resourceGroup: z.nullable(z.string()).optional(), subscriptionId: z.nullable(z.string()).optional(), }); export function newDeploymentRequestCloudToJSON( newDeploymentRequestCloud: NewDeploymentRequestCloud, ): string { return JSON.stringify( NewDeploymentRequestCloud$outboundSchema.parse(newDeploymentRequestCloud), ); } /** @internal */ export type NewDeploymentRequestCloudUnion$Outbound = | NewDeploymentRequestCloud$Outbound | any; /** @internal */ export const NewDeploymentRequestCloudUnion$outboundSchema: z.ZodType< NewDeploymentRequestCloudUnion$Outbound, NewDeploymentRequestCloudUnion > = z.union([z.lazy(() => NewDeploymentRequestCloud$outboundSchema), z.any()]); export function newDeploymentRequestCloudUnionToJSON( newDeploymentRequestCloudUnion: NewDeploymentRequestCloudUnion, ): string { return JSON.stringify( NewDeploymentRequestCloudUnion$outboundSchema.parse( newDeploymentRequestCloudUnion, ), ); } /** @internal */ export const NewDeploymentRequestOwnership$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestOwnership > = z.enum(NewDeploymentRequestOwnership); /** @internal */ export type NewDeploymentRequestCluster$Outbound = { cloud?: NewDeploymentRequestCloud$Outbound | any | null | undefined; namespace?: string | null | undefined; ownership: string; }; /** @internal */ export const NewDeploymentRequestCluster$outboundSchema: z.ZodType< NewDeploymentRequestCluster$Outbound, NewDeploymentRequestCluster > = z.object({ cloud: z.nullable( z.union([z.lazy(() => NewDeploymentRequestCloud$outboundSchema), z.any()]), ).optional(), namespace: z.nullable(z.string()).optional(), ownership: NewDeploymentRequestOwnership$outboundSchema, }); export function newDeploymentRequestClusterToJSON( newDeploymentRequestCluster: NewDeploymentRequestCluster, ): string { return JSON.stringify( NewDeploymentRequestCluster$outboundSchema.parse( newDeploymentRequestCluster, ), ); } /** @internal */ export type NewDeploymentRequestClusterUnion$Outbound = | NewDeploymentRequestCluster$Outbound | any; /** @internal */ export const NewDeploymentRequestClusterUnion$outboundSchema: z.ZodType< NewDeploymentRequestClusterUnion$Outbound, NewDeploymentRequestClusterUnion > = z.union([ z.lazy(() => NewDeploymentRequestCluster$outboundSchema), z.any(), ]); export function newDeploymentRequestClusterUnionToJSON( newDeploymentRequestClusterUnion: NewDeploymentRequestClusterUnion, ): string { return JSON.stringify( NewDeploymentRequestClusterUnion$outboundSchema.parse( newDeploymentRequestClusterUnion, ), ); } /** @internal */ export type NewDeploymentRequestCertificateNone2$Outbound = { mode: "none"; }; /** @internal */ export const NewDeploymentRequestCertificateNone2$outboundSchema: z.ZodType< NewDeploymentRequestCertificateNone2$Outbound, NewDeploymentRequestCertificateNone2 > = z.object({ mode: z.literal("none"), }); export function newDeploymentRequestCertificateNone2ToJSON( newDeploymentRequestCertificateNone2: NewDeploymentRequestCertificateNone2, ): string { return JSON.stringify( NewDeploymentRequestCertificateNone2$outboundSchema.parse( newDeploymentRequestCertificateNone2, ), ); } /** @internal */ export type NewDeploymentRequestCertificateManagedTLSSecret2$Outbound = { mode: "managedTlsSecret"; secretNameTemplate: string; }; /** @internal */ export const NewDeploymentRequestCertificateManagedTLSSecret2$outboundSchema: z.ZodType< NewDeploymentRequestCertificateManagedTLSSecret2$Outbound, NewDeploymentRequestCertificateManagedTLSSecret2 > = z.object({ mode: z.literal("managedTlsSecret"), secretNameTemplate: z.string(), }); export function newDeploymentRequestCertificateManagedTLSSecret2ToJSON( newDeploymentRequestCertificateManagedTLSSecret2: NewDeploymentRequestCertificateManagedTLSSecret2, ): string { return JSON.stringify( NewDeploymentRequestCertificateManagedTLSSecret2$outboundSchema.parse( newDeploymentRequestCertificateManagedTLSSecret2, ), ); } /** @internal */ export type NewDeploymentRequestCertificateAwsAcmArn2$Outbound = { certificateArn: string; mode: "awsAcmArn"; }; /** @internal */ export const NewDeploymentRequestCertificateAwsAcmArn2$outboundSchema: z.ZodType< NewDeploymentRequestCertificateAwsAcmArn2$Outbound, NewDeploymentRequestCertificateAwsAcmArn2 > = z.object({ certificateArn: z.string(), mode: z.literal("awsAcmArn"), }); export function newDeploymentRequestCertificateAwsAcmArn2ToJSON( newDeploymentRequestCertificateAwsAcmArn2: NewDeploymentRequestCertificateAwsAcmArn2, ): string { return JSON.stringify( NewDeploymentRequestCertificateAwsAcmArn2$outboundSchema.parse( newDeploymentRequestCertificateAwsAcmArn2, ), ); } /** @internal */ export type NewDeploymentRequestCertificateManagedAcmImport2$Outbound = { mode: "managedAcmImport"; region?: string | null | undefined; tags?: { [k: string]: string } | undefined; }; /** @internal */ export const NewDeploymentRequestCertificateManagedAcmImport2$outboundSchema: z.ZodType< NewDeploymentRequestCertificateManagedAcmImport2$Outbound, NewDeploymentRequestCertificateManagedAcmImport2 > = z.object({ mode: z.literal("managedAcmImport"), region: z.nullable(z.string()).optional(), tags: z.record(z.string(), z.string()).optional(), }); export function newDeploymentRequestCertificateManagedAcmImport2ToJSON( newDeploymentRequestCertificateManagedAcmImport2: NewDeploymentRequestCertificateManagedAcmImport2, ): string { return JSON.stringify( NewDeploymentRequestCertificateManagedAcmImport2$outboundSchema.parse( newDeploymentRequestCertificateManagedAcmImport2, ), ); } /** @internal */ export type NewDeploymentRequestCertificateTLSSecretRef2$Outbound = { namespace?: string | null | undefined; secretName: string; mode: "tlsSecretRef"; }; /** @internal */ export const NewDeploymentRequestCertificateTLSSecretRef2$outboundSchema: z.ZodType< NewDeploymentRequestCertificateTLSSecretRef2$Outbound, NewDeploymentRequestCertificateTLSSecretRef2 > = z.object({ namespace: z.nullable(z.string()).optional(), secretName: z.string(), mode: z.literal("tlsSecretRef"), }); export function newDeploymentRequestCertificateTLSSecretRef2ToJSON( newDeploymentRequestCertificateTLSSecretRef2: NewDeploymentRequestCertificateTLSSecretRef2, ): string { return JSON.stringify( NewDeploymentRequestCertificateTLSSecretRef2$outboundSchema.parse( newDeploymentRequestCertificateTLSSecretRef2, ), ); } /** @internal */ export type NewDeploymentRequestCertificateUnion2$Outbound = | NewDeploymentRequestCertificateTLSSecretRef2$Outbound | NewDeploymentRequestCertificateManagedAcmImport2$Outbound | NewDeploymentRequestCertificateAwsAcmArn2$Outbound | NewDeploymentRequestCertificateManagedTLSSecret2$Outbound | NewDeploymentRequestCertificateNone2$Outbound; /** @internal */ export const NewDeploymentRequestCertificateUnion2$outboundSchema: z.ZodType< NewDeploymentRequestCertificateUnion2$Outbound, NewDeploymentRequestCertificateUnion2 > = z.union([ z.lazy(() => NewDeploymentRequestCertificateTLSSecretRef2$outboundSchema), z.lazy(() => NewDeploymentRequestCertificateManagedAcmImport2$outboundSchema), z.lazy(() => NewDeploymentRequestCertificateAwsAcmArn2$outboundSchema), z.lazy(() => NewDeploymentRequestCertificateManagedTLSSecret2$outboundSchema), z.lazy(() => NewDeploymentRequestCertificateNone2$outboundSchema), ]); export function newDeploymentRequestCertificateUnion2ToJSON( newDeploymentRequestCertificateUnion2: NewDeploymentRequestCertificateUnion2, ): string { return JSON.stringify( NewDeploymentRequestCertificateUnion2$outboundSchema.parse( newDeploymentRequestCertificateUnion2, ), ); } /** @internal */ export const NewDeploymentRequestModeCustom$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestModeCustom > = z.enum(NewDeploymentRequestModeCustom); /** @internal */ export const NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum4$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum4 > = z.enum( NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum4, ); /** @internal */ export type NewDeploymentRequestProviderAzureApplicationGatewayForContainers4$Outbound = { albName?: string | null | undefined; albNamespace?: string | null | undefined; frontend: string; provider: string; }; /** @internal */ export const NewDeploymentRequestProviderAzureApplicationGatewayForContainers4$outboundSchema: z.ZodType< NewDeploymentRequestProviderAzureApplicationGatewayForContainers4$Outbound, NewDeploymentRequestProviderAzureApplicationGatewayForContainers4 > = z.object({ albName: z.nullable(z.string()).optional(), albNamespace: z.nullable(z.string()).optional(), frontend: z.string(), provider: NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum4$outboundSchema, }); export function newDeploymentRequestProviderAzureApplicationGatewayForContainers4ToJSON( newDeploymentRequestProviderAzureApplicationGatewayForContainers4: NewDeploymentRequestProviderAzureApplicationGatewayForContainers4, ): string { return JSON.stringify( NewDeploymentRequestProviderAzureApplicationGatewayForContainers4$outboundSchema .parse(newDeploymentRequestProviderAzureApplicationGatewayForContainers4), ); } /** @internal */ export const NewDeploymentRequestProviderGkeGatewayEnum4$outboundSchema: z.ZodEnum = z.enum( NewDeploymentRequestProviderGkeGatewayEnum4, ); /** @internal */ export type NewDeploymentRequestProviderGkeGateway4$Outbound = { provider: string; staticAddressName?: string | null | undefined; }; /** @internal */ export const NewDeploymentRequestProviderGkeGateway4$outboundSchema: z.ZodType< NewDeploymentRequestProviderGkeGateway4$Outbound, NewDeploymentRequestProviderGkeGateway4 > = z.object({ provider: NewDeploymentRequestProviderGkeGatewayEnum4$outboundSchema, staticAddressName: z.nullable(z.string()).optional(), }); export function newDeploymentRequestProviderGkeGateway4ToJSON( newDeploymentRequestProviderGkeGateway4: NewDeploymentRequestProviderGkeGateway4, ): string { return JSON.stringify( NewDeploymentRequestProviderGkeGateway4$outboundSchema.parse( newDeploymentRequestProviderGkeGateway4, ), ); } /** @internal */ export const NewDeploymentRequestProviderAwsAlbEnum4$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestProviderAwsAlbEnum4 > = z.enum(NewDeploymentRequestProviderAwsAlbEnum4); /** @internal */ export type NewDeploymentRequestProviderAwsAlb4$Outbound = { ipAddressType?: string | null | undefined; provider: string; scheme: string; subnetIds?: Array | undefined; targetType: string; }; /** @internal */ export const NewDeploymentRequestProviderAwsAlb4$outboundSchema: z.ZodType< NewDeploymentRequestProviderAwsAlb4$Outbound, NewDeploymentRequestProviderAwsAlb4 > = z.object({ ipAddressType: z.nullable(z.string()).optional(), provider: NewDeploymentRequestProviderAwsAlbEnum4$outboundSchema, scheme: z.string(), subnetIds: z.array(z.string()).optional(), targetType: z.string(), }); export function newDeploymentRequestProviderAwsAlb4ToJSON( newDeploymentRequestProviderAwsAlb4: NewDeploymentRequestProviderAwsAlb4, ): string { return JSON.stringify( NewDeploymentRequestProviderAwsAlb4$outboundSchema.parse( newDeploymentRequestProviderAwsAlb4, ), ); } /** @internal */ export type NewDeploymentRequestProviderUnion4$Outbound = | NewDeploymentRequestProviderAwsAlb4$Outbound | NewDeploymentRequestProviderAzureApplicationGatewayForContainers4$Outbound | NewDeploymentRequestProviderGkeGateway4$Outbound | any; /** @internal */ export const NewDeploymentRequestProviderUnion4$outboundSchema: z.ZodType< NewDeploymentRequestProviderUnion4$Outbound, NewDeploymentRequestProviderUnion4 > = z.union([ z.lazy(() => NewDeploymentRequestProviderAwsAlb4$outboundSchema), z.lazy(() => NewDeploymentRequestProviderAzureApplicationGatewayForContainers4$outboundSchema ), z.lazy(() => NewDeploymentRequestProviderGkeGateway4$outboundSchema), z.any(), ]); export function newDeploymentRequestProviderUnion4ToJSON( newDeploymentRequestProviderUnion4: NewDeploymentRequestProviderUnion4, ): string { return JSON.stringify( NewDeploymentRequestProviderUnion4$outboundSchema.parse( newDeploymentRequestProviderUnion4, ), ); } /** @internal */ export type NewDeploymentRequestRouteGateway2$Outbound = { annotations?: { [k: string]: string } | undefined; controller?: string | null | undefined; gatewayClassName: string; labels?: { [k: string]: string } | undefined; listenerPort: number; provider?: | NewDeploymentRequestProviderAwsAlb4$Outbound | NewDeploymentRequestProviderAzureApplicationGatewayForContainers4$Outbound | NewDeploymentRequestProviderGkeGateway4$Outbound | any | null | undefined; routeApi: "gateway"; }; /** @internal */ export const NewDeploymentRequestRouteGateway2$outboundSchema: z.ZodType< NewDeploymentRequestRouteGateway2$Outbound, NewDeploymentRequestRouteGateway2 > = z.object({ annotations: z.record(z.string(), z.string()).optional(), controller: z.nullable(z.string()).optional(), gatewayClassName: z.string(), labels: z.record(z.string(), z.string()).optional(), listenerPort: z.int(), provider: z.nullable( z.union([ z.lazy(() => NewDeploymentRequestProviderAwsAlb4$outboundSchema), z.lazy(() => NewDeploymentRequestProviderAzureApplicationGatewayForContainers4$outboundSchema ), z.lazy(() => NewDeploymentRequestProviderGkeGateway4$outboundSchema), z.any(), ]), ).optional(), routeApi: z.literal("gateway"), }); export function newDeploymentRequestRouteGateway2ToJSON( newDeploymentRequestRouteGateway2: NewDeploymentRequestRouteGateway2, ): string { return JSON.stringify( NewDeploymentRequestRouteGateway2$outboundSchema.parse( newDeploymentRequestRouteGateway2, ), ); } /** @internal */ export const NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum3$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum3 > = z.enum( NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum3, ); /** @internal */ export type NewDeploymentRequestProviderAzureApplicationGatewayForContainers3$Outbound = { albName?: string | null | undefined; albNamespace?: string | null | undefined; frontend: string; provider: string; }; /** @internal */ export const NewDeploymentRequestProviderAzureApplicationGatewayForContainers3$outboundSchema: z.ZodType< NewDeploymentRequestProviderAzureApplicationGatewayForContainers3$Outbound, NewDeploymentRequestProviderAzureApplicationGatewayForContainers3 > = z.object({ albName: z.nullable(z.string()).optional(), albNamespace: z.nullable(z.string()).optional(), frontend: z.string(), provider: NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum3$outboundSchema, }); export function newDeploymentRequestProviderAzureApplicationGatewayForContainers3ToJSON( newDeploymentRequestProviderAzureApplicationGatewayForContainers3: NewDeploymentRequestProviderAzureApplicationGatewayForContainers3, ): string { return JSON.stringify( NewDeploymentRequestProviderAzureApplicationGatewayForContainers3$outboundSchema .parse(newDeploymentRequestProviderAzureApplicationGatewayForContainers3), ); } /** @internal */ export const NewDeploymentRequestProviderGkeGatewayEnum3$outboundSchema: z.ZodEnum = z.enum( NewDeploymentRequestProviderGkeGatewayEnum3, ); /** @internal */ export type NewDeploymentRequestProviderGkeGateway3$Outbound = { provider: string; staticAddressName?: string | null | undefined; }; /** @internal */ export const NewDeploymentRequestProviderGkeGateway3$outboundSchema: z.ZodType< NewDeploymentRequestProviderGkeGateway3$Outbound, NewDeploymentRequestProviderGkeGateway3 > = z.object({ provider: NewDeploymentRequestProviderGkeGatewayEnum3$outboundSchema, staticAddressName: z.nullable(z.string()).optional(), }); export function newDeploymentRequestProviderGkeGateway3ToJSON( newDeploymentRequestProviderGkeGateway3: NewDeploymentRequestProviderGkeGateway3, ): string { return JSON.stringify( NewDeploymentRequestProviderGkeGateway3$outboundSchema.parse( newDeploymentRequestProviderGkeGateway3, ), ); } /** @internal */ export const NewDeploymentRequestProviderAwsAlbEnum3$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestProviderAwsAlbEnum3 > = z.enum(NewDeploymentRequestProviderAwsAlbEnum3); /** @internal */ export type NewDeploymentRequestProviderAwsAlb3$Outbound = { ipAddressType?: string | null | undefined; provider: string; scheme: string; subnetIds?: Array | undefined; targetType: string; }; /** @internal */ export const NewDeploymentRequestProviderAwsAlb3$outboundSchema: z.ZodType< NewDeploymentRequestProviderAwsAlb3$Outbound, NewDeploymentRequestProviderAwsAlb3 > = z.object({ ipAddressType: z.nullable(z.string()).optional(), provider: NewDeploymentRequestProviderAwsAlbEnum3$outboundSchema, scheme: z.string(), subnetIds: z.array(z.string()).optional(), targetType: z.string(), }); export function newDeploymentRequestProviderAwsAlb3ToJSON( newDeploymentRequestProviderAwsAlb3: NewDeploymentRequestProviderAwsAlb3, ): string { return JSON.stringify( NewDeploymentRequestProviderAwsAlb3$outboundSchema.parse( newDeploymentRequestProviderAwsAlb3, ), ); } /** @internal */ export type NewDeploymentRequestProviderUnion3$Outbound = | NewDeploymentRequestProviderAwsAlb3$Outbound | NewDeploymentRequestProviderAzureApplicationGatewayForContainers3$Outbound | NewDeploymentRequestProviderGkeGateway3$Outbound | any; /** @internal */ export const NewDeploymentRequestProviderUnion3$outboundSchema: z.ZodType< NewDeploymentRequestProviderUnion3$Outbound, NewDeploymentRequestProviderUnion3 > = z.union([ z.lazy(() => NewDeploymentRequestProviderAwsAlb3$outboundSchema), z.lazy(() => NewDeploymentRequestProviderAzureApplicationGatewayForContainers3$outboundSchema ), z.lazy(() => NewDeploymentRequestProviderGkeGateway3$outboundSchema), z.any(), ]); export function newDeploymentRequestProviderUnion3ToJSON( newDeploymentRequestProviderUnion3: NewDeploymentRequestProviderUnion3, ): string { return JSON.stringify( NewDeploymentRequestProviderUnion3$outboundSchema.parse( newDeploymentRequestProviderUnion3, ), ); } /** @internal */ export type NewDeploymentRequestRouteIngress2$Outbound = { annotations?: { [k: string]: string } | undefined; controller?: string | null | undefined; ingressClassName: string; labels?: { [k: string]: string } | undefined; provider?: | NewDeploymentRequestProviderAwsAlb3$Outbound | NewDeploymentRequestProviderAzureApplicationGatewayForContainers3$Outbound | NewDeploymentRequestProviderGkeGateway3$Outbound | any | null | undefined; routeApi: "ingress"; }; /** @internal */ export const NewDeploymentRequestRouteIngress2$outboundSchema: z.ZodType< NewDeploymentRequestRouteIngress2$Outbound, NewDeploymentRequestRouteIngress2 > = z.object({ annotations: z.record(z.string(), z.string()).optional(), controller: z.nullable(z.string()).optional(), ingressClassName: z.string(), labels: z.record(z.string(), z.string()).optional(), provider: z.nullable( z.union([ z.lazy(() => NewDeploymentRequestProviderAwsAlb3$outboundSchema), z.lazy(() => NewDeploymentRequestProviderAzureApplicationGatewayForContainers3$outboundSchema ), z.lazy(() => NewDeploymentRequestProviderGkeGateway3$outboundSchema), z.any(), ]), ).optional(), routeApi: z.literal("ingress"), }); export function newDeploymentRequestRouteIngress2ToJSON( newDeploymentRequestRouteIngress2: NewDeploymentRequestRouteIngress2, ): string { return JSON.stringify( NewDeploymentRequestRouteIngress2$outboundSchema.parse( newDeploymentRequestRouteIngress2, ), ); } /** @internal */ export type NewDeploymentRequestRouteUnion2$Outbound = | NewDeploymentRequestRouteIngress2$Outbound | NewDeploymentRequestRouteGateway2$Outbound; /** @internal */ export const NewDeploymentRequestRouteUnion2$outboundSchema: z.ZodType< NewDeploymentRequestRouteUnion2$Outbound, NewDeploymentRequestRouteUnion2 > = z.union([ z.lazy(() => NewDeploymentRequestRouteIngress2$outboundSchema), z.lazy(() => NewDeploymentRequestRouteGateway2$outboundSchema), ]); export function newDeploymentRequestRouteUnion2ToJSON( newDeploymentRequestRouteUnion2: NewDeploymentRequestRouteUnion2, ): string { return JSON.stringify( NewDeploymentRequestRouteUnion2$outboundSchema.parse( newDeploymentRequestRouteUnion2, ), ); } /** @internal */ export type NewDeploymentRequestExposureCustom$Outbound = { certificate: | NewDeploymentRequestCertificateTLSSecretRef2$Outbound | NewDeploymentRequestCertificateManagedAcmImport2$Outbound | NewDeploymentRequestCertificateAwsAcmArn2$Outbound | NewDeploymentRequestCertificateManagedTLSSecret2$Outbound | NewDeploymentRequestCertificateNone2$Outbound; domain: string; mode: string; route: | NewDeploymentRequestRouteIngress2$Outbound | NewDeploymentRequestRouteGateway2$Outbound; }; /** @internal */ export const NewDeploymentRequestExposureCustom$outboundSchema: z.ZodType< NewDeploymentRequestExposureCustom$Outbound, NewDeploymentRequestExposureCustom > = z.object({ certificate: z.union([ z.lazy(() => NewDeploymentRequestCertificateTLSSecretRef2$outboundSchema), z.lazy(() => NewDeploymentRequestCertificateManagedAcmImport2$outboundSchema ), z.lazy(() => NewDeploymentRequestCertificateAwsAcmArn2$outboundSchema), z.lazy(() => NewDeploymentRequestCertificateManagedTLSSecret2$outboundSchema ), z.lazy(() => NewDeploymentRequestCertificateNone2$outboundSchema), ]), domain: z.string(), mode: NewDeploymentRequestModeCustom$outboundSchema, route: z.union([ z.lazy(() => NewDeploymentRequestRouteIngress2$outboundSchema), z.lazy(() => NewDeploymentRequestRouteGateway2$outboundSchema), ]), }); export function newDeploymentRequestExposureCustomToJSON( newDeploymentRequestExposureCustom: NewDeploymentRequestExposureCustom, ): string { return JSON.stringify( NewDeploymentRequestExposureCustom$outboundSchema.parse( newDeploymentRequestExposureCustom, ), ); } /** @internal */ export type NewDeploymentRequestCertificateNone1$Outbound = { mode: "none"; }; /** @internal */ export const NewDeploymentRequestCertificateNone1$outboundSchema: z.ZodType< NewDeploymentRequestCertificateNone1$Outbound, NewDeploymentRequestCertificateNone1 > = z.object({ mode: z.literal("none"), }); export function newDeploymentRequestCertificateNone1ToJSON( newDeploymentRequestCertificateNone1: NewDeploymentRequestCertificateNone1, ): string { return JSON.stringify( NewDeploymentRequestCertificateNone1$outboundSchema.parse( newDeploymentRequestCertificateNone1, ), ); } /** @internal */ export type NewDeploymentRequestCertificateManagedTLSSecret1$Outbound = { mode: "managedTlsSecret"; secretNameTemplate: string; }; /** @internal */ export const NewDeploymentRequestCertificateManagedTLSSecret1$outboundSchema: z.ZodType< NewDeploymentRequestCertificateManagedTLSSecret1$Outbound, NewDeploymentRequestCertificateManagedTLSSecret1 > = z.object({ mode: z.literal("managedTlsSecret"), secretNameTemplate: z.string(), }); export function newDeploymentRequestCertificateManagedTLSSecret1ToJSON( newDeploymentRequestCertificateManagedTLSSecret1: NewDeploymentRequestCertificateManagedTLSSecret1, ): string { return JSON.stringify( NewDeploymentRequestCertificateManagedTLSSecret1$outboundSchema.parse( newDeploymentRequestCertificateManagedTLSSecret1, ), ); } /** @internal */ export type NewDeploymentRequestCertificateAwsAcmArn1$Outbound = { certificateArn: string; mode: "awsAcmArn"; }; /** @internal */ export const NewDeploymentRequestCertificateAwsAcmArn1$outboundSchema: z.ZodType< NewDeploymentRequestCertificateAwsAcmArn1$Outbound, NewDeploymentRequestCertificateAwsAcmArn1 > = z.object({ certificateArn: z.string(), mode: z.literal("awsAcmArn"), }); export function newDeploymentRequestCertificateAwsAcmArn1ToJSON( newDeploymentRequestCertificateAwsAcmArn1: NewDeploymentRequestCertificateAwsAcmArn1, ): string { return JSON.stringify( NewDeploymentRequestCertificateAwsAcmArn1$outboundSchema.parse( newDeploymentRequestCertificateAwsAcmArn1, ), ); } /** @internal */ export type NewDeploymentRequestCertificateManagedAcmImport1$Outbound = { mode: "managedAcmImport"; region?: string | null | undefined; tags?: { [k: string]: string } | undefined; }; /** @internal */ export const NewDeploymentRequestCertificateManagedAcmImport1$outboundSchema: z.ZodType< NewDeploymentRequestCertificateManagedAcmImport1$Outbound, NewDeploymentRequestCertificateManagedAcmImport1 > = z.object({ mode: z.literal("managedAcmImport"), region: z.nullable(z.string()).optional(), tags: z.record(z.string(), z.string()).optional(), }); export function newDeploymentRequestCertificateManagedAcmImport1ToJSON( newDeploymentRequestCertificateManagedAcmImport1: NewDeploymentRequestCertificateManagedAcmImport1, ): string { return JSON.stringify( NewDeploymentRequestCertificateManagedAcmImport1$outboundSchema.parse( newDeploymentRequestCertificateManagedAcmImport1, ), ); } /** @internal */ export type NewDeploymentRequestCertificateTLSSecretRef1$Outbound = { namespace?: string | null | undefined; secretName: string; mode: "tlsSecretRef"; }; /** @internal */ export const NewDeploymentRequestCertificateTLSSecretRef1$outboundSchema: z.ZodType< NewDeploymentRequestCertificateTLSSecretRef1$Outbound, NewDeploymentRequestCertificateTLSSecretRef1 > = z.object({ namespace: z.nullable(z.string()).optional(), secretName: z.string(), mode: z.literal("tlsSecretRef"), }); export function newDeploymentRequestCertificateTLSSecretRef1ToJSON( newDeploymentRequestCertificateTLSSecretRef1: NewDeploymentRequestCertificateTLSSecretRef1, ): string { return JSON.stringify( NewDeploymentRequestCertificateTLSSecretRef1$outboundSchema.parse( newDeploymentRequestCertificateTLSSecretRef1, ), ); } /** @internal */ export type NewDeploymentRequestCertificateUnion1$Outbound = | NewDeploymentRequestCertificateTLSSecretRef1$Outbound | NewDeploymentRequestCertificateManagedAcmImport1$Outbound | NewDeploymentRequestCertificateAwsAcmArn1$Outbound | NewDeploymentRequestCertificateManagedTLSSecret1$Outbound | NewDeploymentRequestCertificateNone1$Outbound; /** @internal */ export const NewDeploymentRequestCertificateUnion1$outboundSchema: z.ZodType< NewDeploymentRequestCertificateUnion1$Outbound, NewDeploymentRequestCertificateUnion1 > = z.union([ z.lazy(() => NewDeploymentRequestCertificateTLSSecretRef1$outboundSchema), z.lazy(() => NewDeploymentRequestCertificateManagedAcmImport1$outboundSchema), z.lazy(() => NewDeploymentRequestCertificateAwsAcmArn1$outboundSchema), z.lazy(() => NewDeploymentRequestCertificateManagedTLSSecret1$outboundSchema), z.lazy(() => NewDeploymentRequestCertificateNone1$outboundSchema), ]); export function newDeploymentRequestCertificateUnion1ToJSON( newDeploymentRequestCertificateUnion1: NewDeploymentRequestCertificateUnion1, ): string { return JSON.stringify( NewDeploymentRequestCertificateUnion1$outboundSchema.parse( newDeploymentRequestCertificateUnion1, ), ); } /** @internal */ export const NewDeploymentRequestModeGenerated$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestModeGenerated > = z.enum(NewDeploymentRequestModeGenerated); /** @internal */ export const NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum2$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum2 > = z.enum( NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum2, ); /** @internal */ export type NewDeploymentRequestProviderAzureApplicationGatewayForContainers2$Outbound = { albName?: string | null | undefined; albNamespace?: string | null | undefined; frontend: string; provider: string; }; /** @internal */ export const NewDeploymentRequestProviderAzureApplicationGatewayForContainers2$outboundSchema: z.ZodType< NewDeploymentRequestProviderAzureApplicationGatewayForContainers2$Outbound, NewDeploymentRequestProviderAzureApplicationGatewayForContainers2 > = z.object({ albName: z.nullable(z.string()).optional(), albNamespace: z.nullable(z.string()).optional(), frontend: z.string(), provider: NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum2$outboundSchema, }); export function newDeploymentRequestProviderAzureApplicationGatewayForContainers2ToJSON( newDeploymentRequestProviderAzureApplicationGatewayForContainers2: NewDeploymentRequestProviderAzureApplicationGatewayForContainers2, ): string { return JSON.stringify( NewDeploymentRequestProviderAzureApplicationGatewayForContainers2$outboundSchema .parse(newDeploymentRequestProviderAzureApplicationGatewayForContainers2), ); } /** @internal */ export const NewDeploymentRequestProviderGkeGatewayEnum2$outboundSchema: z.ZodEnum = z.enum( NewDeploymentRequestProviderGkeGatewayEnum2, ); /** @internal */ export type NewDeploymentRequestProviderGkeGateway2$Outbound = { provider: string; staticAddressName?: string | null | undefined; }; /** @internal */ export const NewDeploymentRequestProviderGkeGateway2$outboundSchema: z.ZodType< NewDeploymentRequestProviderGkeGateway2$Outbound, NewDeploymentRequestProviderGkeGateway2 > = z.object({ provider: NewDeploymentRequestProviderGkeGatewayEnum2$outboundSchema, staticAddressName: z.nullable(z.string()).optional(), }); export function newDeploymentRequestProviderGkeGateway2ToJSON( newDeploymentRequestProviderGkeGateway2: NewDeploymentRequestProviderGkeGateway2, ): string { return JSON.stringify( NewDeploymentRequestProviderGkeGateway2$outboundSchema.parse( newDeploymentRequestProviderGkeGateway2, ), ); } /** @internal */ export const NewDeploymentRequestProviderAwsAlbEnum2$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestProviderAwsAlbEnum2 > = z.enum(NewDeploymentRequestProviderAwsAlbEnum2); /** @internal */ export type NewDeploymentRequestProviderAwsAlb2$Outbound = { ipAddressType?: string | null | undefined; provider: string; scheme: string; subnetIds?: Array | undefined; targetType: string; }; /** @internal */ export const NewDeploymentRequestProviderAwsAlb2$outboundSchema: z.ZodType< NewDeploymentRequestProviderAwsAlb2$Outbound, NewDeploymentRequestProviderAwsAlb2 > = z.object({ ipAddressType: z.nullable(z.string()).optional(), provider: NewDeploymentRequestProviderAwsAlbEnum2$outboundSchema, scheme: z.string(), subnetIds: z.array(z.string()).optional(), targetType: z.string(), }); export function newDeploymentRequestProviderAwsAlb2ToJSON( newDeploymentRequestProviderAwsAlb2: NewDeploymentRequestProviderAwsAlb2, ): string { return JSON.stringify( NewDeploymentRequestProviderAwsAlb2$outboundSchema.parse( newDeploymentRequestProviderAwsAlb2, ), ); } /** @internal */ export type NewDeploymentRequestProviderUnion2$Outbound = | NewDeploymentRequestProviderAwsAlb2$Outbound | NewDeploymentRequestProviderAzureApplicationGatewayForContainers2$Outbound | NewDeploymentRequestProviderGkeGateway2$Outbound | any; /** @internal */ export const NewDeploymentRequestProviderUnion2$outboundSchema: z.ZodType< NewDeploymentRequestProviderUnion2$Outbound, NewDeploymentRequestProviderUnion2 > = z.union([ z.lazy(() => NewDeploymentRequestProviderAwsAlb2$outboundSchema), z.lazy(() => NewDeploymentRequestProviderAzureApplicationGatewayForContainers2$outboundSchema ), z.lazy(() => NewDeploymentRequestProviderGkeGateway2$outboundSchema), z.any(), ]); export function newDeploymentRequestProviderUnion2ToJSON( newDeploymentRequestProviderUnion2: NewDeploymentRequestProviderUnion2, ): string { return JSON.stringify( NewDeploymentRequestProviderUnion2$outboundSchema.parse( newDeploymentRequestProviderUnion2, ), ); } /** @internal */ export type NewDeploymentRequestRouteGateway1$Outbound = { annotations?: { [k: string]: string } | undefined; controller?: string | null | undefined; gatewayClassName: string; labels?: { [k: string]: string } | undefined; listenerPort: number; provider?: | NewDeploymentRequestProviderAwsAlb2$Outbound | NewDeploymentRequestProviderAzureApplicationGatewayForContainers2$Outbound | NewDeploymentRequestProviderGkeGateway2$Outbound | any | null | undefined; routeApi: "gateway"; }; /** @internal */ export const NewDeploymentRequestRouteGateway1$outboundSchema: z.ZodType< NewDeploymentRequestRouteGateway1$Outbound, NewDeploymentRequestRouteGateway1 > = z.object({ annotations: z.record(z.string(), z.string()).optional(), controller: z.nullable(z.string()).optional(), gatewayClassName: z.string(), labels: z.record(z.string(), z.string()).optional(), listenerPort: z.int(), provider: z.nullable( z.union([ z.lazy(() => NewDeploymentRequestProviderAwsAlb2$outboundSchema), z.lazy(() => NewDeploymentRequestProviderAzureApplicationGatewayForContainers2$outboundSchema ), z.lazy(() => NewDeploymentRequestProviderGkeGateway2$outboundSchema), z.any(), ]), ).optional(), routeApi: z.literal("gateway"), }); export function newDeploymentRequestRouteGateway1ToJSON( newDeploymentRequestRouteGateway1: NewDeploymentRequestRouteGateway1, ): string { return JSON.stringify( NewDeploymentRequestRouteGateway1$outboundSchema.parse( newDeploymentRequestRouteGateway1, ), ); } /** @internal */ export const NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum1$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum1 > = z.enum( NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum1, ); /** @internal */ export type NewDeploymentRequestProviderAzureApplicationGatewayForContainers1$Outbound = { albName?: string | null | undefined; albNamespace?: string | null | undefined; frontend: string; provider: string; }; /** @internal */ export const NewDeploymentRequestProviderAzureApplicationGatewayForContainers1$outboundSchema: z.ZodType< NewDeploymentRequestProviderAzureApplicationGatewayForContainers1$Outbound, NewDeploymentRequestProviderAzureApplicationGatewayForContainers1 > = z.object({ albName: z.nullable(z.string()).optional(), albNamespace: z.nullable(z.string()).optional(), frontend: z.string(), provider: NewDeploymentRequestProviderAzureApplicationGatewayForContainersEnum1$outboundSchema, }); export function newDeploymentRequestProviderAzureApplicationGatewayForContainers1ToJSON( newDeploymentRequestProviderAzureApplicationGatewayForContainers1: NewDeploymentRequestProviderAzureApplicationGatewayForContainers1, ): string { return JSON.stringify( NewDeploymentRequestProviderAzureApplicationGatewayForContainers1$outboundSchema .parse(newDeploymentRequestProviderAzureApplicationGatewayForContainers1), ); } /** @internal */ export const NewDeploymentRequestProviderGkeGatewayEnum1$outboundSchema: z.ZodEnum = z.enum( NewDeploymentRequestProviderGkeGatewayEnum1, ); /** @internal */ export type NewDeploymentRequestProviderGkeGateway1$Outbound = { provider: string; staticAddressName?: string | null | undefined; }; /** @internal */ export const NewDeploymentRequestProviderGkeGateway1$outboundSchema: z.ZodType< NewDeploymentRequestProviderGkeGateway1$Outbound, NewDeploymentRequestProviderGkeGateway1 > = z.object({ provider: NewDeploymentRequestProviderGkeGatewayEnum1$outboundSchema, staticAddressName: z.nullable(z.string()).optional(), }); export function newDeploymentRequestProviderGkeGateway1ToJSON( newDeploymentRequestProviderGkeGateway1: NewDeploymentRequestProviderGkeGateway1, ): string { return JSON.stringify( NewDeploymentRequestProviderGkeGateway1$outboundSchema.parse( newDeploymentRequestProviderGkeGateway1, ), ); } /** @internal */ export const NewDeploymentRequestProviderAwsAlbEnum1$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestProviderAwsAlbEnum1 > = z.enum(NewDeploymentRequestProviderAwsAlbEnum1); /** @internal */ export type NewDeploymentRequestProviderAwsAlb1$Outbound = { ipAddressType?: string | null | undefined; provider: string; scheme: string; subnetIds?: Array | undefined; targetType: string; }; /** @internal */ export const NewDeploymentRequestProviderAwsAlb1$outboundSchema: z.ZodType< NewDeploymentRequestProviderAwsAlb1$Outbound, NewDeploymentRequestProviderAwsAlb1 > = z.object({ ipAddressType: z.nullable(z.string()).optional(), provider: NewDeploymentRequestProviderAwsAlbEnum1$outboundSchema, scheme: z.string(), subnetIds: z.array(z.string()).optional(), targetType: z.string(), }); export function newDeploymentRequestProviderAwsAlb1ToJSON( newDeploymentRequestProviderAwsAlb1: NewDeploymentRequestProviderAwsAlb1, ): string { return JSON.stringify( NewDeploymentRequestProviderAwsAlb1$outboundSchema.parse( newDeploymentRequestProviderAwsAlb1, ), ); } /** @internal */ export type NewDeploymentRequestProviderUnion1$Outbound = | NewDeploymentRequestProviderAwsAlb1$Outbound | NewDeploymentRequestProviderAzureApplicationGatewayForContainers1$Outbound | NewDeploymentRequestProviderGkeGateway1$Outbound | any; /** @internal */ export const NewDeploymentRequestProviderUnion1$outboundSchema: z.ZodType< NewDeploymentRequestProviderUnion1$Outbound, NewDeploymentRequestProviderUnion1 > = z.union([ z.lazy(() => NewDeploymentRequestProviderAwsAlb1$outboundSchema), z.lazy(() => NewDeploymentRequestProviderAzureApplicationGatewayForContainers1$outboundSchema ), z.lazy(() => NewDeploymentRequestProviderGkeGateway1$outboundSchema), z.any(), ]); export function newDeploymentRequestProviderUnion1ToJSON( newDeploymentRequestProviderUnion1: NewDeploymentRequestProviderUnion1, ): string { return JSON.stringify( NewDeploymentRequestProviderUnion1$outboundSchema.parse( newDeploymentRequestProviderUnion1, ), ); } /** @internal */ export type NewDeploymentRequestRouteIngress1$Outbound = { annotations?: { [k: string]: string } | undefined; controller?: string | null | undefined; ingressClassName: string; labels?: { [k: string]: string } | undefined; provider?: | NewDeploymentRequestProviderAwsAlb1$Outbound | NewDeploymentRequestProviderAzureApplicationGatewayForContainers1$Outbound | NewDeploymentRequestProviderGkeGateway1$Outbound | any | null | undefined; routeApi: "ingress"; }; /** @internal */ export const NewDeploymentRequestRouteIngress1$outboundSchema: z.ZodType< NewDeploymentRequestRouteIngress1$Outbound, NewDeploymentRequestRouteIngress1 > = z.object({ annotations: z.record(z.string(), z.string()).optional(), controller: z.nullable(z.string()).optional(), ingressClassName: z.string(), labels: z.record(z.string(), z.string()).optional(), provider: z.nullable( z.union([ z.lazy(() => NewDeploymentRequestProviderAwsAlb1$outboundSchema), z.lazy(() => NewDeploymentRequestProviderAzureApplicationGatewayForContainers1$outboundSchema ), z.lazy(() => NewDeploymentRequestProviderGkeGateway1$outboundSchema), z.any(), ]), ).optional(), routeApi: z.literal("ingress"), }); export function newDeploymentRequestRouteIngress1ToJSON( newDeploymentRequestRouteIngress1: NewDeploymentRequestRouteIngress1, ): string { return JSON.stringify( NewDeploymentRequestRouteIngress1$outboundSchema.parse( newDeploymentRequestRouteIngress1, ), ); } /** @internal */ export type NewDeploymentRequestRouteUnion1$Outbound = | NewDeploymentRequestRouteIngress1$Outbound | NewDeploymentRequestRouteGateway1$Outbound; /** @internal */ export const NewDeploymentRequestRouteUnion1$outboundSchema: z.ZodType< NewDeploymentRequestRouteUnion1$Outbound, NewDeploymentRequestRouteUnion1 > = z.union([ z.lazy(() => NewDeploymentRequestRouteIngress1$outboundSchema), z.lazy(() => NewDeploymentRequestRouteGateway1$outboundSchema), ]); export function newDeploymentRequestRouteUnion1ToJSON( newDeploymentRequestRouteUnion1: NewDeploymentRequestRouteUnion1, ): string { return JSON.stringify( NewDeploymentRequestRouteUnion1$outboundSchema.parse( newDeploymentRequestRouteUnion1, ), ); } /** @internal */ export type NewDeploymentRequestExposureGenerated$Outbound = { certificate: | NewDeploymentRequestCertificateTLSSecretRef1$Outbound | NewDeploymentRequestCertificateManagedAcmImport1$Outbound | NewDeploymentRequestCertificateAwsAcmArn1$Outbound | NewDeploymentRequestCertificateManagedTLSSecret1$Outbound | NewDeploymentRequestCertificateNone1$Outbound; mode: string; route: | NewDeploymentRequestRouteIngress1$Outbound | NewDeploymentRequestRouteGateway1$Outbound; }; /** @internal */ export const NewDeploymentRequestExposureGenerated$outboundSchema: z.ZodType< NewDeploymentRequestExposureGenerated$Outbound, NewDeploymentRequestExposureGenerated > = z.object({ certificate: z.union([ z.lazy(() => NewDeploymentRequestCertificateTLSSecretRef1$outboundSchema), z.lazy(() => NewDeploymentRequestCertificateManagedAcmImport1$outboundSchema ), z.lazy(() => NewDeploymentRequestCertificateAwsAcmArn1$outboundSchema), z.lazy(() => NewDeploymentRequestCertificateManagedTLSSecret1$outboundSchema ), z.lazy(() => NewDeploymentRequestCertificateNone1$outboundSchema), ]), mode: NewDeploymentRequestModeGenerated$outboundSchema, route: z.union([ z.lazy(() => NewDeploymentRequestRouteIngress1$outboundSchema), z.lazy(() => NewDeploymentRequestRouteGateway1$outboundSchema), ]), }); export function newDeploymentRequestExposureGeneratedToJSON( newDeploymentRequestExposureGenerated: NewDeploymentRequestExposureGenerated, ): string { return JSON.stringify( NewDeploymentRequestExposureGenerated$outboundSchema.parse( newDeploymentRequestExposureGenerated, ), ); } /** @internal */ export const NewDeploymentRequestModeDisabled$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestModeDisabled > = z.enum(NewDeploymentRequestModeDisabled); /** @internal */ export type NewDeploymentRequestExposureDisabled$Outbound = { mode: string; }; /** @internal */ export const NewDeploymentRequestExposureDisabled$outboundSchema: z.ZodType< NewDeploymentRequestExposureDisabled$Outbound, NewDeploymentRequestExposureDisabled > = z.object({ mode: NewDeploymentRequestModeDisabled$outboundSchema, }); export function newDeploymentRequestExposureDisabledToJSON( newDeploymentRequestExposureDisabled: NewDeploymentRequestExposureDisabled, ): string { return JSON.stringify( NewDeploymentRequestExposureDisabled$outboundSchema.parse( newDeploymentRequestExposureDisabled, ), ); } /** @internal */ export type NewDeploymentRequestExposureUnion$Outbound = | NewDeploymentRequestExposureCustom$Outbound | NewDeploymentRequestExposureGenerated$Outbound | NewDeploymentRequestExposureDisabled$Outbound | any; /** @internal */ export const NewDeploymentRequestExposureUnion$outboundSchema: z.ZodType< NewDeploymentRequestExposureUnion$Outbound, NewDeploymentRequestExposureUnion > = z.union([ z.lazy(() => NewDeploymentRequestExposureCustom$outboundSchema), z.lazy(() => NewDeploymentRequestExposureGenerated$outboundSchema), z.lazy(() => NewDeploymentRequestExposureDisabled$outboundSchema), z.any(), ]); export function newDeploymentRequestExposureUnionToJSON( newDeploymentRequestExposureUnion: NewDeploymentRequestExposureUnion, ): string { return JSON.stringify( NewDeploymentRequestExposureUnion$outboundSchema.parse( newDeploymentRequestExposureUnion, ), ); } /** @internal */ export type NewDeploymentRequestKubernetes$Outbound = { cluster?: NewDeploymentRequestCluster$Outbound | any | null | undefined; exposure?: | NewDeploymentRequestExposureCustom$Outbound | NewDeploymentRequestExposureGenerated$Outbound | NewDeploymentRequestExposureDisabled$Outbound | any | null | undefined; }; /** @internal */ export const NewDeploymentRequestKubernetes$outboundSchema: z.ZodType< NewDeploymentRequestKubernetes$Outbound, NewDeploymentRequestKubernetes > = z.object({ cluster: z.nullable( z.union([ z.lazy(() => NewDeploymentRequestCluster$outboundSchema), z.any(), ]), ).optional(), exposure: z.nullable( z.union([ z.lazy(() => NewDeploymentRequestExposureCustom$outboundSchema), z.lazy(() => NewDeploymentRequestExposureGenerated$outboundSchema), z.lazy(() => NewDeploymentRequestExposureDisabled$outboundSchema), z.any(), ]), ).optional(), }); export function newDeploymentRequestKubernetesToJSON( newDeploymentRequestKubernetes: NewDeploymentRequestKubernetes, ): string { return JSON.stringify( NewDeploymentRequestKubernetes$outboundSchema.parse( newDeploymentRequestKubernetes, ), ); } /** @internal */ export type NewDeploymentRequestKubernetesUnion$Outbound = | NewDeploymentRequestKubernetes$Outbound | any; /** @internal */ export const NewDeploymentRequestKubernetesUnion$outboundSchema: z.ZodType< NewDeploymentRequestKubernetesUnion$Outbound, NewDeploymentRequestKubernetesUnion > = z.union([ z.lazy(() => NewDeploymentRequestKubernetes$outboundSchema), z.any(), ]); export function newDeploymentRequestKubernetesUnionToJSON( newDeploymentRequestKubernetesUnion: NewDeploymentRequestKubernetesUnion, ): string { return JSON.stringify( NewDeploymentRequestKubernetesUnion$outboundSchema.parse( newDeploymentRequestKubernetesUnion, ), ); } /** @internal */ export const NewDeploymentRequestTypeByoVnetAzure$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestTypeByoVnetAzure > = z.enum(NewDeploymentRequestTypeByoVnetAzure); /** @internal */ export type NewDeploymentRequestNetworkByoVnetAzure$Outbound = { application_gateway_subnet_name?: string | null | undefined; private_endpoint_subnet_name?: string | null | undefined; private_subnet_name: string; public_subnet_name: string; type: string; vnet_resource_id: string; }; /** @internal */ export const NewDeploymentRequestNetworkByoVnetAzure$outboundSchema: z.ZodType< NewDeploymentRequestNetworkByoVnetAzure$Outbound, NewDeploymentRequestNetworkByoVnetAzure > = z.object({ applicationGatewaySubnetName: z.nullable(z.string()).optional(), privateEndpointSubnetName: z.nullable(z.string()).optional(), privateSubnetName: z.string(), publicSubnetName: z.string(), type: NewDeploymentRequestTypeByoVnetAzure$outboundSchema, vnetResourceId: z.string(), }).transform((v) => { return remap$(v, { applicationGatewaySubnetName: "application_gateway_subnet_name", privateEndpointSubnetName: "private_endpoint_subnet_name", privateSubnetName: "private_subnet_name", publicSubnetName: "public_subnet_name", vnetResourceId: "vnet_resource_id", }); }); export function newDeploymentRequestNetworkByoVnetAzureToJSON( newDeploymentRequestNetworkByoVnetAzure: NewDeploymentRequestNetworkByoVnetAzure, ): string { return JSON.stringify( NewDeploymentRequestNetworkByoVnetAzure$outboundSchema.parse( newDeploymentRequestNetworkByoVnetAzure, ), ); } /** @internal */ export const NewDeploymentRequestTypeByoVpcGcp$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestTypeByoVpcGcp > = z.enum(NewDeploymentRequestTypeByoVpcGcp); /** @internal */ export type NewDeploymentRequestNetworkByoVpcGcp$Outbound = { network_name: string; region: string; subnet_name: string; type: string; }; /** @internal */ export const NewDeploymentRequestNetworkByoVpcGcp$outboundSchema: z.ZodType< NewDeploymentRequestNetworkByoVpcGcp$Outbound, NewDeploymentRequestNetworkByoVpcGcp > = z.object({ networkName: z.string(), region: z.string(), subnetName: z.string(), type: NewDeploymentRequestTypeByoVpcGcp$outboundSchema, }).transform((v) => { return remap$(v, { networkName: "network_name", subnetName: "subnet_name", }); }); export function newDeploymentRequestNetworkByoVpcGcpToJSON( newDeploymentRequestNetworkByoVpcGcp: NewDeploymentRequestNetworkByoVpcGcp, ): string { return JSON.stringify( NewDeploymentRequestNetworkByoVpcGcp$outboundSchema.parse( newDeploymentRequestNetworkByoVpcGcp, ), ); } /** @internal */ export const NewDeploymentRequestTypeByoVpcAws$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestTypeByoVpcAws > = z.enum(NewDeploymentRequestTypeByoVpcAws); /** @internal */ export type NewDeploymentRequestNetworkByoVpcAws$Outbound = { private_subnet_ids: Array; public_subnet_ids: Array; security_group_ids?: Array | undefined; type: string; vpc_id: string; }; /** @internal */ export const NewDeploymentRequestNetworkByoVpcAws$outboundSchema: z.ZodType< NewDeploymentRequestNetworkByoVpcAws$Outbound, NewDeploymentRequestNetworkByoVpcAws > = z.object({ privateSubnetIds: z.array(z.string()), publicSubnetIds: z.array(z.string()), securityGroupIds: z.array(z.string()).optional(), type: NewDeploymentRequestTypeByoVpcAws$outboundSchema, vpcId: z.string(), }).transform((v) => { return remap$(v, { privateSubnetIds: "private_subnet_ids", publicSubnetIds: "public_subnet_ids", securityGroupIds: "security_group_ids", vpcId: "vpc_id", }); }); export function newDeploymentRequestNetworkByoVpcAwsToJSON( newDeploymentRequestNetworkByoVpcAws: NewDeploymentRequestNetworkByoVpcAws, ): string { return JSON.stringify( NewDeploymentRequestNetworkByoVpcAws$outboundSchema.parse( newDeploymentRequestNetworkByoVpcAws, ), ); } /** @internal */ export const NewDeploymentRequestTypeCreate$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestTypeCreate > = z.enum(NewDeploymentRequestTypeCreate); /** @internal */ export type NewDeploymentRequestNetworkCreate$Outbound = { availability_zones?: number | undefined; cidr?: string | null | undefined; type: string; }; /** @internal */ export const NewDeploymentRequestNetworkCreate$outboundSchema: z.ZodType< NewDeploymentRequestNetworkCreate$Outbound, NewDeploymentRequestNetworkCreate > = z.object({ availabilityZones: z.int().optional(), cidr: z.nullable(z.string()).optional(), type: NewDeploymentRequestTypeCreate$outboundSchema, }).transform((v) => { return remap$(v, { availabilityZones: "availability_zones", }); }); export function newDeploymentRequestNetworkCreateToJSON( newDeploymentRequestNetworkCreate: NewDeploymentRequestNetworkCreate, ): string { return JSON.stringify( NewDeploymentRequestNetworkCreate$outboundSchema.parse( newDeploymentRequestNetworkCreate, ), ); } /** @internal */ export const NewDeploymentRequestTypeUseDefault$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestTypeUseDefault > = z.enum(NewDeploymentRequestTypeUseDefault); /** @internal */ export type NewDeploymentRequestNetworkUseDefault$Outbound = { type: string; }; /** @internal */ export const NewDeploymentRequestNetworkUseDefault$outboundSchema: z.ZodType< NewDeploymentRequestNetworkUseDefault$Outbound, NewDeploymentRequestNetworkUseDefault > = z.object({ type: NewDeploymentRequestTypeUseDefault$outboundSchema, }); export function newDeploymentRequestNetworkUseDefaultToJSON( newDeploymentRequestNetworkUseDefault: NewDeploymentRequestNetworkUseDefault, ): string { return JSON.stringify( NewDeploymentRequestNetworkUseDefault$outboundSchema.parse( newDeploymentRequestNetworkUseDefault, ), ); } /** @internal */ export type NewDeploymentRequestNetworkUnion$Outbound = | NewDeploymentRequestNetworkByoVpcAws$Outbound | NewDeploymentRequestNetworkByoVpcGcp$Outbound | NewDeploymentRequestNetworkByoVnetAzure$Outbound | NewDeploymentRequestNetworkUseDefault$Outbound | NewDeploymentRequestNetworkCreate$Outbound | any; /** @internal */ export const NewDeploymentRequestNetworkUnion$outboundSchema: z.ZodType< NewDeploymentRequestNetworkUnion$Outbound, NewDeploymentRequestNetworkUnion > = z.union([ z.lazy(() => NewDeploymentRequestNetworkByoVpcAws$outboundSchema), z.lazy(() => NewDeploymentRequestNetworkByoVpcGcp$outboundSchema), z.lazy(() => NewDeploymentRequestNetworkByoVnetAzure$outboundSchema), z.lazy(() => NewDeploymentRequestNetworkUseDefault$outboundSchema), z.lazy(() => NewDeploymentRequestNetworkCreate$outboundSchema), z.any(), ]); export function newDeploymentRequestNetworkUnionToJSON( newDeploymentRequestNetworkUnion: NewDeploymentRequestNetworkUnion, ): string { return JSON.stringify( NewDeploymentRequestNetworkUnion$outboundSchema.parse( newDeploymentRequestNetworkUnion, ), ); } /** @internal */ export const NewDeploymentRequestTelemetry$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestTelemetry > = z.enum(NewDeploymentRequestTelemetry); /** @internal */ export const NewDeploymentRequestUpdates$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestUpdates > = z.enum(NewDeploymentRequestUpdates); /** @internal */ export type NewDeploymentRequestStackSettings$Outbound = { compute?: NewDeploymentRequestCompute$Outbound | any | null | undefined; deploymentModel?: string | undefined; domains?: NewDeploymentRequestDomains$Outbound | any | null | undefined; externalBindings?: | NewDeploymentRequestExternalBindings$Outbound | null | undefined; heartbeats?: string | undefined; kubernetes?: NewDeploymentRequestKubernetes$Outbound | any | null | undefined; network?: | NewDeploymentRequestNetworkByoVpcAws$Outbound | NewDeploymentRequestNetworkByoVpcGcp$Outbound | NewDeploymentRequestNetworkByoVnetAzure$Outbound | NewDeploymentRequestNetworkUseDefault$Outbound | NewDeploymentRequestNetworkCreate$Outbound | any | null | undefined; publicEndpoints?: { [k: string]: { [k: string]: string } } | null | undefined; telemetry?: string | undefined; updates?: string | undefined; }; /** @internal */ export const NewDeploymentRequestStackSettings$outboundSchema: z.ZodType< NewDeploymentRequestStackSettings$Outbound, NewDeploymentRequestStackSettings > = z.object({ compute: z.nullable( z.union([ z.lazy(() => NewDeploymentRequestCompute$outboundSchema), z.any(), ]), ).optional(), deploymentModel: NewDeploymentRequestDeploymentModel$outboundSchema .optional(), domains: z.nullable( z.union([ z.lazy(() => NewDeploymentRequestDomains$outboundSchema), z.any(), ]), ).optional(), externalBindings: z.nullable( z.lazy(() => NewDeploymentRequestExternalBindings$outboundSchema), ).optional(), heartbeats: NewDeploymentRequestHeartbeats$outboundSchema.optional(), kubernetes: z.nullable( z.union([ z.lazy(() => NewDeploymentRequestKubernetes$outboundSchema), z.any(), ]), ).optional(), network: z.nullable( z.union([ z.lazy(() => NewDeploymentRequestNetworkByoVpcAws$outboundSchema), z.lazy(() => NewDeploymentRequestNetworkByoVpcGcp$outboundSchema), z.lazy(() => NewDeploymentRequestNetworkByoVnetAzure$outboundSchema), z.lazy(() => NewDeploymentRequestNetworkUseDefault$outboundSchema), z.lazy(() => NewDeploymentRequestNetworkCreate$outboundSchema), z.any(), ]), ).optional(), publicEndpoints: z.nullable( z.record(z.string(), z.record(z.string(), z.string())), ).optional(), telemetry: NewDeploymentRequestTelemetry$outboundSchema.optional(), updates: NewDeploymentRequestUpdates$outboundSchema.optional(), }); export function newDeploymentRequestStackSettingsToJSON( newDeploymentRequestStackSettings: NewDeploymentRequestStackSettings, ): string { return JSON.stringify( NewDeploymentRequestStackSettings$outboundSchema.parse( newDeploymentRequestStackSettings, ), ); } /** @internal */ export const InitialDesiredRelease$outboundSchema: z.ZodEnum< typeof InitialDesiredRelease > = z.enum(InitialDesiredRelease); /** @internal */ export const NewDeploymentRequestSetupItem$outboundSchema: z.ZodEnum< typeof NewDeploymentRequestSetupItem > = z.enum(NewDeploymentRequestSetupItem); /** @internal */ export const SetupHandoff$outboundSchema: z.ZodEnum = z .enum(SetupHandoff); /** @internal */ export type NewDeploymentRequest$Outbound = { name: string; platform: string; deploymentGroupId?: string | undefined; managerId?: string | undefined; pinnedReleaseId?: string | null | undefined; environmentVariables?: | Array | null | undefined; environmentInfo?: | NewDeploymentRequestEnvironmentInfoGcp$Outbound | NewDeploymentRequestEnvironmentInfoAzure$Outbound | NewDeploymentRequestEnvironmentInfoLocal$Outbound | NewDeploymentRequestEnvironmentInfoAws$Outbound | NewDeploymentRequestEnvironmentInfoTest$Outbound | any | null | undefined; project: string; stackSettings?: NewDeploymentRequestStackSettings$Outbound | undefined; resourcePrefix?: string | undefined; publicSubdomain?: string | undefined; setupMethod?: string | undefined; setupMetadata?: { [k: string]: any | null } | undefined; inputValues?: { [k: string]: StackInputValueRequest$Outbound } | undefined; operatorScope?: string | undefined; operatorPermission?: string | undefined; initialDesiredRelease: string; releaseChannel: string; setupItem?: string | undefined; setupHandoff: string; }; /** @internal */ export const NewDeploymentRequest$outboundSchema: z.ZodType< NewDeploymentRequest$Outbound, NewDeploymentRequest > = z.object({ name: z.string(), platform: NewDeploymentRequestPlatform$outboundSchema, deploymentGroupId: z.string().optional(), managerId: z.string().optional(), pinnedReleaseId: z.nullable(z.string()).optional(), environmentVariables: z.nullable( z.array(EnvironmentVariableConfig$outboundSchema), ).optional(), environmentInfo: z.nullable( z.union([ z.lazy(() => NewDeploymentRequestEnvironmentInfoGcp$outboundSchema), z.lazy(() => NewDeploymentRequestEnvironmentInfoAzure$outboundSchema), z.lazy(() => NewDeploymentRequestEnvironmentInfoLocal$outboundSchema), z.lazy(() => NewDeploymentRequestEnvironmentInfoAws$outboundSchema), z.lazy(() => NewDeploymentRequestEnvironmentInfoTest$outboundSchema), z.any(), ]), ).optional(), project: z.string(), stackSettings: z.lazy(() => NewDeploymentRequestStackSettings$outboundSchema) .optional(), resourcePrefix: z.string().optional(), publicSubdomain: z.string().optional(), setupMethod: DeploymentSetupMethod$outboundSchema.optional(), setupMetadata: z.record(z.string(), z.nullable(z.any())).optional(), inputValues: z.record(z.string(), StackInputValueRequest$outboundSchema) .optional(), operatorScope: z.string().optional(), operatorPermission: z.string().optional(), initialDesiredRelease: InitialDesiredRelease$outboundSchema.default("active"), releaseChannel: z.string().default("production"), setupItem: NewDeploymentRequestSetupItem$outboundSchema.optional(), setupHandoff: SetupHandoff$outboundSchema.default("immediate"), }); export function newDeploymentRequestToJSON( newDeploymentRequest: NewDeploymentRequest, ): string { return JSON.stringify( NewDeploymentRequest$outboundSchema.parse(newDeploymentRequest), ); }