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>

517 lines (471 loc) 15.4 kB
/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v3"; import { remap as remap$ } from "../lib/primitives.js"; import { safeParse } from "../lib/schemas.js"; import { ClosedEnum } from "../types/enums.js"; import { Result as SafeParseResult } from "../types/fp.js"; import * as types from "../types/primitives.js"; import { smartUnion } from "../types/smartUnion.js"; import { SDKValidationError } from "./sdkvalidationerror.js"; export type SubjectTypeOther = { type: string; additionalProperties?: { [k: string]: any } | undefined; }; export const CreateConnectorAuthorizationRequestSubjectConnectRequestType = { JwtBearer: "jwt-bearer", } as const; export type CreateConnectorAuthorizationRequestSubjectConnectRequestType = ClosedEnum< typeof CreateConnectorAuthorizationRequestSubjectConnectRequestType >; export type SubjectTypeJwtBearer = { type: CreateConnectorAuthorizationRequestSubjectConnectRequestType; sub?: string | undefined; iss?: string | undefined; aud?: string | undefined; additionalClaims?: { [k: string]: any } | undefined; additionalProperties?: { [k: string]: any } | undefined; }; export const CreateConnectorAuthorizationRequestSubjectConnectType = { User: "user", } as const; export type CreateConnectorAuthorizationRequestSubjectConnectType = ClosedEnum< typeof CreateConnectorAuthorizationRequestSubjectConnectType >; export type SubjectTypeUser = { type: CreateConnectorAuthorizationRequestSubjectConnectType; id?: string | undefined; issuer?: string | undefined; additionalProperties?: { [k: string]: any } | undefined; }; export const CreateConnectorAuthorizationRequestSubjectType = { App: "app", } as const; export type CreateConnectorAuthorizationRequestSubjectType = ClosedEnum< typeof CreateConnectorAuthorizationRequestSubjectType >; export type SubjectTypeApp = { type: CreateConnectorAuthorizationRequestSubjectType; additionalProperties?: { [k: string]: any } | undefined; }; export type CreateConnectorAuthorizationRequestSubject = | SubjectTypeApp | SubjectTypeUser | SubjectTypeJwtBearer | SubjectTypeOther; export type CreateConnectorAuthorizationRequestAuthorizationDetails = { type?: string | undefined; additionalProperties?: { [k: string]: any } | undefined; }; export type CreateConnectorAuthorizationRequestRequestBody = { subject?: | SubjectTypeApp | SubjectTypeUser | SubjectTypeJwtBearer | SubjectTypeOther | undefined; installationId?: string | undefined; audience?: Array<string> | undefined; scopes?: Array<string> | undefined; resources?: Array<string> | undefined; authorizationDetails?: | Array<CreateConnectorAuthorizationRequestAuthorizationDetails> | undefined; validityBufferMs?: number | undefined; returnUrl?: string | undefined; webhook?: string | undefined; prompt?: string | undefined; deviceCode?: boolean | undefined; expiresInMs?: number | undefined; additionalParams?: { [k: string]: string } | undefined; }; export type CreateConnectorAuthorizationRequestRequest = { connector: string; requestBody?: CreateConnectorAuthorizationRequestRequestBody | undefined; }; export type CreateConnectorAuthorizationRequestConnector = { /** * Client id (e.g. `scl_…`). */ id: string; /** * Client uid (e.g. `salesforce/my-org`). */ uid: string; /** * Client type (e.g. `oauth`, `salesforce`). */ type: string; /** * Resolved service id when known (e.g. `salesforce`), following the `stored.service ?? typeDef.service ?? stored.type` convention. */ service?: string | undefined; /** * Curated display name of the resolved service (e.g. "Salesforce"), present when the service is a known service. Suited for end-user surfaces like "Sign in with {serviceName}". */ serviceName?: string | undefined; /** * The connector's own name: the operator-given client name, falling back to the client type's name for legacy rows without one. */ name: string; }; export type CreateConnectorAuthorizationRequestResponseBody = { url: string; request: string; verifier: string; deviceCode?: string | undefined; expiresAt: number; connector: CreateConnectorAuthorizationRequestConnector; }; /** @internal */ export type SubjectTypeOther$Outbound = { type: string; [additionalProperties: string]: unknown; }; /** @internal */ export const SubjectTypeOther$outboundSchema: z.ZodType< SubjectTypeOther$Outbound, z.ZodTypeDef, SubjectTypeOther > = z.object({ type: z.string(), additionalProperties: z.record(z.any()).optional(), }).transform((v) => { return { ...v.additionalProperties, ...remap$(v, { additionalProperties: null, }), }; }); export function subjectTypeOtherToJSON( subjectTypeOther: SubjectTypeOther, ): string { return JSON.stringify( SubjectTypeOther$outboundSchema.parse(subjectTypeOther), ); } /** @internal */ export const CreateConnectorAuthorizationRequestSubjectConnectRequestType$outboundSchema: z.ZodNativeEnum< typeof CreateConnectorAuthorizationRequestSubjectConnectRequestType > = z.nativeEnum( CreateConnectorAuthorizationRequestSubjectConnectRequestType, ); /** @internal */ export type SubjectTypeJwtBearer$Outbound = { type: string; sub?: string | undefined; iss?: string | undefined; aud?: string | undefined; additionalClaims?: { [k: string]: any } | undefined; [additionalProperties: string]: unknown; }; /** @internal */ export const SubjectTypeJwtBearer$outboundSchema: z.ZodType< SubjectTypeJwtBearer$Outbound, z.ZodTypeDef, SubjectTypeJwtBearer > = z.object({ type: CreateConnectorAuthorizationRequestSubjectConnectRequestType$outboundSchema, sub: z.string().optional(), iss: z.string().optional(), aud: z.string().optional(), additionalClaims: z.record(z.any()).optional(), additionalProperties: z.record(z.any()).optional(), }).transform((v) => { return { ...v.additionalProperties, ...remap$(v, { additionalProperties: null, }), }; }); export function subjectTypeJwtBearerToJSON( subjectTypeJwtBearer: SubjectTypeJwtBearer, ): string { return JSON.stringify( SubjectTypeJwtBearer$outboundSchema.parse(subjectTypeJwtBearer), ); } /** @internal */ export const CreateConnectorAuthorizationRequestSubjectConnectType$outboundSchema: z.ZodNativeEnum< typeof CreateConnectorAuthorizationRequestSubjectConnectType > = z.nativeEnum(CreateConnectorAuthorizationRequestSubjectConnectType); /** @internal */ export type SubjectTypeUser$Outbound = { type: string; id?: string | undefined; issuer?: string | undefined; [additionalProperties: string]: unknown; }; /** @internal */ export const SubjectTypeUser$outboundSchema: z.ZodType< SubjectTypeUser$Outbound, z.ZodTypeDef, SubjectTypeUser > = z.object({ type: CreateConnectorAuthorizationRequestSubjectConnectType$outboundSchema, id: z.string().optional(), issuer: z.string().optional(), additionalProperties: z.record(z.any()).optional(), }).transform((v) => { return { ...v.additionalProperties, ...remap$(v, { additionalProperties: null, }), }; }); export function subjectTypeUserToJSON( subjectTypeUser: SubjectTypeUser, ): string { return JSON.stringify(SubjectTypeUser$outboundSchema.parse(subjectTypeUser)); } /** @internal */ export const CreateConnectorAuthorizationRequestSubjectType$outboundSchema: z.ZodNativeEnum<typeof CreateConnectorAuthorizationRequestSubjectType> = z .nativeEnum(CreateConnectorAuthorizationRequestSubjectType); /** @internal */ export type SubjectTypeApp$Outbound = { type: string; [additionalProperties: string]: unknown; }; /** @internal */ export const SubjectTypeApp$outboundSchema: z.ZodType< SubjectTypeApp$Outbound, z.ZodTypeDef, SubjectTypeApp > = z.object({ type: CreateConnectorAuthorizationRequestSubjectType$outboundSchema, additionalProperties: z.record(z.any()).optional(), }).transform((v) => { return { ...v.additionalProperties, ...remap$(v, { additionalProperties: null, }), }; }); export function subjectTypeAppToJSON(subjectTypeApp: SubjectTypeApp): string { return JSON.stringify(SubjectTypeApp$outboundSchema.parse(subjectTypeApp)); } /** @internal */ export type CreateConnectorAuthorizationRequestSubject$Outbound = | SubjectTypeApp$Outbound | SubjectTypeUser$Outbound | SubjectTypeJwtBearer$Outbound | SubjectTypeOther$Outbound; /** @internal */ export const CreateConnectorAuthorizationRequestSubject$outboundSchema: z.ZodType< CreateConnectorAuthorizationRequestSubject$Outbound, z.ZodTypeDef, CreateConnectorAuthorizationRequestSubject > = smartUnion([ z.lazy(() => SubjectTypeApp$outboundSchema), z.lazy(() => SubjectTypeUser$outboundSchema), z.lazy(() => SubjectTypeJwtBearer$outboundSchema), z.lazy(() => SubjectTypeOther$outboundSchema), ]); export function createConnectorAuthorizationRequestSubjectToJSON( createConnectorAuthorizationRequestSubject: CreateConnectorAuthorizationRequestSubject, ): string { return JSON.stringify( CreateConnectorAuthorizationRequestSubject$outboundSchema.parse( createConnectorAuthorizationRequestSubject, ), ); } /** @internal */ export type CreateConnectorAuthorizationRequestAuthorizationDetails$Outbound = { type?: string | undefined; [additionalProperties: string]: unknown; }; /** @internal */ export const CreateConnectorAuthorizationRequestAuthorizationDetails$outboundSchema: z.ZodType< CreateConnectorAuthorizationRequestAuthorizationDetails$Outbound, z.ZodTypeDef, CreateConnectorAuthorizationRequestAuthorizationDetails > = z.object({ type: z.string().optional(), additionalProperties: z.record(z.any()).optional(), }).transform((v) => { return { ...v.additionalProperties, ...remap$(v, { additionalProperties: null, }), }; }); export function createConnectorAuthorizationRequestAuthorizationDetailsToJSON( createConnectorAuthorizationRequestAuthorizationDetails: CreateConnectorAuthorizationRequestAuthorizationDetails, ): string { return JSON.stringify( CreateConnectorAuthorizationRequestAuthorizationDetails$outboundSchema .parse(createConnectorAuthorizationRequestAuthorizationDetails), ); } /** @internal */ export type CreateConnectorAuthorizationRequestRequestBody$Outbound = { subject?: | SubjectTypeApp$Outbound | SubjectTypeUser$Outbound | SubjectTypeJwtBearer$Outbound | SubjectTypeOther$Outbound | undefined; installationId?: string | undefined; audience?: Array<string> | undefined; scopes?: Array<string> | undefined; resources?: Array<string> | undefined; authorizationDetails?: | Array<CreateConnectorAuthorizationRequestAuthorizationDetails$Outbound> | undefined; validityBufferMs?: number | undefined; returnUrl?: string | undefined; webhook?: string | undefined; prompt?: string | undefined; deviceCode?: boolean | undefined; expiresInMs?: number | undefined; additionalParams?: { [k: string]: string } | undefined; }; /** @internal */ export const CreateConnectorAuthorizationRequestRequestBody$outboundSchema: z.ZodType< CreateConnectorAuthorizationRequestRequestBody$Outbound, z.ZodTypeDef, CreateConnectorAuthorizationRequestRequestBody > = z.object({ subject: smartUnion([ z.lazy(() => SubjectTypeApp$outboundSchema), z.lazy(() => SubjectTypeUser$outboundSchema), z.lazy(() => SubjectTypeJwtBearer$outboundSchema), z.lazy(() => SubjectTypeOther$outboundSchema), ]).optional(), installationId: z.string().optional(), audience: z.array(z.string()).optional(), scopes: z.array(z.string()).optional(), resources: z.array(z.string()).optional(), authorizationDetails: z.array( z.lazy(() => CreateConnectorAuthorizationRequestAuthorizationDetails$outboundSchema ), ).optional(), validityBufferMs: z.number().optional(), returnUrl: z.string().optional(), webhook: z.string().optional(), prompt: z.string().optional(), deviceCode: z.boolean().optional(), expiresInMs: z.number().optional(), additionalParams: z.record(z.string()).optional(), }); export function createConnectorAuthorizationRequestRequestBodyToJSON( createConnectorAuthorizationRequestRequestBody: CreateConnectorAuthorizationRequestRequestBody, ): string { return JSON.stringify( CreateConnectorAuthorizationRequestRequestBody$outboundSchema.parse( createConnectorAuthorizationRequestRequestBody, ), ); } /** @internal */ export type CreateConnectorAuthorizationRequestRequest$Outbound = { connector: string; RequestBody?: | CreateConnectorAuthorizationRequestRequestBody$Outbound | undefined; }; /** @internal */ export const CreateConnectorAuthorizationRequestRequest$outboundSchema: z.ZodType< CreateConnectorAuthorizationRequestRequest$Outbound, z.ZodTypeDef, CreateConnectorAuthorizationRequestRequest > = z.object({ connector: z.string(), requestBody: z.lazy(() => CreateConnectorAuthorizationRequestRequestBody$outboundSchema ).optional(), }).transform((v) => { return remap$(v, { requestBody: "RequestBody", }); }); export function createConnectorAuthorizationRequestRequestToJSON( createConnectorAuthorizationRequestRequest: CreateConnectorAuthorizationRequestRequest, ): string { return JSON.stringify( CreateConnectorAuthorizationRequestRequest$outboundSchema.parse( createConnectorAuthorizationRequestRequest, ), ); } /** @internal */ export const CreateConnectorAuthorizationRequestConnector$inboundSchema: z.ZodType< CreateConnectorAuthorizationRequestConnector, z.ZodTypeDef, unknown > = z.object({ id: types.string(), uid: types.string(), type: types.string(), service: types.optional(types.string()), serviceName: types.optional(types.string()), name: types.string(), }); export function createConnectorAuthorizationRequestConnectorFromJSON( jsonString: string, ): SafeParseResult< CreateConnectorAuthorizationRequestConnector, SDKValidationError > { return safeParse( jsonString, (x) => CreateConnectorAuthorizationRequestConnector$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'CreateConnectorAuthorizationRequestConnector' from JSON`, ); } /** @internal */ export const CreateConnectorAuthorizationRequestResponseBody$inboundSchema: z.ZodType< CreateConnectorAuthorizationRequestResponseBody, z.ZodTypeDef, unknown > = z.object({ url: types.string(), request: types.string(), verifier: types.string(), deviceCode: types.optional(types.string()), expiresAt: types.number(), connector: z.lazy(() => CreateConnectorAuthorizationRequestConnector$inboundSchema ), }); export function createConnectorAuthorizationRequestResponseBodyFromJSON( jsonString: string, ): SafeParseResult< CreateConnectorAuthorizationRequestResponseBody, SDKValidationError > { return safeParse( jsonString, (x) => CreateConnectorAuthorizationRequestResponseBody$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'CreateConnectorAuthorizationRequestResponseBody' from JSON`, ); }