import type { ProviderEvent, ProviderUsage } from '../provider.js'; import type { Message, OutputEvent, ResponseMetadata, SessionMetadata } from '../types.js'; import { BudgetExceededError } from '../../utils/errors.js'; import type { TraceSink } from '../trace/index.js'; export type TransformDeps = { conversationHistory: Message[]; getSessionMetadata: () => SessionMetadata; setSessionMetadata: (updater: (prev: SessionMetadata) => SessionMetadata) => void; updateSessionIdentity: (sessionId?: string) => void; resolveInitialization: () => void; setLastResponseMetadata: (metadata: ResponseMetadata) => void; maxBudgetUsd?: number; abortBudget?: (reason: BudgetExceededError) => void; _runningCostUsd?: number; _successfulToolNames?: string[]; traceWriter?: TraceSink; }; export declare function parsePersistedOutput(content: string): { sizeLabel: string; sizeBytes: number; absolutePath: string; } | null; export declare function usageToMetadata(usage: ProviderUsage, sessionId: string | undefined): ResponseMetadata; export declare function transformProviderEvent(event: ProviderEvent, deps: TransformDeps): OutputEvent | null;