import type * as Agora from "../index.js"; /** * Inline REST tool definition. `type: function` combined with `server` declares a REST tool. * Phase 1a executes the HTTP request synchronously and returns the raw result to the model context. */ export interface LlmTool { /** Tool type. Must be `function`. */ type: "function"; /** Tool interface exposed to the model. `parameters` is the JSON Schema for LLM arguments, not the HTTP request shape. */ function: Agora.LlmToolFunction; /** Tool execution configuration. Defaults to `{"mode": "sync"}`. Phase 1a only allows `sync`. */ execution?: Agora.LlmToolExecution; /** * Actual HTTP request configuration for this REST tool. * Does not use top-level `parameters`, `path_params`, standalone `query`, * `response`, `json_path`, or `max_chars`. */ server: Agora.LlmToolServer; /** Accepts any additional properties */ [key: string]: any; }