import type { A2AArtifactIdentity } from "../a2a/artifact-response.js"; import type { IncomingMessage, PlatformRunProgressRef } from "./types.js"; export declare const a2aContinuationsStore: import("../db/store-registry.js").Store; export declare function ensureTable(): Promise; export declare function ensureA2AContinuationsTable(): Promise; export type A2AContinuationStatus = "pending" | "processing" | "delivering" | "completed" | "failed"; export type A2ATerminalDeliveryKind = "success" | "failure"; export interface A2ATerminalHistoryPayload { text: string; deliveredAt: string; messageRefs: string[]; artifacts: A2AArtifactIdentity[]; } export type A2AContinuationTaskOutcome = "active" | "terminal-delivered" | "terminal-without-delivery" | "missing"; export interface A2AContinuation { id: string; integrationTaskId: string; platform: string; externalThreadId: string; incoming: IncomingMessage; placeholderRef: string | null; progressRef: PlatformRunProgressRef | null; progressRefClaimed: boolean; ownerEmail: string; orgId: string | null; agentName: string; agentUrl: string; dedupeKey: string | null; a2aTaskId: string; a2aAuthToken: string | null; verifiedArtifactCheckpoint: string | null; terminalDeliveryKind: A2ATerminalDeliveryKind | null; terminalDeliveryConfirmedAt: number | null; terminalHistoryPayload: A2ATerminalHistoryPayload | null; status: A2AContinuationStatus; attempts: number; nextCheckAt: number; errorMessage: string | null; createdAt: number; updatedAt: number; completedAt: number | null; } export declare function insertA2AContinuation(input: { integrationTaskId: string; platform: string; externalThreadId: string; incoming: IncomingMessage; placeholderRef?: string | null; progressRef?: PlatformRunProgressRef | null; ownerEmail: string; orgId?: string | null; agentName: string; agentUrl: string; dedupeKey?: string | null; a2aTaskId: string; a2aAuthToken?: string | null; }): Promise; export declare function getA2AContinuationForIntegrationTask(integrationTaskId: string): Promise; export declare function hasActiveA2AContinuationsForIntegrationTask(integrationTaskId: string): Promise; export declare function getA2AContinuationTaskOutcome(integrationTaskId: string): Promise; export declare function hasPendingConfirmedA2ADeliveryForIntegrationTask(integrationTaskId: string): Promise; export declare function hasOnlyLegacyFailedA2AContinuationsForIntegrationTask(integrationTaskId: string): Promise; export declare function failA2AContinuationsForIntegrationTask(integrationTaskId: string, errorMessage: string): Promise; export declare function getA2AContinuationsForIntegrationTaskAgent(integrationTaskId: string, agentUrl: string, dedupeKey?: string | null): Promise; export declare function getA2AContinuation(id: string): Promise; export declare function claimA2AContinuation(id: string): Promise; export declare function claimDueA2AContinuations(limit?: number): Promise; export declare function recoverDueA2AContinuationIds(limit?: number, integrationTaskIds?: string[], confirmedDeliveryOnly?: boolean): Promise; export declare function listRecoverableA2AIntegrationTaskIds(limit?: number): Promise; export interface RecoverableA2AIntegrationTask { id: string; platform: string; externalThreadId: string; dispatchScope: string | null; status: string; hasPendingConfirmedDelivery: boolean; } export declare function listRecoverableA2AIntegrationTasks(limit?: number): Promise; export declare function deferA2AContinuationsForRuntime(integrationTaskIds: string[], delayMs: number): Promise; export declare function claimA2AContinuationDelivery(id: string): Promise; export declare function rescheduleA2AContinuation(id: string, delayMs: number): Promise; export declare function pauseA2AContinuationForRuntime(id: string, claimedAttempts: number, delayMs: number): Promise; export declare function retainA2AUnconfirmedDeliveryClaim(id: string): Promise; export declare function saveA2AVerifiedArtifactCheckpoint(id: string, checkpoint: string): Promise; export declare function recordA2ATerminalDeliveryReceipt(id: string, kind: A2ATerminalDeliveryKind, historyPayload: A2ATerminalHistoryPayload, errorMessage?: string): Promise; export declare function finalizeA2ATerminalHistory(id: string): Promise; export declare function completeA2AContinuation(id: string): Promise; export declare function failA2AContinuation(id: string, errorMessage: string): Promise;