import type { Message, Tool } from 'ollama';
import type { ChatResult, IChatClient, StreamChunk } from './chatClient';
export interface ReplicateClientOptions {
    apiKey: string;
    model: string;
    baseUrl?: string;
}
/**
 * Minimal Replicate Predictions API adapter. Replicate model schemas vary, so
 * this targets text/chat-like models that accept a `prompt` input and returns
 * the completed prediction output as one assistant message.
 */
export declare class ReplicateClient implements IChatClient {
    private readonly baseUrl;
    private readonly apiKey;
    private readonly model;
    constructor(options: ReplicateClientOptions);
    chat(messages: Message[], tools?: Tool[], abortSignal?: AbortSignal): Promise<ChatResult>;
    chatOnce(messages: Message[], tools?: Tool[]): Promise<ChatResult>;
    chatStream(messages: Message[], tools?: Tool[], abortSignal?: AbortSignal): AsyncGenerator<StreamChunk>;
    listModels(): Promise<string[]>;
    getContextWindow(): Promise<number | null>;
    healthCheck(): Promise<{
        ok: boolean;
        error?: string;
    }>;
    getModel(): string;
    private predictionUrl;
    private predictionBody;
}
//# sourceMappingURL=replicateClient.d.ts.map