import { type CheckpointStore, type SerializableAgentState } from '@n8n/agents'; import { Logger } from '@n8n/backend-common'; import { AgentsConfig } from '@n8n/config'; import { type AgentSandboxPrincipalHash } from '../agent-sandbox-principal'; import { AgentCheckpointRepository } from '../repositories/agent-checkpoint.repository'; type CheckpointStatus = { status: 'expired'; checkpoint?: SerializableAgentState; } | { status: 'not-found'; } | { status: 'active'; checkpoint: SerializableAgentState; }; export declare const CHECKPOINT_RECONCILIATION_OVERFLOW: unique symbol; export declare class N8NCheckpointStorage { private readonly agentCheckpointRepository; private readonly logger; private readonly agentsConfig; constructor(agentCheckpointRepository: AgentCheckpointRepository, logger: Logger, agentsConfig: AgentsConfig); getStorage(agentId: string): CheckpointStore; getActiveRunIdsForSandbox(agentId: string, principalHash: AgentSandboxPrincipalHash): Promise | typeof CHECKPOINT_RECONCILIATION_OVERFLOW>; save(key: string, checkpointState: SerializableAgentState, agentId: string): Promise; load(key: string, agentId: string): Promise; claimForResume(key: string, checkpointState: SerializableAgentState, agentId: string): Promise; cancelSuspended(key: string, state: SerializableAgentState, agentId: string): Promise; findSuspendedForThread(agentId: string, threadId: string): Promise; private parseSuspendedState; getStatus(key: string, agentId: string): Promise; delete(key: string, agentId: string): Promise; pruneStaleSuspensions(): Promise; } export {};