docs: function runLint (files, config, reporter, bin) {
    reporter = reporter || DEFAULT_REPORTER;
    // Use the optional `config` file, otherwise eslint will automatically
    // look for configurations files in the current working directory
    const eslintConfig = config ? { configFile: config } : {};
    // Use the optional eslint bin path to resolve eslint or try to find
    // `eslint` in the `node_modules` tree. This makes linting work inside
    // symlinked packages like this monorepo ;)
    const CLIEngine = bin
      ? require(bin).CLIEngine
      : runtimeRequire('eslint', __filename).CLIEngine;
  
    const eslintCLI = new CLIEngine(eslintConfig);
    const report = eslintCLI.executeOnFiles(files);
  
    if (report.errorCount > 0 || report.warningCount > 0) {
      printLintReportResults(report, reporter);
      return false;
    }
  
    return true;
  }