import { RuleConfigSeverity } from "@commitlint/types";
import type { Rule } from "../types.js";
export declare function ruleIsDisabled(rule: Rule): rule is Readonly<[RuleConfigSeverity.Disabled]>;
/**
 * Check if a rule definition is active
 * @param rule to check
 * @return if the rule definition is active
 */
export declare function ruleIsActive<T extends Rule>(rule: T): rule is Exclude<T, Readonly<[RuleConfigSeverity.Disabled]>>;
/**
 * Check if a rule definition is applicable
 * @param rule to check
 * @return if the rule definition is applicable
 */
export declare function ruleIsApplicable(rule: Rule): rule is Readonly<[RuleConfigSeverity, "always"]> | Readonly<[RuleConfigSeverity, "always", unknown]>;
/**
 * Check if a rule definition is applicable
 * @param rule to check
 * @return if the rule definition is applicable
 */
export declare function ruleIsNotApplicable(rule: Rule): rule is Readonly<[RuleConfigSeverity, "never"]> | Readonly<[RuleConfigSeverity, "never", unknown]>;
export declare function enumRuleIsActive(rule: Rule): rule is Readonly<[RuleConfigSeverity.Warning | RuleConfigSeverity.Error, "always", string[]]>;
export declare function getEnumList(rule: Rule): string[];
export declare function getMaxLength(rule?: Rule): number;
export declare function getMinLength(rule?: Rule): number;
//# sourceMappingURL=rules.d.ts.map