type AnyRecord = Record<string, unknown>;
interface CaptureContextArgs {
    requestId?: string;
    payload: AnyRecord;
    context: AnyRecord;
}
interface RecordResponseArgs {
    requestId?: string;
    response: AnyRecord;
}
interface ResumeOptions {
    requestId?: string;
}
interface ResumeResult {
    payload: AnyRecord;
    meta: AnyRecord;
}
declare class ResponsesConversationStore {
    private requestMap;
    private responseIndex;
    rebindRequestId(oldId: string | undefined, newId: string | undefined): void;
    captureRequestContext(args: CaptureContextArgs): void;
    recordResponse(args: RecordResponseArgs): void;
    resumeConversation(responseId: string, submitPayload: AnyRecord, options?: ResumeOptions): ResumeResult;
    clearRequest(requestId?: string): void;
    private cleanupEntry;
    private prune;
}
declare const store: ResponsesConversationStore;
export declare function captureResponsesRequestContext(args: CaptureContextArgs): void;
export declare function recordResponsesResponse(args: RecordResponseArgs): void;
export declare function resumeResponsesConversation(responseId: string, submitPayload: AnyRecord, options?: ResumeOptions): ResumeResult;
export declare function clearResponsesConversationByRequestId(requestId?: string): void;
export declare function rebindResponsesConversationRequestId(oldId?: string, newId?: string): void;
export { store as responsesConversationStore };
