import { BlueNode } from '@blue-labs/language'; import { ContractBundle } from './contract-bundle.js'; import { ChannelEventCheckpoint } from '../model/index.js'; import { DocumentProcessingRuntime } from '../runtime/document-processing-runtime.js'; export declare class CheckpointRecord { readonly markerKey: string; readonly checkpoint: ChannelEventCheckpoint; readonly channelKey: string; lastEventNode: BlueNode | null; lastEventSignature: string | null; constructor(markerKey: string, checkpoint: ChannelEventCheckpoint, channelKey: string, lastEventNode: BlueNode | null, lastEventSignature: string | null); matches(signature: string | null | undefined): boolean; } export declare class CheckpointManager { private readonly runtime; private readonly signatureFn; constructor(runtime: DocumentProcessingRuntime, signatureFn: (node: BlueNode | null) => string | null); ensureCheckpointMarker(scopePath: string, bundle: ContractBundle): void; findCheckpoint(bundle: ContractBundle, channelKey: string): CheckpointRecord | null; isDuplicate(record: CheckpointRecord | null, signature: string | null | undefined): boolean; persist(scopePath: string, bundle: ContractBundle, record: CheckpointRecord | null, eventSignature: string | null, eventNode: BlueNode | null): void; } //# sourceMappingURL=checkpoint-manager.d.ts.map