/** * tooled-prompt - Runtime LLM prompt library * * @example * ```typescript * import { prompt, tool, setConfig } from 'tooled-prompt'; * * // Plain function - auto-detected as tool * async function readFile(filePath: string) { * return fs.readFile(filePath, 'utf-8'); * } * * // Or explicitly define tool metadata * tool(readFile, { * description: 'Read a file from disk', * args: { filePath: 'Path to the file' } * }); * * // Configure the default instance * setConfig({ apiKey: await getSecretKey() }); * * const result = await prompt` * Use ${readFile} to read config.json and summarize it. * `(); * * // Or create isolated instances (silent by default) * import { createTooledPrompt } from 'tooled-prompt'; * const openai = createTooledPrompt({ apiUrl: 'https://api.openai.com/v1' }); * ``` * * @packageDocumentation */ export { createTooledPrompt } from './factory.js'; export { tool, isTool, getToolMetadata, TOOL_SYMBOL } from './tool.js'; export { store, createStore, RETURN_SYMBOL, RETURN_SENTINEL, type Store } from './store.js'; export { MESSAGES_SYMBOL, createMessagesSentinel, type HistoryMessage, type MessagesSentinel } from './messages.js'; export { toolSearch, TOOLBOX_SYMBOL, type ToolSearchMatcher, type ToolSearchOptions } from './toolbox.js'; export { toolEval, type ToolEvalOptions } from './tool-eval.js'; export type { ToolFunction, ToolMetadata, ToolOptions, ArgsForFn, ArgDescriptor, TooledPromptConfig, ResolvedTooledPromptConfig, SimpleSchema, JsonSchema, ResolvedSchema, PromptResult, PromptExecutor, PromptTaggedTemplate, TooledPromptInstance, TooledPromptEvents, ContentPart, PromptContent, ProcessedSystemPrompt, SystemPromptBuilder, SystemPromptTag, Usage, PromptUsage, } from './types.js'; export { getProvider, registerProvider, OpenAIProvider, AnthropicProvider, OllamaProvider, parseDataUrl, toolsToOpenAIFormat, type ProviderAdapter, type ToolCallInfo, type ToolResultInfo, type ParsedResponse, type BuildRequestParams, type BuildRequestResult, } from './providers/index.js'; export { TooledPromptEmitter, type TooledPromptEvents as Events, defaultContentHandler, defaultThinkingHandler, defaultToolCallHandler, defaultToolResultHandler, defaultToolErrorHandler, installDefaultHandlers, type DefaultHandlerOptions, } from './events.js'; /** * Tagged template for creating LLM prompts (default instance) * * The default instance has logging enabled - it streams content to stdout * and logs tool calls. Use `setConfig({ silent: true })` to disable. * * @example * ```typescript * const result = await prompt`Use ${readFile} to read config.json`(); * ``` */ export declare const prompt: import("./types.js").PromptTaggedTemplate; /** * Update configuration for the default instance * * @example * ```typescript * setConfig({ apiKey: await getSecretKey() }); * setConfig({ silent: true }); // Disable logging * ``` */ export declare const setConfig: (config: import("./types.js").TooledPromptConfig) => void; /** * Subscribe to events on the default instance * * @example * ```typescript * on('tool_call', (name, args) => { * console.log(`Calling ${name} with`, args); * }); * ``` */ export declare const on: (event: K, handler: import("./events.js").TooledPromptEvents[K]) => void; /** * Unsubscribe from events on the default instance */ export declare const off: (event: K, handler: import("./events.js").TooledPromptEvents[K]) => void; //# sourceMappingURL=index.d.ts.map