@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>
385 lines (350 loc) • 10.3 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";
export type AddBypassIpRequestBody2 = {
domain?: string | undefined;
/**
* If the specified bypass will apply to all domains for a project.
*/
projectScope: boolean;
sourceIp?: string | undefined;
allSources?: boolean | undefined;
/**
* Time to live in milliseconds
*/
ttl?: number | undefined;
note?: string | undefined;
};
export type AddBypassIpRequestBody1 = {
domain: string;
/**
* If the specified bypass will apply to all domains for a project.
*/
projectScope?: boolean | undefined;
sourceIp?: string | undefined;
allSources?: boolean | undefined;
/**
* Time to live in milliseconds
*/
ttl?: number | undefined;
note?: string | undefined;
};
export type AddBypassIpRequestBody =
| AddBypassIpRequestBody1
| AddBypassIpRequestBody2;
export type AddBypassIpRequest = {
projectId: 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?: AddBypassIpRequestBody1 | AddBypassIpRequestBody2 | undefined;
};
export const ResponseBodyAction = {
Block: "block",
Bypass: "bypass",
} as const;
export type ResponseBodyAction = ClosedEnum<typeof ResponseBodyAction>;
export type AddBypassIpResponseBodyResult = {
ownerId: string;
id: string;
domain: string;
ip: string;
action?: ResponseBodyAction | undefined;
projectId?: string | undefined;
isProjectRule?: boolean | undefined;
note?: string | undefined;
createdAt: string;
actorId?: string | undefined;
updatedAt: string;
updatedAtHour: string;
deletedAt?: string | undefined;
expiresAt?: number | null | undefined;
};
export type AddBypassIpResponseBody2 = {
ok: boolean;
result?: Array<AddBypassIpResponseBodyResult> | undefined;
};
export type ResponseBodyResult = {
ownerId: string;
id: string;
domain: string;
ip?: string | undefined;
projectId: string;
note: string;
isProjectRule: boolean;
};
export type AddBypassIpResponseBody1 = {
ok: boolean;
result: Array<ResponseBodyResult>;
pagination?: any | null | undefined;
};
export type AddBypassIpResponseBody =
| AddBypassIpResponseBody1
| AddBypassIpResponseBody2;
/** @internal */
export type AddBypassIpRequestBody2$Outbound = {
domain?: string | undefined;
projectScope: boolean;
sourceIp?: string | undefined;
allSources?: boolean | undefined;
ttl?: number | undefined;
note?: string | undefined;
};
/** @internal */
export const AddBypassIpRequestBody2$outboundSchema: z.ZodType<
AddBypassIpRequestBody2$Outbound,
z.ZodTypeDef,
AddBypassIpRequestBody2
> = z.object({
domain: z.string().optional(),
projectScope: z.boolean(),
sourceIp: z.string().optional(),
allSources: z.boolean().optional(),
ttl: z.number().optional(),
note: z.string().optional(),
});
export function addBypassIpRequestBody2ToJSON(
addBypassIpRequestBody2: AddBypassIpRequestBody2,
): string {
return JSON.stringify(
AddBypassIpRequestBody2$outboundSchema.parse(addBypassIpRequestBody2),
);
}
/** @internal */
export type AddBypassIpRequestBody1$Outbound = {
domain: string;
projectScope?: boolean | undefined;
sourceIp?: string | undefined;
allSources?: boolean | undefined;
ttl?: number | undefined;
note?: string | undefined;
};
/** @internal */
export const AddBypassIpRequestBody1$outboundSchema: z.ZodType<
AddBypassIpRequestBody1$Outbound,
z.ZodTypeDef,
AddBypassIpRequestBody1
> = z.object({
domain: z.string(),
projectScope: z.boolean().optional(),
sourceIp: z.string().optional(),
allSources: z.boolean().optional(),
ttl: z.number().optional(),
note: z.string().optional(),
});
export function addBypassIpRequestBody1ToJSON(
addBypassIpRequestBody1: AddBypassIpRequestBody1,
): string {
return JSON.stringify(
AddBypassIpRequestBody1$outboundSchema.parse(addBypassIpRequestBody1),
);
}
/** @internal */
export type AddBypassIpRequestBody$Outbound =
| AddBypassIpRequestBody1$Outbound
| AddBypassIpRequestBody2$Outbound;
/** @internal */
export const AddBypassIpRequestBody$outboundSchema: z.ZodType<
AddBypassIpRequestBody$Outbound,
z.ZodTypeDef,
AddBypassIpRequestBody
> = smartUnion([
z.lazy(() => AddBypassIpRequestBody1$outboundSchema),
z.lazy(() => AddBypassIpRequestBody2$outboundSchema),
]);
export function addBypassIpRequestBodyToJSON(
addBypassIpRequestBody: AddBypassIpRequestBody,
): string {
return JSON.stringify(
AddBypassIpRequestBody$outboundSchema.parse(addBypassIpRequestBody),
);
}
/** @internal */
export type AddBypassIpRequest$Outbound = {
projectId: string;
teamId?: string | undefined;
slug?: string | undefined;
RequestBody?:
| AddBypassIpRequestBody1$Outbound
| AddBypassIpRequestBody2$Outbound
| undefined;
};
/** @internal */
export const AddBypassIpRequest$outboundSchema: z.ZodType<
AddBypassIpRequest$Outbound,
z.ZodTypeDef,
AddBypassIpRequest
> = z.object({
projectId: z.string(),
teamId: z.string().optional(),
slug: z.string().optional(),
requestBody: smartUnion([
z.lazy(() => AddBypassIpRequestBody1$outboundSchema),
z.lazy(() => AddBypassIpRequestBody2$outboundSchema),
]).optional(),
}).transform((v) => {
return remap$(v, {
requestBody: "RequestBody",
});
});
export function addBypassIpRequestToJSON(
addBypassIpRequest: AddBypassIpRequest,
): string {
return JSON.stringify(
AddBypassIpRequest$outboundSchema.parse(addBypassIpRequest),
);
}
/** @internal */
export const ResponseBodyAction$inboundSchema: z.ZodNativeEnum<
typeof ResponseBodyAction
> = z.nativeEnum(ResponseBodyAction);
/** @internal */
export const AddBypassIpResponseBodyResult$inboundSchema: z.ZodType<
AddBypassIpResponseBodyResult,
z.ZodTypeDef,
unknown
> = z.object({
OwnerId: types.string(),
Id: types.string(),
Domain: types.string(),
Ip: types.string(),
Action: types.optional(ResponseBodyAction$inboundSchema),
ProjectId: types.optional(types.string()),
IsProjectRule: types.optional(types.boolean()),
Note: types.optional(types.string()),
CreatedAt: types.string(),
ActorId: types.optional(types.string()),
UpdatedAt: types.string(),
UpdatedAtHour: types.string(),
DeletedAt: types.optional(types.string()),
ExpiresAt: z.nullable(types.number()).optional(),
}).transform((v) => {
return remap$(v, {
"OwnerId": "ownerId",
"Id": "id",
"Domain": "domain",
"Ip": "ip",
"Action": "action",
"ProjectId": "projectId",
"IsProjectRule": "isProjectRule",
"Note": "note",
"CreatedAt": "createdAt",
"ActorId": "actorId",
"UpdatedAt": "updatedAt",
"UpdatedAtHour": "updatedAtHour",
"DeletedAt": "deletedAt",
"ExpiresAt": "expiresAt",
});
});
export function addBypassIpResponseBodyResultFromJSON(
jsonString: string,
): SafeParseResult<AddBypassIpResponseBodyResult, SDKValidationError> {
return safeParse(
jsonString,
(x) => AddBypassIpResponseBodyResult$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'AddBypassIpResponseBodyResult' from JSON`,
);
}
/** @internal */
export const AddBypassIpResponseBody2$inboundSchema: z.ZodType<
AddBypassIpResponseBody2,
z.ZodTypeDef,
unknown
> = z.object({
ok: types.boolean(),
result: types.optional(
z.array(z.lazy(() => AddBypassIpResponseBodyResult$inboundSchema)),
),
});
export function addBypassIpResponseBody2FromJSON(
jsonString: string,
): SafeParseResult<AddBypassIpResponseBody2, SDKValidationError> {
return safeParse(
jsonString,
(x) => AddBypassIpResponseBody2$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'AddBypassIpResponseBody2' from JSON`,
);
}
/** @internal */
export const ResponseBodyResult$inboundSchema: z.ZodType<
ResponseBodyResult,
z.ZodTypeDef,
unknown
> = z.object({
OwnerId: types.string(),
Id: types.string(),
Domain: types.string(),
Ip: types.optional(types.string()),
ProjectId: types.string(),
Note: types.string(),
IsProjectRule: types.boolean(),
}).transform((v) => {
return remap$(v, {
"OwnerId": "ownerId",
"Id": "id",
"Domain": "domain",
"Ip": "ip",
"ProjectId": "projectId",
"Note": "note",
"IsProjectRule": "isProjectRule",
});
});
export function responseBodyResultFromJSON(
jsonString: string,
): SafeParseResult<ResponseBodyResult, SDKValidationError> {
return safeParse(
jsonString,
(x) => ResponseBodyResult$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'ResponseBodyResult' from JSON`,
);
}
/** @internal */
export const AddBypassIpResponseBody1$inboundSchema: z.ZodType<
AddBypassIpResponseBody1,
z.ZodTypeDef,
unknown
> = z.object({
ok: types.boolean(),
result: z.array(z.lazy(() => ResponseBodyResult$inboundSchema)),
pagination: z.nullable(z.any()).optional(),
});
export function addBypassIpResponseBody1FromJSON(
jsonString: string,
): SafeParseResult<AddBypassIpResponseBody1, SDKValidationError> {
return safeParse(
jsonString,
(x) => AddBypassIpResponseBody1$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'AddBypassIpResponseBody1' from JSON`,
);
}
/** @internal */
export const AddBypassIpResponseBody$inboundSchema: z.ZodType<
AddBypassIpResponseBody,
z.ZodTypeDef,
unknown
> = smartUnion([
z.lazy(() => AddBypassIpResponseBody1$inboundSchema),
z.lazy(() => AddBypassIpResponseBody2$inboundSchema),
]);
export function addBypassIpResponseBodyFromJSON(
jsonString: string,
): SafeParseResult<AddBypassIpResponseBody, SDKValidationError> {
return safeParse(
jsonString,
(x) => AddBypassIpResponseBody$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'AddBypassIpResponseBody' from JSON`,
);
}