• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/**
2 * @fileoverview Expose out ESLint and CLI to require.
3 * @author Ian Christian Myers
4 */
5
6"use strict";
7
8const { CLIEngine } = require("./cli-engine");
9const { ESLint } = require("./eslint");
10const { Linter } = require("./linter");
11const { RuleTester } = require("./rule-tester");
12const { SourceCode } = require("./source-code");
13
14module.exports = {
15    Linter,
16    CLIEngine,
17    ESLint,
18    RuleTester,
19    SourceCode
20};
21
22// DOTO: remove deprecated API.
23let deprecatedLinterInstance = null;
24
25Object.defineProperty(module.exports, "linter", {
26    enumerable: false,
27    get() {
28        if (!deprecatedLinterInstance) {
29            deprecatedLinterInstance = new Linter();
30        }
31
32        return deprecatedLinterInstance;
33    }
34});
35