import type { AgentMessage as KoiMessage, AgentTool as KoiTool } from "@mariozechner/pi-agent-core";
import type { SessionManager } from "@mariozechner/pi-coding-agent";
import type { TSchema } from "@sinclair/typebox";
import type { TranscriptPolicy } from "../transcript-policy.js";
export declare function sanitizeToolsForGoogle<TSchemaType extends TSchema = TSchema, TResult = unknown>(params: {
    tools: KoiTool<TSchemaType, TResult>[];
    provider: string;
}): KoiTool<TSchemaType, TResult>[];
export declare function logToolSchemasForGoogle(params: {
    tools: KoiTool[];
    provider: string;
}): void;
export declare function applyGoogleTurnOrderingFix(params: {
    messages: KoiMessage[];
    modelApi?: string | null;
    sessionManager: SessionManager;
    sessionId: string;
    warn?: (message: string) => void;
}): {
    messages: KoiMessage[];
    didPrepend: boolean;
};
export declare function sanitizeSessionHistory(params: {
    messages: KoiMessage[];
    modelApi?: string | null;
    modelId?: string;
    provider?: string;
    sessionManager: SessionManager;
    sessionId: string;
    policy?: TranscriptPolicy;
}): Promise<KoiMessage[]>;
