import { z } from 'zod'; import { CustomAppAgentRuntimeContext } from '../../types'; import { AgentActionJSONSchema, AgentActionResult } from './types'; export type AgentActionConfig>, TDeps extends Record = Record> = { name: string; description: string; parameters: TSchema; dependencies?: TDeps; handler: (params: z.infer, deps?: TDeps, context?: CustomAppAgentRuntimeContext) => Promise; }; export type RegisteredAgentAction>> = { name: string; description: string; parameters: TSchema; toJSONSchema: () => AgentActionJSONSchema; invoke: (args: unknown, context: CustomAppAgentRuntimeContext) => Promise; _functionUri: string; }; /** * Zod-based agent action with no separate runtime-context argument. Optional `dependencies` * are passed as the second argument to `handler`. */ export declare const createAgentAction: = Record>(config: AgentActionConfig) => RegisteredAgentAction;