fathom-typescript
Version:
Fathom's official TypeScript SDK.
56 lines (51 loc) • 1.5 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 { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { Assignee, Assignee$inboundSchema } from "./assignee.js";
export type ActionItem = {
/**
* Always displayed in English.
*/
description: string;
userGenerated: boolean;
completed: boolean;
/**
* Timestamp relative to the start of the recording (HH:MM:SS).
*/
recordingTimestamp: string;
recordingPlaybackUrl: string;
assignee: Assignee;
};
/** @internal */
export const ActionItem$inboundSchema: z.ZodType<
ActionItem,
z.ZodTypeDef,
unknown
> = z.object({
description: z.string(),
user_generated: z.boolean(),
completed: z.boolean(),
recording_timestamp: z.string(),
recording_playback_url: z.string(),
assignee: Assignee$inboundSchema,
}).transform((v) => {
return remap$(v, {
"user_generated": "userGenerated",
"recording_timestamp": "recordingTimestamp",
"recording_playback_url": "recordingPlaybackUrl",
});
});
export function actionItemFromJSON(
jsonString: string,
): SafeParseResult<ActionItem, SDKValidationError> {
return safeParse(
jsonString,
(x) => ActionItem$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'ActionItem' from JSON`,
);
}