eslint-flat-config-airbnb
Version:
A mostly reasonable approach to JavaScript and React using Airbnb's ESLint config, updated for ESLint 9+
155 lines (154 loc) • 4.93 kB
TypeScript
export default es6;
declare namespace es6 {
namespace languageOptions {
let globals: {
Array: false;
ArrayBuffer: false;
Boolean: false;
DataView: false;
Date: false;
decodeURI: false;
decodeURIComponent: false;
encodeURI: false;
encodeURIComponent: false;
Error: false;
escape: false;
eval: false;
EvalError: false;
Float32Array: false;
Float64Array: false;
Function: false;
Infinity: false;
Int16Array: false;
Int32Array: false;
Int8Array: false;
Intl: false;
isFinite: false;
isNaN: false;
JSON: false;
Map: false;
Math: false;
NaN: false;
Number: false;
Object: false;
parseFloat: false;
parseInt: false;
Promise: false;
Proxy: false;
RangeError: false;
ReferenceError: false;
Reflect: false;
RegExp: false;
Set: false;
String: false;
Symbol: false;
SyntaxError: false;
TypeError: false;
Uint16Array: false;
Uint32Array: false;
Uint8Array: false;
Uint8ClampedArray: false;
undefined: false;
unescape: false;
URIError: false;
WeakMap: false;
WeakSet: false;
};
namespace parserOptions {
let ecmaVersion: number;
let sourceType: string;
namespace ecmaFeatures {
let generators: boolean;
let objectLiteralDuplicateProperties: boolean;
}
}
}
let plugins: {
'@stylistic': {
rules: import("@stylistic/eslint-plugin").Rules;
configs: import("eslint").ESLint.Plugin["configs"] & import("@stylistic/eslint-plugin").Configs;
};
};
let rules: {
'arrow-body-style': (string | {
requireReturnForObjectLiteral: boolean;
})[];
'@stylistic/arrow-parens': string[];
'@stylistic/arrow-spacing': (string | {
before: boolean;
after: boolean;
})[];
'constructor-super': string;
'@stylistic/generator-star-spacing': (string | {
before: boolean;
after: boolean;
})[];
'no-class-assign': string;
'@stylistic/no-confusing-arrow': (string | {
allowParens: boolean;
})[];
'no-const-assign': string;
'no-dupe-class-members': string;
'no-duplicate-imports': string;
'no-new-native-nonconstructor': string;
'no-restricted-exports': (string | {
restrictedNamedExports: string[];
})[];
'no-restricted-imports': (string | {
paths: never[];
patterns: never[];
})[];
'no-this-before-super': string;
'no-useless-computed-key': string;
'no-useless-constructor': string;
'no-useless-rename': (string | {
ignoreDestructuring: boolean;
ignoreImport: boolean;
ignoreExport: boolean;
})[];
'no-var': string;
'object-shorthand': (string | {
ignoreConstructors: boolean;
avoidQuotes: boolean;
})[];
'prefer-arrow-callback': (string | {
allowNamedFunctions: boolean;
allowUnboundThis: boolean;
})[];
'prefer-const': (string | {
destructuring: string;
ignoreReadBeforeAssign: boolean;
})[];
'prefer-destructuring': (string | {
VariableDeclarator: {
array: boolean;
object: boolean;
};
AssignmentExpression: {
array: boolean;
object: boolean;
};
enforceForRenamedProperties?: undefined;
} | {
enforceForRenamedProperties: boolean;
VariableDeclarator?: undefined;
AssignmentExpression?: undefined;
})[];
'prefer-numeric-literals': string;
'@stylistic/prefer-reflect': string;
'prefer-rest-params': string;
'prefer-spread': string;
'prefer-template': string;
'require-yield': string;
'@stylistic/rest-spread-spacing': string[];
'sort-imports': (string | {
ignoreCase: boolean;
ignoreDeclarationSort: boolean;
ignoreMemberSort: boolean;
memberSyntaxSortOrder: string[];
})[];
'symbol-description': string;
'@stylistic/template-curly-spacing': string;
'@stylistic/yield-star-spacing': string[];
};
}