import { Rule, Linter } from 'eslint'; import { Presets } from 'case-police'; type RuleModule = Rule.RuleModule & { defaultOptions: T; }; interface RuleOption { dict?: Record; noDefault?: boolean; presets?: Presets[]; ignore?: string[]; } declare const plugin: { meta: { name: string; version: string; }; rules: { 'string-check': RuleModule<[RuleOption]>; }; configs: { recommended: ({ name: string; plugins: { readonly 'case-police': any; }; files?: undefined; rules?: undefined; } | { name: string; files: string[]; rules: { 'case-police/string-check': string; }; plugins?: undefined; })[]; }; }; type RuleDefinitions = typeof plugin['rules']; type RuleOptions = { [K in keyof RuleDefinitions]: RuleDefinitions[K]['defaultOptions']; }; type Rules = { [K in keyof RuleOptions]: Linter.RuleEntry; }; type asd = keyof RuleDefinitions; export = plugin; export type { RuleOptions, Rules, asd };