import type { IContext } from "../type/i_context.js"; import type { IPolicy } from "../type/i_policy.js"; /** * # The apply policy algorithm * * A policy is applied if: * - At least one matcher it uses matches the given context; and * - All the conditions it defines are satisfied. * * Policy conditions behave like intersection, union and exclusion operators. In * order to be satisfied: * - allOf requires all of its matchers to match the given context; * - anyOf requires one of its matchers to match the given context; * - noneOf requires none of its matchers to match the given context. * * Note: Given that the noneOf condition excludes matches, a policy without a * satisfied allOf or anyOf condition never applies. * * @param policy The policy to evaluate * @param context The context in which the policy is evaluated * @returns True if the policy applies, false otherwise */ export declare function applyPolicy(policy: IPolicy, context: IContext): boolean; //# sourceMappingURL=apply_policy.d.ts.map