import type { HttpTransport } from "./transports/http"; export interface SafeMutationStatus { project_ref: string; mutation_id: string; operation: string; resource_key: string | null; request_fingerprint: string; principal: { type: "master" | "admin" | "project"; id: string; }; status: "pending" | "running" | "succeeded" | "failed_retryable" | "failed_terminal" | "outcome_unknown"; checkpoint: Record; receipt: Record | null; response_status: number | null; failure_code: string | null; lease: { owner: string | null; expires_at: string | null; fencing_epoch: number; }; completed_at: string | null; created_at: string; updated_at: string; } export interface MutationExpectation { ref: string; mutationId: string; operation: string; requestFingerprint: string; } export type MutationStatusReadback = { kind: "available"; mutation: SafeMutationStatus; } | { kind: "unavailable"; httpStatus: number | null; } | { kind: "invalid"; }; export declare function isMutationId(candidate: unknown): candidate is string; export declare function mutationRequestFingerprint(normalizedRequest: unknown): string; export declare function safeMutationStatus(candidate: unknown): SafeMutationStatus | null; export declare function mutationStatusPath(ref: string, mutationId: string): string; export declare function fetchMutationStatus(http: HttpTransport, ref: string, mutationId: string): Promise; export declare function verifiedMutationReadback(http: HttpTransport, expectation: MutationExpectation): Promise;