UNPKG

@vercel/sdk

Version:

<p align="center"> <a href="https://vercel.com"> <img src="https://assets.vercel.com/image/upload/v1588805858/repositories/vercel/logo.png" height="96"> <h3 align="center">Vercel</h3> </a> <p align="center">Develop. Preview. Ship.</p> </p>

4,963 lines 178 kB
/*
 * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
 */

import * as z from "zod/v3";
import { remap as remap$ } from "../lib/primitives.js";
import { safeParse } from "../lib/schemas.js";
import { ClosedEnum } from "../types/enums.js";
import { Result as SafeParseResult } from "../types/fp.js";
import * as types from "../types/primitives.js";
import { smartUnion } from "../types/smartUnion.js";
import { ACLAction, ACLAction$inboundSchema } from "./aclaction.js";
import {
  GetMicrofrontendsInGroupBuildMachineType,
  GetMicrofrontendsInGroupBuildMachineType$inboundSchema,
  GetMicrofrontendsInGroupFunctionDefaultMemoryType,
  GetMicrofrontendsInGroupFunctionDefaultMemoryType$inboundSchema,
} from "./getmicrofrontendsingroupbuildmachinetype.js";
import { SDKValidationError } from "./sdkvalidationerror.js";

export const GetMicrofrontendsInGroupBuildMachineSelection = {
  Elastic: "elastic",
  Fixed: "fixed",
} as const;
export type GetMicrofrontendsInGroupBuildMachineSelection = ClosedEnum<
  typeof GetMicrofrontendsInGroupBuildMachineSelection
>;

export const GetMicrofrontendsInGroupBuildMachineElasticReason = {
  BasicFloor: "basic-floor",
  BuildTimeoutFailure: "build-timeout-failure",
  EnospcFailure: "enospc-failure",
  EnterpriseFloor: "enterprise-floor",
  HighPeakDisk: "high-peak-disk",
  HighPeakMemory: "high-peak-memory",
  LongBuildDuration: "long-build-duration",
  OomFailure: "oom-failure",
  ShortBuildDuration: "short-build-duration",
  SustainedHighCpu: "sustained-high-cpu",
} as const;
export type GetMicrofrontendsInGroupBuildMachineElasticReason = ClosedEnum<
  typeof GetMicrofrontendsInGroupBuildMachineElasticReason
>;

export const GetMicrofrontendsInGroupMicrofrontendsConfiguration = {
  SkipNamespaceQueue: "SKIP_NAMESPACE_QUEUE",
  WaitForNamespaceQueue: "WAIT_FOR_NAMESPACE_QUEUE",
} as const;
export type GetMicrofrontendsInGroupMicrofrontendsConfiguration = ClosedEnum<
  typeof GetMicrofrontendsInGroupMicrofrontendsConfiguration
>;

export type GetMicrofrontendsInGroupMicrofrontendsBuildQueue = {
  configuration?:
    | GetMicrofrontendsInGroupMicrofrontendsConfiguration
    | undefined;
};

export type GetMicrofrontendsInGroupDefaultResourceConfig = {
  fluid?: boolean | undefined;
  functionDefaultRegions: Array<string>;
  functionDefaultTimeout?: number | undefined;
  functionDefaultMemoryType?:
    | GetMicrofrontendsInGroupFunctionDefaultMemoryType
    | undefined;
  functionZeroConfigFailover?: boolean | undefined;
  elasticConcurrencyEnabled?: boolean | undefined;
  buildMachineType?: GetMicrofrontendsInGroupBuildMachineType | undefined;
  buildMachineSelection?:
    | GetMicrofrontendsInGroupBuildMachineSelection
    | undefined;
  buildMachineElasticLastUpdated?: number | undefined;
  buildMachineElasticReason?:
    | GetMicrofrontendsInGroupBuildMachineElasticReason
    | undefined;
  isNSNBDisabled?: boolean | undefined;
  buildQueue?: GetMicrofrontendsInGroupMicrofrontendsBuildQueue | undefined;
  enableFunctionsBeta?: boolean | undefined;
};

export type GetMicrofrontendsInGroupStaticIps = {
  builds: boolean;
  enabled: boolean;
  regions: Array<string>;
};

export const GetMicrofrontendsInGroupMicrofrontendsDeploymentType = {
  All: "all",
  AllExceptCustomDomains: "all_except_custom_domains",
  Preview: "preview",
  ProdDeploymentUrlsAndAllPreviews: "prod_deployment_urls_and_all_previews",
} as const;
export type GetMicrofrontendsInGroupMicrofrontendsDeploymentType = ClosedEnum<
  typeof GetMicrofrontendsInGroupMicrofrontendsDeploymentType
>;

export const GetMicrofrontendsInGroupCve55182MigrationAppliedFrom = {
  All: "all",
  AllExceptCustomDomains: "all_except_custom_domains",
  Preview: "preview",
  ProdDeploymentUrlsAndAllPreviews: "prod_deployment_urls_and_all_previews",
} as const;
export type GetMicrofrontendsInGroupCve55182MigrationAppliedFrom = ClosedEnum<
  typeof GetMicrofrontendsInGroupCve55182MigrationAppliedFrom
>;

export const GetMicrofrontendsInGroupApril2026SecurityIncidentMigrationAppliedFrom =
  {
    All: "all",
    AllExceptCustomDomains: "all_except_custom_domains",
    Preview: "preview",
    ProdDeploymentUrlsAndAllPreviews: "prod_deployment_urls_and_all_previews",
  } as const;
export type GetMicrofrontendsInGroupApril2026SecurityIncidentMigrationAppliedFrom =
  ClosedEnum<
    typeof GetMicrofrontendsInGroupApril2026SecurityIncidentMigrationAppliedFrom
  >;

export type GetMicrofrontendsInGroupSsoProtection = {
  deploymentType: GetMicrofrontendsInGroupMicrofrontendsDeploymentType;
  cve55182MigrationAppliedFrom?:
    | GetMicrofrontendsInGroupCve55182MigrationAppliedFrom
    | null
    | undefined;
  april2026SecurityIncidentMigrationAppliedFrom?:
    | GetMicrofrontendsInGroupApril2026SecurityIncidentMigrationAppliedFrom
    | null
    | undefined;
};

export type GetMicrofrontendsInGroupAliasAssigned = number | boolean;

export type GetMicrofrontendsInGroupMicrofrontendsAliasError = {
  code: string;
  message: string;
};

/**
 * The type of matching to perform
 */
export const GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsTargetsType =
  {
    EndsWith: "endsWith",
    Equals: "equals",
    StartsWith: "startsWith",
  } as const;
/**
 * The type of matching to perform
 */
export type GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsTargetsType =
  ClosedEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsTargetsType
  >;

export type GetMicrofrontendsInGroupMicrofrontendsResponseBranchMatcher = {
  /**
   * The type of matching to perform
   */
  type:
    GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsTargetsType;
  /**
   * The pattern to match against branch names
   */
  pattern: string;
};

export type GetMicrofrontendsInGroupMicrofrontendsBuilds = {
  use: string;
  src?: string | undefined;
  dest?: string | undefined;
};

export const GetMicrofrontendsInGroupMicrofrontendsChecksConclusion = {
  Canceled: "canceled",
  Failed: "failed",
  Skipped: "skipped",
  Succeeded: "succeeded",
} as const;
export type GetMicrofrontendsInGroupMicrofrontendsChecksConclusion = ClosedEnum<
  typeof GetMicrofrontendsInGroupMicrofrontendsChecksConclusion
>;

export const GetMicrofrontendsInGroupMicrofrontendsChecksState = {
  Completed: "completed",
  Registered: "registered",
  Running: "running",
} as const;
export type GetMicrofrontendsInGroupMicrofrontendsChecksState = ClosedEnum<
  typeof GetMicrofrontendsInGroupMicrofrontendsChecksState
>;

export type GetMicrofrontendsInGroupMicrofrontendsResponseCreator = {
  email: string;
  githubLogin?: string | undefined;
  gitlabLogin?: string | undefined;
  uid: string;
  username: string;
};

export type GetMicrofrontendsInGroupMicrofrontendsOidcTokenClaims = {
  iss: string;
  sub: string;
  scope: string;
  aud: string;
  owner: string;
  ownerId: string;
  project: string;
  projectId: string;
  environment: string;
  customEnvironmentId?: string | undefined;
  mfeGroupIds?: Array<string> | undefined;
  plan?: string | undefined;
};

export const GetMicrofrontendsInGroupMicrofrontendsPlan = {
  Enterprise: "enterprise",
  Hobby: "hobby",
  Pro: "pro",
} as const;
export type GetMicrofrontendsInGroupMicrofrontendsPlan = ClosedEnum<
  typeof GetMicrofrontendsInGroupMicrofrontendsPlan
>;

export const GetMicrofrontendsInGroupMicrofrontendsReadyState = {
  Blocked: "BLOCKED",
  Building: "BUILDING",
  Canceled: "CANCELED",
  Error: "ERROR",
  Initializing: "INITIALIZING",
  Queued: "QUEUED",
  Ready: "READY",
} as const;
export type GetMicrofrontendsInGroupMicrofrontendsReadyState = ClosedEnum<
  typeof GetMicrofrontendsInGroupMicrofrontendsReadyState
>;

export const GetMicrofrontendsInGroupMicrofrontendsReadySubstate = {
  Promoted: "PROMOTED",
  Rolling: "ROLLING",
  Staged: "STAGED",
} as const;
export type GetMicrofrontendsInGroupMicrofrontendsReadySubstate = ClosedEnum<
  typeof GetMicrofrontendsInGroupMicrofrontendsReadySubstate
>;

export const GetMicrofrontendsInGroupMicrofrontendsResponse200Type = {
  Lambdas: "LAMBDAS",
} as const;
export type GetMicrofrontendsInGroupMicrofrontendsResponse200Type = ClosedEnum<
  typeof GetMicrofrontendsInGroupMicrofrontendsResponse200Type
>;

export type GetMicrofrontendsInGroupTargets = {
  id: string;
  alias?: Array<string> | undefined;
  aliasAssigned?: number | boolean | null | undefined;
  aliasError?:
    | GetMicrofrontendsInGroupMicrofrontendsAliasError
    | null
    | undefined;
  aliasFinal?: string | null | undefined;
  automaticAliases?: Array<string> | undefined;
  branchMatcher?:
    | GetMicrofrontendsInGroupMicrofrontendsResponseBranchMatcher
    | undefined;
  buildingAt?: number | undefined;
  builds?: Array<GetMicrofrontendsInGroupMicrofrontendsBuilds> | undefined;
  checksConclusion?:
    | GetMicrofrontendsInGroupMicrofrontendsChecksConclusion
    | undefined;
  checksState?: GetMicrofrontendsInGroupMicrofrontendsChecksState | undefined;
  connectBuildsEnabled?: boolean | undefined;
  connectConfigurationId?: string | undefined;
  createdAt: number;
  createdIn: string;
  creator: GetMicrofrontendsInGroupMicrofrontendsResponseCreator | null;
  deletedAt?: number | undefined;
  deploymentHostname: string;
  forced?: boolean | undefined;
  name: string;
  meta?: { [k: string]: string } | undefined;
  monorepoManager?: string | null | undefined;
  oidcTokenClaims?:
    | GetMicrofrontendsInGroupMicrofrontendsOidcTokenClaims
    | undefined;
  plan: GetMicrofrontendsInGroupMicrofrontendsPlan;
  /**
   * Whether or not preview comments are enabled for the deployment
   */
  previewCommentsEnabled?: boolean | undefined;
  private: boolean;
  readyAt?: number | undefined;
  readyState: GetMicrofrontendsInGroupMicrofrontendsReadyState;
  readySubstate?:
    | GetMicrofrontendsInGroupMicrofrontendsReadySubstate
    | undefined;
  requestedAt?: number | undefined;
  target?: string | null | undefined;
  teamId?: string | null | undefined;
  type: GetMicrofrontendsInGroupMicrofrontendsResponse200Type;
  url: string;
  /**
   * Present for user creators; omitted for app/integration/system creators.
   */
  userId?: string | undefined;
  withCache?: boolean | undefined;
};

