UNPKG

eve

Version:

Filesystem-first framework for durable backend AI agents that run anywhere.

46 lines (45 loc) 2.71 kB
import type { JsonObject } from "#shared/json.js"; import type { DurableDynamicToolCallbacks } from "#tools/durable-callbacks.js"; interface DynamicToolMetadataBase { readonly name: string; readonly description: string; readonly execution?: "background"; readonly inputSchema: JsonObject; readonly outputSchema?: JsonObject; readonly resolverSlug: string; readonly entryKey: string; } /** Callback identity is supplied by the surrounding session, scope, and resolver metadata. */ export interface CurrentDynamicToolMetadata extends DynamicToolMetadataBase { readonly callbacks: DurableDynamicToolCallbacks; } /** Old schema written before callback descriptors existed. */ export interface OldStepFunctionDynamicToolMetadata extends DynamicToolMetadataBase { readonly callbacks?: never; readonly executeStepFnName?: string; readonly approvalStepFnName?: string; readonly approvalResponseStepFnName?: string; readonly closureVars?: Record<string, unknown>; } interface OldSourceOffsetDynamicCallbackReference { readonly closure: JsonObject; readonly stepId: string; } /** Old schema whose callback identity was a generated source offset. */ export interface OldSourceOffsetDynamicToolMetadata extends DynamicToolMetadataBase { readonly callbacks: { readonly execute: OldSourceOffsetDynamicCallbackReference; readonly approvalRequest?: OldSourceOffsetDynamicCallbackReference; readonly approvalResponse?: OldSourceOffsetDynamicCallbackReference; readonly toModelOutput?: OldSourceOffsetDynamicCallbackReference; }; } export type OldDynamicToolMetadata = OldStepFunctionDynamicToolMetadata | OldSourceOffsetDynamicToolMetadata; export type PersistedDynamicToolMetadata = CurrentDynamicToolMetadata | OldDynamicToolMetadata; export declare function isOldSourceOffsetDynamicToolMetadata(metadata: PersistedDynamicToolMetadata): metadata is OldSourceOffsetDynamicToolMetadata; export declare function isCurrentDynamicToolMetadata(metadata: PersistedDynamicToolMetadata): metadata is CurrentDynamicToolMetadata; export declare function isOldStepFunctionDynamicToolMetadata(metadata: PersistedDynamicToolMetadata): metadata is OldStepFunctionDynamicToolMetadata; /** Converts persisted metadata without changing already-persisted callback closures. */ export declare function toCurrentDynamicToolMetadata(persisted: PersistedDynamicToolMetadata, resolved?: CurrentDynamicToolMetadata): CurrentDynamicToolMetadata; export declare function toCurrentDynamicToolMetadataList(persisted: readonly PersistedDynamicToolMetadata[], resolved?: readonly CurrentDynamicToolMetadata[]): readonly CurrentDynamicToolMetadata[]; export {};