import type { SecurityCheck } from '../checks/SecurityCheck.js'; export { AUDIT_PERMISSIONS, type AuditPermission, type PermissionSpec } from './permissions.js'; import { type AuditPermission } from './permissions.js'; export interface MissingPermission { permission: AuditPermission; label: string; impact: string; blocking: boolean; affectedChecks: string[]; } export interface PreflightResult { canRun: boolean; granted: AuditPermission[]; missing: MissingPermission[]; /** Checks expected to produce a verdict. */ willRun: number; /** Checks expected to return inconclusive, deduplicated across permissions. */ willBeInconclusive: string[]; } /** Check ids that need `permission`, derived from the registry's declared cache wiring. */ export declare function checksRequiring(permission: AuditPermission, checks?: readonly SecurityCheck[]): string[]; /** * What this audit user will and will not be able to establish, before spending a run. * * The tool can only report a permission gap after the audit has already come back * blind; this answers the same question up front, when it is still cheap to fix. */ export declare function buildPreflight(granted: Record, checks?: readonly SecurityCheck[]): PreflightResult; //# sourceMappingURL=permissionMap.d.ts.map