import type { ProjectFinishAttestationReceipt } from "./project-finish-attestation-types.js"; export declare const PROJECT_FINISH_ATTESTATION_EVIDENCE_DIRECTORY: ".persona/evidence/project-finish-attestation"; export declare const PROJECT_FINISH_ATTESTATION_EVIDENCE_FILES: readonly ["bundle.json", "predicate.json", "receipt.json"]; export declare const PROJECT_FINISH_ATTESTATION_MAX_BUNDLE_BYTES: number; export declare const PROJECT_FINISH_ATTESTATION_MAX_JSON_BYTES: number; export type ProjectFinishAttestationEnrolledPolicy = { readonly callerWorkflowPath: string; readonly repositoryId: number; readonly repositorySlug: string; readonly reusableWorkflowSha: string; }; export type ProjectFinishAttestationVerifierState = "binding-mismatch" | "certificate-invalid" | "crypto-failed" | "dns-unavailable" | "malformed" | "malformed-bundle" | "missing" | "network-unavailable" | "replayed" | "runtime-unsupported" | "signature-invalid" | "source-drift" | "stale" | "transparency-invalid" | "trusted" | "trust-root-unavailable" | "verification-timeout" | "wrong-policy"; export type ProjectFinishAttestationVerifierDiagnostic = { readonly code: Exclude; readonly path: string; }; export type ProjectFinishAttestationVerifierAssessment = { readonly authorityEligible: boolean; readonly consumptionState: "consumed" | "not-applicable" | "unconsumed"; readonly decision: "blocked" | "trusted"; readonly diagnostics: readonly ProjectFinishAttestationVerifierDiagnostic[]; readonly receipt?: ProjectFinishAttestationReceipt; readonly state: ProjectFinishAttestationVerifierState; readonly summary: string; }; export type ProjectFinishAttestationWorkerResult = { readonly bundleDigest: string; readonly ok: true; readonly statement: unknown; } | { readonly ok: false; readonly state: Exclude; }; export type ProjectFinishTrustReadinessWorkerResult = { readonly ok: true; } | { readonly ok: false; readonly state: "dns-unavailable" | "network-unavailable" | "runtime-unsupported" | "trust-root-unavailable" | "verification-timeout"; };