export type GetMicrofrontendsInGroupPermissions = {
  aliasProject?: Array<ACLAction> | undefined;
  aliasProtectionBypass?: Array<ACLAction> | undefined;
  bulkRedirects?: Array<ACLAction> | undefined;
  buildMachine?: Array<ACLAction> | undefined;
  connectConfigurationLink?: Array<ACLAction> | undefined;
  dataCacheNamespace?: Array<ACLAction> | undefined;
  deployment?: Array<ACLAction> | undefined;
  deploymentBuildLogs?: Array<ACLAction> | undefined;
  deploymentCheck?: Array<ACLAction> | undefined;
  deploymentCheckPreview?: Array<ACLAction> | undefined;
  deploymentCheckReRunFromProductionBranch?: Array<ACLAction> | undefined;
  deploymentProductionGit?: Array<ACLAction> | undefined;
  deploymentV0?: Array<ACLAction> | undefined;
  deploymentPreview?: Array<ACLAction> | undefined;
  deploymentPrivate?: Array<ACLAction> | undefined;
  deploymentPromote?: Array<ACLAction> | undefined;
  deploymentRollback?: Array<ACLAction> | undefined;
  edgeCacheNamespace?: Array<ACLAction> | undefined;
  environments?: Array<ACLAction> | undefined;
  job?: Array<ACLAction> | undefined;
  logs?: Array<ACLAction> | undefined;
  logsPreset?: Array<ACLAction> | undefined;
  observabilityData?: Array<ACLAction> | undefined;
  onDemandBuild?: Array<ACLAction> | undefined;
  onDemandConcurrency?: Array<ACLAction> | undefined;
  optionsAllowlist?: Array<ACLAction> | undefined;
  passwordProtection?: Array<ACLAction> | undefined;
  privateLinkEndpoint?: Array<ACLAction> | undefined;
  productionAliasProtectionBypass?: Array<ACLAction> | undefined;
  productionShareableLink?: Array<ACLAction> | undefined;
  project?: Array<ACLAction> | undefined;
  projectAccessGroup?: Array<ACLAction> | undefined;
  projectAnalyticsSampling?: Array<ACLAction> | undefined;
  projectAnalyticsUsage?: Array<ACLAction> | undefined;
  projectCheck?: Array<ACLAction> | undefined;
  projectCheckRun?: Array<ACLAction> | undefined;
  projectDeploymentExpiration?: Array<ACLAction> | undefined;
  projectDeploymentHook?: Array<ACLAction> | undefined;
  projectDeploymentProtectionStrict?: Array<ACLAction> | undefined;
  projectDomain?: Array<ACLAction> | undefined;
  projectDomainCheckConfig?: Array<ACLAction> | undefined;
  projectDomainMove?: Array<ACLAction> | undefined;
  projectDomainVerify?: Array<ACLAction> | undefined;
  projectEvent?: Array<ACLAction> | undefined;
  projectEnvVars?: Array<ACLAction> | undefined;
  projectEnvVarsProduction?: Array<ACLAction> | undefined;
  projectEnvVarsUnownedByIntegration?: Array<ACLAction> | undefined;
  projectFlags?: Array<ACLAction> | undefined;
  projectFlagsProduction?: Array<ACLAction> | undefined;
  projectFlagsSDKKey?: Array<ACLAction> | undefined;
  projectFromV0?: Array<ACLAction> | undefined;
  projectId?: Array<ACLAction> | undefined;
  projectIntegrationConfiguration?: Array<ACLAction> | undefined;
  projectLink?: Array<ACLAction> | undefined;
  projectMember?: Array<ACLAction> | undefined;
  projectMonitoring?: Array<ACLAction> | undefined;
  projectOIDCToken?: Array<ACLAction> | undefined;
  projectPermissions?: Array<ACLAction> | undefined;
  projectProductionBranch?: Array<ACLAction> | undefined;
  projectProtectionBypass?: Array<ACLAction> | undefined;
  projectRollingRelease?: Array<ACLAction> | undefined;
  projectRoutes?: Array<ACLAction> | undefined;
  projectSupportCase?: Array<ACLAction> | undefined;
  projectSupportCaseComment?: Array<ACLAction> | undefined;
  projectTier?: Array<ACLAction> | undefined;
  projectTransfer?: Array<ACLAction> | undefined;
  projectTransferOut?: Array<ACLAction> | undefined;
  projectUsage?: Array<ACLAction> | undefined;
  pageIntegrity?: Array<ACLAction> | undefined;
  seawallConfig?: Array<ACLAction> | undefined;
  securityPlusConfiguration?: Array<ACLAction> | undefined;
  shareableLink?: Array<ACLAction> | undefined;
  shareableLinkStrict?: Array<ACLAction> | undefined;
  sharedEnvVarConnection?: Array<ACLAction> | undefined;
  skewProtection?: Array<ACLAction> | undefined;
  analytics?: Array<ACLAction> | undefined;
  trustedIps?: Array<ACLAction> | undefined;
  trustedSources?: Array<ACLAction> | undefined;
  v0Chat?: Array<ACLAction> | undefined;
  vercelAuth?: Array<ACLAction> | undefined;
  vercelRun?: Array<ACLAction> | undefined;
  webAnalytics?: Array<ACLAction> | undefined;
  workflowRunData?: Array<ACLAction> | undefined;
  oauth2Connection?: Array<ACLAction> | undefined;
  user?: Array<ACLAction> | undefined;
  userConnection?: Array<ACLAction> | undefined;
  userMfaConfiguration?: Array<ACLAction> | undefined;
  userPreference?: Array<ACLAction> | undefined;
  userSudo?: Array<ACLAction> | undefined;
  webAuthn?: Array<ACLAction> | undefined;
  accessGroup?: Array<ACLAction> | undefined;
  agent?: Array<ACLAction> | undefined;
  aiGatewayApiKey?: Array<ACLAction> | undefined;
  aiGatewayApiKeyBypassAll?: Array<ACLAction> | undefined;
  aiGatewayApiKeyOwnedBySelf?: Array<ACLAction> | undefined;
  aiGatewayApiKeySpendAttribution?: Array<ACLAction> | undefined;
  aiGatewayApiKeyZdrExemption?: Array<ACLAction> | undefined;
  aiGatewayBudget?: Array<ACLAction> | undefined;
  aiGatewayCredits?: Array<ACLAction> | undefined;
  aiGatewayPrivateModels?: Array<ACLAction> | undefined;
  aiGatewayGuardrails?: Array<ACLAction> | undefined;
  aiGatewayRules?: Array<ACLAction> | undefined;
  aiGatewaySettings?: Array<ACLAction> | undefined;
  aiGatewayTranscripts?: Array<ACLAction> | undefined;
  aiGatewayTranscriptsSettings?: Array<ACLAction> | undefined;
  aiGatewayUsage?: Array<ACLAction> | undefined;
  aiGatewayVirtualModelConfigs?: Array<ACLAction> | undefined;
  alerts?: Array<ACLAction> | undefined;
  alertRules?: Array<ACLAction> | undefined;
  aliasGlobal?: Array<ACLAction> | undefined;
  analyticsSampling?: Array<ACLAction> | undefined;
  analyticsUsage?: Array<ACLAction> | undefined;
  apiKey?: Array<ACLAction> | undefined;
  apiKeyAiGateway?: Array<ACLAction> | undefined;
  apiKeyOwnedBySelf?: Array<ACLAction> | undefined;
  oauth2Application?: Array<ACLAction> | undefined;
  vercelAppInstallation?: Array<ACLAction> | undefined;
  vercelAppInstallationRequest?: Array<ACLAction> | undefined;
  auditLog?: Array<ACLAction> | undefined;
  automation?: Array<ACLAction> | undefined;
  billingAddress?: Array<ACLAction> | undefined;
  billingInformation?: Array<ACLAction> | undefined;
  billingInvoice?: Array<ACLAction> | undefined;
  billingInvoiceEmailRecipient?: Array<ACLAction> | undefined;
  billingInvoiceLanguage?: Array<ACLAction> | undefined;
  billingPlan?: Array<ACLAction> | undefined;
  billingPurchaseOrder?: Array<ACLAction> | undefined;
  billingRefund?: Array<ACLAction> | undefined;
  billingTaxId?: Array<ACLAction> | undefined;
  blob?: Array<ACLAction> | undefined;
  blobStoreTokenSet?: Array<ACLAction> | undefined;
  budget?: Array<ACLAction> | undefined;
  cacheArtifact?: Array<ACLAction> | undefined;
  cacheArtifactUsageEvent?: Array<ACLAction> | undefined;
  codeChecks?: Array<ACLAction> | undefined;
  codeOwners?: Array<ACLAction> | undefined;
  ciInvocations?: Array<ACLAction> | undefined;
  ciLogs?: Array<ACLAction> | undefined;
  concurrentBuilds?: Array<ACLAction> | undefined;
  connect?: Array<ACLAction> | undefined;
  connectConfiguration?: Array<ACLAction> | undefined;
  connectLogs?: Array<ACLAction> | undefined;
  connexClient?: Array<ACLAction> | undefined;
  connexClientProject?: Array<ACLAction> | undefined;
  connexContact?: Array<ACLAction> | undefined;
  connexInstallation?: Array<ACLAction> | undefined;
  connexToken?: Array<ACLAction> | undefined;
  buildMachineDefault?: Array<ACLAction> | undefined;
  cursorOriginInstallation?: Array<ACLAction> | undefined;
  dataCacheBillingSettings?: Array<ACLAction> | undefined;
  defaultDeploymentProtection?: Array<ACLAction> | undefined;
  deploymentPolicy?: Array<ACLAction> | undefined;
  domain?: Array<ACLAction> | undefined;
  domainAcceptDelegation?: Array<ACLAction> | undefined;
  domainAuthCodes?: Array<ACLAction> | undefined;
  domainCertificate?: Array<ACLAction> | undefined;
  domainCheckConfig?: Array<ACLAction> | undefined;
  domainMove?: Array<ACLAction> | undefined;
  domainPurchase?: Array<ACLAction> | undefined;
  domainRecord?: Array<ACLAction> | undefined;
  domainTransferIn?: Array<ACLAction> | undefined;
  drain?: Array<ACLAction> | undefined;
  edgeConfig?: Array<ACLAction> | undefined;
  edgeConfigItem?: Array<ACLAction> | undefined;
  edgeConfigSchema?: Array<ACLAction> | undefined;
  edgeConfigToken?: Array<ACLAction> | undefined;
  endpointVerification?: Array<ACLAction> | undefined;
  event?: Array<ACLAction> | undefined;
  fileUpload?: Array<ACLAction> | undefined;
  flagsExplorerSubscription?: Array<ACLAction> | undefined;
  gitRepository?: Array<ACLAction> | undefined;
  imageOptimizationNewPrice?: Array<ACLAction> | undefined;
  integration?: Array<ACLAction> | undefined;
  integrationAccount?: Array<ACLAction> | undefined;
  integrationConfiguration?: Array<ACLAction> | undefined;
  integrationConfigurationProjects?: Array<ACLAction> | undefined;
  integrationConfigurationRole?: Array<ACLAction> | undefined;
  integrationConfigurationTransfer?: Array<ACLAction> | undefined;
  integrationDeploymentAction?: Array<ACLAction> | undefined;
  integrationEvent?: Array<ACLAction> | undefined;
  integrationLog?: Array<ACLAction> | undefined;
  integrationResource?: Array<ACLAction> | undefined;
  integrationResourceData?: Array<ACLAction> | undefined;
  integrationResourceReplCommand?: Array<ACLAction> | undefined;
  integrationResourceSecrets?: Array<ACLAction> | undefined;
  integrationSSOSession?: Array<ACLAction> | undefined;
  integrationStrict?: Array<ACLAction> | undefined;
  integrationStoreTokenSet?: Array<ACLAction> | undefined;
  integrationVercelConfigurationOverride?: Array<ACLAction> | undefined;
  integrationPullRequest?: Array<ACLAction> | undefined;
  ipBlocking?: Array<ACLAction> | undefined;
  jobGlobal?: Array<ACLAction> | undefined;
  kmsIssuer?: Array<ACLAction> | undefined;
  kmsProjectGrant?: Array<ACLAction> | undefined;
  logDrain?: Array<ACLAction> | undefined;
  marketplaceBillingData?: Array<ACLAction> | undefined;
  marketplaceExperimentationEdgeConfigData?: Array<ACLAction> | undefined;
  marketplaceExperimentationItem?: Array<ACLAction> | undefined;
  marketplaceFlexCommit?: Array<ACLAction> | undefined;
  marketplaceInstallationMember?: Array<ACLAction> | undefined;
  marketplaceInvoice?: Array<ACLAction> | undefined;
  marketplaceSettings?: Array<ACLAction> | undefined;
  monitoring?: Array<ACLAction> | undefined;
  monitoringAlert?: Array<ACLAction> | undefined;
  monitoringChart?: Array<ACLAction> | undefined;
  monitoringQuery?: Array<ACLAction> | undefined;
  monitoringSettings?: Array<ACLAction> | undefined;
  notificationCustomerBudget?: Array<ACLAction> | undefined;
  notificationDeploymentFailed?: Array<ACLAction> | undefined;
  notificationDomainConfiguration?: Array<ACLAction> | undefined;
  notificationDomainExpire?: Array<ACLAction> | undefined;
  notificationDomainMoved?: Array<ACLAction> | undefined;
  notificationDomainPurchase?: Array<ACLAction> | undefined;
  notificationDomainRenewal?: Array<ACLAction> | undefined;
  notificationDomainTransfer?: Array<ACLAction> | undefined;
  notificationDomainUnverified?: Array<ACLAction> | undefined;
  notificationMonitoringAlert?: Array<ACLAction> | undefined;
  notificationPaymentFailed?: Array<ACLAction> | undefined;
  notificationPreferences?: Array<ACLAction> | undefined;
  notificationStatementOfReasons?: Array<ACLAction> | undefined;
  notificationUsageAlert?: Array<ACLAction> | undefined;
  oidcFederationPolicy?: Array<ACLAction> | undefined;
  observabilityConfiguration?: Array<ACLAction> | undefined;
  observabilityFunnel?: Array<ACLAction> | undefined;
  observabilityNotebook?: Array<ACLAction> | undefined;
  openTelemetryEndpoint?: Array<ACLAction> | undefined;
  ownEvent?: Array<ACLAction> | undefined;
  organization?: Array<ACLAction> | undefined;
  organizationDomain?: Array<ACLAction> | undefined;
  organizationTeam?: Array<ACLAction> | undefined;
  passwordProtectionInvoiceItem?: Array<ACLAction> | undefined;
  paymentMethod?: Array<ACLAction> | undefined;
  permissions?: Array<ACLAction> | undefined;
  postgres?: Array<ACLAction> | undefined;
  postgresStoreTokenSet?: Array<ACLAction> | undefined;
  previewDeploymentSuffix?: Array<ACLAction> | undefined;
  privateCloudAccount?: Array<ACLAction> | undefined;
  projectTransferIn?: Array<ACLAction> | undefined;
  projectTransferRequest?: Array<ACLAction> | undefined;
  proTrialOnboarding?: Array<ACLAction> | undefined;
  rateLimit?: Array<ACLAction> | undefined;
  redis?: Array<ACLAction> | undefined;
  redisStoreTokenSet?: Array<ACLAction> | undefined;
  remoteCaching?: Array<ACLAction> | undefined;
  repository?: Array<ACLAction> | undefined;
  samlConfig?: Array<ACLAction> | undefined;
  secret?: Array<ACLAction> | undefined;
  securityConfig?: Array<ACLAction> | undefined;
  sensitiveEnvironmentVariablePolicy?: Array<ACLAction> | undefined;
  sharedEnvVars?: Array<ACLAction> | undefined;
  sharedEnvVarsProduction?: Array<ACLAction> | undefined;
  space?: Array<ACLAction> | undefined;
  spaceRun?: Array<ACLAction> | undefined;
  storeIsLocked?: Array<ACLAction> | undefined;
  storeTokenSetSensitive?: Array<ACLAction> | undefined;
  storeTransfer?: Array<ACLAction> | undefined;
  supportCase?: Array<ACLAction> | undefined;
  supportCaseComment?: Array<ACLAction> | undefined;
  team?: Array<ACLAction> | undefined;
  teamAccessRequest?: Array<ACLAction> | undefined;
  teamFellowMembership?: Array<ACLAction> | undefined;
  teamGitExclusivity?: Array<ACLAction> | undefined;
  teamInvite?: Array<ACLAction> | undefined;
  teamInviteCode?: Array<ACLAction> | undefined;
  teamInviteLink?: Array<ACLAction> | undefined;
  teamJoin?: Array<ACLAction> | undefined;
  teamMemberMfaStatus?: Array<ACLAction> | undefined;
  teamMicrofrontends?: Array<ACLAction> | undefined;
  teamOwnMembership?: Array<ACLAction> | undefined;
  teamOwnMembershipDisconnectSAML?: Array<ACLAction> | undefined;
  teamSudo?: Array<ACLAction> | undefined;
  teamTokenInvalidation?: Array<ACLAction> | undefined;
  token?: Array<ACLAction> | undefined;
  toolbarComment?: Array<ACLAction> | undefined;
  usage?: Array<ACLAction> | undefined;
  usageCycle?: Array<ACLAction> | undefined;
  vcrRepository?: Array<ACLAction> | undefined;
  vpcPeeringConnection?: Array<ACLAction> | undefined;
  webAnalyticsPlan?: Array<ACLAction> | undefined;
  webhook?: Array<ACLAction> | undefined;
  webhookEvent?: Array<ACLAction> | undefined;
};

export type GetMicrofrontendsInGroupLastRollbackTarget = {};

export const GetMicrofrontendsInGroupJobStatus = {
  Failed: "failed",
  InProgress: "in-progress",
  Pending: "pending",
  Skipped: "skipped",
  Succeeded: "succeeded",
} as const;
export type GetMicrofrontendsInGroupJobStatus = ClosedEnum<
  typeof GetMicrofrontendsInGroupJobStatus
>;

export const GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONType =
  {
    Promote: "promote",
    Rollback: "rollback",
  } as const;
export type GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONType =
  ClosedEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONType
  >;

export type GetMicrofrontendsInGroupLastAliasRequest = {
  fromDeploymentId: string | null;
  toDeploymentId: string;
  /**
   * If rolling back from a rolling release, fromDeploymentId captures the "base" of that rolling release, and fromRollingReleaseId captures the "target" of that rolling release.
   */
  fromRollingReleaseId?: string | undefined;
  jobStatus: GetMicrofrontendsInGroupJobStatus;
  requestedAt: number;
  type: GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONType;
};

export type GetMicrofrontendsInGroupProtectionBypass2 = {
  createdAt: number;
  createdBy: string;
  scope: "automation-bypass";
  /**
   * When there was only one bypass, it was automatically set as an env var on deployments. With multiple bypasses, there is always one bypass that is selected as the default, and gets set as an env var on deployments. As this is a new field, undefined means that the bypass is the env var. If there are any automation bypasses, exactly one must be the env var.
   */
  isEnvVar?: boolean | undefined;
  /**
   * Optional note about the bypass to be displayed in the UI
   */
  note?: string | undefined;
};

export type GetMicrofrontendsInGroupProtectionBypass1 = {
  createdAt: number;
  createdBy: string;
  scope: "integration-automation-bypass";
  integrationId: string;
  configurationId: string;
};

export type GetMicrofrontendsInGroupProtectionBypass =
  | GetMicrofrontendsInGroupProtectionBypass1
  | GetMicrofrontendsInGroupProtectionBypass2;

export const GetMicrofrontendsInGroupTrustedIpsDeploymentType = {
  All: "all",
  AllExceptCustomDomains: "all_except_custom_domains",
  Preview: "preview",
  ProdDeploymentUrlsAndAllPreviews: "prod_deployment_urls_and_all_previews",
  Production: "production",
} as const;
export type GetMicrofrontendsInGroupTrustedIpsDeploymentType = ClosedEnum<
  typeof GetMicrofrontendsInGroupTrustedIpsDeploymentType
>;

export type GetMicrofrontendsInGroupTrustedIps2 = {
  deploymentType: GetMicrofrontendsInGroupTrustedIpsDeploymentType;
};

export const GetMicrofrontendsInGroupTrustedIpsMicrofrontendsDeploymentType = {
  All: "all",
  AllExceptCustomDomains: "all_except_custom_domains",
  Preview: "preview",
  ProdDeploymentUrlsAndAllPreviews: "prod_deployment_urls_and_all_previews",
  Production: "production",
} as const;
export type GetMicrofrontendsInGroupTrustedIpsMicrofrontendsDeploymentType =
  ClosedEnum<
    typeof GetMicrofrontendsInGroupTrustedIpsMicrofrontendsDeploymentType
  >;

export type GetMicrofrontendsInGroupTrustedIpsAddresses = {
  value: string;
  note?: string | undefined;
};

export const GetMicrofrontendsInGroupTrustedIpsProtectionMode = {
  Additional: "additional",
  Exclusive: "exclusive",
} as const;
export type GetMicrofrontendsInGroupTrustedIpsProtectionMode = ClosedEnum<
  typeof GetMicrofrontendsInGroupTrustedIpsProtectionMode
>;

export type GetMicrofrontendsInGroupTrustedIps1 = {
  deploymentType:
    GetMicrofrontendsInGroupTrustedIpsMicrofrontendsDeploymentType;
  addresses: Array<GetMicrofrontendsInGroupTrustedIpsAddresses>;
  protectionMode: GetMicrofrontendsInGroupTrustedIpsProtectionMode;
};

export type GetMicrofrontendsInGroupTrustedIps =
  | GetMicrofrontendsInGroupTrustedIps1
  | GetMicrofrontendsInGroupTrustedIps2;

export const GetMicrofrontendsInGroupFromMicrofrontendsPreset = {
  AllCustom: "all-custom",
} as const;
export type GetMicrofrontendsInGroupFromMicrofrontendsPreset = ClosedEnum<
  typeof GetMicrofrontendsInGroupFromMicrofrontendsPreset
>;

/**
 * The source envs on the trusted project that are allowed to access `to`.
 */
export type GetMicrofrontendsInGroupFrom2 = {
  /**
   * System environment slugs (`production`, `preview`) and/or custom environment slugs defined on the referenced project.
   */
  slugs?: Array<string> | undefined;
  preset: GetMicrofrontendsInGroupFromMicrofrontendsPreset;
};

export const GetMicrofrontendsInGroupFromPreset = {
  AllCustom: "all-custom",
} as const;
export type GetMicrofrontendsInGroupFromPreset = ClosedEnum<
  typeof GetMicrofrontendsInGroupFromPreset
>;

/**
 * The source envs on the trusted project that are allowed to access `to`.
 */
export type GetMicrofrontendsInGroupFrom1 = {
  /**
   * System environment slugs (`production`, `preview`) and/or custom environment slugs defined on the referenced project.
   */
  slugs: Array<string>;
  preset?: GetMicrofrontendsInGroupFromPreset | undefined;
};

export type GetMicrofrontendsInGroupFrom =
  | GetMicrofrontendsInGroupFrom1
  | GetMicrofrontendsInGroupFrom2;

export const GetMicrofrontendsInGroupToMicrofrontendsResponsePreset = {
  AllCustom: "all-custom",
} as const;
export type GetMicrofrontendsInGroupToMicrofrontendsResponsePreset = ClosedEnum<
  typeof GetMicrofrontendsInGroupToMicrofrontendsResponsePreset
>;

/**
 * The target envs on the current project that may be accessed.
 */
export type GetMicrofrontendsInGroupToMicrofrontends2 = {
  /**
   * System environment slugs (`production`, `preview`) and/or custom environment slugs defined on the referenced project.
   */
  slugs?: Array<string> | undefined;
  preset: GetMicrofrontendsInGroupToMicrofrontendsResponsePreset;
};

export const GetMicrofrontendsInGroupToMicrofrontendsResponse200Preset = {
  AllCustom: "all-custom",
} as const;
export type GetMicrofrontendsInGroupToMicrofrontendsResponse200Preset =
  ClosedEnum<typeof GetMicrofrontendsInGroupToMicrofrontendsResponse200Preset>;

/**
 * The target envs on the current project that may be accessed.
 */
export type GetMicrofrontendsInGroupToMicrofrontends1 = {
  /**
   * System environment slugs (`production`, `preview`) and/or custom environment slugs defined on the referenced project.
   */
  slugs: Array<string>;
  preset?:
    | GetMicrofrontendsInGroupToMicrofrontendsResponse200Preset
    | undefined;
};

export type GetMicrofrontendsInGroupMicrofrontendsTo =
  | GetMicrofrontendsInGroupToMicrofrontends1
  | GetMicrofrontendsInGroupToMicrofrontends2;

/**
 * Optional overrides for the default same-env-by-slug matching. Provide explicit rules to allow cross-env access or presets.
 */
export type GetMicrofrontendsInGroupCustomAllow = {
  from: GetMicrofrontendsInGroupFrom1 | GetMicrofrontendsInGroupFrom2;
  to:
    | GetMicrofrontendsInGroupToMicrofrontends1
    | GetMicrofrontendsInGroupToMicrofrontends2;
};

export type GetMicrofrontendsInGroupMicrofrontendsProjects = {
  label?: string | undefined;
  /**
   * Optional overrides for the default same-env-by-slug matching. Provide explicit rules to allow cross-env access or presets.
   */
  customAllow?: Array<GetMicrofrontendsInGroupCustomAllow> | undefined;
};

export const GetMicrofrontendsInGroupToMicrofrontendsPreset = {
  AllCustom: "all-custom",
} as const;
export type GetMicrofrontendsInGroupToMicrofrontendsPreset = ClosedEnum<
  typeof GetMicrofrontendsInGroupToMicrofrontendsPreset
>;

/**
 * The target envs on the current project that may be accessed.
 */
export type GetMicrofrontendsInGroupTo2 = {
  /**
   * System environment slugs (`production`, `preview`) and/or custom environment slugs defined on the referenced project.
   */
  slugs?: Array<string> | undefined;
  preset: GetMicrofrontendsInGroupToMicrofrontendsPreset;
};

export const GetMicrofrontendsInGroupToPreset = {
  AllCustom: "all-custom",
} as const;
export type GetMicrofrontendsInGroupToPreset = ClosedEnum<
  typeof GetMicrofrontendsInGroupToPreset
>;

/**
 * The target envs on the current project that may be accessed.
 */
export type GetMicrofrontendsInGroupTo1 = {
  /**
   * System environment slugs (`production`, `preview`) and/or custom environment slugs defined on the referenced project.
   */
  slugs: Array<string>;
  preset?: GetMicrofrontendsInGroupToPreset | undefined;
};

export type GetMicrofrontendsInGroupTo =
  | GetMicrofrontendsInGroupTo1
  | GetMicrofrontendsInGroupTo2;

