import type { AgentMessage, StreamFn } from "@mariozechner/pi-agent-core";
import { type QueuedFileWriter } from "./queued-file-writer.js";
type LlmPayloadLogWriter = QueuedFileWriter;
export type LlmPayloadLogger = {
    enabled: true;
    /** 包装 streamFn，在每次请求发出前拦截并记录完整 payload */
    wrapStreamFn: (streamFn: StreamFn) => StreamFn;
    /** 记录请求完成后的 usage 信息 */
    recordUsage: (messages: AgentMessage[], error?: unknown) => void;
};
export declare function createLlmPayloadLogger(params: {
    env?: NodeJS.ProcessEnv;
    runId?: string;
    sessionId?: string;
    sessionKey?: string;
    provider?: string;
    modelId?: string;
    modelApi?: string | null;
    workspaceDir?: string;
    writer?: LlmPayloadLogWriter;
}): LlmPayloadLogger | null;
export {};
