import type { ChorusVoice, ModelInfo, ModelRef, PartialVoiceProgress, RegistryLike, ResolvedModel, TokenUsage, VoiceResult } from "./types.js"; import { type RetryPolicy } from "./runtime/retry.js"; export { redactSensitive as sanitizeProviderMessage } from "./utils/redact.js"; export interface DirectVoiceArgs { voice: ChorusVoice; prompt: string; registry: ModelInfo[]; modelRegistry?: RegistryLike; voiceIndex?: number; timeoutMs: number; signal: AbortSignal; fetchImpl?: typeof fetch; onProgress?: (update: PartialVoiceProgress) => void; retryPolicy?: RetryPolicy; } export interface DirectModelCallArgs { model: ModelRef; prompt: string; systemPrompt: string; registry: ModelInfo[]; modelRegistry?: RegistryLike; signal: AbortSignal; fetchImpl?: typeof fetch; structuredOutput?: boolean; } export interface DirectModelCallResult { output: string; usage?: TokenUsage; costUsd: number | null; resolved: ResolvedModel; } export declare function runDirectVoice(args: DirectVoiceArgs): Promise; export declare function callDirectModel(args: DirectModelCallArgs): Promise;