export type GetMicrofrontendsInGroupOidcProviders = {
  to: GetMicrofrontendsInGroupTo1 | GetMicrofrontendsInGroupTo2;
  label?: string | undefined;
  claims: { [k: string]: Array<string> };
};

export type GetMicrofrontendsInGroupTrustedSources = {
  /**
   * Allow same-team Vercel CI access to preview deployments built from the CI run's repository, using the deployment source rather than the current project repository link. Defaults to enabled when not stored; omitted or null Trusted Sources updates preserve the stored value.
   */
  enableVercelCiSameRepository?: boolean | undefined;
  projects?:
    | { [k: string]: GetMicrofrontendsInGroupMicrofrontendsProjects }
    | undefined;
  oidcProviders?:
    | { [k: string]: Array<GetMicrofrontendsInGroupOidcProviders> }
    | undefined;
};

export type GetMicrofrontendsInGroupGitComments = {
  /**
   * Whether the Vercel bot should comment on PRs
   */
  onPullRequest: boolean;
  /**
   * Whether the Vercel bot should comment on commits
   */
  onCommit: boolean;
};

/**
 * Whether the Vercel bot should automatically create GitHub deployments https://docs.github.com/en/rest/deployments/deployments#about-deployments NOTE: repository-dispatch events should be used instead
 */
export const GetMicrofrontendsInGroupCreateDeployments = {
  Disabled: "disabled",
  Enabled: "enabled",
} as const;
/**
 * Whether the Vercel bot should automatically create GitHub deployments https://docs.github.com/en/rest/deployments/deployments#about-deployments NOTE: repository-dispatch events should be used instead
 */
export type GetMicrofrontendsInGroupCreateDeployments = ClosedEnum<
  typeof GetMicrofrontendsInGroupCreateDeployments
>;

/**
 * Configuration for consolidated git commit status reporting. When enabled, Vercel will post a single consolidated commit status instead of individual statuses for each deployment.
 */
export type GetMicrofrontendsInGroupConsolidatedGitCommitStatus = {
  /**
   * Whether consolidated commit status is enabled.
   */
  enabled: boolean;
  /**
   * Whether to propagate individual deployment failures to the consolidated status.
   */
  propagateFailures: boolean;
};

export type GetMicrofrontendsInGroupGitProviderOptions = {
  /**
   * Whether the Vercel bot should automatically create GitHub deployments https://docs.github.com/en/rest/deployments/deployments#about-deployments NOTE: repository-dispatch events should be used instead
   */
  createDeployments: GetMicrofrontendsInGroupCreateDeployments;
  /**
   * Whether the Vercel bot should not automatically create GitHub repository-dispatch events on deployment events. https://vercel.com/docs/git/vercel-for-github#repository-dispatch-events - `true`: disable repository-dispatch events for this project (explicit override of the team setting). - `false`: enable repository-dispatch events for this project (explicit override of the team setting). - absent: inherit from `team.disableRepositoryDispatchEvents`.
   */
  disableRepositoryDispatchEvents?: boolean | undefined;
  /**
   * Whether the project requires commits to be signed & verified before deployments will be created. - `true`: require verified commits for this project (explicit override of the team setting). - `false`: do not require verified commits (explicit override of the team setting). - absent: inherit from `team.requireVerifiedCommits`.
   */
  requireVerifiedCommits?: boolean | undefined;
  /**
   * Whether Vercel should post commit statuses for this project. When omitted, commit statuses remain enabled.
   */
  gitCommitStatus?: boolean | undefined;
  /**
   * Configuration for consolidated git commit status reporting. When enabled, Vercel will post a single consolidated commit status instead of individual statuses for each deployment.
   */
  consolidatedGitCommitStatus?:
    | GetMicrofrontendsInGroupConsolidatedGitCommitStatus
    | undefined;
};

export type GetMicrofrontendsInGroupWebAnalytics = {
  id: string;
  disabledAt?: number | undefined;
  canceledAt?: number | undefined;
  enabledAt?: number | undefined;
  hasData?: true | undefined;
};

export const GetMicrofrontendsInGroupMicrofrontendsAction = {
  Allow: "allow",
  Bypass: "bypass",
  Challenge: "challenge",
  Deny: "deny",
  Log: "log",
  RateLimit: "rate_limit",
  Redirect: "redirect",
} as const;
export type GetMicrofrontendsInGroupMicrofrontendsAction = ClosedEnum<
  typeof GetMicrofrontendsInGroupMicrofrontendsAction
>;

export const GetMicrofrontendsInGroupAlgo = {
  FixedWindow: "fixed_window",
  TokenBucket: "token_bucket",
} as const;
export type GetMicrofrontendsInGroupAlgo = ClosedEnum<
  typeof GetMicrofrontendsInGroupAlgo
>;

export const GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityRulesetsAction =
  {
    Challenge: "challenge",
    Deny: "deny",
    Log: "log",
    RateLimit: "rate_limit",
  } as const;
export type GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityRulesetsAction =
  ClosedEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityRulesetsAction
  >;

export type GetMicrofrontendsInGroupRateLimit = {
  algo: GetMicrofrontendsInGroupAlgo;
  window: number;
  limit: number;
  keys: Array<string>;
  action?:
    | GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityRulesetsAction
    | null
    | undefined;
};

export type GetMicrofrontendsInGroupRedirect = {
  location: string;
  permanent: boolean;
};

export const GetMicrofrontendsInGroupLogHeadersMicrofrontends2 = {
  Wildcard: "*",
} as const;
export type GetMicrofrontendsInGroupLogHeadersMicrofrontends2 = ClosedEnum<
  typeof GetMicrofrontendsInGroupLogHeadersMicrofrontends2
>;

export type GetMicrofrontendsInGroupMicrofrontendsLogHeaders =
  | Array<string>
  | GetMicrofrontendsInGroupLogHeadersMicrofrontends2;

export type GetMicrofrontendsInGroupRulesets = {
  action: GetMicrofrontendsInGroupMicrofrontendsAction;
  rateLimit?: GetMicrofrontendsInGroupRateLimit | null | undefined;
  redirect?: GetMicrofrontendsInGroupRedirect | null | undefined;
  actionDuration?: string | null | undefined;
  bypassSystem?: boolean | null | undefined;
  logHeaders?:
    | Array<string>
    | GetMicrofrontendsInGroupLogHeadersMicrofrontends2
    | undefined;
};

export const GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityManagedRulesAction =
  {
    Challenge: "challenge",
    Deny: "deny",
    Log: "log",
  } as const;
export type GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityManagedRulesAction =
  ClosedEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityManagedRulesAction
  >;

export type GetMicrofrontendsInGroupVercelRuleset = {
  active: boolean;
  action?:
    | GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityManagedRulesAction
    | undefined;
};

export const GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityManagedRulesTrafficSourcesAction =
  {
    Challenge: "challenge",
    Deny: "deny",
    Log: "log",
  } as const;
export type GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityManagedRulesTrafficSourcesAction =
  ClosedEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityManagedRulesTrafficSourcesAction
  >;

export type GetMicrofrontendsInGroupTrafficSources = {
  active: boolean;
  action?:
    | GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityManagedRulesTrafficSourcesAction
    | undefined;
};

export const GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyAction =
  {
    Challenge: "challenge",
    Deny: "deny",
    Log: "log",
  } as const;
export type GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyAction =
  ClosedEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyAction
  >;

export type GetMicrofrontendsInGroupBotFilter = {
  active: boolean;
  action?:
    | GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyAction
    | undefined;
};

export const GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsAction =
  {
    Challenge: "challenge",
    Deny: "deny",
    Log: "log",
  } as const;
export type GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsAction =
  ClosedEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsAction
  >;

export type GetMicrofrontendsInGroupAiBots = {
  active: boolean;
  action?:
    | GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsAction
    | undefined;
};

export const GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityAction =
  {
    Challenge: "challenge",
    Deny: "deny",
    Log: "log",
  } as const;
export type GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityAction =
  ClosedEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityAction
  >;

export type GetMicrofrontendsInGroupOwasp = {
  active: boolean;
  action?:
    | GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityAction
    | undefined;
};

export type GetMicrofrontendsInGroupManagedRules = {
  vercelRuleset: GetMicrofrontendsInGroupVercelRuleset;
  trafficSources: GetMicrofrontendsInGroupTrafficSources;
  botFilter: GetMicrofrontendsInGroupBotFilter;
  aiBots: GetMicrofrontendsInGroupAiBots;
  owasp: GetMicrofrontendsInGroupOwasp;
};

export const GetMicrofrontendsInGroupLogHeaders2 = {
  Wildcard: "*",
} as const;
export type GetMicrofrontendsInGroupLogHeaders2 = ClosedEnum<
  typeof GetMicrofrontendsInGroupLogHeaders2
>;

export type GetMicrofrontendsInGroupLogHeaders =
  | Array<string>
  | GetMicrofrontendsInGroupLogHeaders2;

export type GetMicrofrontendsInGroupSecurityPlusMetadata = {
  updatedAt: number;
  /**
   * Timestamp when the feature was first enabled. Never changes after initial enablement.
   */
  firstEnabledAt?: number | undefined;
};

export type GetMicrofrontendsInGroupSecurity = {
  attackModeEnabled?: boolean | undefined;
  attackModeUpdatedAt?: number | undefined;
  firewallEnabled?: boolean | undefined;
  firewallUpdatedAt?: number | undefined;
  attackModeActiveUntil?: number | null | undefined;
  firewallConfigVersion?: number | undefined;
  rulesets?: { [k: string]: GetMicrofrontendsInGroupRulesets } | undefined;
  firewallSeawallEnabled?: boolean | undefined;
  ja3Enabled?: boolean | undefined;
  ja4Enabled?: boolean | undefined;
  firewallBypassIps?: Array<string> | undefined;
  managedRules?: GetMicrofrontendsInGroupManagedRules | null | undefined;
  botIdEnabled?: boolean | undefined;
  logHeaders?: Array<string> | GetMicrofrontendsInGroupLogHeaders2 | undefined;
  securityPlus?: boolean | undefined;
  securityPlusMetadata?:
    | GetMicrofrontendsInGroupSecurityPlusMetadata
    | undefined;
  /**
   * Whether Page Integrity is enabled for this project. Used by the metadata service to gate DynamoDB lookups against the page-integrity-inventory table.
   */
  pageIntegrityEnabled?: boolean | undefined;
};

/**
 * - team: `https://oidc.vercel.com/[team_slug]` - global: `https://oidc.vercel.com`
 */
export const GetMicrofrontendsInGroupIssuerMode = {
  Global: "global",
  Team: "team",
} as const;
/**
 * - team: `https://oidc.vercel.com/[team_slug]` - global: `https://oidc.vercel.com`
 */
export type GetMicrofrontendsInGroupIssuerMode = ClosedEnum<
  typeof GetMicrofrontendsInGroupIssuerMode
>;

export type GetMicrofrontendsInGroupOidcTokenConfig = {
  /**
   * Whether or not to generate OpenID Connect JSON Web Tokens.
   */
  enabled?: boolean | undefined;
  /**
   * - team: `https://oidc.vercel.com/[team_slug]` - global: `https://oidc.vercel.com`
   */
  issuerMode?: GetMicrofrontendsInGroupIssuerMode | undefined;
};

/**
 * Allowlist entry for GitLab, which uses nested groups rather than a flat org/repo. `namespace` is the full group path (e.g. `group` or `group/subgroup`); `project` is the leaf project name. Omit `project` to match any project under the namespace. Namespace is matched case-insensitively.
 */
export type GetMicrofrontendsInGroupSources2 = {
  provider: "gitlab";
  namespace: string;
  project?: string | undefined;
};

export const GetMicrofrontendsInGroupSourcesMicrofrontendsProvider = {
  Bitbucket: "bitbucket",
  Github: "github",
} as const;
export type GetMicrofrontendsInGroupSourcesMicrofrontendsProvider = ClosedEnum<
  typeof GetMicrofrontendsInGroupSourcesMicrofrontendsProvider
>;

/**
 * Allowlist entry for GitHub and Bitbucket, whose repos are identified by a flat `org`/`repo` (Bitbucket's workspace/owner maps to `org`, its repo slug to `repo`). Omit `repo` to match any repo in the org. Org is matched case-insensitively.
 */
export type GetMicrofrontendsInGroupSources1 = {
  provider: GetMicrofrontendsInGroupSourcesMicrofrontendsProvider;
  org: string;
  repo?: string | undefined;
};

export type GetMicrofrontendsInGroupSources =
  | (GetMicrofrontendsInGroupSources1 & { provider: "bitbucket" })
  | (GetMicrofrontendsInGroupSources1 & { provider: "github" })
  | GetMicrofrontendsInGroupSources2;

export type GetMicrofrontendsInGroupEnvironmentsMicrofrontends2 = {
  type: "custom";
  environmentId: string;
};

export const GetMicrofrontendsInGroupEnvironmentsMicrofrontendsTarget = {
  Preview: "preview",
  Production: "production",
} as const;
export type GetMicrofrontendsInGroupEnvironmentsMicrofrontendsTarget =
  ClosedEnum<typeof GetMicrofrontendsInGroupEnvironmentsMicrofrontendsTarget>;

export type GetMicrofrontendsInGroupEnvironments1 = {
  type: "system";
  target: GetMicrofrontendsInGroupEnvironmentsMicrofrontendsTarget;
};

export type GetMicrofrontendsInGroupEnvironments =
  | GetMicrofrontendsInGroupEnvironments1
  | GetMicrofrontendsInGroupEnvironmentsMicrofrontends2;

/**
 * `enabled: true` with empty `sources` is deny-all.
 */
export type GetMicrofrontendsInGroupGitSources = {
  sources: Array<
    | (GetMicrofrontendsInGroupSources1 & { provider: "bitbucket" })
    | (GetMicrofrontendsInGroupSources1 & { provider: "github" })
    | GetMicrofrontendsInGroupSources2
  >;
  enabled: boolean;
  environments: Array<
    | GetMicrofrontendsInGroupEnvironments1
    | GetMicrofrontendsInGroupEnvironmentsMicrofrontends2
  >;
};

/**
 * Customer-configurable deployment sources. Every deploy classifies to exactly one. JSON schema in `packages/deployment-policy/schemas/body.ts` enumerates exactly these values. - `'git'` — git provider webhook. - `'cli'` — Vercel CLI (legacy classic-token CLI and SIWV CLI both). - `'rest-api'` — direct user/team-token REST upload. Does NOT cover deploy hooks, Marketplace integrations, or first-party app tokens. - `'deploy-hook'` — project deploy-hook URL. The URL is the credential. - `'integration'` — third-party Marketplace actor: Marketplace integration token, user-delegated OAuth from a Marketplace app, or an unrecognized third-party Vercel App. First-party Vercel Apps are never `'integration'`. - `'v0'` — the v0 product surface (entitlement-gated). v0 deploys through the CLI under the hood, but classifies as its own source so a team can allow or deny v0 independently of `'cli'`. First-party Vercel apps (Toolbar, etc.) classify as `'first-party'` — see `ClassifiedSource` in `./checks`. They're not in this union because they aren't customer-configurable; they bypass `checkDeploymentSources` entirely. v0 is intentionally NOT among them: like the CLI, it's a real product surface and is policy-controllable.
 */
export const GetMicrofrontendsInGroupMicrofrontendsSources = {
  Cli: "cli",
  DeployHook: "deploy-hook",
  Git: "git",
  Integration: "integration",
  RestApi: "rest-api",
  V0: "v0",
} as const;
/**
 * Customer-configurable deployment sources. Every deploy classifies to exactly one. JSON schema in `packages/deployment-policy/schemas/body.ts` enumerates exactly these values. - `'git'` — git provider webhook. - `'cli'` — Vercel CLI (legacy classic-token CLI and SIWV CLI both). - `'rest-api'` — direct user/team-token REST upload. Does NOT cover deploy hooks, Marketplace integrations, or first-party app tokens. - `'deploy-hook'` — project deploy-hook URL. The URL is the credential. - `'integration'` — third-party Marketplace actor: Marketplace integration token, user-delegated OAuth from a Marketplace app, or an unrecognized third-party Vercel App. First-party Vercel Apps are never `'integration'`. - `'v0'` — the v0 product surface (entitlement-gated). v0 deploys through the CLI under the hood, but classifies as its own source so a team can allow or deny v0 independently of `'cli'`. First-party Vercel apps (Toolbar, etc.) classify as `'first-party'` — see `ClassifiedSource` in `./checks`. They're not in this union because they aren't customer-configurable; they bypass `checkDeploymentSources` entirely. v0 is intentionally NOT among them: like the CLI, it's a real product surface and is policy-controllable.
 */
export type GetMicrofrontendsInGroupMicrofrontendsSources = ClosedEnum<
  typeof GetMicrofrontendsInGroupMicrofrontendsSources
>;

export type GetMicrofrontendsInGroupEnvironments2 = {
  type: "custom";
  environmentId: string;
};

export const GetMicrofrontendsInGroupEnvironmentsTarget = {
  Preview: "preview",
  Production: "production",
} as const;
export type GetMicrofrontendsInGroupEnvironmentsTarget = ClosedEnum<
  typeof GetMicrofrontendsInGroupEnvironmentsTarget
>;

export type GetMicrofrontendsInGroupEnvironmentsMicrofrontends1 = {
  type: "system";
  target: GetMicrofrontendsInGroupEnvironmentsTarget;
};

export type GetMicrofrontendsInGroupMicrofrontendsEnvironments =
  | GetMicrofrontendsInGroupEnvironmentsMicrofrontends1
  | GetMicrofrontendsInGroupEnvironments2;

/**
 * `enabled: true` with empty `sources` is deny-all.
 */
export type GetMicrofrontendsInGroupDeploymentSources = {
  sources: Array<GetMicrofrontendsInGroupMicrofrontendsSources>;
  enabled: boolean;
  environments: Array<
    | GetMicrofrontendsInGroupEnvironmentsMicrofrontends1
    | GetMicrofrontendsInGroupEnvironments2
  >;
};

/**
 * Project shape. `null` on a rule list clears the project's override for that rule type (fall back to team for every env); omitting is equivalent. Setting `deploymentPolicy` itself to `null` clears every override at once. Kept structurally distinct from {@link TeamDeploymentPolicy} so the two storage locations don't share a type by accident.
 */
export type GetMicrofrontendsInGroupDeploymentPolicy = {
  gitSources?: Array<GetMicrofrontendsInGroupGitSources> | null | undefined;
  deploymentSources?:
    | Array<GetMicrofrontendsInGroupDeploymentSources>
    | null
    | undefined;
};

export const GetMicrofrontendsInGroupTier = {
  Advanced: "advanced",
  Critical: "critical",
  Priority: "priority",
} as const;
export type GetMicrofrontendsInGroupTier = ClosedEnum<
  typeof GetMicrofrontendsInGroupTier
>;

/**
 * Billing mode. Always 'flat' for flat-rate projects.
 */
export const GetMicrofrontendsInGroupKind = {
  Flat: "flat",
} as const;
/**
 * Billing mode. Always 'flat' for flat-rate projects.
 */
export type GetMicrofrontendsInGroupKind = ClosedEnum<
  typeof GetMicrofrontendsInGroupKind
>;

