UNPKG

assistan-ts

Version:

A typesafe and code-first library to define and run OpenAI assistants

26 lines 1.37 kB
import { AssistantDefinition, FunctionTool } from "./definition"; import { Assistant, AssistantCreateParams, OpenAI } from "./types/openai"; export interface LinkedDefinition<T extends Record<string, FunctionTool>> extends AssistantDefinition<T> { openai: OpenAI; id: string; remote: Assistant; } export type LinkOptions = { /** pass a OpenAI id to retrieve by id instead of `metadata-->__key__` search */ assistantId?: string; /** Will create assistant if not found. Default: `true` */ allowCreate?: boolean; /** Run after creating assistant */ afterCreate?: (assistant: Assistant) => void; /** What to do if drift is detected. Default: `update` */ updateMode?: "update" | "throw" | "skip"; /** Runs before updating an assistant. Return false to skip update */ beforeUpdate?: (diff: string[], local: AssistantCreateParams, remote: Assistant) => boolean; /** Runs after updating an assistant */ afterUpdate?: (assistant: Assistant) => void; fileMode?: "update" | "throw" | "skip"; /** Deletes files that are no longer linked to the assistant after syncing */ pruneFiles?: boolean; }; export declare const link: <T extends Record<string, FunctionTool>>(definition: AssistantDefinition<T>) => (openai: OpenAI, options: LinkOptions) => Promise<LinkedDefinition<T>>; //# sourceMappingURL=link.d.ts.map