.gitignore added
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / @typescript-eslint / experimental-utils / dist / ts-eslint / Linter.d.ts
diff --git a/.config/coc/extensions/node_modules/coc-prettier/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.d.ts b/.config/coc/extensions/node_modules/coc-prettier/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.d.ts
new file mode 100644 (file)
index 0000000..248e8fb
--- /dev/null
@@ -0,0 +1,324 @@
+import { TSESTree, ParserServices } from '../ts-estree';
+import { ParserOptions as TSParserOptions } from './ParserOptions';
+import { RuleCreateFunction, RuleFix, RuleModule } from './Rule';
+import { Scope } from './Scope';
+import { SourceCode } from './SourceCode';
+declare class LinterBase {
+    /**
+     * Initialize the Linter.
+     * @param config the config object
+     */
+    constructor(config?: Linter.LinterOptions);
+    /**
+     * Define a new parser module
+     * @param parserId Name of the parser
+     * @param parserModule The parser object
+     */
+    defineParser(parserId: string, parserModule: Linter.ParserModule): void;
+    /**
+     * Defines a new linting rule.
+     * @param ruleId A unique rule identifier
+     * @param ruleModule Function from context to object mapping AST node types to event handlers
+     */
+    defineRule<TMessageIds extends string, TOptions extends readonly unknown[]>(ruleId: string, ruleModule: RuleModule<TMessageIds, TOptions> | RuleCreateFunction): void;
+    /**
+     * Defines many new linting rules.
+     * @param rulesToDefine map from unique rule identifier to rule
+     */
+    defineRules<TMessageIds extends string, TOptions extends readonly unknown[]>(rulesToDefine: Record<string, RuleModule<TMessageIds, TOptions> | RuleCreateFunction>): void;
+    /**
+     * Gets an object with all loaded rules.
+     * @returns All loaded rules
+     */
+    getRules(): Map<string, RuleModule<string, unknown[]>>;
+    /**
+     * Gets the `SourceCode` object representing the parsed source.
+     * @returns The `SourceCode` object.
+     */
+    getSourceCode(): SourceCode;
+    /**
+     * Verifies the text against the rules specified by the second argument.
+     * @param textOrSourceCode The text to parse or a SourceCode object.
+     * @param config An ESLintConfig instance to configure everything.
+     * @param filenameOrOptions The optional filename of the file being checked.
+     *        If this is not set, the filename will default to '<input>' in the rule context.
+     *        If this is an object, then it has "filename", "allowInlineConfig", and some properties.
+     * @returns The results as an array of messages or an empty array if no messages.
+     */
+    verify(textOrSourceCode: SourceCode | string, config: Linter.Config, filenameOrOptions?: string | Linter.VerifyOptions): Linter.LintMessage[];
+    /**
+     * Performs multiple autofix passes over the text until as many fixes as possible have been applied.
+     * @param text The source text to apply fixes to.
+     * @param config The ESLint config object to use.
+     * @param options The ESLint options object to use.
+     * @returns The result of the fix operation as returned from the SourceCodeFixer.
+     */
+    verifyAndFix(code: string, config: Linter.Config, options: Linter.FixOptions): Linter.FixReport;
+    /**
+     * The version from package.json.
+     */
+    readonly version: string;
+    /**
+     * The version from package.json.
+     */
+    static readonly version: string;
+}
+declare namespace Linter {
+    export interface LinterOptions {
+        /**
+         * path to a directory that should be considered as the current working directory.
+         */
+        cwd?: string;
+    }
+    export type Severity = 0 | 1 | 2;
+    export type SeverityString = 'off' | 'warn' | 'error';
+    export type RuleLevel = Severity | SeverityString;
+    export type RuleLevelAndOptions = [RuleLevel, ...unknown[]];
+    export type RuleEntry = RuleLevel | RuleLevelAndOptions;
+    export type RulesRecord = Partial<Record<string, RuleEntry>>;
+    interface BaseConfig {
+        $schema?: string;
+        /**
+         * The environment settings.
+         */
+        env?: {
+            [name: string]: boolean;
+        };
+        /**
+         * The path to other config files or the package name of shareable configs.
+         */
+        extends?: string | string[];
+        /**
+         * The global variable settings.
+         */
+        globals?: {
+            [name: string]: boolean;
+        };
+        /**
+         * The flag that disables directive comments.
+         */
+        noInlineConfig?: boolean;
+        /**
+         * The override settings per kind of files.
+         */
+        overrides?: ConfigOverride[];
+        /**
+         * The path to a parser or the package name of a parser.
+         */
+        parser?: string;
+        /**
+         * The parser options.
+         */
+        parserOptions?: ParserOptions;
+        /**
+         * The plugin specifiers.
+         */
+        plugins?: string[];
+        /**
+         * The processor specifier.
+         */
+        processor?: string;
+        /**
+         * The flag to report unused `eslint-disable` comments.
+         */
+        reportUnusedDisableDirectives?: boolean;
+        /**
+         * The rule settings.
+         */
+        rules?: RulesRecord;
+        /**
+         * The shared settings.
+         */
+        settings?: {
+            [name: string]: unknown;
+        };
+    }
+    export interface ConfigOverride extends BaseConfig {
+        excludedFiles?: string | string[];
+        files: string | string[];
+    }
+    export interface Config extends BaseConfig {
+        /**
+         * The glob patterns that ignore to lint.
+         */
+        ignorePatterns?: string | string[];
+        /**
+         * The root flag.
+         */
+        root?: boolean;
+    }
+    export type ParserOptions = TSParserOptions;
+    export interface VerifyOptions {
+        /**
+         * Allow/disallow inline comments' ability to change config once it is set. Defaults to true if not supplied.
+         * Useful if you want to validate JS without comments overriding rules.
+         */
+        allowInlineConfig?: boolean;
+        /**
+         * if `true` then the linter doesn't make `fix` properties into the lint result.
+         */
+        disableFixes?: boolean;
+        /**
+         * the filename of the source code.
+         */
+        filename?: string;
+        /**
+         * the predicate function that selects adopt code blocks.
+         */
+        filterCodeBlock?: (filename: string, text: string) => boolean;
+        /**
+         * postprocessor for report messages.
+         * If provided, this should accept an array of the message lists
+         * for each code block returned from the preprocessor, apply a mapping to
+         * the messages as appropriate, and return a one-dimensional array of
+         * messages.
+         */
+        postprocess?: Processor['postprocess'];
+        /**
+         * preprocessor for source text.
+         * If provided, this should accept a string of source text, and return an array of code blocks to lint.
+         */
+        preprocess?: Processor['preprocess'];
+        /**
+         * Adds reported errors for unused `eslint-disable` directives.
+         */
+        reportUnusedDisableDirectives?: boolean | SeverityString;
+    }
+    export interface FixOptions extends VerifyOptions {
+        /**
+         * Determines whether fixes should be applied.
+         */
+        fix?: boolean;
+    }
+    export interface LintSuggestion {
+        desc: string;
+        fix: RuleFix;
+        messageId?: string;
+    }
+    export interface LintMessage {
+        /**
+         * The 1-based column number.
+         */
+        column: number;
+        /**
+         * The 1-based column number of the end location.
+         */
+        endColumn?: number;
+        /**
+         * The 1-based line number of the end location.
+         */
+        endLine?: number;
+        /**
+         * If `true` then this is a fatal error.
+         */
+        fatal?: true;
+        /**
+         * Information for autofix.
+         */
+        fix?: RuleFix;
+        /**
+         * The 1-based line number.
+         */
+        line: number;
+        /**
+         * The error message.
+         */
+        message: string;
+        messageId?: string;
+        nodeType: string;
+        /**
+         * The ID of the rule which makes this message.
+         */
+        ruleId: string | null;
+        /**
+         * The severity of this message.
+         */
+        severity: Severity;
+        source: string | null;
+        /**
+         * Information for suggestions
+         */
+        suggestions?: LintSuggestion[];
+    }
+    export interface FixReport {
+        /**
+         * True, if the code was fixed
+         */
+        fixed: boolean;
+        /**
+         * Fixed code text (might be the same as input if no fixes were applied).
+         */
+        output: string;
+        /**
+         * Collection of all messages for the given code
+         */
+        messages: LintMessage[];
+    }
+    export type ParserModule = {
+        parse(text: string, options?: ParserOptions): TSESTree.Program;
+    } | {
+        parseForESLint(text: string, options?: ParserOptions): ESLintParseResult;
+    };
+    export interface ESLintParseResult {
+        ast: TSESTree.Program;
+        parserServices?: ParserServices;
+        scopeManager?: Scope.ScopeManager;
+        visitorKeys?: SourceCode.VisitorKeys;
+    }
+    export interface Processor {
+        /**
+         * The function to extract code blocks.
+         */
+        preprocess?: (text: string, filename: string) => Array<string | {
+            text: string;
+            filename: string;
+        }>;
+        /**
+         * The function to merge messages.
+         */
+        postprocess?: (messagesList: Linter.LintMessage[][], filename: string) => Linter.LintMessage[];
+        /**
+         * If `true` then it means the processor supports autofix.
+         */
+        supportsAutofix?: boolean;
+    }
+    export interface Environment {
+        /**
+         * The definition of global variables.
+         */
+        globals?: Record<string, Linter.Config>;
+        /**
+         * The parser options that will be enabled under this environment.
+         */
+        parserOptions?: ParserOptions;
+    }
+    export interface Plugin {
+        /**
+         * The definition of plugin configs.
+         */
+        configs?: Record<string, Linter.Config>;
+        /**
+         * The definition of plugin environments.
+         */
+        environments?: Record<string, Environment>;
+        /**
+         * The definition of plugin processors.
+         */
+        processors?: Record<string, Processor>;
+        /**
+         * The definition of plugin rules.
+         */
+        rules?: Record<string, RuleCreateFunction | RuleModule<string, unknown[]>>;
+    }
+    export {};
+}
+declare const Linter_base: typeof LinterBase;
+/**
+ * The Linter object does the actual evaluation of the JavaScript code. It doesn't do any filesystem operations, it
+ * simply parses and reports on the code. In particular, the Linter object does not process configuration objects
+ * or files.
+ */
+declare class Linter extends Linter_base {
+}
+export { Linter };
+//# sourceMappingURL=Linter.d.ts.map
\ No newline at end of file