/** * Zoe SDK — Public entry point * * Exports `generateText`, `streamText`, `createAgent`, and all public types, * tool factories, provider helpers, and skill utilities. */ import type { GenerateTextOptions, GenerateTextResult, StreamTextOptions, StreamTextResult } from "../../core/types.js"; export { createAgent } from "./agent.js"; export { tool, CORE_TOOLS, COMM_TOOLS, ADVANCED_TOOLS, ALL_TOOLS } from "./tools.js"; export { settings, SettingsError } from "./settings.js"; export { configureProviders, loadProviderConfig, provider } from "../../core/provider-resolver.js"; export { createSkillProviderSwitcher } from "../../core/skill-invoker.js"; export type { SSEOptions } from "./http.js"; export { compose, type PipelineContext, type Middleware, loggingMiddleware, rateLimitMiddleware, authMiddleware, } from "../../core/index.js"; import type { GatewayConfig } from "../../gateway/types.js"; import type { GatewaySettingsAdapter } from "../../gateway/settings-adapter.js"; export declare const gateway: { createGateway(config: GatewayConfig, settingsAdapter?: GatewaySettingsAdapter): Promise; }; export type { ProviderType, MultiProviderConfig, Message, ToolCall, StepResult, Usage, CumulativeUsage, UserToolDefinition, ToolContext, ToolResult, Hooks, GenerateTextOptions, GenerateTextResult, StreamTextOptions, StreamTextResult, AgentCreateOptions, SdkAgent, AgentResponse, SessionStore, SessionData, PersistenceBackend, PersistenceConfig, SkillMetadata, ZoeError, PermissionLevel, ToolRiskCategory, } from "../../core/types.js"; export { createPersistenceBackend, registerBackend, createSessionStore, createMemoryStore, } from "../../core/session-store.js"; export type { SkillProviderSwitcher, ProviderSwitcherConfig, } from "../../core/skill-invoker.js"; /** * Run a one-shot agent loop and return the structured result. * * Creates fresh state for each call (stateless). Handles tool calls * automatically until the provider returns no more tool calls or * `maxSteps` is reached. * * @example * ```ts * const result = await generateText("What is the weather in SF?", { * tools: ["web_search"], * maxSteps: 5, * }); * console.log(result.text); * ``` */ export declare function generateText(prompt: string, options?: GenerateTextOptions): Promise; /** * Run a one-shot agent loop with streaming callbacks. * * Returns AsyncIterables for text and steps, plus `toResponse()` and * `toSSEStream()` for HTTP server integration. * * Note: The current provider.chat() API returns full responses (not deltas), * so onText receives the complete text at once. Future versions will integrate * with provider-level streaming. * * @example * ```ts * const stream = await streamText("Explain quantum computing", { * onText: (delta) => process.stdout.write(delta), * }); * const finalText = await stream.fullText; * ``` */ export declare function streamText(prompt: string, options?: StreamTextOptions): Promise;