import type { PolicyDecision, PolicyEvaluation, PolicyInput } from "./types.js"; export declare function isSecretPath(p: string): boolean; export interface PolicyRule { id: string; description: string; /** Return a decision if this rule applies, otherwise null. */ evaluate(input: PolicyInput): PolicyDecision | null; } export interface PolicyEngineOptions { allowApprovalResolver?: (scope: string, input: PolicyInput) => boolean; ruleOverrides?: Partial>; } export declare const BASELINE_RULES: PolicyRule[]; export declare class PolicyEngine { private readonly rules; private readonly options; constructor(rules?: PolicyRule[], options?: PolicyEngineOptions); /** Evaluate the policy for a single tool invocation. Deterministic. */ evaluate(input: PolicyInput): PolicyEvaluation; /** Structured allow when the caller has resolved an approval for a scope. */ approve(input: PolicyInput, scope: string): PolicyEvaluation; } /** Derive a workspace id from the canonical workspace root. */ export declare function workspaceIdFromRoot(root: string): string; //# sourceMappingURL=policy.d.ts.map