/// import { Linter, Rule } from "eslint"; //#region src/utils.d.ts interface RuleModule extends Rule.RuleModule { defaultOptions: T; } //#endregion //#region src/rules/require-package-field.d.ts type Options = [{ /** @default ['description', 'type', 'license', 'homepage', 'bugs', 'repository', 'author', 'funding'] */fields: ((string & {}) | 'description' | 'type' | 'license' | 'homepage' | 'bugs' | 'repository' | 'author' | 'funding')[]; }]; //#endregion //#region src/index.d.ts declare const plugin: { meta: { name: string; version: string; }; rules: { 'prefer-string-function': RuleModule<[]>; 'require-package-field': RuleModule; }; }; type RuleDefinitions = (typeof plugin)['rules']; type RuleOptions = { [K in keyof RuleDefinitions]: RuleDefinitions[K]['defaultOptions'] }; type Rules = { [K in keyof RuleOptions]: Linter.RuleEntry }; //#endregion export { RuleOptions, Rules, plugin as default, plugin };