export type GetMicrofrontendsInGroupUsageStatus = {
  /**
   * Billing mode. Always 'flat' for flat-rate projects.
   */
  kind: GetMicrofrontendsInGroupKind;
  /**
   * Timestamp until which the project has exceeded its CDN allowance.
   */
  exceededAllowanceUntil?: number | undefined;
  /**
   * Timestamp until which throttling is bypassed (project pays list rates for overage).
   */
  bypassThrottleUntil?: number | undefined;
  /**
   * Per-project throttle, set explicitly for this project (e.g. via the per-project Flat Rate CDN endpoint).
   */
  throttled?: boolean | undefined;
  /**
   * Synced from `team.billing.usageStatus.throttled`. When `true`, the team has throttled all of its projects regardless of `throttled`. The effective throttle the CDN enforces is `throttled || teamThrottled`.
   */
  teamThrottled?: boolean | undefined;
};

export type GetMicrofrontendsInGroupFeatures = {
  webAnalytics?: boolean | undefined;
};

export type GetMicrofrontendsInGroupHistory = {
  scanner: string;
  reason: string;
  by: string;
  byId: string;
  at: number;
};

export const GetMicrofrontendsInGroupMicrofrontendsResponseAction = {
  Blocked: "blocked",
} as const;
export type GetMicrofrontendsInGroupMicrofrontendsResponseAction = ClosedEnum<
  typeof GetMicrofrontendsInGroupMicrofrontendsResponseAction
>;

export type GetMicrofrontendsInGroupBlock = {
  action: GetMicrofrontendsInGroupMicrofrontendsResponseAction;
  reason: string;
  statusCode: number;
  createdAt: number;
  caseId?: string | undefined;
  actor?: string | undefined;
  comment?: string | undefined;
  ineligibleForAppeal?: boolean | undefined;
  isCascading?: boolean | undefined;
};

export type GetMicrofrontendsInGroupHasMicrofrontendsResponse200Value = {
  eq: string;
};

export type GetMicrofrontendsInGroupHasMicrofrontends2 = {
  type: "host";
  value: GetMicrofrontendsInGroupHasMicrofrontendsResponse200Value;
};

export const GetMicrofrontendsInGroupHasMicrofrontendsResponseKey = {
  XVercelIpCountry: "x-vercel-ip-country",
} as const;
export type GetMicrofrontendsInGroupHasMicrofrontendsResponseKey = ClosedEnum<
  typeof GetMicrofrontendsInGroupHasMicrofrontendsResponseKey
>;

export type GetMicrofrontendsInGroupHasMicrofrontendsResponseValue = {
  eq: string;
};

export type GetMicrofrontendsInGroupHasMicrofrontends1 = {
  type: "header";
  key: GetMicrofrontendsInGroupHasMicrofrontendsResponseKey;
  value: GetMicrofrontendsInGroupHasMicrofrontendsResponseValue;
};

export type GetMicrofrontendsInGroupRouteHas =
  | GetMicrofrontendsInGroupHasMicrofrontends1
  | GetMicrofrontendsInGroupHasMicrofrontends2;

export const GetMicrofrontendsInGroupRouteAction = {
  BlockLegalCwc: "block_legal_cwc",
} as const;
export type GetMicrofrontendsInGroupRouteAction = ClosedEnum<
  typeof GetMicrofrontendsInGroupRouteAction
>;

export type GetMicrofrontendsInGroupRouteMitigate = {
  action: GetMicrofrontendsInGroupRouteAction;
};

export type GetMicrofrontendsInGroupRoute2 = {
  has: Array<
    | GetMicrofrontendsInGroupHasMicrofrontends1
    | GetMicrofrontendsInGroupHasMicrofrontends2
  >;
  mitigate: GetMicrofrontendsInGroupRouteMitigate;
  src?: string | undefined;
};

export type GetMicrofrontendsInGroupRoute1 = {
  src: string;
  status: number;
  expiry?: number | undefined;
};

export type GetMicrofrontendsInGroupBlockHistoryMicrofrontendsRoute =
  | GetMicrofrontendsInGroupRoute1
  | GetMicrofrontendsInGroupRoute2;

export type GetMicrofrontendsInGroupBlockHistory4 = {
  action: "route-unblocked";
  route: GetMicrofrontendsInGroupRoute1 | GetMicrofrontendsInGroupRoute2;
  statusCode?: number | undefined;
  createdAt: number;
  caseId?: string | undefined;
  actor?: string | undefined;
  comment?: string | undefined;
  ineligibleForAppeal?: boolean | undefined;
  isCascading?: boolean | undefined;
};

export type GetMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONResponseBodyValue =
  {
    eq: string;
  };

export type GetMicrofrontendsInGroupHasMicrofrontendsResponse2 = {
  type: "host";
  value:
    GetMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONResponseBodyValue;
};

export const GetMicrofrontendsInGroupHasMicrofrontendsKey = {
  XVercelIpCountry: "x-vercel-ip-country",
} as const;
export type GetMicrofrontendsInGroupHasMicrofrontendsKey = ClosedEnum<
  typeof GetMicrofrontendsInGroupHasMicrofrontendsKey
>;

export type GetMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONValue =
  {
    eq: string;
  };

export type GetMicrofrontendsInGroupHasMicrofrontendsResponse1 = {
  type: "header";
  key: GetMicrofrontendsInGroupHasMicrofrontendsKey;
  value:
    GetMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONValue;
};

export type GetMicrofrontendsInGroupRouteMicrofrontendsHas =
  | GetMicrofrontendsInGroupHasMicrofrontendsResponse1
  | GetMicrofrontendsInGroupHasMicrofrontendsResponse2;

export const GetMicrofrontendsInGroupRouteMicrofrontendsAction = {
  BlockLegalCwc: "block_legal_cwc",
} as const;
export type GetMicrofrontendsInGroupRouteMicrofrontendsAction = ClosedEnum<
  typeof GetMicrofrontendsInGroupRouteMicrofrontendsAction
>;

export type GetMicrofrontendsInGroupRouteMicrofrontendsMitigate = {
  action: GetMicrofrontendsInGroupRouteMicrofrontendsAction;
};

export type GetMicrofrontendsInGroupRouteMicrofrontends2 = {
  has: Array<
    | GetMicrofrontendsInGroupHasMicrofrontendsResponse1
    | GetMicrofrontendsInGroupHasMicrofrontendsResponse2
  >;
  mitigate: GetMicrofrontendsInGroupRouteMicrofrontendsMitigate;
  src?: string | undefined;
};

export type GetMicrofrontendsInGroupRouteMicrofrontends1 = {
  src: string;
  status: number;
  expiry?: number | undefined;
};

export type GetMicrofrontendsInGroupBlockHistoryRoute =
  | GetMicrofrontendsInGroupRouteMicrofrontends1
  | GetMicrofrontendsInGroupRouteMicrofrontends2;

export type GetMicrofrontendsInGroupBlockHistory3 = {
  action: "route-blocked";
  route:
    | GetMicrofrontendsInGroupRouteMicrofrontends1
    | GetMicrofrontendsInGroupRouteMicrofrontends2;
  reason: string;
  createdAt: number;
  caseId?: string | undefined;
  actor?: string | undefined;
  comment?: string | undefined;
  ineligibleForAppeal?: boolean | undefined;
  isCascading?: boolean | undefined;
};

export type GetMicrofrontendsInGroupBlockHistory2 = {
  action: "unblocked";
  createdAt: number;
  caseId?: string | undefined;
  actor?: string | undefined;
  comment?: string | undefined;
  ineligibleForAppeal?: boolean | undefined;
  isCascading?: boolean | undefined;
};

export type GetMicrofrontendsInGroupBlockHistory1 = {
  action: "blocked";
  reason: string;
  statusCode: number;
  createdAt: number;
  caseId?: string | undefined;
  actor?: string | undefined;
  comment?: string | undefined;
  ineligibleForAppeal?: boolean | undefined;
  isCascading?: boolean | undefined;
};

export type GetMicrofrontendsInGroupBlockHistory =
  | GetMicrofrontendsInGroupBlockHistory1
  | GetMicrofrontendsInGroupBlockHistory2
  | GetMicrofrontendsInGroupBlockHistory3
  | GetMicrofrontendsInGroupBlockHistory4;

export const GetMicrofrontendsInGroupMicrofrontendsResponse200Action = {
  AddDeploymentInterstitial: "add-deployment-interstitial",
  AddProjectInterstitial: "add-project-interstitial",
  RemoveDeploymentInterstitial: "remove-deployment-interstitial",
  RemoveProjectInterstitial: "remove-project-interstitial",
} as const;
export type GetMicrofrontendsInGroupMicrofrontendsResponse200Action =
  ClosedEnum<typeof GetMicrofrontendsInGroupMicrofrontendsResponse200Action>;

export type GetMicrofrontendsInGroupInterstitialHistory = {
  action: GetMicrofrontendsInGroupMicrofrontendsResponse200Action;
  createdAt: number;
  caseId?: string | undefined;
  reason?: string | undefined;
  actor?: string | undefined;
  comment?: string | undefined;
};

export type GetMicrofrontendsInGroupAbuse = {
  scanner?: string | undefined;
  history: Array<GetMicrofrontendsInGroupHistory>;
  updatedAt: number;
  block?: GetMicrofrontendsInGroupBlock | undefined;
  blockHistory?:
    | Array<
      | GetMicrofrontendsInGroupBlockHistory1
      | GetMicrofrontendsInGroupBlockHistory2
      | GetMicrofrontendsInGroupBlockHistory3
      | GetMicrofrontendsInGroupBlockHistory4
    >
    | undefined;
  interstitial?: boolean | undefined;
  interstitialHistory?:
    | Array<GetMicrofrontendsInGroupInterstitialHistory>
    | undefined;
};

export type GetMicrofrontendsInGroupHasMicrofrontendsValue = {
  eq: string;
};

export type GetMicrofrontendsInGroupHas2 = {
  type: "host";
  value: GetMicrofrontendsInGroupHasMicrofrontendsValue;
};

export const GetMicrofrontendsInGroupHasKey = {
  XVercelIpCountry: "x-vercel-ip-country",
} as const;
export type GetMicrofrontendsInGroupHasKey = ClosedEnum<
  typeof GetMicrofrontendsInGroupHasKey
>;

export type GetMicrofrontendsInGroupHasValue = {
  eq: string;
};

export type GetMicrofrontendsInGroupHas1 = {
  type: "header";
  key: GetMicrofrontendsInGroupHasKey;
  value: GetMicrofrontendsInGroupHasValue;
};

export type GetMicrofrontendsInGroupInternalRoutesHas =
  | GetMicrofrontendsInGroupHas1
  | GetMicrofrontendsInGroupHas2;

export const GetMicrofrontendsInGroupInternalRoutesAction = {
  BlockLegalCwc: "block_legal_cwc",
} as const;
export type GetMicrofrontendsInGroupInternalRoutesAction = ClosedEnum<
  typeof GetMicrofrontendsInGroupInternalRoutesAction
>;

export type GetMicrofrontendsInGroupInternalRoutesMitigate = {
  action: GetMicrofrontendsInGroupInternalRoutesAction;
};

export type GetMicrofrontendsInGroupInternalRoutes2 = {
  has: Array<GetMicrofrontendsInGroupHas1 | GetMicrofrontendsInGroupHas2>;
  mitigate: GetMicrofrontendsInGroupInternalRoutesMitigate;
  src?: string | undefined;
};

/** @internal */
export const GetMicrofrontendsInGroupBuildMachineSelection$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupBuildMachineSelection> = z
    .nativeEnum(GetMicrofrontendsInGroupBuildMachineSelection);

/** @internal */
export const GetMicrofrontendsInGroupBuildMachineElasticReason$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupBuildMachineElasticReason> = z
    .nativeEnum(GetMicrofrontendsInGroupBuildMachineElasticReason);

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsConfiguration$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupMicrofrontendsConfiguration> =
    z.nativeEnum(GetMicrofrontendsInGroupMicrofrontendsConfiguration);

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsBuildQueue$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupMicrofrontendsBuildQueue,
    z.ZodTypeDef,
    unknown
  > = z.object({
    configuration: types.optional(
      GetMicrofrontendsInGroupMicrofrontendsConfiguration$inboundSchema,
    ),
  });

export function getMicrofrontendsInGroupMicrofrontendsBuildQueueFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupMicrofrontendsBuildQueue,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupMicrofrontendsBuildQueue$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupMicrofrontendsBuildQueue' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupDefaultResourceConfig$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupDefaultResourceConfig,
    z.ZodTypeDef,
    unknown
  > = z.object({
    fluid: types.optional(types.boolean()),
    functionDefaultRegions: z.array(types.string()),
    functionDefaultTimeout: types.optional(types.number()),
    functionDefaultMemoryType: types.optional(
      GetMicrofrontendsInGroupFunctionDefaultMemoryType$inboundSchema,
    ),
    functionZeroConfigFailover: types.optional(types.boolean()),
    elasticConcurrencyEnabled: types.optional(types.boolean()),
    buildMachineType: types.optional(
      GetMicrofrontendsInGroupBuildMachineType$inboundSchema,
    ),
    buildMachineSelection: types.optional(
      GetMicrofrontendsInGroupBuildMachineSelection$inboundSchema,
    ),
    buildMachineElasticLastUpdated: types.optional(types.number()),
    buildMachineElasticReason: types.optional(
      GetMicrofrontendsInGroupBuildMachineElasticReason$inboundSchema,
    ),
    isNSNBDisabled: types.optional(types.boolean()),
    buildQueue: types.optional(
      z.lazy(() =>
        GetMicrofrontendsInGroupMicrofrontendsBuildQueue$inboundSchema
      ),
    ),
    enableFunctionsBeta: types.optional(types.boolean()),
  });

export function getMicrofrontendsInGroupDefaultResourceConfigFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupDefaultResourceConfig,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupDefaultResourceConfig$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupDefaultResourceConfig' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupStaticIps$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupStaticIps,
  z.ZodTypeDef,
  unknown
> = z.object({
  builds: types.boolean(),
  enabled: types.boolean(),
  regions: z.array(types.string()),
});

export function getMicrofrontendsInGroupStaticIpsFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupStaticIps, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupStaticIps$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupStaticIps' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsDeploymentType$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupMicrofrontendsDeploymentType> =
    z.nativeEnum(GetMicrofrontendsInGroupMicrofrontendsDeploymentType);

/** @internal */
export const GetMicrofrontendsInGroupCve55182MigrationAppliedFrom$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupCve55182MigrationAppliedFrom> =
    z.nativeEnum(GetMicrofrontendsInGroupCve55182MigrationAppliedFrom);

/** @internal */
export const GetMicrofrontendsInGroupApril2026SecurityIncidentMigrationAppliedFrom$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupApril2026SecurityIncidentMigrationAppliedFrom
  > = z.nativeEnum(
    GetMicrofrontendsInGroupApril2026SecurityIncidentMigrationAppliedFrom,
  );

/** @internal */
export const GetMicrofrontendsInGroupSsoProtection$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupSsoProtection,
  z.ZodTypeDef,
  unknown
> = z.object({
  deploymentType:
    GetMicrofrontendsInGroupMicrofrontendsDeploymentType$inboundSchema,
  cve55182MigrationAppliedFrom: z.nullable(
    GetMicrofrontendsInGroupCve55182MigrationAppliedFrom$inboundSchema,
  ).optional(),
  april2026SecurityIncidentMigrationAppliedFrom: z.nullable(
    GetMicrofrontendsInGroupApril2026SecurityIncidentMigrationAppliedFrom$inboundSchema,
  ).optional(),
});

export function getMicrofrontendsInGroupSsoProtectionFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupSsoProtection, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupSsoProtection$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupSsoProtection' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupAliasAssigned$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupAliasAssigned,
  z.ZodTypeDef,
  unknown
> = smartUnion([types.number(), types.boolean()]);

export function getMicrofrontendsInGroupAliasAssignedFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupAliasAssigned, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupAliasAssigned$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupAliasAssigned' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsAliasError$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupMicrofrontendsAliasError,
    z.ZodTypeDef,
    unknown
  > = z.object({
    code: types.string(),
    message: types.string(),
  });

export function getMicrofrontendsInGroupMicrofrontendsAliasErrorFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupMicrofrontendsAliasError,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupMicrofrontendsAliasError$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupMicrofrontendsAliasError' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsTargetsType$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsTargetsType
  > = z.nativeEnum(
    GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsTargetsType,
  );

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsResponseBranchMatcher$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupMicrofrontendsResponseBranchMatcher,
    z.ZodTypeDef,
    unknown
  > = z.object({
    type:
      GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsTargetsType$inboundSchema,
    pattern: types.string(),
  });

export function getMicrofrontendsInGroupMicrofrontendsResponseBranchMatcherFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupMicrofrontendsResponseBranchMatcher,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupMicrofrontendsResponseBranchMatcher$inboundSchema
        .parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupMicrofrontendsResponseBranchMatcher' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsBuilds$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupMicrofrontendsBuilds,
    z.ZodTypeDef,
    unknown
  > = z.object({
    use: types.string(),
    src: types.optional(types.string()),
    dest: types.optional(types.string()),
  });

export function getMicrofrontendsInGroupMicrofrontendsBuildsFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupMicrofrontendsBuilds,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupMicrofrontendsBuilds$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupMicrofrontendsBuilds' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsChecksConclusion$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsChecksConclusion
  > = z.nativeEnum(GetMicrofrontendsInGroupMicrofrontendsChecksConclusion);

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsChecksState$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupMicrofrontendsChecksState> = z
    .nativeEnum(GetMicrofrontendsInGroupMicrofrontendsChecksState);

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsResponseCreator$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupMicrofrontendsResponseCreator,
    z.ZodTypeDef,
    unknown
  > = z.object({
    email: types.string(),
    githubLogin: types.optional(types.string()),
    gitlabLogin: types.optional(types.string()),
    uid: types.string(),
    username: types.string(),
  });

export function getMicrofrontendsInGroupMicrofrontendsResponseCreatorFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupMicrofrontendsResponseCreator,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupMicrofrontendsResponseCreator$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupMicrofrontendsResponseCreator' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsOidcTokenClaims$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupMicrofrontendsOidcTokenClaims,
    z.ZodTypeDef,
    unknown
  > = z.object({
    iss: types.string(),
    sub: types.string(),
    scope: types.string(),
    aud: types.string(),
    owner: types.string(),
    owner_id: types.string(),
    project: types.string(),
    project_id: types.string(),
    environment: types.string(),
    custom_environment_id: types.optional(types.string()),
    mfe_group_ids: types.optional(z.array(types.string())),
    plan: types.optional(types.string()),
  }).transform((v) => {
    return remap$(v, {
      "owner_id": "ownerId",
      "project_id": "projectId",
      "custom_environment_id": "customEnvironmentId",
      "mfe_group_ids": "mfeGroupIds",
    });
  });

export function getMicrofrontendsInGroupMicrofrontendsOidcTokenClaimsFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupMicrofrontendsOidcTokenClaims,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupMicrofrontendsOidcTokenClaims$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupMicrofrontendsOidcTokenClaims' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsPlan$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupMicrofrontendsPlan> = z
    .nativeEnum(GetMicrofrontendsInGroupMicrofrontendsPlan);

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsReadyState$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupMicrofrontendsReadyState> = z
    .nativeEnum(GetMicrofrontendsInGroupMicrofrontendsReadyState);

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsReadySubstate$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupMicrofrontendsReadySubstate> =
    z.nativeEnum(GetMicrofrontendsInGroupMicrofrontendsReadySubstate);

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsResponse200Type$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200Type
  > = z.nativeEnum(GetMicrofrontendsInGroupMicrofrontendsResponse200Type);

