import type { ESLintExtendedProgram, ESLintProgram } from "."; import type * as tsESLintParser from "@typescript-eslint/parser"; type TSESLintParser = typeof tsESLintParser; /** * The type of basic ESLint custom parser. * e.g. espree */ export type BasicParserObject = { parse(code: string, options: any): ESLintProgram; parseForESLint: undefined; }; /** * The type of ESLint custom parser enhanced for ESLint. * e.g. @babel/eslint-parser, @typescript-eslint/parser */ export type EnhancedParserObject = { parseForESLint(code: string, options: any): ESLintExtendedProgram; parse: undefined; }; /** * The type of ESLint (custom) parsers. */ export type ParserObject = EnhancedParserObject | BasicParserObject; /** Checks whether given object is ParserObject */ export declare function isParserObject(value: unknown): value is ParserObject; /** Checks whether given object is EnhancedParserObject */ export declare function isEnhancedParserObject(value: unknown): value is EnhancedParserObject; /** Checks whether given object is BasicParserObject */ export declare function isBasicParserObject(value: unknown): value is BasicParserObject; /** Checks whether given object maybe "@typescript-eslint/parser" */ export declare function maybeTSESLintParserObject(value: unknown): value is TSESLintParser; /** Checks whether given object is "@typescript-eslint/parser" */ export declare function isTSESLintParserObject(value: unknown): value is TSESLintParser; export {};