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>

216 lines (195 loc) 6.5 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 { SDKValidationError } from "./sdkvalidationerror.js"; export const CreateKmsIssuerPolicyKind = { ProjectGrant: "project-grant", } as const; export type CreateKmsIssuerPolicyKind = ClosedEnum< typeof CreateKmsIssuerPolicyKind >; export type CreateKmsIssuerPolicyRequestBody = { kind: CreateKmsIssuerPolicyKind; /** * The project ID for the project grant policy. */ projectId: string; /** * The environments for the project grant policy. Each entry is a system environment (production, preview, development) or a custom environment ID (env_...). */ environments: Array<string>; /** * The claims that KMS should include in signed JWTs for this policy. */ tokenClaims?: { [k: string]: any } | undefined; }; export type CreateKmsIssuerPolicyRequest = { /** * The ID of the issuer. */ issuerId: string; /** * The Team identifier to perform the request on behalf of. */ teamId?: string | undefined; /** * The Team slug to perform the request on behalf of. */ slug?: string | undefined; requestBody?: CreateKmsIssuerPolicyRequestBody | undefined; }; export type CreateKmsIssuerPolicyResponseBody2 = { kind: "connex-grant"; clientId: string; tokenClaims?: { [k: string]: any } | undefined; createdAt: string; updatedAt: string; }; export type CreateKmsIssuerPolicyResponseBody1 = { kind: "project-grant"; teamId: string; projectId: string; /** * Environments whose OIDC tokens this grant authorizes. Each entry is either a system environment slug (`production`, `preview`, `development`) or a custom environment ID (prefixed `env_`). Custom environments are matched against the token's `custom_environment_id` claim (the stable ID); system environments against its `environment` claim. */ environments: Array<string>; tokenClaims?: { [k: string]: any } | undefined; createdAt: string; updatedAt: string; }; export type CreateKmsIssuerPolicyResponseBody = | CreateKmsIssuerPolicyResponseBody1 | CreateKmsIssuerPolicyResponseBody2; /** @internal */ export const CreateKmsIssuerPolicyKind$outboundSchema: z.ZodNativeEnum< typeof CreateKmsIssuerPolicyKind > = z.nativeEnum(CreateKmsIssuerPolicyKind); /** @internal */ export type CreateKmsIssuerPolicyRequestBody$Outbound = { kind: string; projectId: string; environments: Array<string>; tokenClaims?: { [k: string]: any } | undefined; }; /** @internal */ export const CreateKmsIssuerPolicyRequestBody$outboundSchema: z.ZodType< CreateKmsIssuerPolicyRequestBody$Outbound, z.ZodTypeDef, CreateKmsIssuerPolicyRequestBody > = z.object({ kind: CreateKmsIssuerPolicyKind$outboundSchema, projectId: z.string(), environments: z.array(z.string()), tokenClaims: z.record(z.any()).optional(), }); export function createKmsIssuerPolicyRequestBodyToJSON( createKmsIssuerPolicyRequestBody: CreateKmsIssuerPolicyRequestBody, ): string { return JSON.stringify( CreateKmsIssuerPolicyRequestBody$outboundSchema.parse( createKmsIssuerPolicyRequestBody, ), ); } /** @internal */ export type CreateKmsIssuerPolicyRequest$Outbound = { issuerId: string; teamId?: string | undefined; slug?: string | undefined; RequestBody?: CreateKmsIssuerPolicyRequestBody$Outbound | undefined; }; /** @internal */ export const CreateKmsIssuerPolicyRequest$outboundSchema: z.ZodType< CreateKmsIssuerPolicyRequest$Outbound, z.ZodTypeDef, CreateKmsIssuerPolicyRequest > = z.object({ issuerId: z.string(), teamId: z.string().optional(), slug: z.string().optional(), requestBody: z.lazy(() => CreateKmsIssuerPolicyRequestBody$outboundSchema) .optional(), }).transform((v) => { return remap$(v, { requestBody: "RequestBody", }); }); export function createKmsIssuerPolicyRequestToJSON( createKmsIssuerPolicyRequest: CreateKmsIssuerPolicyRequest, ): string { return JSON.stringify( CreateKmsIssuerPolicyRequest$outboundSchema.parse( createKmsIssuerPolicyRequest, ), ); } /** @internal */ export const CreateKmsIssuerPolicyResponseBody2$inboundSchema: z.ZodType< CreateKmsIssuerPolicyResponseBody2, z.ZodTypeDef, unknown > = z.object({ kind: types.literal("connex-grant"), clientId: types.string(), tokenClaims: types.optional(z.record(z.any())), createdAt: types.string(), updatedAt: types.string(), }); export function createKmsIssuerPolicyResponseBody2FromJSON( jsonString: string, ): SafeParseResult<CreateKmsIssuerPolicyResponseBody2, SDKValidationError> { return safeParse( jsonString, (x) => CreateKmsIssuerPolicyResponseBody2$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateKmsIssuerPolicyResponseBody2' from JSON`, ); } /** @internal */ export const CreateKmsIssuerPolicyResponseBody1$inboundSchema: z.ZodType< CreateKmsIssuerPolicyResponseBody1, z.ZodTypeDef, unknown > = z.object({ kind: types.literal("project-grant"), teamId: types.string(), projectId: types.string(), environments: z.array(types.string()), tokenClaims: types.optional(z.record(z.any())), createdAt: types.string(), updatedAt: types.string(), }); export function createKmsIssuerPolicyResponseBody1FromJSON( jsonString: string, ): SafeParseResult<CreateKmsIssuerPolicyResponseBody1, SDKValidationError> { return safeParse( jsonString, (x) => CreateKmsIssuerPolicyResponseBody1$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateKmsIssuerPolicyResponseBody1' from JSON`, ); } /** @internal */ export const CreateKmsIssuerPolicyResponseBody$inboundSchema: z.ZodType< CreateKmsIssuerPolicyResponseBody, z.ZodTypeDef, unknown > = z.union([ z.lazy(() => CreateKmsIssuerPolicyResponseBody1$inboundSchema), z.lazy(() => CreateKmsIssuerPolicyResponseBody2$inboundSchema), ]); export function createKmsIssuerPolicyResponseBodyFromJSON( jsonString: string, ): SafeParseResult<CreateKmsIssuerPolicyResponseBody, SDKValidationError> { return safeParse( jsonString, (x) => CreateKmsIssuerPolicyResponseBody$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateKmsIssuerPolicyResponseBody' from JSON`, ); }