import type { ParserServices, TSESLint } from '@typescript-eslint/experimental-utils'; export declare const createESLintRule: ({ name, meta, defaultOptions, create, }: Readonly<{ name: string; meta: { docs: { category: "Best Practices" | "Stylistic Issues" | "Variables" | "Possible Errors"; description: string; recommended: false | "error" | "warn"; suggestion?: boolean | undefined; requiresTypeChecking?: boolean | undefined; extendsBaseRule?: string | boolean | undefined; }; } & Omit, "docs">; defaultOptions: Readonly; create: (context: Readonly>, optionsWithDefault: Readonly) => TRuleListener; }>) => TSESLint.RuleModule; declare type RequiredParserServices = { [k in keyof ParserServices]: Exclude; }; /** * TODO: Expose via @typescript-eslint/experimental-utils */ export declare function getParserServices(context: TSESLint.RuleContext): RequiredParserServices; declare type NodeMaps = { [k in keyof Pick]: NonNullable; }; /** * TODO: Expose via @typescript-eslint/experimental-utils */ export declare function getNodeMaps<_TMessageIds extends string, _TOptions extends any[]>(context: any): NodeMaps; export {};