import { type TrustLadderSnapshot, type TrustRung } from './trustLadder';
export type GateDecision = 'shadow' | 'suggest' | 'confirm' | 'allow';
export interface GateInput {
    /** Capability key. Should match the entry in the trust ladder. */
    capability: string;
    /** Tool/action label for the surfaced card. */
    label?: string;
}
export interface GateResult {
    decision: GateDecision;
    rung: TrustRung;
    rationale: string;
}
export declare function evaluatePermissionGate(snap: TrustLadderSnapshot, input: GateInput): GateResult;
/** Convenience: resolve "should I even bother asking PermissionEngine?" */
export declare function shouldDeferToEngine(result: GateResult): boolean;
//# sourceMappingURL=permissionGate.d.ts.map