import type { DatabaseSync } from 'node:sqlite'; import type { VerificationLeaseIssuancePrecondition } from './verification-execution-lease.js'; import type { VerificationLeaseIssuanceFailure, WorkspaceSnapshotRow } from './verification-ledger-preconditions-contracts.js'; import type { VerificationRunContract } from './verification-run-contract.js'; import { type WorkspaceSnapshotFenceDescriptor } from './workspace-snapshot-fence.js'; export interface VerificationLedgerPreconditionsHost { db: DatabaseSync; verifyWorkspaceSnapshotPrecondition(run: VerificationRunContract, precondition: VerificationLeaseIssuancePrecondition, projectId: string): VerificationLeaseIssuanceFailure | null; verifyCandidatePrecondition(run: VerificationRunContract, precondition: VerificationLeaseIssuancePrecondition, projectId: string): VerificationLeaseIssuanceFailure | null; readLatestWorkspaceSnapshotRow(projectId: string): WorkspaceSnapshotRow | undefined; workspaceSnapshotFromRow(row: WorkspaceSnapshotRow): WorkspaceSnapshotFenceDescriptor; } export declare function verifyIssuancePrecondition(host: VerificationLedgerPreconditionsHost, run: VerificationRunContract, precondition: VerificationLeaseIssuancePrecondition): VerificationLeaseIssuanceFailure | null; export declare function verifyWorkspaceSnapshotPrecondition(host: VerificationLedgerPreconditionsHost, run: VerificationRunContract, precondition: VerificationLeaseIssuancePrecondition, projectId: string): VerificationLeaseIssuanceFailure | null; export declare function verifyCandidatePrecondition(host: VerificationLedgerPreconditionsHost, run: VerificationRunContract, precondition: VerificationLeaseIssuancePrecondition, projectId: string): VerificationLeaseIssuanceFailure | null; //# sourceMappingURL=verification-ledger-preconditions.d.ts.map