For AI agents: the complete documentation index is available at https://rslint.rs/llms.txt, the full documentation bundle is available at https://rslint.rs/llms-full.txt, and this page is available as Markdown at https://rslint.rs/rules/typescript-eslint/no-var-requires.md.
close

no-var-requires

Added in v0.1.4

Configuration

rslint.config.ts
import { defineConfig, ts } from '@rslint/core';

export default defineConfig([
  ts.configs.recommended,
  {
    rules: {
      '@typescript-eslint/no-var-requires': 'error',
    },
  },
]);

Rule Details

Disallow require statements except in import statements. In other words, the use of forms such as var foo = require("foo") is banned. Instead, use ES6-style imports or TypeScript's import foo = require("foo") syntax.

Standalone require() calls (as expression statements) and TypeScript import ... = require(...) declarations are allowed.

Examples of incorrect code for this rule:

var foo = require('foo');
const foo = require('foo');
let foo = require('foo');

Examples of correct code for this rule:

import foo from 'foo';
import foo = require('foo');
require('foo');

import { foo } from 'foo';

Original Documentation