@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>
2,727 lines • 90.8 kB
text/typescript
/*
* 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 { SDKValidationError } from "./sdkvalidationerror.js";
import {
UploadProjectAvatarAnalytics,
UploadProjectAvatarAnalytics$inboundSchema,
UploadProjectAvatarConnectConfigurations,
UploadProjectAvatarConnectConfigurations$inboundSchema,
UploadProjectAvatarCrons,
UploadProjectAvatarCrons$inboundSchema,
UploadProjectAvatarCustomEnvironments,
UploadProjectAvatarCustomEnvironments$inboundSchema,
UploadProjectAvatarDataCache,
UploadProjectAvatarDataCache$inboundSchema,
UploadProjectAvatarDefaultResourceConfig,
UploadProjectAvatarDefaultResourceConfig$inboundSchema,
UploadProjectAvatarDeploymentExpiration,
UploadProjectAvatarDeploymentExpiration$inboundSchema,
UploadProjectAvatarEnv,
UploadProjectAvatarEnv$inboundSchema,
UploadProjectAvatarExpiration,
UploadProjectAvatarExpiration$inboundSchema,
UploadProjectAvatarFramework,
UploadProjectAvatarFramework$inboundSchema,
UploadProjectAvatarGitComments,
UploadProjectAvatarGitComments$inboundSchema,
UploadProjectAvatarGitProviderOptions,
UploadProjectAvatarGitProviderOptions$inboundSchema,
UploadProjectAvatarIpBuckets,
UploadProjectAvatarIpBuckets$inboundSchema,
UploadProjectAvatarJobs,
UploadProjectAvatarJobs$inboundSchema,
UploadProjectAvatarLastAliasRequest,
UploadProjectAvatarLastAliasRequest$inboundSchema,
UploadProjectAvatarLastRollbackTarget,
UploadProjectAvatarLastRollbackTarget$inboundSchema,
UploadProjectAvatarLatestDeployments,
UploadProjectAvatarLatestDeployments$inboundSchema,
UploadProjectAvatarLink,
UploadProjectAvatarLink$inboundSchema,
UploadProjectAvatarMicrofrontends,
UploadProjectAvatarMicrofrontends$inboundSchema,
UploadProjectAvatarNodeVersion,
UploadProjectAvatarNodeVersion$inboundSchema,
UploadProjectAvatarOptionsAllowlist,
UploadProjectAvatarOptionsAllowlist$inboundSchema,
UploadProjectAvatarPassport,
UploadProjectAvatarPassport$inboundSchema,
UploadProjectAvatarPasswordProtection,
UploadProjectAvatarPasswordProtection$inboundSchema,
UploadProjectAvatarPermissions,
UploadProjectAvatarPermissions$inboundSchema,
UploadProjectAvatarProjectsResponse200ApplicationJSONResponseBodySecurityAction,
UploadProjectAvatarProjectsResponse200ApplicationJSONResponseBodySecurityAction$inboundSchema,
UploadProjectAvatarProtectionBypass,
UploadProjectAvatarProtectionBypass$inboundSchema,
UploadProjectAvatarProtectionConfig,
UploadProjectAvatarProtectionConfig$inboundSchema,
UploadProjectAvatarResourceConfig,
UploadProjectAvatarResourceConfig$inboundSchema,
UploadProjectAvatarRollbackDescription,
UploadProjectAvatarRollbackDescription$inboundSchema,
UploadProjectAvatarRollingRelease,
UploadProjectAvatarRollingRelease$inboundSchema,
UploadProjectAvatarServices,
UploadProjectAvatarServices$inboundSchema,
UploadProjectAvatarSpeedInsights,
UploadProjectAvatarSpeedInsights$inboundSchema,
UploadProjectAvatarSsoProtection,
UploadProjectAvatarSsoProtection$inboundSchema,
UploadProjectAvatarStaticIps,
UploadProjectAvatarStaticIps$inboundSchema,
UploadProjectAvatarTargets,
UploadProjectAvatarTargets$inboundSchema,
UploadProjectAvatarTrustedIps,
UploadProjectAvatarTrustedIps$inboundSchema,
UploadProjectAvatarTrustedSources,
UploadProjectAvatarTrustedSources$inboundSchema,
UploadProjectAvatarVercelRuleset,
UploadProjectAvatarVercelRuleset$inboundSchema,
UploadProjectAvatarWebAnalytics,
UploadProjectAvatarWebAnalytics$inboundSchema,
} from "./uploadprojectavatarprojectsresponse200applicationjsonresponsebodysecurityaction.js";
export type UploadProjectAvatarTrafficSources = {
active: boolean;
action?:
| UploadProjectAvatarProjectsResponse200ApplicationJSONResponseBodySecurityAction
| undefined;
};
export const UploadProjectAvatarProjectsResponse200ApplicationJSONResponseBodySecurityManagedRulesAction =
{
Challenge: "challenge",
Deny: "deny",
Log: "log",
} as const;
export type UploadProjectAvatarProjectsResponse200ApplicationJSONResponseBodySecurityManagedRulesAction =
ClosedEnum<
typeof UploadProjectAvatarProjectsResponse200ApplicationJSONResponseBodySecurityManagedRulesAction
>;
export type UploadProjectAvatarBotFilter = {
active: boolean;
action?:
| UploadProjectAvatarProjectsResponse200ApplicationJSONResponseBodySecurityManagedRulesAction
| undefined;
};
export const UploadProjectAvatarProjectsResponse200Action = {
Challenge: "challenge",
Deny: "deny",
Log: "log",
} as const;
export type UploadProjectAvatarProjectsResponse200Action = ClosedEnum<
typeof UploadProjectAvatarProjectsResponse200Action
>;
export type UploadProjectAvatarAiBots = {
active: boolean;
action?: UploadProjectAvatarProjectsResponse200Action | undefined;
};
export const UploadProjectAvatarProjectsResponse200ApplicationJSONAction = {
Challenge: "challenge",
Deny: "deny",
Log: "log",
} as const;
export type UploadProjectAvatarProjectsResponse200ApplicationJSONAction =
ClosedEnum<
typeof UploadProjectAvatarProjectsResponse200ApplicationJSONAction
>;
export type UploadProjectAvatarOwasp = {
active: boolean;
action?:
| UploadProjectAvatarProjectsResponse200ApplicationJSONAction
| undefined;
};
export type UploadProjectAvatarManagedRules = {
vercelRuleset: UploadProjectAvatarVercelRuleset;
trafficSources: UploadProjectAvatarTrafficSources;
botFilter: UploadProjectAvatarBotFilter;
aiBots: UploadProjectAvatarAiBots;
owasp: UploadProjectAvatarOwasp;
};
export const UploadProjectAvatarLogHeaders2 = {
Wildcard: "*",
} as const;
export type UploadProjectAvatarLogHeaders2 = ClosedEnum<
typeof UploadProjectAvatarLogHeaders2
>;
export type UploadProjectAvatarLogHeaders =
| Array<string>
| UploadProjectAvatarLogHeaders2;
export type UploadProjectAvatarSecurityPlusMetadata = {
updatedAt: number;
/**
* Timestamp when the feature was first enabled. Never changes after initial enablement.
*/
firstEnabledAt?: number | undefined;
};
export type UploadProjectAvatarSecurity = {
attackModeEnabled?: boolean | undefined;
attackModeUpdatedAt?: number | undefined;
firewallEnabled?: boolean | undefined;
firewallUpdatedAt?: number | undefined;
attackModeActiveUntil?: number | null | undefined;
firewallConfigVersion?: number | undefined;
firewallSeawallEnabled?: boolean | undefined;
ja3Enabled?: boolean | undefined;
ja4Enabled?: boolean | undefined;
firewallBypassIps?: Array<string> | undefined;
managedRules?: UploadProjectAvatarManagedRules | null | undefined;
botIdEnabled?: boolean | undefined;
logHeaders?: Array<string> | UploadProjectAvatarLogHeaders2 | undefined;
securityPlus?: boolean | undefined;
securityPlusMetadata?: UploadProjectAvatarSecurityPlusMetadata | 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 UploadProjectAvatarIssuerMode = {
Global: "global",
Team: "team",
} as const;
/**
* - team: `https://oidc.vercel.com/[team_slug]` - global: `https://oidc.vercel.com`
*/
export type UploadProjectAvatarIssuerMode = ClosedEnum<
typeof UploadProjectAvatarIssuerMode
>;
export type UploadProjectAvatarOidcTokenConfig = {
/**
* 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?: UploadProjectAvatarIssuerMode | 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 UploadProjectAvatarSources2 = {
provider: "gitlab";
namespace: string;
project?: string | undefined;
};
export const UploadProjectAvatarSourcesProvider = {
Bitbucket: "bitbucket",
Github: "github",
} as const;
export type UploadProjectAvatarSourcesProvider = ClosedEnum<
typeof UploadProjectAvatarSourcesProvider
>;
/**
* 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 UploadProjectAvatarSources1 = {
provider: UploadProjectAvatarSourcesProvider;
org: string;
repo?: string | undefined;
};
export type UploadProjectAvatarSources =
| (UploadProjectAvatarSources1 & { provider: "bitbucket" })
| (UploadProjectAvatarSources1 & { provider: "github" })
| UploadProjectAvatarSources2;
export type UploadProjectAvatarEnvironments2 = {
type: "custom";
environmentId: string;
};
export const UploadProjectAvatarEnvironmentsTarget = {
Preview: "preview",
Production: "production",
} as const;
export type UploadProjectAvatarEnvironmentsTarget = ClosedEnum<
typeof UploadProjectAvatarEnvironmentsTarget
>;
export type UploadProjectAvatarEnvironments1 = {
type: "system";
target: UploadProjectAvatarEnvironmentsTarget;
};
export type UploadProjectAvatarEnvironments =
| UploadProjectAvatarEnvironments1
| UploadProjectAvatarEnvironments2;
/**
* `enabled: true` with empty `sources` is deny-all.
*/
export type UploadProjectAvatarGitSources = {
sources: Array<
| (UploadProjectAvatarSources1 & { provider: "bitbucket" })
| (UploadProjectAvatarSources1 & { provider: "github" })
| UploadProjectAvatarSources2
>;
enabled: boolean;
environments: Array<
UploadProjectAvatarEnvironments1 | UploadProjectAvatarEnvironments2
>;
};
/**
* 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 UploadProjectAvatarProjectsSources = {
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 UploadProjectAvatarProjectsSources = ClosedEnum<
typeof UploadProjectAvatarProjectsSources
>;
export type UploadProjectAvatarEnvironmentsProjects2 = {
type: "custom";
environmentId: string;
};
export const UploadProjectAvatarEnvironmentsProjectsTarget = {
Preview: "preview",
Production: "production",
} as const;
export type UploadProjectAvatarEnvironmentsProjectsTarget = ClosedEnum<
typeof UploadProjectAvatarEnvironmentsProjectsTarget
>;
export type UploadProjectAvatarEnvironmentsProjects1 = {
type: "system";
target: UploadProjectAvatarEnvironmentsProjectsTarget;
};
export type UploadProjectAvatarProjectsEnvironments =
| UploadProjectAvatarEnvironmentsProjects1
| UploadProjectAvatarEnvironmentsProjects2;
/**
* `enabled: true` with empty `sources` is deny-all.
*/
export type UploadProjectAvatarDeploymentSources = {
sources: Array<UploadProjectAvatarProjectsSources>;
enabled: boolean;
environments: Array<
| UploadProjectAvatarEnvironmentsProjects1
| UploadProjectAvatarEnvironmentsProjects2
>;
};
/**
* 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 UploadProjectAvatarDeploymentPolicy = {
gitSources?: Array<UploadProjectAvatarGitSources> | null | undefined;
deploymentSources?:
| Array<UploadProjectAvatarDeploymentSources>
| null
| undefined;
};
export const UploadProjectAvatarFlatRateTier = {
Advanced: "advanced",
Base: "base",
Critical: "critical",
Standard: "standard",
} as const;
export type UploadProjectAvatarFlatRateTier = ClosedEnum<
typeof UploadProjectAvatarFlatRateTier
>;
/**
* Billing mode. Always 'flat' for flat-rate projects.
*/
export const UploadProjectAvatarKind = {
Flat: "flat",
} as const;
/**
* Billing mode. Always 'flat' for flat-rate projects.
*/
export type UploadProjectAvatarKind = ClosedEnum<
typeof UploadProjectAvatarKind
>;
export type UploadProjectAvatarUsageStatus = {
/**
* Billing mode. Always 'flat' for flat-rate projects.
*/
kind: UploadProjectAvatarKind;
/**
* 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;
/**
* Whether the project is currently throttled.
*/
throttled?: boolean | undefined;
};
export type UploadProjectAvatarFeatures = {
webAnalytics?: boolean | undefined;
};
export type UploadProjectAvatarHistory = {
scanner: string;
reason: string;
by: string;
byId: string;
at: number;
};
export const UploadProjectAvatarProjectsResponseAction = {
Blocked: "blocked",
} as const;
export type UploadProjectAvatarProjectsResponseAction = ClosedEnum<
typeof UploadProjectAvatarProjectsResponseAction
>;
export type UploadProjectAvatarBlock = {
action: UploadProjectAvatarProjectsResponseAction;
reason: string;
statusCode: number;
createdAt: number;
caseId?: string | undefined;
actor?: string | undefined;
comment?: string | undefined;
ineligibleForAppeal?: boolean | undefined;
isCascading?: boolean | undefined;
};
export type UploadProjectAvatarHasProjectsResponse200Value = {
eq: string;
};
export type UploadProjectAvatarHasProjects2 = {
type: "host";
value: UploadProjectAvatarHasProjectsResponse200Value;
};
export const UploadProjectAvatarHasProjectsKey = {
XVercelIpCountry: "x-vercel-ip-country",
} as const;
export type UploadProjectAvatarHasProjectsKey = ClosedEnum<
typeof UploadProjectAvatarHasProjectsKey
>;
export type UploadProjectAvatarHasProjectsResponseValue = {
eq: string;
};
export type UploadProjectAvatarHasProjects1 = {
type: "header";
key: UploadProjectAvatarHasProjectsKey;
value: UploadProjectAvatarHasProjectsResponseValue;
};
export type UploadProjectAvatarRouteProjectsHas =
| UploadProjectAvatarHasProjects1
| UploadProjectAvatarHasProjects2;
export const UploadProjectAvatarRouteProjectsAction = {
BlockLegalCwc: "block_legal_cwc",
} as const;
export type UploadProjectAvatarRouteProjectsAction = ClosedEnum<
typeof UploadProjectAvatarRouteProjectsAction
>;
export type UploadProjectAvatarRouteProjectsMitigate = {
action: UploadProjectAvatarRouteProjectsAction;
};
export type UploadProjectAvatarRouteProjects2 = {
has: Array<UploadProjectAvatarHasProjects1 | UploadProjectAvatarHasProjects2>;
mitigate: UploadProjectAvatarRouteProjectsMitigate;
src?: string | undefined;
};
export type UploadProjectAvatarRouteProjects1 = {
src: string;
status: number;
};
export type UploadProjectAvatarBlockHistoryProjectsRoute =
| UploadProjectAvatarRouteProjects1
| UploadProjectAvatarRouteProjects2;
export type UploadProjectAvatarBlockHistory4 = {
action: "route-unblocked";
route: UploadProjectAvatarRouteProjects1 | UploadProjectAvatarRouteProjects2;
statusCode?: number | undefined;
createdAt: number;
caseId?: string | undefined;
actor?: string | undefined;
comment?: string | undefined;
ineligibleForAppeal?: boolean | undefined;
isCascading?: boolean | undefined;
};
export type UploadProjectAvatarHasProjectsResponse200ApplicationJSONResponseBodyValue =
{
eq: string;
};
export type UploadProjectAvatarHasProjectsResponse2 = {
type: "host";
value:
UploadProjectAvatarHasProjectsResponse200ApplicationJSONResponseBodyValue;
};
export const UploadProjectAvatarHasProjectsResponseKey = {
XVercelIpCountry: "x-vercel-ip-country",
} as const;
export type UploadProjectAvatarHasProjectsResponseKey = ClosedEnum<
typeof UploadProjectAvatarHasProjectsResponseKey
>;
export type UploadProjectAvatarHasProjectsResponse200ApplicationJSONValue = {
eq: string;
};
export type UploadProjectAvatarHasProjectsResponse1 = {
type: "header";
key: UploadProjectAvatarHasProjectsResponseKey;
value: UploadProjectAvatarHasProjectsResponse200ApplicationJSONValue;
};
export type UploadProjectAvatarRouteHas =
| UploadProjectAvatarHasProjectsResponse1
| UploadProjectAvatarHasProjectsResponse2;
export const UploadProjectAvatarRouteAction = {
BlockLegalCwc: "block_legal_cwc",
} as const;
export type UploadProjectAvatarRouteAction = ClosedEnum<
typeof UploadProjectAvatarRouteAction
>;
export type UploadProjectAvatarRouteMitigate = {
action: UploadProjectAvatarRouteAction;
};
export type UploadProjectAvatarRoute2 = {
has: Array<
| UploadProjectAvatarHasProjectsResponse1
| UploadProjectAvatarHasProjectsResponse2
>;
mitigate: UploadProjectAvatarRouteMitigate;
src?: string | undefined;
};
export type UploadProjectAvatarRoute1 = {
src: string;
status: number;
};
export type UploadProjectAvatarBlockHistoryRoute =
| UploadProjectAvatarRoute1
| UploadProjectAvatarRoute2;
export type UploadProjectAvatarBlockHistory3 = {
action: "route-blocked";
route: UploadProjectAvatarRoute1 | UploadProjectAvatarRoute2;
reason: string;
createdAt: number;
caseId?: string | undefined;
actor?: string | undefined;
comment?: string | undefined;
ineligibleForAppeal?: boolean | undefined;
isCascading?: boolean | undefined;
};
export type UploadProjectAvatarBlockHistory2 = {
action: "unblocked";
createdAt: number;
caseId?: string | undefined;
actor?: string | undefined;
comment?: string | undefined;
ineligibleForAppeal?: boolean | undefined;
isCascading?: boolean | undefined;
};
export type UploadProjectAvatarBlockHistory1 = {
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 UploadProjectAvatarBlockHistory =
| UploadProjectAvatarBlockHistory1
| UploadProjectAvatarBlockHistory2
| UploadProjectAvatarBlockHistory3
| UploadProjectAvatarBlockHistory4;
export const UploadProjectAvatarProjectsAction = {
AddDeploymentInterstitial: "add-deployment-interstitial",
AddProjectInterstitial: "add-project-interstitial",
RemoveDeploymentInterstitial: "remove-deployment-interstitial",
RemoveProjectInterstitial: "remove-project-interstitial",
} as const;
export type UploadProjectAvatarProjectsAction = ClosedEnum<
typeof UploadProjectAvatarProjectsAction
>;
export type UploadProjectAvatarInterstitialHistory = {
action: UploadProjectAvatarProjectsAction;
createdAt: number;
caseId?: string | undefined;
reason?: string | undefined;
actor?: string | undefined;
comment?: string | undefined;
};
export type UploadProjectAvatarAbuse = {
scanner?: string | undefined;
history: Array<UploadProjectAvatarHistory>;
updatedAt: number;
block?: UploadProjectAvatarBlock | undefined;
blockHistory?:
| Array<
| UploadProjectAvatarBlockHistory1
| UploadProjectAvatarBlockHistory2
| UploadProjectAvatarBlockHistory3
| UploadProjectAvatarBlockHistory4
>
| undefined;
interstitial?: boolean | undefined;
interstitialHistory?:
| Array<UploadProjectAvatarInterstitialHistory>
| undefined;
};
export type UploadProjectAvatarHasProjectsValue = {
eq: string;
};
export type UploadProjectAvatarHas2 = {
type: "host";
value: UploadProjectAvatarHasProjectsValue;
};
export const UploadProjectAvatarHasKey = {
XVercelIpCountry: "x-vercel-ip-country",
} as const;
export type UploadProjectAvatarHasKey = ClosedEnum<
typeof UploadProjectAvatarHasKey
>;
export type UploadProjectAvatarHasValue = {
eq: string;
};
export type UploadProjectAvatarHas1 = {
type: "header";
key: UploadProjectAvatarHasKey;
value: UploadProjectAvatarHasValue;
};
export type UploadProjectAvatarInternalRoutesHas =
| UploadProjectAvatarHas1
| UploadProjectAvatarHas2;
export const UploadProjectAvatarInternalRoutesAction = {
BlockLegalCwc: "block_legal_cwc",
} as const;
export type UploadProjectAvatarInternalRoutesAction = ClosedEnum<
typeof UploadProjectAvatarInternalRoutesAction
>;
export type UploadProjectAvatarInternalRoutesMitigate = {
action: UploadProjectAvatarInternalRoutesAction;
};
export type UploadProjectAvatarInternalRoutes2 = {
has: Array<UploadProjectAvatarHas1 | UploadProjectAvatarHas2>;
mitigate: UploadProjectAvatarInternalRoutesMitigate;
src?: string | undefined;
};
export type UploadProjectAvatarInternalRoutes1 = {
src: string;
status: number;
};
export type UploadProjectAvatarInternalRoutes =
| UploadProjectAvatarInternalRoutes1
| UploadProjectAvatarInternalRoutes2;
export const UploadProjectAvatarAction = {
Accept: "accept",
Cancel: "cancel",
Delete: "delete",
} as const;
export type UploadProjectAvatarAction = ClosedEnum<
typeof UploadProjectAvatarAction
>;
export type UploadProjectAvatarValuePreviousValue = string | number | boolean;
export type UploadProjectAvatarValueCurrentValue = string | number | boolean;
export type UploadProjectAvatarValue3 = {
previousValue: string | number | boolean;
currentValue: string | number | boolean;
};
export type UploadProjectAvatarValue =
| UploadProjectAvatarValue3
| string
| number
| boolean;
export type UploadProjectAvatarDismissedToasts = {
key: string;
dismissedAt: number;
action: UploadProjectAvatarAction;
value: UploadProjectAvatarValue3 | string | number | boolean | null;
};
export const UploadProjectAvatarProjectsEnv = {
Preview: "preview",
Production: "production",
} as const;
export type UploadProjectAvatarProjectsEnv = ClosedEnum<
typeof UploadProjectAvatarProjectsEnv
>;
export type UploadProjectAvatarSamplingRules = {
rate: number;
env?: UploadProjectAvatarProjectsEnv | undefined;
requestPath?: string | undefined;
};
export type UploadProjectAvatarTracing = {
domains?: string | undefined;
ignorePaths?: Array<string> | undefined;
samplingRules?: Array<UploadProjectAvatarSamplingRules> | undefined;
};
export type UploadProjectAvatarResponseBody = {
accountId: string;
analytics?: UploadProjectAvatarAnalytics | undefined;
appliedCve55182Migration?: boolean | undefined;
speedInsights?: UploadProjectAvatarSpeedInsights | undefined;
autoExposeSystemEnvs?: boolean | undefined;
autoAssignCustomDomains?: boolean | undefined;
autoAssignCustomDomainsUpdatedBy?: string | undefined;
buildCommand?: string | null | undefined;
commandForIgnoringBuildStep?: string | null | undefined;
connectConfigurations?:
| Array<UploadProjectAvatarConnectConfigurations>
| null
| undefined;
connectConfigurationId?: string | null | undefined;
connectBuildsEnabled?: boolean | undefined;
passiveConnectConfigurationId?: string | null | undefined;
createdAt?: number | undefined;
customerSupportCodeVisibility?: boolean | undefined;
crons?: UploadProjectAvatarCrons | undefined;
dataCache?: UploadProjectAvatarDataCache | undefined;
/**
* Retention policies for deployments. These are enforced at the project level, but we also maintain an instance of this at the team level as a default policy that gets applied to new projects.
*/
deploymentExpiration: UploadProjectAvatarDeploymentExpiration;
expiration?: UploadProjectAvatarExpiration | undefined;
devCommand?: string | null | undefined;
directoryListing: boolean;
installCommand?: string | null | undefined;
env?: Array<UploadProjectAvatarEnv> | undefined;
customEnvironments?: Array<UploadProjectAvatarCustomEnvironments> | undefined;
framework?: UploadProjectAvatarFramework | null | undefined;
services?: Array<UploadProjectAvatarServices> | undefined;
gitForkProtection?: boolean | undefined;
gitLFS?: boolean | undefined;
id: string;
ipBuckets?: Array<UploadProjectAvatarIpBuckets> | undefined;
jobs?: UploadProjectAvatarJobs | undefined;
latestDeployments?: Array<UploadProjectAvatarLatestDeployments> | undefined;
link?: UploadProjectAvatarLink | undefined;
microfrontends?: UploadProjectAvatarMicrofrontends | undefined;
name: string;
nodeVersion: UploadProjectAvatarNodeVersion;
optionsAllowlist?: UploadProjectAvatarOptionsAllowlist | null | undefined;
outputDirectory?: string | null | undefined;
passwordProtection?: UploadProjectAvatarPasswordProtection | null | undefined;
passport?: UploadProjectAvatarPassport | null | undefined;
protectionConfig?: UploadProjectAvatarProtectionConfig | undefined;
productionDeploymentsFastLane?: boolean | undefined;
resourceConfig: UploadProjectAvatarResourceConfig;
/**
* Description of why a project was rolled back, and by whom. Note that lastAliasRequest contains the from/to details of the rollback.
*/
rollbackDescription?: UploadProjectAvatarRollbackDescription | undefined;
/**
* Project-level rolling release configuration that defines how deployments should be gradually rolled out
*/
rollingRelease?: UploadProjectAvatarRollingRelease | null | undefined;
defaultResourceConfig: UploadProjectAvatarDefaultResourceConfig;
rootDirectory?: string | null | undefined;
serverlessFunctionZeroConfigFailover?: boolean | undefined;
skewProtectionBoundaryAt?: number | undefined;
skewProtectionMaxAge?: number | undefined;
skewProtectionAllowedDomains?: Array<string> | undefined;
skipGitConnectDuringLink?: boolean | undefined;
staticIps?: UploadProjectAvatarStaticIps | undefined;
sourceFilesOutsideRootDirectory?: boolean | undefined;
enableAffectedProjectsDeployments?: boolean | undefined;
enableExternalRewriteCaching?: boolean | undefined;
ssoProtection?: UploadProjectAvatarSsoProtection | null | undefined;
targets?: { [k: string]: UploadProjectAvatarTargets | null } | undefined;
transferCompletedAt?: number | undefined;
transferStartedAt?: number | undefined;
transferToAccountId?: string | undefined;
transferredFromAccountId?: string | undefined;
updatedAt?: number | undefined;
live?: boolean | undefined;
enablePreviewFeedback?: boolean | null | undefined;
enableProductionFeedback?: boolean | null | undefined;
permissions?: UploadProjectAvatarPermissions | undefined;
lastRollbackTarget?: UploadProjectAvatarLastRollbackTarget | null | undefined;
lastAliasRequest?: UploadProjectAvatarLastAliasRequest | null | undefined;
protectionBypass?:
| { [k: string]: UploadProjectAvatarProtectionBypass }
| undefined;
hasActiveBranches?: boolean | undefined;
trustedIps?: UploadProjectAvatarTrustedIps | null | undefined;
trustedSources?: UploadProjectAvatarTrustedSources | null | undefined;
gitComments?: UploadProjectAvatarGitComments | undefined;
gitProviderOptions?: UploadProjectAvatarGitProviderOptions | undefined;
paused?: boolean | undefined;
concurrencyBucketName?: string | undefined;
webAnalytics?: UploadProjectAvatarWebAnalytics | undefined;
security?: UploadProjectAvatarSecurity | undefined;
oidcTokenConfig?: UploadProjectAvatarOidcTokenConfig | undefined;
/**
* Project shape. `null` on a rule list clears the project's override for that rule type (fall back to team for every env); omitting is equivalent. Setting `deploymentPolicy` itself to `null` clears every override at once. Kept structurally distinct from {@link TeamDeploymentPolicy} so the two storage locations don't share a type by accident.
*/
deploymentPolicy?: UploadProjectAvatarDeploymentPolicy | null | undefined;
tier?: string | undefined;
flatRateTier?: UploadProjectAvatarFlatRateTier | undefined;
usageStatus?: UploadProjectAvatarUsageStatus | undefined;
features?: UploadProjectAvatarFeatures | undefined;
v0?: boolean | undefined;
v0Created?: boolean | undefined;
abuse?: UploadProjectAvatarAbuse | undefined;
internalRoutes?:
| Array<
UploadProjectAvatarInternalRoutes1 | UploadProjectAvatarInternalRoutes2
>
| undefined;
hasDeployments?: boolean | undefined;
dismissedToasts?: Array<UploadProjectAvatarDismissedToasts> | undefined;
protectedSourcemaps?: boolean | undefined;
tracing?: UploadProjectAvatarTracing | undefined;
avatar?: string | null | undefined;
};
/** @internal */
export const UploadProjectAvatarTrafficSources$inboundSchema: z.ZodType<
UploadProjectAvatarTrafficSources,
z.ZodTypeDef,
unknown
> = z.object({
active: types.boolean(),
action: types.optional(
UploadProjectAvatarProjectsResponse200ApplicationJSONResponseBodySecurityAction$inboundSchema,
),
});
export function uploadProjectAvatarTrafficSourcesFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarTrafficSources, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarTrafficSources$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarTrafficSources' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarProjectsResponse200ApplicationJSONResponseBodySecurityManagedRulesAction$inboundSchema:
z.ZodNativeEnum<
typeof UploadProjectAvatarProjectsResponse200ApplicationJSONResponseBodySecurityManagedRulesAction
> = z.nativeEnum(
UploadProjectAvatarProjectsResponse200ApplicationJSONResponseBodySecurityManagedRulesAction,
);
/** @internal */
export const UploadProjectAvatarBotFilter$inboundSchema: z.ZodType<
UploadProjectAvatarBotFilter,
z.ZodTypeDef,
unknown
> = z.object({
active: types.boolean(),
action: types.optional(
UploadProjectAvatarProjectsResponse200ApplicationJSONResponseBodySecurityManagedRulesAction$inboundSchema,
),
});
export function uploadProjectAvatarBotFilterFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarBotFilter, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarBotFilter$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarBotFilter' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarProjectsResponse200Action$inboundSchema:
z.ZodNativeEnum<typeof UploadProjectAvatarProjectsResponse200Action> = z
.nativeEnum(UploadProjectAvatarProjectsResponse200Action);
/** @internal */
export const UploadProjectAvatarAiBots$inboundSchema: z.ZodType<
UploadProjectAvatarAiBots,
z.ZodTypeDef,
unknown
> = z.object({
active: types.boolean(),
action: types.optional(
UploadProjectAvatarProjectsResponse200Action$inboundSchema,
),
});
export function uploadProjectAvatarAiBotsFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarAiBots, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarAiBots$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarAiBots' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarProjectsResponse200ApplicationJSONAction$inboundSchema:
z.ZodNativeEnum<
typeof UploadProjectAvatarProjectsResponse200ApplicationJSONAction
> = z.nativeEnum(UploadProjectAvatarProjectsResponse200ApplicationJSONAction);
/** @internal */
export const UploadProjectAvatarOwasp$inboundSchema: z.ZodType<
UploadProjectAvatarOwasp,
z.ZodTypeDef,
unknown
> = z.object({
active: types.boolean(),
action: types.optional(
UploadProjectAvatarProjectsResponse200ApplicationJSONAction$inboundSchema,
),
});
export function uploadProjectAvatarOwaspFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarOwasp, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarOwasp$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarOwasp' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarManagedRules$inboundSchema: z.ZodType<
UploadProjectAvatarManagedRules,
z.ZodTypeDef,
unknown
> = z.object({
vercel_ruleset: UploadProjectAvatarVercelRuleset$inboundSchema,
traffic_sources: z.lazy(() =>
UploadProjectAvatarTrafficSources$inboundSchema
),
bot_filter: z.lazy(() => UploadProjectAvatarBotFilter$inboundSchema),
ai_bots: z.lazy(() => UploadProjectAvatarAiBots$inboundSchema),
owasp: z.lazy(() => UploadProjectAvatarOwasp$inboundSchema),
}).transform((v) => {
return remap$(v, {
"vercel_ruleset": "vercelRuleset",
"traffic_sources": "trafficSources",
"bot_filter": "botFilter",
"ai_bots": "aiBots",
});
});
export function uploadProjectAvatarManagedRulesFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarManagedRules, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarManagedRules$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarManagedRules' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarLogHeaders2$inboundSchema: z.ZodNativeEnum<
typeof UploadProjectAvatarLogHeaders2
> = z.nativeEnum(UploadProjectAvatarLogHeaders2);
/** @internal */
export const UploadProjectAvatarLogHeaders$inboundSchema: z.ZodType<
UploadProjectAvatarLogHeaders,
z.ZodTypeDef,
unknown
> = smartUnion([
z.array(types.string()),
UploadProjectAvatarLogHeaders2$inboundSchema,
]);
export function uploadProjectAvatarLogHeadersFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarLogHeaders, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarLogHeaders$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarLogHeaders' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarSecurityPlusMetadata$inboundSchema: z.ZodType<
UploadProjectAvatarSecurityPlusMetadata,
z.ZodTypeDef,
unknown
> = z.object({
updatedAt: types.number(),
firstEnabledAt: types.optional(types.number()),
});
export function uploadProjectAvatarSecurityPlusMetadataFromJSON(
jsonString: string,
): SafeParseResult<
UploadProjectAvatarSecurityPlusMetadata,
SDKValidationError
> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarSecurityPlusMetadata$inboundSchema.parse(
JSON.parse(x),
),
`Failed to parse 'UploadProjectAvatarSecurityPlusMetadata' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarSecurity$inboundSchema: z.ZodType<
UploadProjectAvatarSecurity,
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()),
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(() => UploadProjectAvatarManagedRules$inboundSchema),
).optional(),
botIdEnabled: types.optional(types.boolean()),
log_headers: types.optional(
smartUnion([
z.array(types.string()),
UploadProjectAvatarLogHeaders2$inboundSchema,
]),
),
securityPlus: types.optional(types.boolean()),
securityPlusMetadata: types.optional(
z.lazy(() => UploadProjectAvatarSecurityPlusMetadata$inboundSchema),
),
pageIntegrityEnabled: types.optional(types.boolean()),
}).transform((v) => {
return remap$(v, {
"log_headers": "logHeaders",
});
});
export function uploadProjectAvatarSecurityFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarSecurity, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarSecurity$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarSecurity' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarIssuerMode$inboundSchema: z.ZodNativeEnum<
typeof UploadProjectAvatarIssuerMode
> = z.nativeEnum(UploadProjectAvatarIssuerMode);
/** @internal */
export const UploadProjectAvatarOidcTokenConfig$inboundSchema: z.ZodType<
UploadProjectAvatarOidcTokenConfig,
z.ZodTypeDef,
unknown
> = z.object({
enabled: types.optional(types.boolean()),
issuerMode: types.optional(UploadProjectAvatarIssuerMode$inboundSchema),
});
export function uploadProjectAvatarOidcTokenConfigFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarOidcTokenConfig, SDKValidationError> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarOidcTokenConfig$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarOidcTokenConfig' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarSources2$inboundSchema: z.ZodType<
UploadProjectAvatarSources2,
z.ZodTypeDef,
unknown
> = z.object({
provider: types.literal("gitlab"),
namespace: types.string(),
project: types.optional(types.string()),
});
export function uploadProjectAvatarSources2FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarSources2, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarSources2$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarSources2' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarSourcesProvider$inboundSchema: z.ZodNativeEnum<
typeof UploadProjectAvatarSourcesProvider
> = z.nativeEnum(UploadProjectAvatarSourcesProvider);
/** @internal */
export const UploadProjectAvatarSources1$inboundSchema: z.ZodType<
UploadProjectAvatarSources1,
z.ZodTypeDef,
unknown
> = z.object({
provider: UploadProjectAvatarSourcesProvider$inboundSchema,
org: types.string(),
repo: types.optional(types.string()),
});
export function uploadProjectAvatarSources1FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarSources1, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarSources1$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarSources1' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarSources$inboundSchema: z.ZodType<
UploadProjectAvatarSources,
z.ZodTypeDef,
unknown
> = z.union([
z.lazy(() => UploadProjectAvatarSources1$inboundSchema).and(
z.object({ provider: z.literal("bitbucket") }),
),
z.lazy(() => UploadProjectAvatarSources1$inboundSchema).and(
z.object({ provider: z.literal("github") }),
),
z.lazy(() => UploadProjectAvatarSources2$inboundSchema),
]);
export function uploadProjectAvatarSourcesFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarSources, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarSources$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarSources' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarEnvironments2$inboundSchema: z.ZodType<
UploadProjectAvatarEnvironments2,
z.ZodTypeDef,
unknown
> = z.object({
type: types.literal("custom"),
environmentId: types.string(),
});
export function uploadProjectAvatarEnvironments2FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarEnvironments2, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarEnvironments2$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarEnvironments2' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarEnvironmentsTarget$inboundSchema:
z.ZodNativeEnum<typeof UploadProjectAvatarEnvironmentsTarget> = z.nativeEnum(
UploadProjectAvatarEnvironmentsTarget,
);
/** @internal */
export const UploadProjectAvatarEnvironments1$inboundSchema: z.ZodType<
UploadProjectAvatarEnvironments1,
z.ZodTypeDef,
unknown
> = z.object({
type: types.literal("system"),
target: UploadProjectAvatarEnvironmentsTarget$inboundSchema,
});
export function uploadProjectAvatarEnvironments1FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarEnvironments1, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarEnvironments1$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarEnvironments1' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarEnvironments$inboundSchema: z.ZodType<
UploadProjectAvatarEnvironments,
z.ZodTypeDef,
unknown
> = z.union([
z.lazy(() => UploadProjectAvatarEnvironments1$inboundSchema),
z.lazy(() => UploadProjectAvatarEnvironments2$inboundSchema),
]);
export function uploadProjectAvatarEnvironmentsFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarEnvironments, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarEnvironments$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarEnvironments' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarGitSources$inboundSchema: z.ZodType<
UploadProjectAvatarGitSources,
z.ZodTypeDef,
unknown
> = z.object({
sources: z.array(
z.union([
z.lazy(() => UploadProjectAvatarSources1$inboundSchema).and(
z.object({ provider: z.literal("bitbucket") }),
),
z.lazy(() => UploadProjectAvatarSources1$inboundSchema).and(
z.object({ provider: z.literal("github") }),
),
z.lazy(() => UploadProjectAvatarSources2$inboundSchema),
]),
),
enabled: types.boolean(),
environments: z.array(
z.union([
z.lazy(() => UploadProjectAvatarEnvironments1$inboundSchema),
z.lazy(() => UploadProjectAvatarEnvironments2$inboundSchema),
]),
),
});
export function uploadProjectAvatarGitSourcesFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarGitSources, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarGitSources$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarGitSources' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarProjectsSources$inboundSchema: z.ZodNativeEnum<
typeof UploadProjectAvatarProjectsSources
> = z.nativeEnum(UploadProjectAvatarProjectsSources);
/** @internal */
export const UploadProjectAvatarEnvironmentsProjects2$inboundSchema: z.ZodType<
UploadProjectAvatarEnvironmentsProjects2,
z.ZodTypeDef,
unknown
> = z.object({
type: types.literal("custom"),
environmentId: types.string(),
});
export function uploadProjectAvatarEnvironmentsProjects2FromJSON(
jsonString: string,
): SafeParseResult<
UploadProjectAvatarEnvironmentsProjects2,
SDKValidationError
> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarEnvironmentsProjects2$inboundSchema.parse(
JSON.parse(x),
),
`Failed to parse 'UploadProjectAvatarEnvironmentsProjects2' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarEnvironmentsProjectsTarget$inboundSchema:
z.ZodNativeEnum<typeof UploadProjectAvatarEnvironmentsProjectsTarget> = z
.nativeEnum(UploadProjectAvatarEnvironmentsProjectsTarget);
/** @internal */
export const UploadProjectAvatarEnvironmentsProjects1$inboundSchema: z.ZodType<
UploadProjectAvatarEnvironmentsProjects1,
z.ZodTypeDef,
unknown
> = z.object({
type: types.literal("system"),
target: UploadProjectAvatarEnvironmentsProjectsTarget$inboundSchema,
});
export function uploadProjectAvatarEnvironmentsProjects1FromJSON(
jsonString: string,
): SafeParseResult<
UploadProjectAvatarEnvironmentsProjects1,
SDKValidationError
> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarEnvironmentsProjects1$inboundSchema.parse(
JSON.parse(x),
),
`Failed to parse 'UploadProjectAvatarEnvironmentsProjects1' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarProjectsEnvironments$inboundSchema: z.ZodType<
UploadProjectAvatarProjectsEnvironments,
z.ZodTypeDef,
unknown
> = z.union([
z.lazy(() => UploadProjectAvatarEnvironmentsProjects1$inboundSchema),
z.lazy(() => UploadProjectAvatarEnvironmentsProjects2$inboundSchema),
]);
export function uploadProjectAvatarProjectsEnvironmentsFromJSON(
jsonString: string,
): SafeParseResult<
UploadProjectAvatarProjectsEnvironments,
SDKValidationError
> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarProjectsEnvironments$inboundSchema.parse(
JSON.parse(x),
),
`Failed to parse 'UploadProjectAvatarProjectsEnvironments' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarDeploymentSources$inboundSchema: z.ZodType<
UploadProjectAvatarDeploymentSources,
z.ZodTypeDef,
unknown
> = z.object({
sources: z.array(UploadProjectAvatarProjectsSources$inboundSchema),
enabled: types.boolean(),
environments: z.array(
z.union([
z.lazy(() => UploadProjectAvatarEnvironmentsProjects1$inboundSchema),
z.lazy(() => UploadProjectAvatarEnvironmentsProjects2$inboundSchema),
]),
),
});
export function uploadProjectAvatarDeploymentSourcesFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarDeploymentSources, SDKValidationError> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarDeploymentSources$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarDeploymentSources' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarDeploymentPolicy$inboundSchema: z.ZodType<
UploadProjectAvatarDeploymentPolicy,
z.ZodTypeDef,
unknown
> = z.object({
gitSources: z.nullable(
z.array(z.lazy(() => UploadProjectAvatarGitSources$inboundSchema)),
).optional(),
deploymentSources: z.nullable(
z.array(z.lazy(() => UploadProjectAvatarDeploymentSources$inboundSchema)),
).optional(),
});
export function uploadProjectAvatarDeploymentPolicyFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarDeploymentPolicy, SDKValidationError> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarDeploymentPolicy$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarDeploymentPolicy' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarFlatRateTier$inboundSchema: z.ZodNativeEnum<
typeof UploadProjectAvatarFlatRateTier
> = z.nativeEnum(UploadProjectAvatarFlatRateTier);
/** @internal */
export const UploadProjectAvatarKind$inboundSchema: z.ZodNativeEnum<
typeof UploadProjectAvatarKind
> = z.nativeEnum(UploadProjectAvatarKind);
/** @internal */
export const UploadProjectAvatarUsageStatus$inboundSchema: z.ZodType<
UploadProjectAvatarUsageStatus,
z.ZodTypeDef,
unknown
> = z.object({
kind: UploadProjectAvatarKind$inboundSchema,
exceededAllowanceUntil: types.optional(types.number()),
bypassThrottleUntil: types.optional(types.number()),
throttled: types.optional(types.boolean()),
});
export function uploadProjectAvatarUsageStatusFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarUsageStatus, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarUsageStatus$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarUsageStatus' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarFeatures$inboundSchema: z.ZodType<
UploadProjectAvatarFeatures,
z.ZodTypeDef,
unknown
> = z.object({
webAnalytics: types.optional(types.boolean()),
});
export function uploadProjectAvatarFeaturesFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarFeatures, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarFeatures$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarFeatures' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarHistory$inboundSchema: z.ZodType<
UploadProjectAvatarHistory,
z.ZodTypeDef,
unknown
> = z.object({
scanner: types.string(),
reason: types.string(),
by: types.string(),
byId: types.string(),
at: types.number(),
});
export function uploadProjectAvatarHistoryFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarHistory, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarHistory$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarHistory' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarProjectsResponseAction$inboundSchema:
z.ZodNativeEnum<typeof UploadProjectAvatarProjectsResponseAction> = z
.nativeEnum(UploadProjectAvatarProjectsResponseAction);
/** @internal */
export const UploadProjectAvatarBlock$inboundSchema: z.ZodType<
UploadProjectAvatarBlock,
z.ZodTypeDef,
unknown
> = z.object({
action: UploadProjectAvatarProjectsResponseAction$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 uploadProjectAvatarBlockFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarBlock, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarBlock$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarBlock' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarHasProjectsResponse200Value$inboundSchema:
z.ZodType<
UploadProjectAvatarHasProjectsResponse200Value,
z.ZodTypeDef,
unknown
> = z.object({
eq: types.string(),
});
export function uploadProjectAvatarHasProjectsResponse200ValueFromJSON(
jsonString: string,
): SafeParseResult<
UploadProjectAvatarHasProjectsResponse200Value,
SDKValidationError
> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarHasProjectsResponse200Value$inboundSchema.parse(
JSON.parse(x),
),
`Failed to parse 'UploadProjectAvatarHasProjectsResponse200Value' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarHasProjects2$inboundSchema: z.ZodType<
UploadProjectAvatarHasProjects2,
z.ZodTypeDef,
unknown
> = z.object({
type: types.literal("host"),
value: z.lazy(() =>
UploadProjectAvatarHasProjectsResponse200Value$inboundSchema
),
});
export function uploadProjectAvatarHasProjects2FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarHasProjects2, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarHasProjects2$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarHasProjects2' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarHasProjectsKey$inboundSchema: z.ZodNativeEnum<
typeof UploadProjectAvatarHasProjectsKey
> = z.nativeEnum(UploadProjectAvatarHasProjectsKey);
/** @internal */
export const UploadProjectAvatarHasProjectsResponseValue$inboundSchema:
z.ZodType<
UploadProjectAvatarHasProjectsResponseValue,
z.ZodTypeDef,
unknown
> = z.object({
eq: types.string(),
});
export function uploadProjectAvatarHasProjectsResponseValueFromJSON(
jsonString: string,
): SafeParseResult<
UploadProjectAvatarHasProjectsResponseValue,
SDKValidationError
> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarHasProjectsResponseValue$inboundSchema.parse(
JSON.parse(x),
),
`Failed to parse 'UploadProjectAvatarHasProjectsResponseValue' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarHasProjects1$inboundSchema: z.ZodType<
UploadProjectAvatarHasProjects1,
z.ZodTypeDef,
unknown
> = z.object({
type: types.literal("header"),
key: UploadProjectAvatarHasProjectsKey$inboundSchema,
value: z.lazy(() =>
UploadProjectAvatarHasProjectsResponseValue$inboundSchema
),
});
export function uploadProjectAvatarHasProjects1FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarHasProjects1, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarHasProjects1$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarHasProjects1' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarRouteProjectsHas$inboundSchema: z.ZodType<
UploadProjectAvatarRouteProjectsHas,
z.ZodTypeDef,
unknown
> = z.union([
z.lazy(() => UploadProjectAvatarHasProjects1$inboundSchema),
z.lazy(() => UploadProjectAvatarHasProjects2$inboundSchema),
]);
export function uploadProjectAvatarRouteProjectsHasFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarRouteProjectsHas, SDKValidationError> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarRouteProjectsHas$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarRouteProjectsHas' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarRouteProjectsAction$inboundSchema:
z.ZodNativeEnum<typeof UploadProjectAvatarRouteProjectsAction> = z.nativeEnum(
UploadProjectAvatarRouteProjectsAction,
);
/** @internal */
export const UploadProjectAvatarRouteProjectsMitigate$inboundSchema: z.ZodType<
UploadProjectAvatarRouteProjectsMitigate,
z.ZodTypeDef,
unknown
> = z.object({
action: UploadProjectAvatarRouteProjectsAction$inboundSchema,
});
export function uploadProjectAvatarRouteProjectsMitigateFromJSON(
jsonString: string,
): SafeParseResult<
UploadProjectAvatarRouteProjectsMitigate,
SDKValidationError
> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarRouteProjectsMitigate$inboundSchema.parse(
JSON.parse(x),
),
`Failed to parse 'UploadProjectAvatarRouteProjectsMitigate' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarRouteProjects2$inboundSchema: z.ZodType<
UploadProjectAvatarRouteProjects2,
z.ZodTypeDef,
unknown
> = z.object({
has: z.array(
z.union([
z.lazy(() => UploadProjectAvatarHasProjects1$inboundSchema),
z.lazy(() => UploadProjectAvatarHasProjects2$inboundSchema),
]),
),
mitigate: z.lazy(() =>
UploadProjectAvatarRouteProjectsMitigate$inboundSchema
),
src: types.optional(types.string()),
});
export function uploadProjectAvatarRouteProjects2FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarRouteProjects2, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarRouteProjects2$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarRouteProjects2' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarRouteProjects1$inboundSchema: z.ZodType<
UploadProjectAvatarRouteProjects1,
z.ZodTypeDef,
unknown
> = z.object({
src: types.string(),
status: types.number(),
});
export function uploadProjectAvatarRouteProjects1FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarRouteProjects1, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarRouteProjects1$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarRouteProjects1' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarBlockHistoryProjectsRoute$inboundSchema:
z.ZodType<
UploadProjectAvatarBlockHistoryProjectsRoute,
z.ZodTypeDef,
unknown
> = smartUnion([
z.lazy(() => UploadProjectAvatarRouteProjects1$inboundSchema),
z.lazy(() => UploadProjectAvatarRouteProjects2$inboundSchema),
]);
export function uploadProjectAvatarBlockHistoryProjectsRouteFromJSON(
jsonString: string,
): SafeParseResult<
UploadProjectAvatarBlockHistoryProjectsRoute,
SDKValidationError
> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarBlockHistoryProjectsRoute$inboundSchema.parse(
JSON.parse(x),
),
`Failed to parse 'UploadProjectAvatarBlockHistoryProjectsRoute' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarBlockHistory4$inboundSchema: z.ZodType<
UploadProjectAvatarBlockHistory4,
z.ZodTypeDef,
unknown
> = z.object({
action: types.literal("route-unblocked"),
route: smartUnion([
z.lazy(() => UploadProjectAvatarRouteProjects1$inboundSchema),
z.lazy(() => UploadProjectAvatarRouteProjects2$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 uploadProjectAvatarBlockHistory4FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarBlockHistory4, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarBlockHistory4$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarBlockHistory4' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarHasProjectsResponse200ApplicationJSONResponseBodyValue$inboundSchema:
z.ZodType<
UploadProjectAvatarHasProjectsResponse200ApplicationJSONResponseBodyValue,
z.ZodTypeDef,
unknown
> = z.object({
eq: types.string(),
});
export function uploadProjectAvatarHasProjectsResponse200ApplicationJSONResponseBodyValueFromJSON(
jsonString: string,
): SafeParseResult<
UploadProjectAvatarHasProjectsResponse200ApplicationJSONResponseBodyValue,
SDKValidationError
> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarHasProjectsResponse200ApplicationJSONResponseBodyValue$inboundSchema
.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarHasProjectsResponse200ApplicationJSONResponseBodyValue' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarHasProjectsResponse2$inboundSchema: z.ZodType<
UploadProjectAvatarHasProjectsResponse2,
z.ZodTypeDef,
unknown
> = z.object({
type: types.literal("host"),
value: z.lazy(() =>
UploadProjectAvatarHasProjectsResponse200ApplicationJSONResponseBodyValue$inboundSchema
),
});
export function uploadProjectAvatarHasProjectsResponse2FromJSON(
jsonString: string,
): SafeParseResult<
UploadProjectAvatarHasProjectsResponse2,
SDKValidationError
> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarHasProjectsResponse2$inboundSchema.parse(
JSON.parse(x),
),
`Failed to parse 'UploadProjectAvatarHasProjectsResponse2' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarHasProjectsResponseKey$inboundSchema:
z.ZodNativeEnum<typeof UploadProjectAvatarHasProjectsResponseKey> = z
.nativeEnum(UploadProjectAvatarHasProjectsResponseKey);
/** @internal */
export const UploadProjectAvatarHasProjectsResponse200ApplicationJSONValue$inboundSchema:
z.ZodType<
UploadProjectAvatarHasProjectsResponse200ApplicationJSONValue,
z.ZodTypeDef,
unknown
> = z.object({
eq: types.string(),
});
export function uploadProjectAvatarHasProjectsResponse200ApplicationJSONValueFromJSON(
jsonString: string,
): SafeParseResult<
UploadProjectAvatarHasProjectsResponse200ApplicationJSONValue,
SDKValidationError
> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarHasProjectsResponse200ApplicationJSONValue$inboundSchema
.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarHasProjectsResponse200ApplicationJSONValue' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarHasProjectsResponse1$inboundSchema: z.ZodType<
UploadProjectAvatarHasProjectsResponse1,
z.ZodTypeDef,
unknown
> = z.object({
type: types.literal("header"),
key: UploadProjectAvatarHasProjectsResponseKey$inboundSchema,
value: z.lazy(() =>
UploadProjectAvatarHasProjectsResponse200ApplicationJSONValue$inboundSchema
),
});
export function uploadProjectAvatarHasProjectsResponse1FromJSON(
jsonString: string,
): SafeParseResult<
UploadProjectAvatarHasProjectsResponse1,
SDKValidationError
> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarHasProjectsResponse1$inboundSchema.parse(
JSON.parse(x),
),
`Failed to parse 'UploadProjectAvatarHasProjectsResponse1' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarRouteHas$inboundSchema: z.ZodType<
UploadProjectAvatarRouteHas,
z.ZodTypeDef,
unknown
> = z.union([
z.lazy(() => UploadProjectAvatarHasProjectsResponse1$inboundSchema),
z.lazy(() => UploadProjectAvatarHasProjectsResponse2$inboundSchema),
]);
export function uploadProjectAvatarRouteHasFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarRouteHas, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarRouteHas$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarRouteHas' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarRouteAction$inboundSchema: z.ZodNativeEnum<
typeof UploadProjectAvatarRouteAction
> = z.nativeEnum(UploadProjectAvatarRouteAction);
/** @internal */
export const UploadProjectAvatarRouteMitigate$inboundSchema: z.ZodType<
UploadProjectAvatarRouteMitigate,
z.ZodTypeDef,
unknown
> = z.object({
action: UploadProjectAvatarRouteAction$inboundSchema,
});
export function uploadProjectAvatarRouteMitigateFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarRouteMitigate, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarRouteMitigate$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarRouteMitigate' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarRoute2$inboundSchema: z.ZodType<
UploadProjectAvatarRoute2,
z.ZodTypeDef,
unknown
> = z.object({
has: z.array(
z.union([
z.lazy(() => UploadProjectAvatarHasProjectsResponse1$inboundSchema),
z.lazy(() => UploadProjectAvatarHasProjectsResponse2$inboundSchema),
]),
),
mitigate: z.lazy(() => UploadProjectAvatarRouteMitigate$inboundSchema),
src: types.optional(types.string()),
});
export function uploadProjectAvatarRoute2FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarRoute2, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarRoute2$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarRoute2' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarRoute1$inboundSchema: z.ZodType<
UploadProjectAvatarRoute1,
z.ZodTypeDef,
unknown
> = z.object({
src: types.string(),
status: types.number(),
});
export function uploadProjectAvatarRoute1FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarRoute1, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarRoute1$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarRoute1' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarBlockHistoryRoute$inboundSchema: z.ZodType<
UploadProjectAvatarBlockHistoryRoute,
z.ZodTypeDef,
unknown
> = smartUnion([
z.lazy(() => UploadProjectAvatarRoute1$inboundSchema),
z.lazy(() => UploadProjectAvatarRoute2$inboundSchema),
]);
export function uploadProjectAvatarBlockHistoryRouteFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarBlockHistoryRoute, SDKValidationError> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarBlockHistoryRoute$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarBlockHistoryRoute' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarBlockHistory3$inboundSchema: z.ZodType<
UploadProjectAvatarBlockHistory3,
z.ZodTypeDef,
unknown
> = z.object({
action: types.literal("route-blocked"),
route: smartUnion([
z.lazy(() => UploadProjectAvatarRoute1$inboundSchema),
z.lazy(() => UploadProjectAvatarRoute2$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 uploadProjectAvatarBlockHistory3FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarBlockHistory3, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarBlockHistory3$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarBlockHistory3' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarBlockHistory2$inboundSchema: z.ZodType<
UploadProjectAvatarBlockHistory2,
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 uploadProjectAvatarBlockHistory2FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarBlockHistory2, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarBlockHistory2$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarBlockHistory2' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarBlockHistory1$inboundSchema: z.ZodType<
UploadProjectAvatarBlockHistory1,
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 uploadProjectAvatarBlockHistory1FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarBlockHistory1, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarBlockHistory1$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarBlockHistory1' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarBlockHistory$inboundSchema: z.ZodType<
UploadProjectAvatarBlockHistory,
z.ZodTypeDef,
unknown
> = z.union([
z.lazy(() => UploadProjectAvatarBlockHistory1$inboundSchema),
z.lazy(() => UploadProjectAvatarBlockHistory2$inboundSchema),
z.lazy(() => UploadProjectAvatarBlockHistory3$inboundSchema),
z.lazy(() => UploadProjectAvatarBlockHistory4$inboundSchema),
]);
export function uploadProjectAvatarBlockHistoryFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarBlockHistory, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarBlockHistory$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarBlockHistory' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarProjectsAction$inboundSchema: z.ZodNativeEnum<
typeof UploadProjectAvatarProjectsAction
> = z.nativeEnum(UploadProjectAvatarProjectsAction);
/** @internal */
export const UploadProjectAvatarInterstitialHistory$inboundSchema: z.ZodType<
UploadProjectAvatarInterstitialHistory,
z.ZodTypeDef,
unknown
> = z.object({
action: UploadProjectAvatarProjectsAction$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 uploadProjectAvatarInterstitialHistoryFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarInterstitialHistory, SDKValidationError> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarInterstitialHistory$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarInterstitialHistory' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarAbuse$inboundSchema: z.ZodType<
UploadProjectAvatarAbuse,
z.ZodTypeDef,
unknown
> = z.object({
scanner: types.optional(types.string()),
history: z.array(z.lazy(() => UploadProjectAvatarHistory$inboundSchema)),
updatedAt: types.number(),
block: types.optional(z.lazy(() => UploadProjectAvatarBlock$inboundSchema)),
blockHistory: types.optional(
z.array(z.union([
z.lazy(() => UploadProjectAvatarBlockHistory1$inboundSchema),
z.lazy(() =>
UploadProjectAvatarBlockHistory2$inboundSchema
),
z.lazy(() => UploadProjectAvatarBlockHistory3$inboundSchema),
z.lazy(() => UploadProjectAvatarBlockHistory4$inboundSchema),
])),
),
interstitial: types.optional(types.boolean()),
interstitialHistory: types.optional(
z.array(z.lazy(() => UploadProjectAvatarInterstitialHistory$inboundSchema)),
),
});
export function uploadProjectAvatarAbuseFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarAbuse, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarAbuse$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarAbuse' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarHasProjectsValue$inboundSchema: z.ZodType<
UploadProjectAvatarHasProjectsValue,
z.ZodTypeDef,
unknown
> = z.object({
eq: types.string(),
});
export function uploadProjectAvatarHasProjectsValueFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarHasProjectsValue, SDKValidationError> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarHasProjectsValue$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarHasProjectsValue' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarHas2$inboundSchema: z.ZodType<
UploadProjectAvatarHas2,
z.ZodTypeDef,
unknown
> = z.object({
type: types.literal("host"),
value: z.lazy(() => UploadProjectAvatarHasProjectsValue$inboundSchema),
});
export function uploadProjectAvatarHas2FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarHas2, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarHas2$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarHas2' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarHasKey$inboundSchema: z.ZodNativeEnum<
typeof UploadProjectAvatarHasKey
> = z.nativeEnum(UploadProjectAvatarHasKey);
/** @internal */
export const UploadProjectAvatarHasValue$inboundSchema: z.ZodType<
UploadProjectAvatarHasValue,
z.ZodTypeDef,
unknown
> = z.object({
eq: types.string(),
});
export function uploadProjectAvatarHasValueFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarHasValue, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarHasValue$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarHasValue' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarHas1$inboundSchema: z.ZodType<
UploadProjectAvatarHas1,
z.ZodTypeDef,
unknown
> = z.object({
type: types.literal("header"),
key: UploadProjectAvatarHasKey$inboundSchema,
value: z.lazy(() => UploadProjectAvatarHasValue$inboundSchema),
});
export function uploadProjectAvatarHas1FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarHas1, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarHas1$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarHas1' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarInternalRoutesHas$inboundSchema: z.ZodType<
UploadProjectAvatarInternalRoutesHas,
z.ZodTypeDef,
unknown
> = z.union([
z.lazy(() => UploadProjectAvatarHas1$inboundSchema),
z.lazy(() => UploadProjectAvatarHas2$inboundSchema),
]);
export function uploadProjectAvatarInternalRoutesHasFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarInternalRoutesHas, SDKValidationError> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarInternalRoutesHas$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarInternalRoutesHas' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarInternalRoutesAction$inboundSchema:
z.ZodNativeEnum<typeof UploadProjectAvatarInternalRoutesAction> = z
.nativeEnum(UploadProjectAvatarInternalRoutesAction);
/** @internal */
export const UploadProjectAvatarInternalRoutesMitigate$inboundSchema: z.ZodType<
UploadProjectAvatarInternalRoutesMitigate,
z.ZodTypeDef,
unknown
> = z.object({
action: UploadProjectAvatarInternalRoutesAction$inboundSchema,
});
export function uploadProjectAvatarInternalRoutesMitigateFromJSON(
jsonString: string,
): SafeParseResult<
UploadProjectAvatarInternalRoutesMitigate,
SDKValidationError
> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarInternalRoutesMitigate$inboundSchema.parse(
JSON.parse(x),
),
`Failed to parse 'UploadProjectAvatarInternalRoutesMitigate' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarInternalRoutes2$inboundSchema: z.ZodType<
UploadProjectAvatarInternalRoutes2,
z.ZodTypeDef,
unknown
> = z.object({
has: z.array(
z.union([
z.lazy(() => UploadProjectAvatarHas1$inboundSchema),
z.lazy(() => UploadProjectAvatarHas2$inboundSchema),
]),
),
mitigate: z.lazy(() =>
UploadProjectAvatarInternalRoutesMitigate$inboundSchema
),
src: types.optional(types.string()),
});
export function uploadProjectAvatarInternalRoutes2FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarInternalRoutes2, SDKValidationError> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarInternalRoutes2$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarInternalRoutes2' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarInternalRoutes1$inboundSchema: z.ZodType<
UploadProjectAvatarInternalRoutes1,
z.ZodTypeDef,
unknown
> = z.object({
src: types.string(),
status: types.number(),
});
export function uploadProjectAvatarInternalRoutes1FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarInternalRoutes1, SDKValidationError> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarInternalRoutes1$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarInternalRoutes1' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarInternalRoutes$inboundSchema: z.ZodType<
UploadProjectAvatarInternalRoutes,
z.ZodTypeDef,
unknown
> = smartUnion([
z.lazy(() => UploadProjectAvatarInternalRoutes1$inboundSchema),
z.lazy(() => UploadProjectAvatarInternalRoutes2$inboundSchema),
]);
export function uploadProjectAvatarInternalRoutesFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarInternalRoutes, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarInternalRoutes$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarInternalRoutes' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarAction$inboundSchema: z.ZodNativeEnum<
typeof UploadProjectAvatarAction
> = z.nativeEnum(UploadProjectAvatarAction);
/** @internal */
export const UploadProjectAvatarValuePreviousValue$inboundSchema: z.ZodType<
UploadProjectAvatarValuePreviousValue,
z.ZodTypeDef,
unknown
> = smartUnion([types.string(), types.number(), types.boolean()]);
export function uploadProjectAvatarValuePreviousValueFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarValuePreviousValue, SDKValidationError> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarValuePreviousValue$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarValuePreviousValue' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarValueCurrentValue$inboundSchema: z.ZodType<
UploadProjectAvatarValueCurrentValue,
z.ZodTypeDef,
unknown
> = smartUnion([types.string(), types.number(), types.boolean()]);
export function uploadProjectAvatarValueCurrentValueFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarValueCurrentValue, SDKValidationError> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarValueCurrentValue$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarValueCurrentValue' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarValue3$inboundSchema: z.ZodType<
UploadProjectAvatarValue3,
z.ZodTypeDef,
unknown
> = z.object({
previousValue: smartUnion([types.string(), types.number(), types.boolean()]),
currentValue: smartUnion([types.string(), types.number(), types.boolean()]),
});
export function uploadProjectAvatarValue3FromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarValue3, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarValue3$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarValue3' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarValue$inboundSchema: z.ZodType<
UploadProjectAvatarValue,
z.ZodTypeDef,
unknown
> = smartUnion([
z.lazy(() => UploadProjectAvatarValue3$inboundSchema),
types.string(),
types.number(),
types.boolean(),
]);
export function uploadProjectAvatarValueFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarValue, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarValue$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarValue' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarDismissedToasts$inboundSchema: z.ZodType<
UploadProjectAvatarDismissedToasts,
z.ZodTypeDef,
unknown
> = z.object({
key: types.string(),
dismissedAt: types.number(),
action: UploadProjectAvatarAction$inboundSchema,
value: types.nullable(
smartUnion([
z.lazy(() => UploadProjectAvatarValue3$inboundSchema),
types.string(),
types.number(),
types.boolean(),
]),
),
});
export function uploadProjectAvatarDismissedToastsFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarDismissedToasts, SDKValidationError> {
return safeParse(
jsonString,
(x) =>
UploadProjectAvatarDismissedToasts$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarDismissedToasts' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarProjectsEnv$inboundSchema: z.ZodNativeEnum<
typeof UploadProjectAvatarProjectsEnv
> = z.nativeEnum(UploadProjectAvatarProjectsEnv);
/** @internal */
export const UploadProjectAvatarSamplingRules$inboundSchema: z.ZodType<
UploadProjectAvatarSamplingRules,
z.ZodTypeDef,
unknown
> = z.object({
rate: types.number(),
env: types.optional(UploadProjectAvatarProjectsEnv$inboundSchema),
requestPath: types.optional(types.string()),
});
export function uploadProjectAvatarSamplingRulesFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarSamplingRules, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarSamplingRules$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarSamplingRules' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarTracing$inboundSchema: z.ZodType<
UploadProjectAvatarTracing,
z.ZodTypeDef,
unknown
> = z.object({
domains: types.optional(types.string()),
ignorePaths: types.optional(z.array(types.string())),
samplingRules: types.optional(
z.array(z.lazy(() => UploadProjectAvatarSamplingRules$inboundSchema)),
),
});
export function uploadProjectAvatarTracingFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarTracing, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarTracing$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarTracing' from JSON`,
);
}
/** @internal */
export const UploadProjectAvatarResponseBody$inboundSchema: z.ZodType<
UploadProjectAvatarResponseBody,
z.ZodTypeDef,
unknown
> = z.object({
accountId: types.string(),
analytics: types.optional(UploadProjectAvatarAnalytics$inboundSchema),
appliedCve55182Migration: types.optional(types.boolean()),
speedInsights: types.optional(UploadProjectAvatarSpeedInsights$inboundSchema),
autoExposeSystemEnvs: types.optional(types.boolean()),
autoAssignCustomDomains: types.optional(types.boolean()),
autoAssignCustomDomainsUpdatedBy: types.optional(types.string()),
buildCommand: z.nullable(types.string()).optional(),
commandForIgnoringBuildStep: z.nullable(types.string()).optional(),
connectConfigurations: z.nullable(
z.array(UploadProjectAvatarConnectConfigurations$inboundSchema),
).optional(),
connectConfigurationId: z.nullable(types.string()).optional(),
connectBuildsEnabled: types.optional(types.boolean()),
passiveConnectConfigurationId: z.nullable(types.string()).optional(),
createdAt: types.optional(types.number()),
customerSupportCodeVisibility: types.optional(types.boolean()),
crons: types.optional(UploadProjectAvatarCrons$inboundSchema),
dataCache: types.optional(UploadProjectAvatarDataCache$inboundSchema),
deploymentExpiration: UploadProjectAvatarDeploymentExpiration$inboundSchema,
expiration: types.optional(UploadProjectAvatarExpiration$inboundSchema),
devCommand: z.nullable(types.string()).optional(),
directoryListing: types.boolean(),
installCommand: z.nullable(types.string()).optional(),
env: types.optional(z.array(UploadProjectAvatarEnv$inboundSchema)),
customEnvironments: types.optional(
z.array(UploadProjectAvatarCustomEnvironments$inboundSchema),
),
framework: z.nullable(UploadProjectAvatarFramework$inboundSchema).optional(),
services: types.optional(z.array(UploadProjectAvatarServices$inboundSchema)),
gitForkProtection: types.optional(types.boolean()),
gitLFS: types.optional(types.boolean()),
id: types.string(),
ipBuckets: types.optional(
z.array(UploadProjectAvatarIpBuckets$inboundSchema),
),
jobs: types.optional(UploadProjectAvatarJobs$inboundSchema),
latestDeployments: types.optional(
z.array(UploadProjectAvatarLatestDeployments$inboundSchema),
),
link: types.optional(UploadProjectAvatarLink$inboundSchema),
microfrontends: types.optional(
UploadProjectAvatarMicrofrontends$inboundSchema,
),
name: types.string(),
nodeVersion: UploadProjectAvatarNodeVersion$inboundSchema,
optionsAllowlist: z.nullable(
UploadProjectAvatarOptionsAllowlist$inboundSchema,
).optional(),
outputDirectory: z.nullable(types.string()).optional(),
passwordProtection: z.nullable(
UploadProjectAvatarPasswordProtection$inboundSchema,
).optional(),
passport: z.nullable(UploadProjectAvatarPassport$inboundSchema).optional(),
protectionConfig: types.optional(
UploadProjectAvatarProtectionConfig$inboundSchema,
),
productionDeploymentsFastLane: types.optional(types.boolean()),
resourceConfig: UploadProjectAvatarResourceConfig$inboundSchema,
rollbackDescription: types.optional(
UploadProjectAvatarRollbackDescription$inboundSchema,
),
rollingRelease: z.nullable(UploadProjectAvatarRollingRelease$inboundSchema)
.optional(),
defaultResourceConfig: UploadProjectAvatarDefaultResourceConfig$inboundSchema,
rootDirectory: z.nullable(types.string()).optional(),
serverlessFunctionZeroConfigFailover: types.optional(types.boolean()),
skewProtectionBoundaryAt: types.optional(types.number()),
skewProtectionMaxAge: types.optional(types.number()),
skewProtectionAllowedDomains: types.optional(z.array(types.string())),
skipGitConnectDuringLink: types.optional(types.boolean()),
staticIps: types.optional(UploadProjectAvatarStaticIps$inboundSchema),
sourceFilesOutsideRootDirectory: types.optional(types.boolean()),
enableAffectedProjectsDeployments: types.optional(types.boolean()),
enableExternalRewriteCaching: types.optional(types.boolean()),
ssoProtection: z.nullable(UploadProjectAvatarSsoProtection$inboundSchema)
.optional(),
targets: types.optional(
z.record(types.nullable(UploadProjectAvatarTargets$inboundSchema)),
),
transferCompletedAt: types.optional(types.number()),
transferStartedAt: types.optional(types.number()),
transferToAccountId: types.optional(types.string()),
transferredFromAccountId: types.optional(types.string()),
updatedAt: types.optional(types.number()),
live: types.optional(types.boolean()),
enablePreviewFeedback: z.nullable(types.boolean()).optional(),
enableProductionFeedback: z.nullable(types.boolean()).optional(),
permissions: types.optional(UploadProjectAvatarPermissions$inboundSchema),
lastRollbackTarget: z.nullable(
UploadProjectAvatarLastRollbackTarget$inboundSchema,
).optional(),
lastAliasRequest: z.nullable(
UploadProjectAvatarLastAliasRequest$inboundSchema,
).optional(),
protectionBypass: types.optional(
z.record(UploadProjectAvatarProtectionBypass$inboundSchema),
),
hasActiveBranches: types.optional(types.boolean()),
trustedIps: z.nullable(UploadProjectAvatarTrustedIps$inboundSchema)
.optional(),
trustedSources: z.nullable(UploadProjectAvatarTrustedSources$inboundSchema)
.optional(),
gitComments: types.optional(UploadProjectAvatarGitComments$inboundSchema),
gitProviderOptions: types.optional(
UploadProjectAvatarGitProviderOptions$inboundSchema,
),
paused: types.optional(types.boolean()),
concurrencyBucketName: types.optional(types.string()),
webAnalytics: types.optional(UploadProjectAvatarWebAnalytics$inboundSchema),
security: types.optional(
z.lazy(() => UploadProjectAvatarSecurity$inboundSchema),
),
oidcTokenConfig: types.optional(
z.lazy(() => UploadProjectAvatarOidcTokenConfig$inboundSchema),
),
deploymentPolicy: z.nullable(
z.lazy(() => UploadProjectAvatarDeploymentPolicy$inboundSchema),
).optional(),
tier: types.optional(types.string()),
flatRateTier: types.optional(UploadProjectAvatarFlatRateTier$inboundSchema),
usageStatus: types.optional(
z.lazy(() => UploadProjectAvatarUsageStatus$inboundSchema),
),
features: types.optional(
z.lazy(() => UploadProjectAvatarFeatures$inboundSchema),
),
v0: types.optional(types.boolean()),
v0Created: types.optional(types.boolean()),
abuse: types.optional(z.lazy(() => UploadProjectAvatarAbuse$inboundSchema)),
internalRoutes: types.optional(
z.array(smartUnion([
z.lazy(() => UploadProjectAvatarInternalRoutes1$inboundSchema),
z.lazy(() =>
UploadProjectAvatarInternalRoutes2$inboundSchema
),
])),
),
hasDeployments: types.optional(types.boolean()),
dismissedToasts: types.optional(
z.array(z.lazy(() => UploadProjectAvatarDismissedToasts$inboundSchema)),
),
protectedSourcemaps: types.optional(types.boolean()),
tracing: types.optional(
z.lazy(() => UploadProjectAvatarTracing$inboundSchema),
),
avatar: z.nullable(types.string()).optional(),
});
export function uploadProjectAvatarResponseBodyFromJSON(
jsonString: string,
): SafeParseResult<UploadProjectAvatarResponseBody, SDKValidationError> {
return safeParse(
jsonString,
(x) => UploadProjectAvatarResponseBody$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'UploadProjectAvatarResponseBody' from JSON`,
);
}