import type { EveAgentEventLog } from "#client/eve-agent-projection.js"; import type { MessageStreamEvent } from "#protocol/message.js"; import type { SendTurnPayload } from "#client/types.js"; interface ReconciledSubmissions { readonly alreadyProjected: boolean; readonly event: Extract; readonly ids: readonly string[]; } /** Owns optimistic message projection and server-delivery reconciliation. */ export declare class OptimisticMessageSubmissions { #private; constructor(projections: readonly EveAgentEventLog[], optimistic: boolean); reset(): void; submit(input: SendTurnPayload, eventStartIndex: number, turnId?: string): string | undefined; /** Re-echoes a submission whose payload `prepareSend` replaced, keeping its place in the stream. */ resubmit(submissionId: string | undefined, input: SendTurnPayload): string | undefined; apply(event: MessageStreamEvent): ReconciledSubmissions | undefined; correlate(submissionId: string | undefined, deliveryId: string | undefined, events: readonly MessageStreamEvent[]): ReconciledSubmissions | undefined; fail(error: Error, submissionId?: string): void; failAll(error: Error): void; } export {};