import type { StandardToolV0 } from "@uicast/expr"; /** * Options for `getFunctionsPartialPrompt`. * * @example * const options: FunctionsPromptOptions = { functions: tools, note: "Amounts are in cents." }; */ export type FunctionsPromptOptions = { /** Your host functions: the array the evaluator binds. An empty one adds nothing. */ functions: StandardToolV0[]; /** Your text, appended verbatim as this section's trailing `## Note`. */ note?: string; }; /** * The `# Available Functions` block: a call signature per host function, from its schemas. A tool with no * `outputSchema` prints `=> unknown`: undeclared, not empty. Throws on a duplicate name, a name that is not an * identifier, or a reserved one: `scopes`, `evt`, `currentValue` or a global such as `Math`. * * @example * getFunctionsPartialPrompt({ functions: tools }); // the same array as new Evaluator({ functions: tools }) */ export declare function getFunctionsPartialPrompt({ functions, note }: FunctionsPromptOptions): string;