attio-js
Version:
Developer-friendly & type-safe JS/TS SDK based on the official OpenAPI spec of Attio.
123 lines • 4.82 kB
JavaScript
/*
* 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";
/**
* Whether the workspace member is suspended or not and what level of privileges they have inside the workspace. We do not delete workspace members so that you can successfully attribute past actions to suspended workspace members.
*/
export const AccessLevel = {
Admin: "admin",
Member: "member",
Suspended: "suspended",
};
/** @internal */
export const WorkspaceMemberId$inboundSchema = z.object({
workspace_id: z.string(),
workspace_member_id: z.string(),
}).transform((v) => {
return remap$(v, {
"workspace_id": "workspaceId",
"workspace_member_id": "workspaceMemberId",
});
});
/** @internal */
export const WorkspaceMemberId$outboundSchema = z.object({
workspaceId: z.string(),
workspaceMemberId: z.string(),
}).transform((v) => {
return remap$(v, {
workspaceId: "workspace_id",
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 var WorkspaceMemberId$;
(function (WorkspaceMemberId$) {
/** @deprecated use `WorkspaceMemberId$inboundSchema` instead. */
WorkspaceMemberId$.inboundSchema = WorkspaceMemberId$inboundSchema;
/** @deprecated use `WorkspaceMemberId$outboundSchema` instead. */
WorkspaceMemberId$.outboundSchema = WorkspaceMemberId$outboundSchema;
})(WorkspaceMemberId$ || (WorkspaceMemberId$ = {}));
export function workspaceMemberIdToJSON(workspaceMemberId) {
return JSON.stringify(WorkspaceMemberId$outboundSchema.parse(workspaceMemberId));
}
export function workspaceMemberIdFromJSON(jsonString) {
return safeParse(jsonString, (x) => WorkspaceMemberId$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'WorkspaceMemberId' from JSON`);
}
/** @internal */
export const AccessLevel$inboundSchema = z
.nativeEnum(AccessLevel);
/** @internal */
export const AccessLevel$outboundSchema = AccessLevel$inboundSchema;
/**
* @internal
* @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
*/
export var AccessLevel$;
(function (AccessLevel$) {
/** @deprecated use `AccessLevel$inboundSchema` instead. */
AccessLevel$.inboundSchema = AccessLevel$inboundSchema;
/** @deprecated use `AccessLevel$outboundSchema` instead. */
AccessLevel$.outboundSchema = AccessLevel$outboundSchema;
})(AccessLevel$ || (AccessLevel$ = {}));
/** @internal */
export const WorkspaceMember$inboundSchema = z.object({
id: z.lazy(() => WorkspaceMemberId$inboundSchema),
first_name: z.string(),
last_name: z.string(),
avatar_url: z.nullable(z.string()),
email_address: z.string(),
created_at: z.string(),
access_level: AccessLevel$inboundSchema,
}).transform((v) => {
return remap$(v, {
"first_name": "firstName",
"last_name": "lastName",
"avatar_url": "avatarUrl",
"email_address": "emailAddress",
"created_at": "createdAt",
"access_level": "accessLevel",
});
});
/** @internal */
export const WorkspaceMember$outboundSchema = z.object({
id: z.lazy(() => WorkspaceMemberId$outboundSchema),
firstName: z.string(),
lastName: z.string(),
avatarUrl: z.nullable(z.string()),
emailAddress: z.string(),
createdAt: z.string(),
accessLevel: AccessLevel$outboundSchema,
}).transform((v) => {
return remap$(v, {
firstName: "first_name",
lastName: "last_name",
avatarUrl: "avatar_url",
emailAddress: "email_address",
createdAt: "created_at",
accessLevel: "access_level",
});
});
/**
* @internal
* @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
*/
export var WorkspaceMember$;
(function (WorkspaceMember$) {
/** @deprecated use `WorkspaceMember$inboundSchema` instead. */
WorkspaceMember$.inboundSchema = WorkspaceMember$inboundSchema;
/** @deprecated use `WorkspaceMember$outboundSchema` instead. */
WorkspaceMember$.outboundSchema = WorkspaceMember$outboundSchema;
})(WorkspaceMember$ || (WorkspaceMember$ = {}));
export function workspaceMemberToJSON(workspaceMember) {
return JSON.stringify(WorkspaceMember$outboundSchema.parse(workspaceMember));
}
export function workspaceMemberFromJSON(jsonString) {
return safeParse(jsonString, (x) => WorkspaceMember$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'WorkspaceMember' from JSON`);
}
//# sourceMappingURL=workspacemember.js.map