/** @internal */
export const GetMicrofrontendsInGroupTargets$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupTargets,
  z.ZodTypeDef,
  unknown
> = z.object({
  id: types.string(),
  alias: types.optional(z.array(types.string())),
  aliasAssigned: z.nullable(smartUnion([types.number(), types.boolean()]))
    .optional(),
  aliasError: z.nullable(
    z.lazy(() =>
      GetMicrofrontendsInGroupMicrofrontendsAliasError$inboundSchema
    ),
  ).optional(),
  aliasFinal: z.nullable(types.string()).optional(),
  automaticAliases: types.optional(z.array(types.string())),
  branchMatcher: types.optional(
    z.lazy(() =>
      GetMicrofrontendsInGroupMicrofrontendsResponseBranchMatcher$inboundSchema
    ),
  ),
  buildingAt: types.optional(types.number()),
  builds: types.optional(
    z.array(z.lazy(() =>
      GetMicrofrontendsInGroupMicrofrontendsBuilds$inboundSchema
    )),
  ),
  checksConclusion: types.optional(
    GetMicrofrontendsInGroupMicrofrontendsChecksConclusion$inboundSchema,
  ),
  checksState: types.optional(
    GetMicrofrontendsInGroupMicrofrontendsChecksState$inboundSchema,
  ),
  connectBuildsEnabled: types.optional(types.boolean()),
  connectConfigurationId: types.optional(types.string()),
  createdAt: types.number(),
  createdIn: types.string(),
  creator: types.nullable(
    z.lazy(() =>
      GetMicrofrontendsInGroupMicrofrontendsResponseCreator$inboundSchema
    ),
  ),
  deletedAt: types.optional(types.number()),
  deploymentHostname: types.string(),
  forced: types.optional(types.boolean()),
  name: types.string(),
  meta: types.optional(z.record(types.string())),
  monorepoManager: z.nullable(types.string()).optional(),
  oidcTokenClaims: types.optional(
    z.lazy(() =>
      GetMicrofrontendsInGroupMicrofrontendsOidcTokenClaims$inboundSchema
    ),
  ),
  plan: GetMicrofrontendsInGroupMicrofrontendsPlan$inboundSchema,
  previewCommentsEnabled: types.optional(types.boolean()),
  private: types.boolean(),
  readyAt: types.optional(types.number()),
  readyState: GetMicrofrontendsInGroupMicrofrontendsReadyState$inboundSchema,
  readySubstate: types.optional(
    GetMicrofrontendsInGroupMicrofrontendsReadySubstate$inboundSchema,
  ),
  requestedAt: types.optional(types.number()),
  target: z.nullable(types.string()).optional(),
  teamId: z.nullable(types.string()).optional(),
  type: GetMicrofrontendsInGroupMicrofrontendsResponse200Type$inboundSchema,
  url: types.string(),
  userId: types.optional(types.string()),
  withCache: types.optional(types.boolean()),
});

export function getMicrofrontendsInGroupTargetsFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupTargets, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupTargets$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupTargets' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupPermissions$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupPermissions,
  z.ZodTypeDef,
  unknown
> = z.object({
  aliasProject: types.optional(z.array(ACLAction$inboundSchema)),
  aliasProtectionBypass: types.optional(z.array(ACLAction$inboundSchema)),
  bulkRedirects: types.optional(z.array(ACLAction$inboundSchema)),
  buildMachine: types.optional(z.array(ACLAction$inboundSchema)),
  connectConfigurationLink: types.optional(z.array(ACLAction$inboundSchema)),
  dataCacheNamespace: types.optional(z.array(ACLAction$inboundSchema)),
  deployment: types.optional(z.array(ACLAction$inboundSchema)),
  deploymentBuildLogs: types.optional(z.array(ACLAction$inboundSchema)),
  deploymentCheck: types.optional(z.array(ACLAction$inboundSchema)),
  deploymentCheckPreview: types.optional(z.array(ACLAction$inboundSchema)),
  deploymentCheckReRunFromProductionBranch: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  deploymentProductionGit: types.optional(z.array(ACLAction$inboundSchema)),
  deploymentV0: types.optional(z.array(ACLAction$inboundSchema)),
  deploymentPreview: types.optional(z.array(ACLAction$inboundSchema)),
  deploymentPrivate: types.optional(z.array(ACLAction$inboundSchema)),
  deploymentPromote: types.optional(z.array(ACLAction$inboundSchema)),
  deploymentRollback: types.optional(z.array(ACLAction$inboundSchema)),
  edgeCacheNamespace: types.optional(z.array(ACLAction$inboundSchema)),
  environments: types.optional(z.array(ACLAction$inboundSchema)),
  job: types.optional(z.array(ACLAction$inboundSchema)),
  logs: types.optional(z.array(ACLAction$inboundSchema)),
  logsPreset: types.optional(z.array(ACLAction$inboundSchema)),
  observabilityData: types.optional(z.array(ACLAction$inboundSchema)),
  onDemandBuild: types.optional(z.array(ACLAction$inboundSchema)),
  onDemandConcurrency: types.optional(z.array(ACLAction$inboundSchema)),
  optionsAllowlist: types.optional(z.array(ACLAction$inboundSchema)),
  passwordProtection: types.optional(z.array(ACLAction$inboundSchema)),
  privateLinkEndpoint: types.optional(z.array(ACLAction$inboundSchema)),
  productionAliasProtectionBypass: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  productionShareableLink: types.optional(z.array(ACLAction$inboundSchema)),
  project: types.optional(z.array(ACLAction$inboundSchema)),
  projectAccessGroup: types.optional(z.array(ACLAction$inboundSchema)),
  projectAnalyticsSampling: types.optional(z.array(ACLAction$inboundSchema)),
  projectAnalyticsUsage: types.optional(z.array(ACLAction$inboundSchema)),
  projectCheck: types.optional(z.array(ACLAction$inboundSchema)),
  projectCheckRun: types.optional(z.array(ACLAction$inboundSchema)),
  projectDeploymentExpiration: types.optional(z.array(ACLAction$inboundSchema)),
  projectDeploymentHook: types.optional(z.array(ACLAction$inboundSchema)),
  projectDeploymentProtectionStrict: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  projectDomain: types.optional(z.array(ACLAction$inboundSchema)),
  projectDomainCheckConfig: types.optional(z.array(ACLAction$inboundSchema)),
  projectDomainMove: types.optional(z.array(ACLAction$inboundSchema)),
  projectDomainVerify: types.optional(z.array(ACLAction$inboundSchema)),
  projectEvent: types.optional(z.array(ACLAction$inboundSchema)),
  projectEnvVars: types.optional(z.array(ACLAction$inboundSchema)),
  projectEnvVarsProduction: types.optional(z.array(ACLAction$inboundSchema)),
  projectEnvVarsUnownedByIntegration: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  projectFlags: types.optional(z.array(ACLAction$inboundSchema)),
  projectFlagsProduction: types.optional(z.array(ACLAction$inboundSchema)),
  projectFlagsSdkKey: types.optional(z.array(ACLAction$inboundSchema)),
  projectFromV0: types.optional(z.array(ACLAction$inboundSchema)),
  projectId: types.optional(z.array(ACLAction$inboundSchema)),
  projectIntegrationConfiguration: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  projectLink: types.optional(z.array(ACLAction$inboundSchema)),
  projectMember: types.optional(z.array(ACLAction$inboundSchema)),
  projectMonitoring: types.optional(z.array(ACLAction$inboundSchema)),
  projectOIDCToken: types.optional(z.array(ACLAction$inboundSchema)),
  projectPermissions: types.optional(z.array(ACLAction$inboundSchema)),
  projectProductionBranch: types.optional(z.array(ACLAction$inboundSchema)),
  projectProtectionBypass: types.optional(z.array(ACLAction$inboundSchema)),
  projectRollingRelease: types.optional(z.array(ACLAction$inboundSchema)),
  projectRoutes: types.optional(z.array(ACLAction$inboundSchema)),
  projectSupportCase: types.optional(z.array(ACLAction$inboundSchema)),
  projectSupportCaseComment: types.optional(z.array(ACLAction$inboundSchema)),
  projectTier: types.optional(z.array(ACLAction$inboundSchema)),
  projectTransfer: types.optional(z.array(ACLAction$inboundSchema)),
  projectTransferOut: types.optional(z.array(ACLAction$inboundSchema)),
  projectUsage: types.optional(z.array(ACLAction$inboundSchema)),
  pageIntegrity: types.optional(z.array(ACLAction$inboundSchema)),
  seawallConfig: types.optional(z.array(ACLAction$inboundSchema)),
  securityPlusConfiguration: types.optional(z.array(ACLAction$inboundSchema)),
  shareableLink: types.optional(z.array(ACLAction$inboundSchema)),
  shareableLinkStrict: types.optional(z.array(ACLAction$inboundSchema)),
  sharedEnvVarConnection: types.optional(z.array(ACLAction$inboundSchema)),
  skewProtection: types.optional(z.array(ACLAction$inboundSchema)),
  analytics: types.optional(z.array(ACLAction$inboundSchema)),
  trustedIps: types.optional(z.array(ACLAction$inboundSchema)),
  trustedSources: types.optional(z.array(ACLAction$inboundSchema)),
  v0Chat: types.optional(z.array(ACLAction$inboundSchema)),
  vercelAuth: types.optional(z.array(ACLAction$inboundSchema)),
  vercelRun: types.optional(z.array(ACLAction$inboundSchema)),
  webAnalytics: types.optional(z.array(ACLAction$inboundSchema)),
  workflowRunData: types.optional(z.array(ACLAction$inboundSchema)),
  oauth2Connection: types.optional(z.array(ACLAction$inboundSchema)),
  user: types.optional(z.array(ACLAction$inboundSchema)),
  userConnection: types.optional(z.array(ACLAction$inboundSchema)),
  userMfaConfiguration: types.optional(z.array(ACLAction$inboundSchema)),
  userPreference: types.optional(z.array(ACLAction$inboundSchema)),
  userSudo: types.optional(z.array(ACLAction$inboundSchema)),
  webAuthn: types.optional(z.array(ACLAction$inboundSchema)),
  accessGroup: types.optional(z.array(ACLAction$inboundSchema)),
  agent: types.optional(z.array(ACLAction$inboundSchema)),
  aiGatewayApiKey: types.optional(z.array(ACLAction$inboundSchema)),
  aiGatewayApiKeyBypassAll: types.optional(z.array(ACLAction$inboundSchema)),
  aiGatewayApiKeyOwnedBySelf: types.optional(z.array(ACLAction$inboundSchema)),
  aiGatewayApiKeySpendAttribution: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  aiGatewayApiKeyZdrExemption: types.optional(z.array(ACLAction$inboundSchema)),
  aiGatewayBudget: types.optional(z.array(ACLAction$inboundSchema)),
  aiGatewayCredits: types.optional(z.array(ACLAction$inboundSchema)),
  aiGatewayPrivateModels: types.optional(z.array(ACLAction$inboundSchema)),
  aiGatewayGuardrails: types.optional(z.array(ACLAction$inboundSchema)),
  aiGatewayRules: types.optional(z.array(ACLAction$inboundSchema)),
  aiGatewaySettings: types.optional(z.array(ACLAction$inboundSchema)),
  aiGatewayTranscripts: types.optional(z.array(ACLAction$inboundSchema)),
  aiGatewayTranscriptsSettings: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  aiGatewayUsage: types.optional(z.array(ACLAction$inboundSchema)),
  aiGatewayVirtualModelConfigs: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  alerts: types.optional(z.array(ACLAction$inboundSchema)),
  alertRules: types.optional(z.array(ACLAction$inboundSchema)),
  aliasGlobal: types.optional(z.array(ACLAction$inboundSchema)),
  analyticsSampling: types.optional(z.array(ACLAction$inboundSchema)),
  analyticsUsage: types.optional(z.array(ACLAction$inboundSchema)),
  apiKey: types.optional(z.array(ACLAction$inboundSchema)),
  apiKeyAiGateway: types.optional(z.array(ACLAction$inboundSchema)),
  apiKeyOwnedBySelf: types.optional(z.array(ACLAction$inboundSchema)),
  oauth2Application: types.optional(z.array(ACLAction$inboundSchema)),
  vercelAppInstallation: types.optional(z.array(ACLAction$inboundSchema)),
  vercelAppInstallationRequest: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  auditLog: types.optional(z.array(ACLAction$inboundSchema)),
  automation: types.optional(z.array(ACLAction$inboundSchema)),
  billingAddress: types.optional(z.array(ACLAction$inboundSchema)),
  billingInformation: types.optional(z.array(ACLAction$inboundSchema)),
  billingInvoice: types.optional(z.array(ACLAction$inboundSchema)),
  billingInvoiceEmailRecipient: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  billingInvoiceLanguage: types.optional(z.array(ACLAction$inboundSchema)),
  billingPlan: types.optional(z.array(ACLAction$inboundSchema)),
  billingPurchaseOrder: types.optional(z.array(ACLAction$inboundSchema)),
  billingRefund: types.optional(z.array(ACLAction$inboundSchema)),
  billingTaxId: types.optional(z.array(ACLAction$inboundSchema)),
  blob: types.optional(z.array(ACLAction$inboundSchema)),
  blobStoreTokenSet: types.optional(z.array(ACLAction$inboundSchema)),
  budget: types.optional(z.array(ACLAction$inboundSchema)),
  cacheArtifact: types.optional(z.array(ACLAction$inboundSchema)),
  cacheArtifactUsageEvent: types.optional(z.array(ACLAction$inboundSchema)),
  codeChecks: types.optional(z.array(ACLAction$inboundSchema)),
  codeOwners: types.optional(z.array(ACLAction$inboundSchema)),
  ciInvocations: types.optional(z.array(ACLAction$inboundSchema)),
  ciLogs: types.optional(z.array(ACLAction$inboundSchema)),
  concurrentBuilds: types.optional(z.array(ACLAction$inboundSchema)),
  connect: types.optional(z.array(ACLAction$inboundSchema)),
  connectConfiguration: types.optional(z.array(ACLAction$inboundSchema)),
  connectLogs: types.optional(z.array(ACLAction$inboundSchema)),
  connexClient: types.optional(z.array(ACLAction$inboundSchema)),
  connexClientProject: types.optional(z.array(ACLAction$inboundSchema)),
  connexContact: types.optional(z.array(ACLAction$inboundSchema)),
  connexInstallation: types.optional(z.array(ACLAction$inboundSchema)),
  connexToken: types.optional(z.array(ACLAction$inboundSchema)),
  buildMachineDefault: types.optional(z.array(ACLAction$inboundSchema)),
  cursorOriginInstallation: types.optional(z.array(ACLAction$inboundSchema)),
  dataCacheBillingSettings: types.optional(z.array(ACLAction$inboundSchema)),
  defaultDeploymentProtection: types.optional(z.array(ACLAction$inboundSchema)),
  deploymentPolicy: types.optional(z.array(ACLAction$inboundSchema)),
  domain: types.optional(z.array(ACLAction$inboundSchema)),
  domainAcceptDelegation: types.optional(z.array(ACLAction$inboundSchema)),
  domainAuthCodes: types.optional(z.array(ACLAction$inboundSchema)),
  domainCertificate: types.optional(z.array(ACLAction$inboundSchema)),
  domainCheckConfig: types.optional(z.array(ACLAction$inboundSchema)),
  domainMove: types.optional(z.array(ACLAction$inboundSchema)),
  domainPurchase: types.optional(z.array(ACLAction$inboundSchema)),
  domainRecord: types.optional(z.array(ACLAction$inboundSchema)),
  domainTransferIn: types.optional(z.array(ACLAction$inboundSchema)),
  drain: types.optional(z.array(ACLAction$inboundSchema)),
  edgeConfig: types.optional(z.array(ACLAction$inboundSchema)),
  edgeConfigItem: types.optional(z.array(ACLAction$inboundSchema)),
  edgeConfigSchema: types.optional(z.array(ACLAction$inboundSchema)),
  edgeConfigToken: types.optional(z.array(ACLAction$inboundSchema)),
  endpointVerification: types.optional(z.array(ACLAction$inboundSchema)),
  event: types.optional(z.array(ACLAction$inboundSchema)),
  fileUpload: types.optional(z.array(ACLAction$inboundSchema)),
  flagsExplorerSubscription: types.optional(z.array(ACLAction$inboundSchema)),
  gitRepository: types.optional(z.array(ACLAction$inboundSchema)),
  imageOptimizationNewPrice: types.optional(z.array(ACLAction$inboundSchema)),
  integration: types.optional(z.array(ACLAction$inboundSchema)),
  integrationAccount: types.optional(z.array(ACLAction$inboundSchema)),
  integrationConfiguration: types.optional(z.array(ACLAction$inboundSchema)),
  integrationConfigurationProjects: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  integrationConfigurationRole: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  integrationConfigurationTransfer: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  integrationDeploymentAction: types.optional(z.array(ACLAction$inboundSchema)),
  integrationEvent: types.optional(z.array(ACLAction$inboundSchema)),
  integrationLog: types.optional(z.array(ACLAction$inboundSchema)),
  integrationResource: types.optional(z.array(ACLAction$inboundSchema)),
  integrationResourceData: types.optional(z.array(ACLAction$inboundSchema)),
  integrationResourceReplCommand: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  integrationResourceSecrets: types.optional(z.array(ACLAction$inboundSchema)),
  integrationSSOSession: types.optional(z.array(ACLAction$inboundSchema)),
  integrationStrict: types.optional(z.array(ACLAction$inboundSchema)),
  integrationStoreTokenSet: types.optional(z.array(ACLAction$inboundSchema)),
  integrationVercelConfigurationOverride: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  integrationPullRequest: types.optional(z.array(ACLAction$inboundSchema)),
  ipBlocking: types.optional(z.array(ACLAction$inboundSchema)),
  jobGlobal: types.optional(z.array(ACLAction$inboundSchema)),
  kmsIssuer: types.optional(z.array(ACLAction$inboundSchema)),
  kmsProjectGrant: types.optional(z.array(ACLAction$inboundSchema)),
  logDrain: types.optional(z.array(ACLAction$inboundSchema)),
  marketplaceBillingData: types.optional(z.array(ACLAction$inboundSchema)),
  marketplaceExperimentationEdgeConfigData: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  marketplaceExperimentationItem: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  marketplaceFlexCommit: types.optional(z.array(ACLAction$inboundSchema)),
  marketplaceInstallationMember: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  marketplaceInvoice: types.optional(z.array(ACLAction$inboundSchema)),
  marketplaceSettings: types.optional(z.array(ACLAction$inboundSchema)),
  Monitoring: types.optional(z.array(ACLAction$inboundSchema)),
  monitoringAlert: types.optional(z.array(ACLAction$inboundSchema)),
  monitoringChart: types.optional(z.array(ACLAction$inboundSchema)),
  monitoringQuery: types.optional(z.array(ACLAction$inboundSchema)),
  monitoringSettings: types.optional(z.array(ACLAction$inboundSchema)),
  notificationCustomerBudget: types.optional(z.array(ACLAction$inboundSchema)),
  notificationDeploymentFailed: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  notificationDomainConfiguration: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  notificationDomainExpire: types.optional(z.array(ACLAction$inboundSchema)),
  notificationDomainMoved: types.optional(z.array(ACLAction$inboundSchema)),
  notificationDomainPurchase: types.optional(z.array(ACLAction$inboundSchema)),
  notificationDomainRenewal: types.optional(z.array(ACLAction$inboundSchema)),
  notificationDomainTransfer: types.optional(z.array(ACLAction$inboundSchema)),
  notificationDomainUnverified: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  NotificationMonitoringAlert: types.optional(z.array(ACLAction$inboundSchema)),
  notificationPaymentFailed: types.optional(z.array(ACLAction$inboundSchema)),
  notificationPreferences: types.optional(z.array(ACLAction$inboundSchema)),
  notificationStatementOfReasons: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  notificationUsageAlert: types.optional(z.array(ACLAction$inboundSchema)),
  oidcFederationPolicy: types.optional(z.array(ACLAction$inboundSchema)),
  observabilityConfiguration: types.optional(z.array(ACLAction$inboundSchema)),
  observabilityFunnel: types.optional(z.array(ACLAction$inboundSchema)),
  observabilityNotebook: types.optional(z.array(ACLAction$inboundSchema)),
  openTelemetryEndpoint: types.optional(z.array(ACLAction$inboundSchema)),
  ownEvent: types.optional(z.array(ACLAction$inboundSchema)),
  organization: types.optional(z.array(ACLAction$inboundSchema)),
  organizationDomain: types.optional(z.array(ACLAction$inboundSchema)),
  organizationTeam: types.optional(z.array(ACLAction$inboundSchema)),
  passwordProtectionInvoiceItem: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  paymentMethod: types.optional(z.array(ACLAction$inboundSchema)),
  permissions: types.optional(z.array(ACLAction$inboundSchema)),
  postgres: types.optional(z.array(ACLAction$inboundSchema)),
  postgresStoreTokenSet: types.optional(z.array(ACLAction$inboundSchema)),
  previewDeploymentSuffix: types.optional(z.array(ACLAction$inboundSchema)),
  privateCloudAccount: types.optional(z.array(ACLAction$inboundSchema)),
  projectTransferIn: types.optional(z.array(ACLAction$inboundSchema)),
  projectTransferRequest: types.optional(z.array(ACLAction$inboundSchema)),
  proTrialOnboarding: types.optional(z.array(ACLAction$inboundSchema)),
  rateLimit: types.optional(z.array(ACLAction$inboundSchema)),
  redis: types.optional(z.array(ACLAction$inboundSchema)),
  redisStoreTokenSet: types.optional(z.array(ACLAction$inboundSchema)),
  remoteCaching: types.optional(z.array(ACLAction$inboundSchema)),
  repository: types.optional(z.array(ACLAction$inboundSchema)),
  samlConfig: types.optional(z.array(ACLAction$inboundSchema)),
  secret: types.optional(z.array(ACLAction$inboundSchema)),
  securityConfig: types.optional(z.array(ACLAction$inboundSchema)),
  sensitiveEnvironmentVariablePolicy: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  sharedEnvVars: types.optional(z.array(ACLAction$inboundSchema)),
  sharedEnvVarsProduction: types.optional(z.array(ACLAction$inboundSchema)),
  space: types.optional(z.array(ACLAction$inboundSchema)),
  spaceRun: types.optional(z.array(ACLAction$inboundSchema)),
  storeIsLocked: types.optional(z.array(ACLAction$inboundSchema)),
  storeTokenSetSensitive: types.optional(z.array(ACLAction$inboundSchema)),
  storeTransfer: types.optional(z.array(ACLAction$inboundSchema)),
  supportCase: types.optional(z.array(ACLAction$inboundSchema)),
  supportCaseComment: types.optional(z.array(ACLAction$inboundSchema)),
  team: types.optional(z.array(ACLAction$inboundSchema)),
  teamAccessRequest: types.optional(z.array(ACLAction$inboundSchema)),
  teamFellowMembership: types.optional(z.array(ACLAction$inboundSchema)),
  teamGitExclusivity: types.optional(z.array(ACLAction$inboundSchema)),
  teamInvite: types.optional(z.array(ACLAction$inboundSchema)),
  teamInviteCode: types.optional(z.array(ACLAction$inboundSchema)),
  teamInviteLink: types.optional(z.array(ACLAction$inboundSchema)),
  teamJoin: types.optional(z.array(ACLAction$inboundSchema)),
  teamMemberMfaStatus: types.optional(z.array(ACLAction$inboundSchema)),
  teamMicrofrontends: types.optional(z.array(ACLAction$inboundSchema)),
  teamOwnMembership: types.optional(z.array(ACLAction$inboundSchema)),
  teamOwnMembershipDisconnectSAML: types.optional(
    z.array(ACLAction$inboundSchema),
  ),
  teamSudo: types.optional(z.array(ACLAction$inboundSchema)),
  teamTokenInvalidation: types.optional(z.array(ACLAction$inboundSchema)),
  token: types.optional(z.array(ACLAction$inboundSchema)),
  toolbarComment: types.optional(z.array(ACLAction$inboundSchema)),
  usage: types.optional(z.array(ACLAction$inboundSchema)),
  usageCycle: types.optional(z.array(ACLAction$inboundSchema)),
  vcrRepository: types.optional(z.array(ACLAction$inboundSchema)),
  vpcPeeringConnection: types.optional(z.array(ACLAction$inboundSchema)),
  webAnalyticsPlan: types.optional(z.array(ACLAction$inboundSchema)),
  webhook: types.optional(z.array(ACLAction$inboundSchema)),
  "webhook-event": types.optional(z.array(ACLAction$inboundSchema)),
}).transform((v) => {
  return remap$(v, {
    "projectFlagsSdkKey": "projectFlagsSDKKey",
    "Monitoring": "monitoring",
    "NotificationMonitoringAlert": "notificationMonitoringAlert",
    "webhook-event": "webhookEvent",
  });
});

export function getMicrofrontendsInGroupPermissionsFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupPermissions, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupPermissions$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupPermissions' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupLastRollbackTarget$inboundSchema:
  z.ZodType<GetMicrofrontendsInGroupLastRollbackTarget, z.ZodTypeDef, unknown> =
    z.object({});

export function getMicrofrontendsInGroupLastRollbackTargetFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupLastRollbackTarget,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupLastRollbackTarget$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupLastRollbackTarget' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupJobStatus$inboundSchema: z.ZodNativeEnum<
  typeof GetMicrofrontendsInGroupJobStatus
> = z.nativeEnum(GetMicrofrontendsInGroupJobStatus);

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONType$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONType
  > = z.nativeEnum(
    GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONType,
  );

/** @internal */
export const GetMicrofrontendsInGroupLastAliasRequest$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupLastAliasRequest,
  z.ZodTypeDef,
  unknown
> = z.object({
  fromDeploymentId: types.nullable(types.string()),
  toDeploymentId: types.string(),
  fromRollingReleaseId: types.optional(types.string()),
  jobStatus: GetMicrofrontendsInGroupJobStatus$inboundSchema,
  requestedAt: types.number(),
  type:
    GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONType$inboundSchema,
});

export function getMicrofrontendsInGroupLastAliasRequestFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupLastAliasRequest,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupLastAliasRequest$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupLastAliasRequest' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupProtectionBypass2$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupProtectionBypass2,
  z.ZodTypeDef,
  unknown
> = z.object({
  createdAt: types.number(),
  createdBy: types.string(),
  scope: types.literal("automation-bypass"),
  isEnvVar: types.optional(types.boolean()),
  note: types.optional(types.string()),
});

export function getMicrofrontendsInGroupProtectionBypass2FromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupProtectionBypass2,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupProtectionBypass2$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupProtectionBypass2' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupProtectionBypass1$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupProtectionBypass1,
  z.ZodTypeDef,
  unknown
> = z.object({
  createdAt: types.number(),
  createdBy: types.string(),
  scope: types.literal("integration-automation-bypass"),
  integrationId: types.string(),
  configurationId: types.string(),
});

export function getMicrofrontendsInGroupProtectionBypass1FromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupProtectionBypass1,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupProtectionBypass1$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupProtectionBypass1' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupProtectionBypass$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupProtectionBypass,
  z.ZodTypeDef,
  unknown
> = z.union([
  z.lazy(() => GetMicrofrontendsInGroupProtectionBypass1$inboundSchema),
  z.lazy(() => GetMicrofrontendsInGroupProtectionBypass2$inboundSchema),
]);

export function getMicrofrontendsInGroupProtectionBypassFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupProtectionBypass,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupProtectionBypass$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupProtectionBypass' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupTrustedIpsDeploymentType$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupTrustedIpsDeploymentType> = z
    .nativeEnum(GetMicrofrontendsInGroupTrustedIpsDeploymentType);

/** @internal */
export const GetMicrofrontendsInGroupTrustedIps2$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupTrustedIps2,
  z.ZodTypeDef,
  unknown
> = z.object({
  deploymentType:
    GetMicrofrontendsInGroupTrustedIpsDeploymentType$inboundSchema,
});

export function getMicrofrontendsInGroupTrustedIps2FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupTrustedIps2, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupTrustedIps2$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupTrustedIps2' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupTrustedIpsMicrofrontendsDeploymentType$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupTrustedIpsMicrofrontendsDeploymentType
  > = z.nativeEnum(
    GetMicrofrontendsInGroupTrustedIpsMicrofrontendsDeploymentType,
  );

/** @internal */
export const GetMicrofrontendsInGroupTrustedIpsAddresses$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupTrustedIpsAddresses,
    z.ZodTypeDef,
    unknown
  > = z.object({
    value: types.string(),
    note: types.optional(types.string()),
  });

export function getMicrofrontendsInGroupTrustedIpsAddressesFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupTrustedIpsAddresses,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupTrustedIpsAddresses$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupTrustedIpsAddresses' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupTrustedIpsProtectionMode$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupTrustedIpsProtectionMode> = z
    .nativeEnum(GetMicrofrontendsInGroupTrustedIpsProtectionMode);

/** @internal */
export const GetMicrofrontendsInGroupTrustedIps1$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupTrustedIps1,
  z.ZodTypeDef,
  unknown
> = z.object({
  deploymentType:
    GetMicrofrontendsInGroupTrustedIpsMicrofrontendsDeploymentType$inboundSchema,
  addresses: z.array(
    z.lazy(() => GetMicrofrontendsInGroupTrustedIpsAddresses$inboundSchema),
  ),
  protectionMode:
    GetMicrofrontendsInGroupTrustedIpsProtectionMode$inboundSchema,
});

export function getMicrofrontendsInGroupTrustedIps1FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupTrustedIps1, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupTrustedIps1$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupTrustedIps1' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupTrustedIps$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupTrustedIps,
  z.ZodTypeDef,
  unknown
> = smartUnion([
  z.lazy(() => GetMicrofrontendsInGroupTrustedIps1$inboundSchema),
  z.lazy(() => GetMicrofrontendsInGroupTrustedIps2$inboundSchema),
]);

export function getMicrofrontendsInGroupTrustedIpsFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupTrustedIps, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupTrustedIps$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupTrustedIps' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupFromMicrofrontendsPreset$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupFromMicrofrontendsPreset> = z
    .nativeEnum(GetMicrofrontendsInGroupFromMicrofrontendsPreset);

/** @internal */
export const GetMicrofrontendsInGroupFrom2$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupFrom2,
  z.ZodTypeDef,
  unknown
> = z.object({
  slugs: types.optional(z.array(types.string())),
  preset: GetMicrofrontendsInGroupFromMicrofrontendsPreset$inboundSchema,
});

export function getMicrofrontendsInGroupFrom2FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupFrom2, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupFrom2$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupFrom2' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupFromPreset$inboundSchema: z.ZodNativeEnum<
  typeof GetMicrofrontendsInGroupFromPreset
> = z.nativeEnum(GetMicrofrontendsInGroupFromPreset);

/** @internal */
export const GetMicrofrontendsInGroupFrom1$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupFrom1,
  z.ZodTypeDef,
  unknown
> = z.object({
  slugs: z.array(types.string()),
  preset: types.optional(GetMicrofrontendsInGroupFromPreset$inboundSchema),
});

export function getMicrofrontendsInGroupFrom1FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupFrom1, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupFrom1$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupFrom1' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupFrom$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupFrom,
  z.ZodTypeDef,
  unknown
> = smartUnion([
  z.lazy(() => GetMicrofrontendsInGroupFrom1$inboundSchema),
  z.lazy(() => GetMicrofrontendsInGroupFrom2$inboundSchema),
]);

export function getMicrofrontendsInGroupFromFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupFrom, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupFrom$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupFrom' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupToMicrofrontendsResponsePreset$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupToMicrofrontendsResponsePreset
  > = z.nativeEnum(GetMicrofrontendsInGroupToMicrofrontendsResponsePreset);

/** @internal */
export const GetMicrofrontendsInGroupToMicrofrontends2$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupToMicrofrontends2,
  z.ZodTypeDef,
  unknown
> = z.object({
  slugs: types.optional(z.array(types.string())),
  preset: GetMicrofrontendsInGroupToMicrofrontendsResponsePreset$inboundSchema,
});

export function getMicrofrontendsInGroupToMicrofrontends2FromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupToMicrofrontends2,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupToMicrofrontends2$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupToMicrofrontends2' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupToMicrofrontendsResponse200Preset$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupToMicrofrontendsResponse200Preset
  > = z.nativeEnum(GetMicrofrontendsInGroupToMicrofrontendsResponse200Preset);

/** @internal */
export const GetMicrofrontendsInGroupToMicrofrontends1$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupToMicrofrontends1,
  z.ZodTypeDef,
  unknown
> = z.object({
  slugs: z.array(types.string()),
  preset: types.optional(
    GetMicrofrontendsInGroupToMicrofrontendsResponse200Preset$inboundSchema,
  ),
});

export function getMicrofrontendsInGroupToMicrofrontends1FromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupToMicrofrontends1,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupToMicrofrontends1$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupToMicrofrontends1' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsTo$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupMicrofrontendsTo,
  z.ZodTypeDef,
  unknown
> = smartUnion([
  z.lazy(() => GetMicrofrontendsInGroupToMicrofrontends1$inboundSchema),
  z.lazy(() => GetMicrofrontendsInGroupToMicrofrontends2$inboundSchema),
]);

export function getMicrofrontendsInGroupMicrofrontendsToFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupMicrofrontendsTo,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupMicrofrontendsTo$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupMicrofrontendsTo' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupCustomAllow$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupCustomAllow,
  z.ZodTypeDef,
  unknown
> = z.object({
  from: smartUnion([
    z.lazy(() => GetMicrofrontendsInGroupFrom1$inboundSchema),
    z.lazy(() => GetMicrofrontendsInGroupFrom2$inboundSchema),
  ]),
  to: smartUnion([
    z.lazy(() => GetMicrofrontendsInGroupToMicrofrontends1$inboundSchema),
    z.lazy(() => GetMicrofrontendsInGroupToMicrofrontends2$inboundSchema),
  ]),
});

export function getMicrofrontendsInGroupCustomAllowFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupCustomAllow, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupCustomAllow$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupCustomAllow' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsProjects$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupMicrofrontendsProjects,
    z.ZodTypeDef,
    unknown
  > = z.object({
    label: types.optional(types.string()),
    customAllow: types.optional(
      z.array(z.lazy(() => GetMicrofrontendsInGroupCustomAllow$inboundSchema)),
    ),
  });

export function getMicrofrontendsInGroupMicrofrontendsProjectsFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupMicrofrontendsProjects,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupMicrofrontendsProjects$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupMicrofrontendsProjects' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupToMicrofrontendsPreset$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupToMicrofrontendsPreset> = z
    .nativeEnum(GetMicrofrontendsInGroupToMicrofrontendsPreset);

/** @internal */
export const GetMicrofrontendsInGroupTo2$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupTo2,
  z.ZodTypeDef,
  unknown
> = z.object({
  slugs: types.optional(z.array(types.string())),
  preset: GetMicrofrontendsInGroupToMicrofrontendsPreset$inboundSchema,
});

export function getMicrofrontendsInGroupTo2FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupTo2, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupTo2$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupTo2' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupToPreset$inboundSchema: z.ZodNativeEnum<
  typeof GetMicrofrontendsInGroupToPreset
> = z.nativeEnum(GetMicrofrontendsInGroupToPreset);

/** @internal */
export const GetMicrofrontendsInGroupTo1$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupTo1,
  z.ZodTypeDef,
  unknown
> = z.object({
  slugs: z.array(types.string()),
  preset: types.optional(GetMicrofrontendsInGroupToPreset$inboundSchema),
});

export function getMicrofrontendsInGroupTo1FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupTo1, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupTo1$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupTo1' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupTo$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupTo,
  z.ZodTypeDef,
  unknown
> = smartUnion([
  z.lazy(() => GetMicrofrontendsInGroupTo1$inboundSchema),
  z.lazy(() => GetMicrofrontendsInGroupTo2$inboundSchema),
]);

export function getMicrofrontendsInGroupToFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupTo, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupTo$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupTo' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupOidcProviders$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupOidcProviders,
  z.ZodTypeDef,
  unknown
> = z.object({
  to: smartUnion([
    z.lazy(() => GetMicrofrontendsInGroupTo1$inboundSchema),
    z.lazy(() => GetMicrofrontendsInGroupTo2$inboundSchema),
  ]),
  label: types.optional(types.string()),
  claims: z.record(z.array(types.string())),
});

export function getMicrofrontendsInGroupOidcProvidersFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupOidcProviders, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupOidcProviders$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupOidcProviders' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupTrustedSources$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupTrustedSources,
  z.ZodTypeDef,
  unknown
> = z.object({
  enableVercelCiSameRepository: types.optional(types.boolean()),
  projects: types.optional(
    z.record(z.lazy(() =>
      GetMicrofrontendsInGroupMicrofrontendsProjects$inboundSchema
    )),
  ),
  oidcProviders: types.optional(
    z.record(z.array(z.lazy(() =>
      GetMicrofrontendsInGroupOidcProviders$inboundSchema
    ))),
  ),
});

export function getMicrofrontendsInGroupTrustedSourcesFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupTrustedSources, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupTrustedSources$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupTrustedSources' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupGitComments$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupGitComments,
  z.ZodTypeDef,
  unknown
> = z.object({
  onPullRequest: types.boolean(),
  onCommit: types.boolean(),
});

export function getMicrofrontendsInGroupGitCommentsFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupGitComments, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupGitComments$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupGitComments' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupCreateDeployments$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupCreateDeployments> = z
    .nativeEnum(GetMicrofrontendsInGroupCreateDeployments);

/** @internal */
export const GetMicrofrontendsInGroupConsolidatedGitCommitStatus$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupConsolidatedGitCommitStatus,
    z.ZodTypeDef,
    unknown
  > = z.object({
    enabled: types.boolean(),
    propagateFailures: types.boolean(),
  });

export function getMicrofrontendsInGroupConsolidatedGitCommitStatusFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupConsolidatedGitCommitStatus,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupConsolidatedGitCommitStatus$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupConsolidatedGitCommitStatus' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupGitProviderOptions$inboundSchema:
  z.ZodType<GetMicrofrontendsInGroupGitProviderOptions, z.ZodTypeDef, unknown> =
    z.object({
      createDeployments:
        GetMicrofrontendsInGroupCreateDeployments$inboundSchema,
      disableRepositoryDispatchEvents: types.optional(types.boolean()),
      requireVerifiedCommits: types.optional(types.boolean()),
      gitCommitStatus: types.optional(types.boolean()),
      consolidatedGitCommitStatus: types.optional(
        z.lazy(() =>
          GetMicrofrontendsInGroupConsolidatedGitCommitStatus$inboundSchema
        ),
      ),
    });

