import type { Policy } from './base.ts'; import type { Action, CommandContext, CommandRule, OpsContext } from './types.ts'; /** * A CommandRule compiled to a policy. * * Internal: the permissions policy evaluates the document's rules * through the same matcher this wraps, and nothing outside the package * constructs one; it survives as the one-rule form for tests and for * code that wants a single rule as a Policy. The rule's paths compile * through the same classifier as `paths.hide` and match through the * same matcher, so a deny scope and a hide read one grammar. */ export declare class RulePolicy implements Policy { readonly rule: CommandRule; private readonly scope; constructor(rule: CommandRule); preCommand(ctx: CommandContext): Action | null; preOps(ctx: OpsContext): Action | null; } //# sourceMappingURL=rule.d.ts.map