UNPKG

attio-js

Version:

Developer-friendly & type-safe JS/TS SDK based on the official OpenAPI spec of Attio.

463 lines (418 loc) 14.7 kB
/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod"; 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 { List, List$inboundSchema, List$Outbound, List$outboundSchema, } from "../components/list.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; /** * The level of access granted to all members of the workspace for this list. Pass `null` to keep the list private and only grant access to specific workspace members. */ export const PatchV2ListsListWorkspaceAccess = { FullAccess: "full-access", ReadAndWrite: "read-and-write", ReadOnly: "read-only", } as const; /** * The level of access granted to all members of the workspace for this list. Pass `null` to keep the list private and only grant access to specific workspace members. */ export type PatchV2ListsListWorkspaceAccess = ClosedEnum< typeof PatchV2ListsListWorkspaceAccess >; /** * The level of access to the list. */ export const PatchV2ListsListLevel = { FullAccess: "full-access", ReadAndWrite: "read-and-write", ReadOnly: "read-only", } as const; /** * The level of access to the list. */ export type PatchV2ListsListLevel = ClosedEnum<typeof PatchV2ListsListLevel>; export type PatchV2ListsListWorkspaceMemberAccess = { /** * A UUID to identify the workspace member to grant access to. */ workspaceMemberId: string; /** * The level of access to the list. */ level: PatchV2ListsListLevel; }; export type PatchV2ListsListData = { /** * The human-readable name of the list. */ name?: string | undefined; /** * A unique, human-readable slug to access the list through API calls. Should be formatted in snake case. */ apiSlug?: string | undefined; /** * The level of access granted to all members of the workspace for this list. Pass `null` to keep the list private and only grant access to specific workspace members. */ workspaceAccess?: PatchV2ListsListWorkspaceAccess | null | undefined; /** * The level of access granted to specific workspace members for this list. Pass an empty array to grant access to no workspace members. */ workspaceMemberAccess?: | Array<PatchV2ListsListWorkspaceMemberAccess> | undefined; }; export type PatchV2ListsListRequestBody = { data: PatchV2ListsListData; }; export type PatchV2ListsListRequest = { list: string; requestBody: PatchV2ListsListRequestBody; }; /** * Success */ export type PatchV2ListsListResponse = { data: List; }; /** @internal */ export const PatchV2ListsListWorkspaceAccess$inboundSchema: z.ZodNativeEnum< typeof PatchV2ListsListWorkspaceAccess > = z.nativeEnum(PatchV2ListsListWorkspaceAccess); /** @internal */ export const PatchV2ListsListWorkspaceAccess$outboundSchema: z.ZodNativeEnum< typeof PatchV2ListsListWorkspaceAccess > = PatchV2ListsListWorkspaceAccess$inboundSchema; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace PatchV2ListsListWorkspaceAccess$ { /** @deprecated use `PatchV2ListsListWorkspaceAccess$inboundSchema` instead. */ export const inboundSchema = PatchV2ListsListWorkspaceAccess$inboundSchema; /** @deprecated use `PatchV2ListsListWorkspaceAccess$outboundSchema` instead. */ export const outboundSchema = PatchV2ListsListWorkspaceAccess$outboundSchema; } /** @internal */ export const PatchV2ListsListLevel$inboundSchema: z.ZodNativeEnum< typeof PatchV2ListsListLevel > = z.nativeEnum(PatchV2ListsListLevel); /** @internal */ export const PatchV2ListsListLevel$outboundSchema: z.ZodNativeEnum< typeof PatchV2ListsListLevel > = PatchV2ListsListLevel$inboundSchema; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace PatchV2ListsListLevel$ { /** @deprecated use `PatchV2ListsListLevel$inboundSchema` instead. */ export const inboundSchema = PatchV2ListsListLevel$inboundSchema; /** @deprecated use `PatchV2ListsListLevel$outboundSchema` instead. */ export const outboundSchema = PatchV2ListsListLevel$outboundSchema; } /** @internal */ export const PatchV2ListsListWorkspaceMemberAccess$inboundSchema: z.ZodType< PatchV2ListsListWorkspaceMemberAccess, z.ZodTypeDef, unknown > = z.object({ workspace_member_id: z.string(), level: PatchV2ListsListLevel$inboundSchema, }).transform((v) => { return remap$(v, { "workspace_member_id": "workspaceMemberId", }); }); /** @internal */ export type PatchV2ListsListWorkspaceMemberAccess$Outbound = { workspace_member_id: string; level: string; }; /** @internal */ export const PatchV2ListsListWorkspaceMemberAccess$outboundSchema: z.ZodType< PatchV2ListsListWorkspaceMemberAccess$Outbound, z.ZodTypeDef, PatchV2ListsListWorkspaceMemberAccess > = z.object({ workspaceMemberId: z.string(), level: PatchV2ListsListLevel$outboundSchema, }).transform((v) => { return remap$(v, { workspaceMemberId: "workspace_member_id", }); }); /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace PatchV2ListsListWorkspaceMemberAccess$ { /** @deprecated use `PatchV2ListsListWorkspaceMemberAccess$inboundSchema` instead. */ export const inboundSchema = PatchV2ListsListWorkspaceMemberAccess$inboundSchema; /** @deprecated use `PatchV2ListsListWorkspaceMemberAccess$outboundSchema` instead. */ export const outboundSchema = PatchV2ListsListWorkspaceMemberAccess$outboundSchema; /** @deprecated use `PatchV2ListsListWorkspaceMemberAccess$Outbound` instead. */ export type Outbound = PatchV2ListsListWorkspaceMemberAccess$Outbound; } export function patchV2ListsListWorkspaceMemberAccessToJSON( patchV2ListsListWorkspaceMemberAccess: PatchV2ListsListWorkspaceMemberAccess, ): string { return JSON.stringify( PatchV2ListsListWorkspaceMemberAccess$outboundSchema.parse( patchV2ListsListWorkspaceMemberAccess, ), ); } export function patchV2ListsListWorkspaceMemberAccessFromJSON( jsonString: string, ): SafeParseResult<PatchV2ListsListWorkspaceMemberAccess, SDKValidationError> { return safeParse( jsonString, (x) => PatchV2ListsListWorkspaceMemberAccess$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'PatchV2ListsListWorkspaceMemberAccess' from JSON`, ); } /** @internal */ export const PatchV2ListsListData$inboundSchema: z.ZodType< PatchV2ListsListData, z.ZodTypeDef, unknown > = z.object({ name: z.string().optional(), api_slug: z.string().optional(), workspace_access: z.nullable(PatchV2ListsListWorkspaceAccess$inboundSchema) .optional(), workspace_member_access: z.array( z.lazy(() => PatchV2ListsListWorkspaceMemberAccess$inboundSchema), ).optional(), }).transform((v) => { return remap$(v, { "api_slug": "apiSlug", "workspace_access": "workspaceAccess", "workspace_member_access": "workspaceMemberAccess", }); }); /** @internal */ export type PatchV2ListsListData$Outbound = { name?: string | undefined; api_slug?: string | undefined; workspace_access?: string | null | undefined; workspace_member_access?: | Array<PatchV2ListsListWorkspaceMemberAccess$Outbound> | undefined; }; /** @internal */ export const PatchV2ListsListData$outboundSchema: z.ZodType< PatchV2ListsListData$Outbound, z.ZodTypeDef, PatchV2ListsListData > = z.object({ name: z.string().optional(), apiSlug: z.string().optional(), workspaceAccess: z.nullable(PatchV2ListsListWorkspaceAccess$outboundSchema) .optional(), workspaceMemberAccess: z.array( z.lazy(() => PatchV2ListsListWorkspaceMemberAccess$outboundSchema), ).optional(), }).transform((v) => { return remap$(v, { apiSlug: "api_slug", workspaceAccess: "workspace_access", workspaceMemberAccess: "workspace_member_access", }); }); /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace PatchV2ListsListData$ { /** @deprecated use `PatchV2ListsListData$inboundSchema` instead. */ export const inboundSchema = PatchV2ListsListData$inboundSchema; /** @deprecated use `PatchV2ListsListData$outboundSchema` instead. */ export const outboundSchema = PatchV2ListsListData$outboundSchema; /** @deprecated use `PatchV2ListsListData$Outbound` instead. */ export type Outbound = PatchV2ListsListData$Outbound; } export function patchV2ListsListDataToJSON( patchV2ListsListData: PatchV2ListsListData, ): string { return JSON.stringify( PatchV2ListsListData$outboundSchema.parse(patchV2ListsListData), ); } export function patchV2ListsListDataFromJSON( jsonString: string, ): SafeParseResult<PatchV2ListsListData, SDKValidationError> { return safeParse( jsonString, (x) => PatchV2ListsListData$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'PatchV2ListsListData' from JSON`, ); } /** @internal */ export const PatchV2ListsListRequestBody$inboundSchema: z.ZodType< PatchV2ListsListRequestBody, z.ZodTypeDef, unknown > = z.object({ data: z.lazy(() => PatchV2ListsListData$inboundSchema), }); /** @internal */ export type PatchV2ListsListRequestBody$Outbound = { data: PatchV2ListsListData$Outbound; }; /** @internal */ export const PatchV2ListsListRequestBody$outboundSchema: z.ZodType< PatchV2ListsListRequestBody$Outbound, z.ZodTypeDef, PatchV2ListsListRequestBody > = z.object({ data: z.lazy(() => PatchV2ListsListData$outboundSchema), }); /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace PatchV2ListsListRequestBody$ { /** @deprecated use `PatchV2ListsListRequestBody$inboundSchema` instead. */ export const inboundSchema = PatchV2ListsListRequestBody$inboundSchema; /** @deprecated use `PatchV2ListsListRequestBody$outboundSchema` instead. */ export const outboundSchema = PatchV2ListsListRequestBody$outboundSchema; /** @deprecated use `PatchV2ListsListRequestBody$Outbound` instead. */ export type Outbound = PatchV2ListsListRequestBody$Outbound; } export function patchV2ListsListRequestBodyToJSON( patchV2ListsListRequestBody: PatchV2ListsListRequestBody, ): string { return JSON.stringify( PatchV2ListsListRequestBody$outboundSchema.parse( patchV2ListsListRequestBody, ), ); } export function patchV2ListsListRequestBodyFromJSON( jsonString: string, ): SafeParseResult<PatchV2ListsListRequestBody, SDKValidationError> { return safeParse( jsonString, (x) => PatchV2ListsListRequestBody$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'PatchV2ListsListRequestBody' from JSON`, ); } /** @internal */ export const PatchV2ListsListRequest$inboundSchema: z.ZodType< PatchV2ListsListRequest, z.ZodTypeDef, unknown > = z.object({ list: z.string(), RequestBody: z.lazy(() => PatchV2ListsListRequestBody$inboundSchema), }).transform((v) => { return remap$(v, { "RequestBody": "requestBody", }); }); /** @internal */ export type PatchV2ListsListRequest$Outbound = { list: string; RequestBody: PatchV2ListsListRequestBody$Outbound; }; /** @internal */ export const PatchV2ListsListRequest$outboundSchema: z.ZodType< PatchV2ListsListRequest$Outbound, z.ZodTypeDef, PatchV2ListsListRequest > = z.object({ list: z.string(), requestBody: z.lazy(() => PatchV2ListsListRequestBody$outboundSchema), }).transform((v) => { return remap$(v, { requestBody: "RequestBody", }); }); /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace PatchV2ListsListRequest$ { /** @deprecated use `PatchV2ListsListRequest$inboundSchema` instead. */ export const inboundSchema = PatchV2ListsListRequest$inboundSchema; /** @deprecated use `PatchV2ListsListRequest$outboundSchema` instead. */ export const outboundSchema = PatchV2ListsListRequest$outboundSchema; /** @deprecated use `PatchV2ListsListRequest$Outbound` instead. */ export type Outbound = PatchV2ListsListRequest$Outbound; } export function patchV2ListsListRequestToJSON( patchV2ListsListRequest: PatchV2ListsListRequest, ): string { return JSON.stringify( PatchV2ListsListRequest$outboundSchema.parse(patchV2ListsListRequest), ); } export function patchV2ListsListRequestFromJSON( jsonString: string, ): SafeParseResult<PatchV2ListsListRequest, SDKValidationError> { return safeParse( jsonString, (x) => PatchV2ListsListRequest$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'PatchV2ListsListRequest' from JSON`, ); } /** @internal */ export const PatchV2ListsListResponse$inboundSchema: z.ZodType< PatchV2ListsListResponse, z.ZodTypeDef, unknown > = z.object({ data: List$inboundSchema, }); /** @internal */ export type PatchV2ListsListResponse$Outbound = { data: List$Outbound; }; /** @internal */ export const PatchV2ListsListResponse$outboundSchema: z.ZodType< PatchV2ListsListResponse$Outbound, z.ZodTypeDef, PatchV2ListsListResponse > = z.object({ data: List$outboundSchema, }); /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace PatchV2ListsListResponse$ { /** @deprecated use `PatchV2ListsListResponse$inboundSchema` instead. */ export const inboundSchema = PatchV2ListsListResponse$inboundSchema; /** @deprecated use `PatchV2ListsListResponse$outboundSchema` instead. */ export const outboundSchema = PatchV2ListsListResponse$outboundSchema; /** @deprecated use `PatchV2ListsListResponse$Outbound` instead. */ export type Outbound = PatchV2ListsListResponse$Outbound; } export function patchV2ListsListResponseToJSON( patchV2ListsListResponse: PatchV2ListsListResponse, ): string { return JSON.stringify( PatchV2ListsListResponse$outboundSchema.parse(patchV2ListsListResponse), ); } export function patchV2ListsListResponseFromJSON( jsonString: string, ): SafeParseResult<PatchV2ListsListResponse, SDKValidationError> { return safeParse( jsonString, (x) => PatchV2ListsListResponse$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'PatchV2ListsListResponse' from JSON`, ); }