export function getMicrofrontendsInGroupGitProviderOptionsFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupGitProviderOptions,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupGitProviderOptions$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupGitProviderOptions' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupWebAnalytics$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupWebAnalytics,
  z.ZodTypeDef,
  unknown
> = z.object({
  id: types.string(),
  disabledAt: types.optional(types.number()),
  canceledAt: types.optional(types.number()),
  enabledAt: types.optional(types.number()),
  hasData: types.optional(types.literal(true)),
});

export function getMicrofrontendsInGroupWebAnalyticsFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupWebAnalytics, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupWebAnalytics$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupWebAnalytics' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsAction$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupMicrofrontendsAction> = z
    .nativeEnum(GetMicrofrontendsInGroupMicrofrontendsAction);

/** @internal */
export const GetMicrofrontendsInGroupAlgo$inboundSchema: z.ZodNativeEnum<
  typeof GetMicrofrontendsInGroupAlgo
> = z.nativeEnum(GetMicrofrontendsInGroupAlgo);

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityRulesetsAction$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityRulesetsAction
  > = z.nativeEnum(
    GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityRulesetsAction,
  );

/** @internal */
export const GetMicrofrontendsInGroupRateLimit$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupRateLimit,
  z.ZodTypeDef,
  unknown
> = z.object({
  algo: GetMicrofrontendsInGroupAlgo$inboundSchema,
  window: types.number(),
  limit: types.number(),
  keys: z.array(types.string()),
  action: z.nullable(
    GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityRulesetsAction$inboundSchema,
  ).optional(),
});

export function getMicrofrontendsInGroupRateLimitFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupRateLimit, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupRateLimit$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupRateLimit' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupRedirect$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupRedirect,
  z.ZodTypeDef,
  unknown
> = z.object({
  location: types.string(),
  permanent: types.boolean(),
});

export function getMicrofrontendsInGroupRedirectFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupRedirect, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupRedirect$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupRedirect' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupLogHeadersMicrofrontends2$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupLogHeadersMicrofrontends2> = z
    .nativeEnum(GetMicrofrontendsInGroupLogHeadersMicrofrontends2);

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsLogHeaders$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupMicrofrontendsLogHeaders,
    z.ZodTypeDef,
    unknown
  > = smartUnion([
    z.array(types.string()),
    GetMicrofrontendsInGroupLogHeadersMicrofrontends2$inboundSchema,
  ]);

export function getMicrofrontendsInGroupMicrofrontendsLogHeadersFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupMicrofrontendsLogHeaders,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupMicrofrontendsLogHeaders$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupMicrofrontendsLogHeaders' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupRulesets$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupRulesets,
  z.ZodTypeDef,
  unknown
> = z.object({
  action: GetMicrofrontendsInGroupMicrofrontendsAction$inboundSchema,
  rateLimit: z.nullable(
    z.lazy(() => GetMicrofrontendsInGroupRateLimit$inboundSchema),
  ).optional(),
  redirect: z.nullable(
    z.lazy(() => GetMicrofrontendsInGroupRedirect$inboundSchema),
  ).optional(),
  actionDuration: z.nullable(types.string()).optional(),
  bypassSystem: z.nullable(types.boolean()).optional(),
  logHeaders: types.optional(
    smartUnion([
      z.array(types.string()),
      GetMicrofrontendsInGroupLogHeadersMicrofrontends2$inboundSchema,
    ]),
  ),
});

export function getMicrofrontendsInGroupRulesetsFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupRulesets, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupRulesets$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupRulesets' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityManagedRulesAction$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityManagedRulesAction
  > = z.nativeEnum(
    GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityManagedRulesAction,
  );

/** @internal */
export const GetMicrofrontendsInGroupVercelRuleset$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupVercelRuleset,
  z.ZodTypeDef,
  unknown
> = z.object({
  active: types.boolean(),
  action: types.optional(
    GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityManagedRulesAction$inboundSchema,
  ),
});

export function getMicrofrontendsInGroupVercelRulesetFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupVercelRuleset, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupVercelRuleset$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupVercelRuleset' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityManagedRulesTrafficSourcesAction$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityManagedRulesTrafficSourcesAction
  > = z.nativeEnum(
    GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityManagedRulesTrafficSourcesAction,
  );

/** @internal */
export const GetMicrofrontendsInGroupTrafficSources$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupTrafficSources,
  z.ZodTypeDef,
  unknown
> = z.object({
  active: types.boolean(),
  action: types.optional(
    GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityManagedRulesTrafficSourcesAction$inboundSchema,
  ),
});

export function getMicrofrontendsInGroupTrafficSourcesFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupTrafficSources, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupTrafficSources$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupTrafficSources' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyAction$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyAction
  > = z.nativeEnum(
    GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyAction,
  );

/** @internal */
export const GetMicrofrontendsInGroupBotFilter$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupBotFilter,
  z.ZodTypeDef,
  unknown
> = z.object({
  active: types.boolean(),
  action: types.optional(
    GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyAction$inboundSchema,
  ),
});

export function getMicrofrontendsInGroupBotFilterFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupBotFilter, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupBotFilter$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupBotFilter' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsAction$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsAction
  > = z.nativeEnum(
    GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsAction,
  );

/** @internal */
export const GetMicrofrontendsInGroupAiBots$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupAiBots,
  z.ZodTypeDef,
  unknown
> = z.object({
  active: types.boolean(),
  action: types.optional(
    GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsAction$inboundSchema,
  ),
});

export function getMicrofrontendsInGroupAiBotsFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupAiBots, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupAiBots$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupAiBots' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityAction$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityAction
  > = z.nativeEnum(
    GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityAction,
  );

/** @internal */
export const GetMicrofrontendsInGroupOwasp$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupOwasp,
  z.ZodTypeDef,
  unknown
> = z.object({
  active: types.boolean(),
  action: types.optional(
    GetMicrofrontendsInGroupMicrofrontendsResponse200ApplicationJSONResponseBodyProjectsSecurityAction$inboundSchema,
  ),
});

export function getMicrofrontendsInGroupOwaspFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupOwasp, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupOwasp$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupOwasp' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupManagedRules$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupManagedRules,
  z.ZodTypeDef,
  unknown
> = z.object({
  vercel_ruleset: z.lazy(() =>
    GetMicrofrontendsInGroupVercelRuleset$inboundSchema
  ),
  traffic_sources: z.lazy(() =>
    GetMicrofrontendsInGroupTrafficSources$inboundSchema
  ),
  bot_filter: z.lazy(() => GetMicrofrontendsInGroupBotFilter$inboundSchema),
  ai_bots: z.lazy(() => GetMicrofrontendsInGroupAiBots$inboundSchema),
  owasp: z.lazy(() => GetMicrofrontendsInGroupOwasp$inboundSchema),
}).transform((v) => {
  return remap$(v, {
    "vercel_ruleset": "vercelRuleset",
    "traffic_sources": "trafficSources",
    "bot_filter": "botFilter",
    "ai_bots": "aiBots",
  });
});

export function getMicrofrontendsInGroupManagedRulesFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupManagedRules, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupManagedRules$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupManagedRules' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupLogHeaders2$inboundSchema: z.ZodNativeEnum<
  typeof GetMicrofrontendsInGroupLogHeaders2
> = z.nativeEnum(GetMicrofrontendsInGroupLogHeaders2);

/** @internal */
export const GetMicrofrontendsInGroupLogHeaders$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupLogHeaders,
  z.ZodTypeDef,
  unknown
> = smartUnion([
  z.array(types.string()),
  GetMicrofrontendsInGroupLogHeaders2$inboundSchema,
]);

export function getMicrofrontendsInGroupLogHeadersFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupLogHeaders, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupLogHeaders$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupLogHeaders' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupSecurityPlusMetadata$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupSecurityPlusMetadata,
    z.ZodTypeDef,
    unknown
  > = z.object({
    updatedAt: types.number(),
    firstEnabledAt: types.optional(types.number()),
  });

export function getMicrofrontendsInGroupSecurityPlusMetadataFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupSecurityPlusMetadata,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupSecurityPlusMetadata$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupSecurityPlusMetadata' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupSecurity$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupSecurity,
  z.ZodTypeDef,
  unknown
> = z.object({
  attackModeEnabled: types.optional(types.boolean()),
  attackModeUpdatedAt: types.optional(types.number()),
  firewallEnabled: types.optional(types.boolean()),
  firewallUpdatedAt: types.optional(types.number()),
  attackModeActiveUntil: z.nullable(types.number()).optional(),
  firewallConfigVersion: types.optional(types.number()),
  rulesets: types.optional(
    z.record(z.lazy(() => GetMicrofrontendsInGroupRulesets$inboundSchema)),
  ),
  firewallSeawallEnabled: types.optional(types.boolean()),
  ja3Enabled: types.optional(types.boolean()),
  ja4Enabled: types.optional(types.boolean()),
  firewallBypassIps: types.optional(z.array(types.string())),
  managedRules: z.nullable(
    z.lazy(() => GetMicrofrontendsInGroupManagedRules$inboundSchema),
  ).optional(),
  botIdEnabled: types.optional(types.boolean()),
  log_headers: types.optional(
    smartUnion([
      z.array(types.string()),
      GetMicrofrontendsInGroupLogHeaders2$inboundSchema,
    ]),
  ),
  securityPlus: types.optional(types.boolean()),
  securityPlusMetadata: types.optional(
    z.lazy(() => GetMicrofrontendsInGroupSecurityPlusMetadata$inboundSchema),
  ),
  pageIntegrityEnabled: types.optional(types.boolean()),
}).transform((v) => {
  return remap$(v, {
    "log_headers": "logHeaders",
  });
});

export function getMicrofrontendsInGroupSecurityFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupSecurity, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupSecurity$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupSecurity' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupIssuerMode$inboundSchema: z.ZodNativeEnum<
  typeof GetMicrofrontendsInGroupIssuerMode
> = z.nativeEnum(GetMicrofrontendsInGroupIssuerMode);

/** @internal */
export const GetMicrofrontendsInGroupOidcTokenConfig$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupOidcTokenConfig,
  z.ZodTypeDef,
  unknown
> = z.object({
  enabled: types.optional(types.boolean()),
  issuerMode: types.optional(GetMicrofrontendsInGroupIssuerMode$inboundSchema),
});

export function getMicrofrontendsInGroupOidcTokenConfigFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupOidcTokenConfig,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupOidcTokenConfig$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupOidcTokenConfig' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupSources2$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupSources2,
  z.ZodTypeDef,
  unknown
> = z.object({
  provider: types.literal("gitlab"),
  namespace: types.string(),
  project: types.optional(types.string()),
});

export function getMicrofrontendsInGroupSources2FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupSources2, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupSources2$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupSources2' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupSourcesMicrofrontendsProvider$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupSourcesMicrofrontendsProvider
  > = z.nativeEnum(GetMicrofrontendsInGroupSourcesMicrofrontendsProvider);

/** @internal */
export const GetMicrofrontendsInGroupSources1$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupSources1,
  z.ZodTypeDef,
  unknown
> = z.object({
  provider: GetMicrofrontendsInGroupSourcesMicrofrontendsProvider$inboundSchema,
  org: types.string(),
  repo: types.optional(types.string()),
});

export function getMicrofrontendsInGroupSources1FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupSources1, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupSources1$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupSources1' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupSources$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupSources,
  z.ZodTypeDef,
  unknown
> = z.union([
  z.lazy(() => GetMicrofrontendsInGroupSources1$inboundSchema).and(
    z.object({ provider: z.literal("bitbucket") }),
  ),
  z.lazy(() => GetMicrofrontendsInGroupSources1$inboundSchema).and(
    z.object({ provider: z.literal("github") }),
  ),
  z.lazy(() => GetMicrofrontendsInGroupSources2$inboundSchema),
]);

export function getMicrofrontendsInGroupSourcesFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupSources, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupSources$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupSources' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupEnvironmentsMicrofrontends2$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupEnvironmentsMicrofrontends2,
    z.ZodTypeDef,
    unknown
  > = z.object({
    type: types.literal("custom"),
    environmentId: types.string(),
  });

export function getMicrofrontendsInGroupEnvironmentsMicrofrontends2FromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupEnvironmentsMicrofrontends2,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupEnvironmentsMicrofrontends2$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupEnvironmentsMicrofrontends2' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupEnvironmentsMicrofrontendsTarget$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupEnvironmentsMicrofrontendsTarget
  > = z.nativeEnum(GetMicrofrontendsInGroupEnvironmentsMicrofrontendsTarget);

/** @internal */
export const GetMicrofrontendsInGroupEnvironments1$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupEnvironments1,
  z.ZodTypeDef,
  unknown
> = z.object({
  type: types.literal("system"),
  target:
    GetMicrofrontendsInGroupEnvironmentsMicrofrontendsTarget$inboundSchema,
});

export function getMicrofrontendsInGroupEnvironments1FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupEnvironments1, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupEnvironments1$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupEnvironments1' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupEnvironments$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupEnvironments,
  z.ZodTypeDef,
  unknown
> = z.union([
  z.lazy(() => GetMicrofrontendsInGroupEnvironments1$inboundSchema),
  z.lazy(() =>
    GetMicrofrontendsInGroupEnvironmentsMicrofrontends2$inboundSchema
  ),
]);

export function getMicrofrontendsInGroupEnvironmentsFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupEnvironments, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupEnvironments$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupEnvironments' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupGitSources$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupGitSources,
  z.ZodTypeDef,
  unknown
> = z.object({
  sources: z.array(
    z.union([
      z.lazy(() => GetMicrofrontendsInGroupSources1$inboundSchema).and(
        z.object({ provider: z.literal("bitbucket") }),
      ),
      z.lazy(() => GetMicrofrontendsInGroupSources1$inboundSchema).and(
        z.object({ provider: z.literal("github") }),
      ),
      z.lazy(() => GetMicrofrontendsInGroupSources2$inboundSchema),
    ]),
  ),
  enabled: types.boolean(),
  environments: z.array(
    z.union([
      z.lazy(() => GetMicrofrontendsInGroupEnvironments1$inboundSchema),
      z.lazy(() =>
        GetMicrofrontendsInGroupEnvironmentsMicrofrontends2$inboundSchema
      ),
    ]),
  ),
});

export function getMicrofrontendsInGroupGitSourcesFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupGitSources, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupGitSources$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupGitSources' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsSources$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupMicrofrontendsSources> = z
    .nativeEnum(GetMicrofrontendsInGroupMicrofrontendsSources);

/** @internal */
export const GetMicrofrontendsInGroupEnvironments2$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupEnvironments2,
  z.ZodTypeDef,
  unknown
> = z.object({
  type: types.literal("custom"),
  environmentId: types.string(),
});

export function getMicrofrontendsInGroupEnvironments2FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupEnvironments2, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupEnvironments2$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupEnvironments2' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupEnvironmentsTarget$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupEnvironmentsTarget> = z
    .nativeEnum(GetMicrofrontendsInGroupEnvironmentsTarget);

/** @internal */
export const GetMicrofrontendsInGroupEnvironmentsMicrofrontends1$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupEnvironmentsMicrofrontends1,
    z.ZodTypeDef,
    unknown
  > = z.object({
    type: types.literal("system"),
    target: GetMicrofrontendsInGroupEnvironmentsTarget$inboundSchema,
  });

export function getMicrofrontendsInGroupEnvironmentsMicrofrontends1FromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupEnvironmentsMicrofrontends1,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupEnvironmentsMicrofrontends1$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupEnvironmentsMicrofrontends1' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsEnvironments$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupMicrofrontendsEnvironments,
    z.ZodTypeDef,
    unknown
  > = z.union([
    z.lazy(() =>
      GetMicrofrontendsInGroupEnvironmentsMicrofrontends1$inboundSchema
    ),
    z.lazy(() => GetMicrofrontendsInGroupEnvironments2$inboundSchema),
  ]);

export function getMicrofrontendsInGroupMicrofrontendsEnvironmentsFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupMicrofrontendsEnvironments,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupMicrofrontendsEnvironments$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupMicrofrontendsEnvironments' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupDeploymentSources$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupDeploymentSources,
  z.ZodTypeDef,
  unknown
> = z.object({
  sources: z.array(GetMicrofrontendsInGroupMicrofrontendsSources$inboundSchema),
  enabled: types.boolean(),
  environments: z.array(
    z.union([
      z.lazy(() =>
        GetMicrofrontendsInGroupEnvironmentsMicrofrontends1$inboundSchema
      ),
      z.lazy(() => GetMicrofrontendsInGroupEnvironments2$inboundSchema),
    ]),
  ),
});

export function getMicrofrontendsInGroupDeploymentSourcesFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupDeploymentSources,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupDeploymentSources$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupDeploymentSources' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupDeploymentPolicy$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupDeploymentPolicy,
  z.ZodTypeDef,
  unknown
> = z.object({
  gitSources: z.nullable(
    z.array(z.lazy(() => GetMicrofrontendsInGroupGitSources$inboundSchema)),
  ).optional(),
  deploymentSources: z.nullable(
    z.array(
      z.lazy(() => GetMicrofrontendsInGroupDeploymentSources$inboundSchema),
    ),
  ).optional(),
});

export function getMicrofrontendsInGroupDeploymentPolicyFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupDeploymentPolicy,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupDeploymentPolicy$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupDeploymentPolicy' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupTier$inboundSchema: z.ZodNativeEnum<
  typeof GetMicrofrontendsInGroupTier
> = z.nativeEnum(GetMicrofrontendsInGroupTier);

/** @internal */
export const GetMicrofrontendsInGroupKind$inboundSchema: z.ZodNativeEnum<
  typeof GetMicrofrontendsInGroupKind
> = z.nativeEnum(GetMicrofrontendsInGroupKind);

/** @internal */
export const GetMicrofrontendsInGroupUsageStatus$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupUsageStatus,
  z.ZodTypeDef,
  unknown
> = z.object({
  kind: GetMicrofrontendsInGroupKind$inboundSchema,
  exceededAllowanceUntil: types.optional(types.number()),
  bypassThrottleUntil: types.optional(types.number()),
  throttled: types.optional(types.boolean()),
  teamThrottled: types.optional(types.boolean()),
});

export function getMicrofrontendsInGroupUsageStatusFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupUsageStatus, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupUsageStatus$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupUsageStatus' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupFeatures$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupFeatures,
  z.ZodTypeDef,
  unknown
> = z.object({
  webAnalytics: types.optional(types.boolean()),
});

export function getMicrofrontendsInGroupFeaturesFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupFeatures, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupFeatures$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupFeatures' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupHistory$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupHistory,
  z.ZodTypeDef,
  unknown
> = z.object({
  scanner: types.string(),
  reason: types.string(),
  by: types.string(),
  byId: types.string(),
  at: types.number(),
});

export function getMicrofrontendsInGroupHistoryFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupHistory, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupHistory$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupHistory' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsResponseAction$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupMicrofrontendsResponseAction> =
    z.nativeEnum(GetMicrofrontendsInGroupMicrofrontendsResponseAction);

/** @internal */
export const GetMicrofrontendsInGroupBlock$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupBlock,
  z.ZodTypeDef,
  unknown
> = z.object({
  action: GetMicrofrontendsInGroupMicrofrontendsResponseAction$inboundSchema,
  reason: types.string(),
  statusCode: types.number(),
  createdAt: types.number(),
  caseId: types.optional(types.string()),
  actor: types.optional(types.string()),
  comment: types.optional(types.string()),
  ineligibleForAppeal: types.optional(types.boolean()),
  isCascading: types.optional(types.boolean()),
});

export function getMicrofrontendsInGroupBlockFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupBlock, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupBlock$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupBlock' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupHasMicrofrontendsResponse200Value$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupHasMicrofrontendsResponse200Value,
    z.ZodTypeDef,
    unknown
  > = z.object({
    eq: types.string(),
  });

export function getMicrofrontendsInGroupHasMicrofrontendsResponse200ValueFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupHasMicrofrontendsResponse200Value,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupHasMicrofrontendsResponse200Value$inboundSchema
        .parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupHasMicrofrontendsResponse200Value' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupHasMicrofrontends2$inboundSchema:
  z.ZodType<GetMicrofrontendsInGroupHasMicrofrontends2, z.ZodTypeDef, unknown> =
    z.object({
      type: types.literal("host"),
      value: z.lazy(() =>
        GetMicrofrontendsInGroupHasMicrofrontendsResponse200Value$inboundSchema
      ),
    });

export function getMicrofrontendsInGroupHasMicrofrontends2FromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupHasMicrofrontends2,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupHasMicrofrontends2$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupHasMicrofrontends2' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupHasMicrofrontendsResponseKey$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupHasMicrofrontendsResponseKey> =
    z.nativeEnum(GetMicrofrontendsInGroupHasMicrofrontendsResponseKey);

/** @internal */
export const GetMicrofrontendsInGroupHasMicrofrontendsResponseValue$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupHasMicrofrontendsResponseValue,
    z.ZodTypeDef,
    unknown
  > = z.object({
    eq: types.string(),
  });

export function getMicrofrontendsInGroupHasMicrofrontendsResponseValueFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupHasMicrofrontendsResponseValue,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupHasMicrofrontendsResponseValue$inboundSchema
        .parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupHasMicrofrontendsResponseValue' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupHasMicrofrontends1$inboundSchema:
  z.ZodType<GetMicrofrontendsInGroupHasMicrofrontends1, z.ZodTypeDef, unknown> =
    z.object({
      type: types.literal("header"),
      key: GetMicrofrontendsInGroupHasMicrofrontendsResponseKey$inboundSchema,
      value: z.lazy(() =>
        GetMicrofrontendsInGroupHasMicrofrontendsResponseValue$inboundSchema
      ),
    });

export function getMicrofrontendsInGroupHasMicrofrontends1FromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupHasMicrofrontends1,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupHasMicrofrontends1$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupHasMicrofrontends1' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupRouteHas$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupRouteHas,
  z.ZodTypeDef,
  unknown
> = z.union([
  z.lazy(() => GetMicrofrontendsInGroupHasMicrofrontends1$inboundSchema),
  z.lazy(() => GetMicrofrontendsInGroupHasMicrofrontends2$inboundSchema),
]);

export function getMicrofrontendsInGroupRouteHasFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupRouteHas, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupRouteHas$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupRouteHas' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupRouteAction$inboundSchema: z.ZodNativeEnum<
  typeof GetMicrofrontendsInGroupRouteAction
> = z.nativeEnum(GetMicrofrontendsInGroupRouteAction);

/** @internal */
export const GetMicrofrontendsInGroupRouteMitigate$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupRouteMitigate,
  z.ZodTypeDef,
  unknown
> = z.object({
  action: GetMicrofrontendsInGroupRouteAction$inboundSchema,
});

export function getMicrofrontendsInGroupRouteMitigateFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupRouteMitigate, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupRouteMitigate$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupRouteMitigate' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupRoute2$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupRoute2,
  z.ZodTypeDef,
  unknown
> = z.object({
  has: z.array(
    z.union([
      z.lazy(() => GetMicrofrontendsInGroupHasMicrofrontends1$inboundSchema),
      z.lazy(() => GetMicrofrontendsInGroupHasMicrofrontends2$inboundSchema),
    ]),
  ),
  mitigate: z.lazy(() => GetMicrofrontendsInGroupRouteMitigate$inboundSchema),
  src: types.optional(types.string()),
});

export function getMicrofrontendsInGroupRoute2FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupRoute2, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupRoute2$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupRoute2' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupRoute1$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupRoute1,
  z.ZodTypeDef,
  unknown
> = z.object({
  src: types.string(),
  status: types.number(),
  expiry: types.optional(types.number()),
});

export function getMicrofrontendsInGroupRoute1FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupRoute1, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupRoute1$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupRoute1' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupBlockHistoryMicrofrontendsRoute$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupBlockHistoryMicrofrontendsRoute,
    z.ZodTypeDef,
    unknown
  > = smartUnion([
    z.lazy(() => GetMicrofrontendsInGroupRoute1$inboundSchema),
    z.lazy(() => GetMicrofrontendsInGroupRoute2$inboundSchema),
  ]);

export function getMicrofrontendsInGroupBlockHistoryMicrofrontendsRouteFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupBlockHistoryMicrofrontendsRoute,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupBlockHistoryMicrofrontendsRoute$inboundSchema
        .parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupBlockHistoryMicrofrontendsRoute' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupBlockHistory4$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupBlockHistory4,
  z.ZodTypeDef,
  unknown
> = z.object({
  action: types.literal("route-unblocked"),
  route: smartUnion([
    z.lazy(() => GetMicrofrontendsInGroupRoute1$inboundSchema),
    z.lazy(() => GetMicrofrontendsInGroupRoute2$inboundSchema),
  ]),
  statusCode: types.optional(types.number()),
  createdAt: types.number(),
  caseId: types.optional(types.string()),
  actor: types.optional(types.string()),
  comment: types.optional(types.string()),
  ineligibleForAppeal: types.optional(types.boolean()),
  isCascading: types.optional(types.boolean()),
});

export function getMicrofrontendsInGroupBlockHistory4FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupBlockHistory4, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupBlockHistory4$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupBlockHistory4' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONResponseBodyValue$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONResponseBodyValue,
    z.ZodTypeDef,
    unknown
  > = z.object({
    eq: types.string(),
  });

export function getMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONResponseBodyValueFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONResponseBodyValue,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONResponseBodyValue$inboundSchema
        .parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONResponseBodyValue' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupHasMicrofrontendsResponse2$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupHasMicrofrontendsResponse2,
    z.ZodTypeDef,
    unknown
  > = z.object({
    type: types.literal("host"),
    value: z.lazy(() =>
      GetMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONResponseBodyValue$inboundSchema
    ),
  });

export function getMicrofrontendsInGroupHasMicrofrontendsResponse2FromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupHasMicrofrontendsResponse2,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupHasMicrofrontendsResponse2$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupHasMicrofrontendsResponse2' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupHasMicrofrontendsKey$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupHasMicrofrontendsKey> = z
    .nativeEnum(GetMicrofrontendsInGroupHasMicrofrontendsKey);

/** @internal */
export const GetMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONValue$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONValue,
    z.ZodTypeDef,
    unknown
  > = z.object({
    eq: types.string(),
  });

export function getMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONValueFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONValue,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONValue$inboundSchema
        .parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONValue' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupHasMicrofrontendsResponse1$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupHasMicrofrontendsResponse1,
    z.ZodTypeDef,
    unknown
  > = z.object({
    type: types.literal("header"),
    key: GetMicrofrontendsInGroupHasMicrofrontendsKey$inboundSchema,
    value: z.lazy(() =>
      GetMicrofrontendsInGroupHasMicrofrontendsResponse200ApplicationJSONValue$inboundSchema
    ),
  });

export function getMicrofrontendsInGroupHasMicrofrontendsResponse1FromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupHasMicrofrontendsResponse1,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupHasMicrofrontendsResponse1$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupHasMicrofrontendsResponse1' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupRouteMicrofrontendsHas$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupRouteMicrofrontendsHas,
    z.ZodTypeDef,
    unknown
  > = z.union([
    z.lazy(() =>
      GetMicrofrontendsInGroupHasMicrofrontendsResponse1$inboundSchema
    ),
    z.lazy(() =>
      GetMicrofrontendsInGroupHasMicrofrontendsResponse2$inboundSchema
    ),
  ]);

export function getMicrofrontendsInGroupRouteMicrofrontendsHasFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupRouteMicrofrontendsHas,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupRouteMicrofrontendsHas$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupRouteMicrofrontendsHas' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupRouteMicrofrontendsAction$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupRouteMicrofrontendsAction> = z
    .nativeEnum(GetMicrofrontendsInGroupRouteMicrofrontendsAction);

/** @internal */
export const GetMicrofrontendsInGroupRouteMicrofrontendsMitigate$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupRouteMicrofrontendsMitigate,
    z.ZodTypeDef,
    unknown
  > = z.object({
    action: GetMicrofrontendsInGroupRouteMicrofrontendsAction$inboundSchema,
  });

export function getMicrofrontendsInGroupRouteMicrofrontendsMitigateFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupRouteMicrofrontendsMitigate,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupRouteMicrofrontendsMitigate$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupRouteMicrofrontendsMitigate' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupRouteMicrofrontends2$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupRouteMicrofrontends2,
    z.ZodTypeDef,
    unknown
  > = z.object({
    has: z.array(
      z.union([
        z.lazy(() =>
          GetMicrofrontendsInGroupHasMicrofrontendsResponse1$inboundSchema
        ),
        z.lazy(() =>
          GetMicrofrontendsInGroupHasMicrofrontendsResponse2$inboundSchema
        ),
      ]),
    ),
    mitigate: z.lazy(() =>
      GetMicrofrontendsInGroupRouteMicrofrontendsMitigate$inboundSchema
    ),
    src: types.optional(types.string()),
  });

export function getMicrofrontendsInGroupRouteMicrofrontends2FromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupRouteMicrofrontends2,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupRouteMicrofrontends2$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupRouteMicrofrontends2' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupRouteMicrofrontends1$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupRouteMicrofrontends1,
    z.ZodTypeDef,
    unknown
  > = z.object({
    src: types.string(),
    status: types.number(),
    expiry: types.optional(types.number()),
  });

export function getMicrofrontendsInGroupRouteMicrofrontends1FromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupRouteMicrofrontends1,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupRouteMicrofrontends1$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupRouteMicrofrontends1' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupBlockHistoryRoute$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupBlockHistoryRoute,
  z.ZodTypeDef,
  unknown
> = smartUnion([
  z.lazy(() => GetMicrofrontendsInGroupRouteMicrofrontends1$inboundSchema),
  z.lazy(() => GetMicrofrontendsInGroupRouteMicrofrontends2$inboundSchema),
]);

export function getMicrofrontendsInGroupBlockHistoryRouteFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupBlockHistoryRoute,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupBlockHistoryRoute$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupBlockHistoryRoute' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupBlockHistory3$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupBlockHistory3,
  z.ZodTypeDef,
  unknown
> = z.object({
  action: types.literal("route-blocked"),
  route: smartUnion([
    z.lazy(() => GetMicrofrontendsInGroupRouteMicrofrontends1$inboundSchema),
    z.lazy(() => GetMicrofrontendsInGroupRouteMicrofrontends2$inboundSchema),
  ]),
  reason: types.string(),
  createdAt: types.number(),
  caseId: types.optional(types.string()),
  actor: types.optional(types.string()),
  comment: types.optional(types.string()),
  ineligibleForAppeal: types.optional(types.boolean()),
  isCascading: types.optional(types.boolean()),
});

export function getMicrofrontendsInGroupBlockHistory3FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupBlockHistory3, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupBlockHistory3$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupBlockHistory3' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupBlockHistory2$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupBlockHistory2,
  z.ZodTypeDef,
  unknown
> = z.object({
  action: types.literal("unblocked"),
  createdAt: types.number(),
  caseId: types.optional(types.string()),
  actor: types.optional(types.string()),
  comment: types.optional(types.string()),
  ineligibleForAppeal: types.optional(types.boolean()),
  isCascading: types.optional(types.boolean()),
});

export function getMicrofrontendsInGroupBlockHistory2FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupBlockHistory2, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupBlockHistory2$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupBlockHistory2' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupBlockHistory1$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupBlockHistory1,
  z.ZodTypeDef,
  unknown
> = z.object({
  action: types.literal("blocked"),
  reason: types.string(),
  statusCode: types.number(),
  createdAt: types.number(),
  caseId: types.optional(types.string()),
  actor: types.optional(types.string()),
  comment: types.optional(types.string()),
  ineligibleForAppeal: types.optional(types.boolean()),
  isCascading: types.optional(types.boolean()),
});

export function getMicrofrontendsInGroupBlockHistory1FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupBlockHistory1, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupBlockHistory1$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupBlockHistory1' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupBlockHistory$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupBlockHistory,
  z.ZodTypeDef,
  unknown
> = z.union([
  z.lazy(() => GetMicrofrontendsInGroupBlockHistory1$inboundSchema),
  z.lazy(() => GetMicrofrontendsInGroupBlockHistory2$inboundSchema),
  z.lazy(() => GetMicrofrontendsInGroupBlockHistory3$inboundSchema),
  z.lazy(() => GetMicrofrontendsInGroupBlockHistory4$inboundSchema),
]);

export function getMicrofrontendsInGroupBlockHistoryFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupBlockHistory, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupBlockHistory$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupBlockHistory' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupMicrofrontendsResponse200Action$inboundSchema:
  z.ZodNativeEnum<
    typeof GetMicrofrontendsInGroupMicrofrontendsResponse200Action
  > = z.nativeEnum(GetMicrofrontendsInGroupMicrofrontendsResponse200Action);

/** @internal */
export const GetMicrofrontendsInGroupInterstitialHistory$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupInterstitialHistory,
    z.ZodTypeDef,
    unknown
  > = z.object({
    action:
      GetMicrofrontendsInGroupMicrofrontendsResponse200Action$inboundSchema,
    createdAt: types.number(),
    caseId: types.optional(types.string()),
    reason: types.optional(types.string()),
    actor: types.optional(types.string()),
    comment: types.optional(types.string()),
  });

export function getMicrofrontendsInGroupInterstitialHistoryFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupInterstitialHistory,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupInterstitialHistory$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupInterstitialHistory' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupAbuse$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupAbuse,
  z.ZodTypeDef,
  unknown
> = z.object({
  scanner: types.optional(types.string()),
  history: z.array(z.lazy(() => GetMicrofrontendsInGroupHistory$inboundSchema)),
  updatedAt: types.number(),
  block: types.optional(
    z.lazy(() => GetMicrofrontendsInGroupBlock$inboundSchema),
  ),
  blockHistory: types.optional(
    z.array(z.union([
      z.lazy(() => GetMicrofrontendsInGroupBlockHistory1$inboundSchema),
      z.lazy(() =>
        GetMicrofrontendsInGroupBlockHistory2$inboundSchema
      ),
      z.lazy(() => GetMicrofrontendsInGroupBlockHistory3$inboundSchema),
      z.lazy(() => GetMicrofrontendsInGroupBlockHistory4$inboundSchema),
    ])),
  ),
  interstitial: types.optional(types.boolean()),
  interstitialHistory: types.optional(
    z.array(z.lazy(() =>
      GetMicrofrontendsInGroupInterstitialHistory$inboundSchema
    )),
  ),
});

export function getMicrofrontendsInGroupAbuseFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupAbuse, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupAbuse$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupAbuse' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupHasMicrofrontendsValue$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupHasMicrofrontendsValue,
    z.ZodTypeDef,
    unknown
  > = z.object({
    eq: types.string(),
  });

export function getMicrofrontendsInGroupHasMicrofrontendsValueFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupHasMicrofrontendsValue,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupHasMicrofrontendsValue$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupHasMicrofrontendsValue' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupHas2$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupHas2,
  z.ZodTypeDef,
  unknown
> = z.object({
  type: types.literal("host"),
  value: z.lazy(() =>
    GetMicrofrontendsInGroupHasMicrofrontendsValue$inboundSchema
  ),
});

export function getMicrofrontendsInGroupHas2FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupHas2, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupHas2$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupHas2' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupHasKey$inboundSchema: z.ZodNativeEnum<
  typeof GetMicrofrontendsInGroupHasKey
> = z.nativeEnum(GetMicrofrontendsInGroupHasKey);

/** @internal */
export const GetMicrofrontendsInGroupHasValue$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupHasValue,
  z.ZodTypeDef,
  unknown
> = z.object({
  eq: types.string(),
});

export function getMicrofrontendsInGroupHasValueFromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupHasValue, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupHasValue$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupHasValue' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupHas1$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupHas1,
  z.ZodTypeDef,
  unknown
> = z.object({
  type: types.literal("header"),
  key: GetMicrofrontendsInGroupHasKey$inboundSchema,
  value: z.lazy(() => GetMicrofrontendsInGroupHasValue$inboundSchema),
});

export function getMicrofrontendsInGroupHas1FromJSON(
  jsonString: string,
): SafeParseResult<GetMicrofrontendsInGroupHas1, SDKValidationError> {
  return safeParse(
    jsonString,
    (x) => GetMicrofrontendsInGroupHas1$inboundSchema.parse(JSON.parse(x)),
    `Failed to parse 'GetMicrofrontendsInGroupHas1' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupInternalRoutesHas$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupInternalRoutesHas,
  z.ZodTypeDef,
  unknown
> = z.union([
  z.lazy(() => GetMicrofrontendsInGroupHas1$inboundSchema),
  z.lazy(() => GetMicrofrontendsInGroupHas2$inboundSchema),
]);

export function getMicrofrontendsInGroupInternalRoutesHasFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupInternalRoutesHas,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupInternalRoutesHas$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupInternalRoutesHas' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupInternalRoutesAction$inboundSchema:
  z.ZodNativeEnum<typeof GetMicrofrontendsInGroupInternalRoutesAction> = z
    .nativeEnum(GetMicrofrontendsInGroupInternalRoutesAction);

/** @internal */
export const GetMicrofrontendsInGroupInternalRoutesMitigate$inboundSchema:
  z.ZodType<
    GetMicrofrontendsInGroupInternalRoutesMitigate,
    z.ZodTypeDef,
    unknown
  > = z.object({
    action: GetMicrofrontendsInGroupInternalRoutesAction$inboundSchema,
  });

export function getMicrofrontendsInGroupInternalRoutesMitigateFromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupInternalRoutesMitigate,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupInternalRoutesMitigate$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupInternalRoutesMitigate' from JSON`,
  );
}

/** @internal */
export const GetMicrofrontendsInGroupInternalRoutes2$inboundSchema: z.ZodType<
  GetMicrofrontendsInGroupInternalRoutes2,
  z.ZodTypeDef,
  unknown
> = z.object({
  has: z.array(
    z.union([
      z.lazy(() => GetMicrofrontendsInGroupHas1$inboundSchema),
      z.lazy(() => GetMicrofrontendsInGroupHas2$inboundSchema),
    ]),
  ),
  mitigate: z.lazy(() =>
    GetMicrofrontendsInGroupInternalRoutesMitigate$inboundSchema
  ),
  src: types.optional(types.string()),
});

export function getMicrofrontendsInGroupInternalRoutes2FromJSON(
  jsonString: string,
): SafeParseResult<
  GetMicrofrontendsInGroupInternalRoutes2,
  SDKValidationError
> {
  return safeParse(
    jsonString,
    (x) =>
      GetMicrofrontendsInGroupInternalRoutes2$inboundSchema.parse(
        JSON.parse(x),
      ),
    `Failed to parse 'GetMicrofrontendsInGroupInternalRoutes2' from JSON`,
  );
}