import { type ShortcutXLAgentAssistantMessage, type ShortcutXLModelStreamEvent } from '../contracts/model-stream.js';
import type { RuntimeAssistantMessage } from '../core/session/session-error-recovery.js';
import type { ShortcutStreamEvent } from './stream-sse.js';
export declare function createInitialAssistantMessage(model: string): RuntimeAssistantMessage;
export declare function createAssistantMessageSnapshot(message: RuntimeAssistantMessage): ShortcutXLAgentAssistantMessage;
export interface StreamAttemptEventState {
    readonly partial: RuntimeAssistantMessage;
    readonly toolCallArguments: Map<number, string>;
    readonly thinkingText: Map<number, string>;
    emitStartIfNeeded(): void;
    markTerminal(): void;
}
export declare function processStreamEvent(event: ShortcutStreamEvent, state: StreamAttemptEventState, onEvent: (event: ShortcutXLModelStreamEvent) => void, canRetryInlineError: () => boolean): void;
//# sourceMappingURL=stream-message-state.d.ts.map