import type { Rule } from 'eslint'; import type * as ESTree from 'estree'; export interface SyntaxVariant { isSatisfying: (specifiers: ESTree.ImportDeclaration['specifiers']) => boolean; invalidSpecifierTypes: ReadonlyArray; trackNamedForPrefix: boolean; buildFix: (fixer: Rule.RuleFixer, node: ESTree.ImportDeclaration, allInvalidImports: ReadonlyArray) => Rule.Fix | null; } export declare function createRuleListener(context: Rule.RuleContext, syntax: string, variant: SyntaxVariant, allowedNamespaceMembers?: ReadonlySet): Rule.RuleListener;