import { TargetCaseType } from './ensure'; import { Rule, RuleCondition } from './rules'; export declare type PluginRecords = Record; export interface Plugin { rules: { [ruleName: string]: Rule; }; } export interface LoadOptions { cwd?: string; file?: string; } export declare enum RuleSeverity { Disabled = 0, Warning = 1, Error = 2 } export declare type RuleConfigTuple = T extends void ? Readonly<[RuleSeverity, RuleCondition]> : Readonly<[RuleSeverity, RuleCondition, T]>; export declare enum RuleConfigQuality { User = 0, Qualified = 1 } export declare type QualifiedRuleConfig = (() => RuleConfigTuple) | (() => RuleConfigTuple>) | RuleConfigTuple; export declare type RuleConfig = V extends RuleConfigQuality.Qualified ? RuleConfigTuple : QualifiedRuleConfig; export declare type CaseRuleConfig = RuleConfig; export declare type LengthRuleConfig = RuleConfig; export declare type EnumRuleConfig = RuleConfig; export declare type RulesConfig = { 'body-case': CaseRuleConfig; 'body-empty': RuleConfig; 'body-leading-blank': RuleConfig; 'body-max-length': LengthRuleConfig; 'body-max-line-length': LengthRuleConfig; 'body-min-length': LengthRuleConfig; 'footer-empty': RuleConfig; 'footer-leading-blank': RuleConfig; 'footer-max-length': LengthRuleConfig; 'footer-max-line-length': LengthRuleConfig; 'footer-min-length': LengthRuleConfig; 'header-case': CaseRuleConfig; 'header-full-stop': RuleConfig; 'header-max-length': LengthRuleConfig; 'header-min-length': LengthRuleConfig; 'references-empty': RuleConfig; 'scope-case': CaseRuleConfig; 'scope-empty': RuleConfig; 'scope-enum': EnumRuleConfig; 'scope-max-length': LengthRuleConfig; 'scope-min-length': LengthRuleConfig; 'signed-off-by': RuleConfig; 'subject-case': CaseRuleConfig; 'subject-empty': RuleConfig; 'subject-full-stop': RuleConfig; 'subject-max-length': LengthRuleConfig; 'subject-min-length': LengthRuleConfig; 'type-case': CaseRuleConfig; 'type-empty': RuleConfig; 'type-enum': EnumRuleConfig; 'type-max-length': LengthRuleConfig; 'type-min-length': LengthRuleConfig; }; export interface UserConfig { extends?: string[]; formatter?: unknown; rules?: Partial; parserPreset?: string | ParserPreset; ignores?: ((commit: string) => boolean)[]; defaultIgnores?: boolean; plugins?: string[]; } export interface UserPreset { extends?: string[]; formatter?: unknown; rules?: Partial; parserPreset?: string | ParserPreset; ignores?: ((commit: string) => boolean)[]; defaultIgnores?: boolean; plugins: PluginRecords; } export declare type QualifiedRules = Partial>; export interface QualifiedConfig { extends: string[]; formatter: unknown; rules: Partial; parserPreset: ParserPreset; ignores: ((commit: string) => boolean)[]; defaultIgnores: boolean; plugins: PluginRecords; } export interface ParserPreset { name: string; path: string; parserOpts?: unknown; } //# sourceMappingURL=load.d.ts.map