import type { LintRule } from '../../../types.js';
export declare const REQUIRED_CHILDREN = "core/required-children";
export interface RequiredChildrenMatch {
    /** Glob of tokens/groups to match */
    match: string[];
    /** Required token IDs to match (this only looks at the very last segment of a token ID!) */
    requiredTokens?: string[];
    /** Required groups to match (this only looks at the beginning/middle segments of a token ID!) */
    requiredGroups?: string[];
}
export interface RuleRequiredChildrenOptions {
    matches: RequiredChildrenMatch[];
}
export declare const ERROR_EMPTY_MATCH = "EMPTY_MATCH";
export declare const ERROR_MISSING_REQUIRED_TOKENS = "MISSING_REQUIRED_TOKENS";
export declare const ERROR_MISSING_REQUIRED_GROUP = "MISSING_REQUIRED_GROUP";
declare const rule: LintRule<typeof ERROR_EMPTY_MATCH | typeof ERROR_MISSING_REQUIRED_TOKENS | typeof ERROR_MISSING_REQUIRED_GROUP, RuleRequiredChildrenOptions>;
export default rule;
//# sourceMappingURL=required-children.d.ts.map