import { type RunStore } from "../run-state/index.js";
import type { SeedIdempotencyClaim, SeedIdempotencyRecord, SeedIdempotencyStatus } from "./types.js";
export declare function idempotencyRoot(store: RunStore, runId: string): string;
export declare function idempotencyRecordsPath(store: RunStore, runId: string): string;
export declare function listIdempotencyRecords(store: RunStore, runId: string): Promise<SeedIdempotencyRecord[]>;
export declare function claimIdempotencyKey(store: RunStore, runId: string, input: {
    key: string;
    scope: string;
    action: string;
    actor: string;
    metadata?: Record<string, unknown>;
}): Promise<SeedIdempotencyClaim>;
export declare function completeIdempotencyKey(store: RunStore, runId: string, key: string, input?: {
    status?: SeedIdempotencyStatus;
    result_ref?: string;
    metadata?: Record<string, unknown>;
}): Promise<SeedIdempotencyRecord>;
export declare function stableIdempotencyKey(parts: Array<string | undefined>): string;
