import Criterion from './Criterion'; import Effect from './Effect'; import Priority from './Priority'; export interface IRule { disable(): void; enable(): void; enabled(): boolean; priority(): Priority; process(...args: C): R | void; validate(...args: C): boolean; } export declare class Rule implements IRule { #private; constructor(...values: (Priority | Criterion | Effect)[]); disable(): void; enable(): void; enabled(): boolean; priority(): Priority; process(...args: C): R | void; validate(...args: C): boolean; } export default Rule;