import { MultiDbManager } from '../core/multi-db-manager'; import { ReasonCode } from '../models/reason-codes'; import { Evidence } from '../models/evidence'; /** * Source access contract. * Determines whether source code is available and under what constraints. */ export interface SourceAccessContract { /** Status of source code access */ status: 'AVAILABLE' | 'UNAVAILABLE' | 'PARTIAL'; /** Type of resolver (how source code is accessed) */ resolver_type: 'FILESYSTEM' | 'GIT' | 'REMOTE' | 'SNAPSHOT' | null; /** Workspace root path */ workspace_root: string | null; /** Access constraints */ constraints: { max_bytes_per_request: number; max_lines_per_request: number; max_concurrent_requests: number; redactions: string[]; } | null; /** Reason codes (when UNAVAILABLE/PARTIAL) */ reason_codes?: ReasonCode[]; /** When this contract was verified */ verified_at: string; /** Evidence grade */ evidence_grade: 'DETERMINISTIC' | 'INFERRED'; /** Evidence information */ evidence: Evidence; } /** * API for managing source access contract. * Determines whether source code is available and provides runtime status. */ export declare class SourceAccessContractApi { private dbManager; constructor(dbManager: MultiDbManager); /** * Get current source access contract. * Deterministically checks if workspace root is accessible. */ getContract(workspaceRoot?: string): Promise; /** * Initialize source access contract. */ initializeContract(workspaceRoot: string): Promise; /** * Update source access contract. */ private updateContract; /** * Helper method to execute a query and return a single row. */ private queryOne; /** * Helper method to execute a query. */ private execute; } //# sourceMappingURL=source-access-contract-api.d.ts.map