@stencil/eslint-plugin
Version:
ESLint rules specific to Stencil JS projects.
127 lines (126 loc) • 4.44 kB
TypeScript
import { Linter } from "eslint";
//#region src/index.d.ts
declare const plugin: {
rules: {
"ban-side-effects": import("eslint").Rule.RuleModule;
"ban-default-true": import("eslint").Rule.RuleModule;
"ban-exported-const-enums": import("eslint").Rule.RuleModule;
"dependency-suggestions": import("eslint").Rule.RuleModule;
"enforce-slot-jsdoc": import("eslint").Rule.RuleModule;
"strict-boolean-conditions": import("eslint").Rule.RuleModule;
"async-methods": import("eslint").Rule.RuleModule;
"ban-prefix": import("eslint").Rule.RuleModule;
"class-pattern": import("eslint").Rule.RuleModule;
"decorators-context": import("eslint").Rule.RuleModule;
"decorators-style": import("eslint").Rule.RuleModule;
"element-type": import("eslint").Rule.RuleModule;
"host-data-deprecated": import("eslint").Rule.RuleModule;
"methods-must-be-public": import("eslint").Rule.RuleModule;
"no-unused-watch": import("eslint").Rule.RuleModule;
"own-methods-must-be-private": import("eslint").Rule.RuleModule;
"own-props-must-be-private": import("eslint").Rule.RuleModule;
"prefer-vdom-listener": import("eslint").Rule.RuleModule;
"props-must-be-public": import("eslint").Rule.RuleModule;
"props-must-be-readonly": import("eslint").Rule.RuleModule;
"render-returns-host": import("eslint").Rule.RuleModule;
"required-jsdoc": import("eslint").Rule.RuleModule;
"required-prefix": import("eslint").Rule.RuleModule;
"reserved-member-names": import("eslint").Rule.RuleModule;
"single-export": import("eslint").Rule.RuleModule;
"strict-mutable": import("eslint").Rule.RuleModule;
};
configs: {
base: {
overrides: {
files: string[];
parser: string;
parserOptions: {
ecmaVersion: 2018;
sourceType: "module";
ecmaFeatures: {
jsx: true;
};
};
env: {
es2020: true;
browser: true;
};
plugins: string[];
rules: {
"stencil/async-methods": 2;
"stencil/ban-prefix": [2, string[]];
"stencil/decorators-context": 2;
"stencil/element-type": 2;
"stencil/host-data-deprecated": 2;
"stencil/methods-must-be-public": 2;
"stencil/no-unused-watch": 2;
"stencil/prefer-vdom-listener": 2;
"stencil/props-must-be-public": 2;
"stencil/render-returns-host": 2;
"stencil/reserved-member-names": 2;
"stencil/single-export": 2;
};
}[];
settings: {
react: {
version: string;
};
};
};
recommended: {
plugins: string[];
extends: string[];
rules: {
"stencil/strict-boolean-conditions": 1;
"stencil/ban-default-true": 1;
"stencil/ban-exported-const-enums": 2;
"stencil/ban-side-effects": 2;
"stencil/strict-mutable": 2;
"stencil/decorators-style": ["error", {
prop: string;
state: string;
element: string;
event: string;
method: string;
watch: string;
listen: string;
}];
"stencil/own-methods-must-be-private": 1;
"stencil/own-props-must-be-private": 1;
"stencil/dependency-suggestions": 1;
"stencil/required-jsdoc": 1;
"stencil/enforce-slot-jsdoc": 1;
"react/jsx-no-bind": [1, {
ignoreRefs: boolean;
}];
};
};
strict: {
extends: string[];
rules: {
"stencil/ban-default-true": 2;
"stencil/strict-boolean-conditions": 2;
"@typescript-eslint/explicit-function-return-type": 0;
"@typescript-eslint/no-this-alias": 0;
"@typescript-eslint/no-non-null-assertion": 0;
"@typescript-eslint/no-unused-vars": 0;
"@typescript-eslint/no-empty-interface": 0;
"@typescript-eslint/no-use-before-define": 0;
"@typescript-eslint/no-explicit-any": 0;
"no-shadow": 2;
"no-var": 2;
"prefer-object-spread": 2;
"no-nested-ternary": 2;
"no-duplicate-imports": 2;
curly: [2, string];
};
};
oxlint: {
[x: string]: ("off" | "warn" | "error") | ["off" | "warn" | "error", ...unknown[]];
};
flat: Record<string, Linter.Config>;
};
};
//#endregion
export { plugin as default };
//# sourceMappingURL=index.d.ts.map