├── .editorconfig
├── .eslintrc.cjs
├── .github
├── CODEOWNERS
├── FUNDING.yml
├── renovate.json5
└── workflows
│ ├── ci.yml
│ └── publish.yml
├── .gitignore
├── .prettierignore
├── .prettierrc.cjs
├── LICENSE
├── README.md
├── package.json
├── pnpm-lock.yaml
├── pnpm-workspace.yaml
├── scripts
├── clean.ts
└── generate-plugin-dts.ts
├── tsconfig.json
└── types
├── deprecation
├── README.md
├── index.d.ts
├── package.json
├── rules
│ └── deprecation.d.ts
└── types.d.ts
├── import
├── README.md
├── index.d.ts
├── package.json
├── rules
│ ├── consistent-type-specifier-style.d.ts
│ ├── default.d.ts
│ ├── dynamic-import-chunkname.d.ts
│ ├── export.d.ts
│ ├── exports-last.d.ts
│ ├── extensions.d.ts
│ ├── first.d.ts
│ ├── group-exports.d.ts
│ ├── imports-first.d.ts
│ ├── max-dependencies.d.ts
│ ├── named.d.ts
│ ├── namespace.d.ts
│ ├── newline-after-import.d.ts
│ ├── no-absolute-path.d.ts
│ ├── no-amd.d.ts
│ ├── no-anonymous-default-export.d.ts
│ ├── no-commonjs.d.ts
│ ├── no-cycle.d.ts
│ ├── no-default-export.d.ts
│ ├── no-deprecated.d.ts
│ ├── no-duplicates.d.ts
│ ├── no-dynamic-require.d.ts
│ ├── no-empty-named-blocks.d.ts
│ ├── no-extraneous-dependencies.d.ts
│ ├── no-import-module-exports.d.ts
│ ├── no-internal-modules.d.ts
│ ├── no-mutable-exports.d.ts
│ ├── no-named-as-default-member.d.ts
│ ├── no-named-as-default.d.ts
│ ├── no-named-default.d.ts
│ ├── no-named-export.d.ts
│ ├── no-namespace.d.ts
│ ├── no-nodejs-modules.d.ts
│ ├── no-relative-packages.d.ts
│ ├── no-relative-parent-imports.d.ts
│ ├── no-restricted-paths.d.ts
│ ├── no-self-import.d.ts
│ ├── no-unassigned-import.d.ts
│ ├── no-unresolved.d.ts
│ ├── no-unused-modules.d.ts
│ ├── no-useless-path-segments.d.ts
│ ├── no-webpack-loader-syntax.d.ts
│ ├── order.d.ts
│ ├── prefer-default-export.d.ts
│ └── unambiguous.d.ts
├── settings.d.ts
└── types.d.ts
├── jsdoc
├── README.md
├── index.d.ts
├── package.json
├── rules
│ ├── check-access.d.ts
│ ├── check-alignment.d.ts
│ ├── check-examples.d.ts
│ ├── check-indentation.d.ts
│ ├── check-line-alignment.d.ts
│ ├── check-param-names.d.ts
│ ├── check-property-names.d.ts
│ ├── check-syntax.d.ts
│ ├── check-tag-names.d.ts
│ ├── check-types.d.ts
│ ├── check-values.d.ts
│ ├── empty-tags.d.ts
│ ├── implements-on-classes.d.ts
│ ├── imports-as-dependencies.d.ts
│ ├── informative-docs.d.ts
│ ├── match-description.d.ts
│ ├── match-name.d.ts
│ ├── multiline-blocks.d.ts
│ ├── no-bad-blocks.d.ts
│ ├── no-blank-block-descriptions.d.ts
│ ├── no-blank-blocks.d.ts
│ ├── no-defaults.d.ts
│ ├── no-missing-syntax.d.ts
│ ├── no-multi-asterisks.d.ts
│ ├── no-restricted-syntax.d.ts
│ ├── no-types.d.ts
│ ├── no-undefined-types.d.ts
│ ├── require-asterisk-prefix.d.ts
│ ├── require-description-complete-sentence.d.ts
│ ├── require-description.d.ts
│ ├── require-example.d.ts
│ ├── require-file-overview.d.ts
│ ├── require-hyphen-before-param-description.d.ts
│ ├── require-jsdoc.d.ts
│ ├── require-param-description.d.ts
│ ├── require-param-name.d.ts
│ ├── require-param-type.d.ts
│ ├── require-param.d.ts
│ ├── require-property-description.d.ts
│ ├── require-property-name.d.ts
│ ├── require-property-type.d.ts
│ ├── require-property.d.ts
│ ├── require-returns-check.d.ts
│ ├── require-returns-description.d.ts
│ ├── require-returns-type.d.ts
│ ├── require-returns.d.ts
│ ├── require-throws.d.ts
│ ├── require-yields-check.d.ts
│ ├── require-yields.d.ts
│ ├── sort-tags.d.ts
│ ├── tag-lines.d.ts
│ ├── text-escaping.d.ts
│ └── valid-types.d.ts
├── settings.d.ts
└── types.d.ts
├── prettier
├── README.md
├── index.d.ts
├── package.json
├── rules
│ └── prettier.d.ts
└── types.d.ts
├── typescript-eslint
├── README.md
├── index.d.ts
├── package.json
├── parser-options.d.ts
├── parsers.d.ts
├── rules
│ ├── adjacent-overload-signatures.d.ts
│ ├── array-type.d.ts
│ ├── await-thenable.d.ts
│ ├── ban-ts-comment.d.ts
│ ├── ban-tslint-comment.d.ts
│ ├── ban-types.d.ts
│ ├── block-spacing.d.ts
│ ├── brace-style.d.ts
│ ├── class-literal-property-style.d.ts
│ ├── class-methods-use-this.d.ts
│ ├── comma-dangle.d.ts
│ ├── comma-spacing.d.ts
│ ├── consistent-generic-constructors.d.ts
│ ├── consistent-indexed-object-style.d.ts
│ ├── consistent-return.d.ts
│ ├── consistent-type-assertions.d.ts
│ ├── consistent-type-definitions.d.ts
│ ├── consistent-type-exports.d.ts
│ ├── consistent-type-imports.d.ts
│ ├── default-param-last.d.ts
│ ├── dot-notation.d.ts
│ ├── explicit-function-return-type.d.ts
│ ├── explicit-member-accessibility.d.ts
│ ├── explicit-module-boundary-types.d.ts
│ ├── func-call-spacing.d.ts
│ ├── indent.d.ts
│ ├── init-declarations.d.ts
│ ├── key-spacing.d.ts
│ ├── keyword-spacing.d.ts
│ ├── lines-around-comment.d.ts
│ ├── lines-between-class-members.d.ts
│ ├── max-params.d.ts
│ ├── member-delimiter-style.d.ts
│ ├── member-ordering.d.ts
│ ├── method-signature-style.d.ts
│ ├── naming-convention.d.ts
│ ├── no-array-constructor.d.ts
│ ├── no-array-delete.d.ts
│ ├── no-base-to-string.d.ts
│ ├── no-confusing-non-null-assertion.d.ts
│ ├── no-confusing-void-expression.d.ts
│ ├── no-dupe-class-members.d.ts
│ ├── no-duplicate-enum-values.d.ts
│ ├── no-duplicate-type-constituents.d.ts
│ ├── no-dynamic-delete.d.ts
│ ├── no-empty-function.d.ts
│ ├── no-empty-interface.d.ts
│ ├── no-explicit-any.d.ts
│ ├── no-extra-non-null-assertion.d.ts
│ ├── no-extra-parens.d.ts
│ ├── no-extra-semi.d.ts
│ ├── no-extraneous-class.d.ts
│ ├── no-floating-promises.d.ts
│ ├── no-for-in-array.d.ts
│ ├── no-implied-eval.d.ts
│ ├── no-import-type-side-effects.d.ts
│ ├── no-inferrable-types.d.ts
│ ├── no-invalid-this.d.ts
│ ├── no-invalid-void-type.d.ts
│ ├── no-loop-func.d.ts
│ ├── no-loss-of-precision.d.ts
│ ├── no-magic-numbers.d.ts
│ ├── no-meaningless-void-operator.d.ts
│ ├── no-misused-new.d.ts
│ ├── no-misused-promises.d.ts
│ ├── no-mixed-enums.d.ts
│ ├── no-namespace.d.ts
│ ├── no-non-null-asserted-nullish-coalescing.d.ts
│ ├── no-non-null-asserted-optional-chain.d.ts
│ ├── no-non-null-assertion.d.ts
│ ├── no-redeclare.d.ts
│ ├── no-redundant-type-constituents.d.ts
│ ├── no-require-imports.d.ts
│ ├── no-restricted-imports.d.ts
│ ├── no-shadow.d.ts
│ ├── no-this-alias.d.ts
│ ├── no-throw-literal.d.ts
│ ├── no-type-alias.d.ts
│ ├── no-unnecessary-boolean-literal-compare.d.ts
│ ├── no-unnecessary-condition.d.ts
│ ├── no-unnecessary-qualifier.d.ts
│ ├── no-unnecessary-type-arguments.d.ts
│ ├── no-unnecessary-type-assertion.d.ts
│ ├── no-unnecessary-type-constraint.d.ts
│ ├── no-unsafe-argument.d.ts
│ ├── no-unsafe-assignment.d.ts
│ ├── no-unsafe-call.d.ts
│ ├── no-unsafe-declaration-merging.d.ts
│ ├── no-unsafe-enum-comparison.d.ts
│ ├── no-unsafe-member-access.d.ts
│ ├── no-unsafe-return.d.ts
│ ├── no-unsafe-unary-minus.d.ts
│ ├── no-unused-expressions.d.ts
│ ├── no-unused-vars.d.ts
│ ├── no-use-before-define.d.ts
│ ├── no-useless-constructor.d.ts
│ ├── no-useless-empty-export.d.ts
│ ├── no-useless-template-literals.d.ts
│ ├── no-var-requires.d.ts
│ ├── non-nullable-type-assertion-style.d.ts
│ ├── object-curly-spacing.d.ts
│ ├── only-throw-error.d.ts
│ ├── padding-line-between-statements.d.ts
│ ├── parameter-properties.d.ts
│ ├── prefer-as-const.d.ts
│ ├── prefer-destructuring.d.ts
│ ├── prefer-enum-initializers.d.ts
│ ├── prefer-find.d.ts
│ ├── prefer-for-of.d.ts
│ ├── prefer-function-type.d.ts
│ ├── prefer-includes.d.ts
│ ├── prefer-literal-enum-member.d.ts
│ ├── prefer-namespace-keyword.d.ts
│ ├── prefer-nullish-coalescing.d.ts
│ ├── prefer-optional-chain.d.ts
│ ├── prefer-promise-reject-errors.d.ts
│ ├── prefer-readonly-parameter-types.d.ts
│ ├── prefer-readonly.d.ts
│ ├── prefer-reduce-type-parameter.d.ts
│ ├── prefer-regexp-exec.d.ts
│ ├── prefer-return-this-type.d.ts
│ ├── prefer-string-starts-ends-with.d.ts
│ ├── prefer-ts-expect-error.d.ts
│ ├── promise-function-async.d.ts
│ ├── quotes.d.ts
│ ├── require-array-sort-compare.d.ts
│ ├── require-await.d.ts
│ ├── restrict-plus-operands.d.ts
│ ├── restrict-template-expressions.d.ts
│ ├── return-await.d.ts
│ ├── semi.d.ts
│ ├── sort-type-constituents.d.ts
│ ├── space-before-blocks.d.ts
│ ├── space-before-function-paren.d.ts
│ ├── space-infix-ops.d.ts
│ ├── strict-boolean-expressions.d.ts
│ ├── switch-exhaustiveness-check.d.ts
│ ├── triple-slash-reference.d.ts
│ ├── type-annotation-spacing.d.ts
│ ├── typedef.d.ts
│ ├── unbound-method.d.ts
│ ├── unified-signatures.d.ts
│ └── use-unknown-in-catch-callback-variable.d.ts
└── types.d.ts
└── unicorn
├── README.md
├── index.d.ts
├── package.json
├── rules
├── better-regex.d.ts
├── catch-error-name.d.ts
├── consistent-destructuring.d.ts
├── consistent-function-scoping.d.ts
├── custom-error-definition.d.ts
├── empty-brace-spaces.d.ts
├── error-message.d.ts
├── escape-case.d.ts
├── expiring-todo-comments.d.ts
├── explicit-length-check.d.ts
├── filename-case.d.ts
├── import-index.d.ts
├── import-style.d.ts
├── new-for-builtins.d.ts
├── no-abusive-eslint-disable.d.ts
├── no-anonymous-default-export.d.ts
├── no-array-callback-reference.d.ts
├── no-array-for-each.d.ts
├── no-array-instanceof.d.ts
├── no-array-method-this-argument.d.ts
├── no-array-push-push.d.ts
├── no-array-reduce.d.ts
├── no-await-expression-member.d.ts
├── no-await-in-promise-methods.d.ts
├── no-console-spaces.d.ts
├── no-document-cookie.d.ts
├── no-empty-file.d.ts
├── no-fn-reference-in-iterator.d.ts
├── no-for-loop.d.ts
├── no-hex-escape.d.ts
├── no-instanceof-array.d.ts
├── no-invalid-remove-event-listener.d.ts
├── no-keyword-prefix.d.ts
├── no-lonely-if.d.ts
├── no-negated-condition.d.ts
├── no-nested-ternary.d.ts
├── no-new-array.d.ts
├── no-new-buffer.d.ts
├── no-null.d.ts
├── no-object-as-default-parameter.d.ts
├── no-process-exit.d.ts
├── no-reduce.d.ts
├── no-single-promise-in-promise-methods.d.ts
├── no-static-only-class.d.ts
├── no-thenable.d.ts
├── no-this-assignment.d.ts
├── no-typeof-undefined.d.ts
├── no-unnecessary-await.d.ts
├── no-unnecessary-polyfills.d.ts
├── no-unreadable-array-destructuring.d.ts
├── no-unreadable-iife.d.ts
├── no-unsafe-regex.d.ts
├── no-unused-properties.d.ts
├── no-useless-fallback-in-spread.d.ts
├── no-useless-length-check.d.ts
├── no-useless-promise-resolve-reject.d.ts
├── no-useless-spread.d.ts
├── no-useless-switch-case.d.ts
├── no-useless-undefined.d.ts
├── no-zero-fractions.d.ts
├── number-literal-case.d.ts
├── numeric-separators-style.d.ts
├── prefer-add-event-listener.d.ts
├── prefer-array-find.d.ts
├── prefer-array-flat-map.d.ts
├── prefer-array-flat.d.ts
├── prefer-array-index-of.d.ts
├── prefer-array-some.d.ts
├── prefer-at.d.ts
├── prefer-blob-reading-methods.d.ts
├── prefer-code-point.d.ts
├── prefer-dataset.d.ts
├── prefer-date-now.d.ts
├── prefer-default-parameters.d.ts
├── prefer-dom-node-append.d.ts
├── prefer-dom-node-dataset.d.ts
├── prefer-dom-node-remove.d.ts
├── prefer-dom-node-text-content.d.ts
├── prefer-event-key.d.ts
├── prefer-event-target.d.ts
├── prefer-exponentiation-operator.d.ts
├── prefer-export-from.d.ts
├── prefer-flat-map.d.ts
├── prefer-includes.d.ts
├── prefer-json-parse-buffer.d.ts
├── prefer-keyboard-event-key.d.ts
├── prefer-logical-operator-over-ternary.d.ts
├── prefer-math-trunc.d.ts
├── prefer-modern-dom-apis.d.ts
├── prefer-modern-math-apis.d.ts
├── prefer-module.d.ts
├── prefer-native-coercion-functions.d.ts
├── prefer-negative-index.d.ts
├── prefer-node-append.d.ts
├── prefer-node-protocol.d.ts
├── prefer-node-remove.d.ts
├── prefer-number-properties.d.ts
├── prefer-object-from-entries.d.ts
├── prefer-object-has-own.d.ts
├── prefer-optional-catch-binding.d.ts
├── prefer-prototype-methods.d.ts
├── prefer-query-selector.d.ts
├── prefer-reflect-apply.d.ts
├── prefer-regexp-test.d.ts
├── prefer-replace-all.d.ts
├── prefer-set-has.d.ts
├── prefer-set-size.d.ts
├── prefer-spread.d.ts
├── prefer-starts-ends-with.d.ts
├── prefer-string-replace-all.d.ts
├── prefer-string-slice.d.ts
├── prefer-string-starts-ends-with.d.ts
├── prefer-string-trim-start-end.d.ts
├── prefer-switch.d.ts
├── prefer-ternary.d.ts
├── prefer-text-content.d.ts
├── prefer-top-level-await.d.ts
├── prefer-trim-start-end.d.ts
├── prefer-type-error.d.ts
├── prevent-abbreviations.d.ts
├── regex-shorthand.d.ts
├── relative-url-style.d.ts
├── require-array-join-separator.d.ts
├── require-number-to-fixed-digits-argument.d.ts
├── require-post-message-target-origin.d.ts
├── string-content.d.ts
├── switch-case-braces.d.ts
├── template-indent.d.ts
├── text-encoding-identifier-case.d.ts
└── throw-new-error.d.ts
└── types.d.ts
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | indent_style = space
5 | indent_size = 2
6 | end_of_line = lf
7 | charset = utf-8
8 | trim_trailing_whitespace = true
9 | insert_final_newline = true
10 |
11 | [*.md]
12 | trim_trailing_whitespace = false
13 |
--------------------------------------------------------------------------------
/.eslintrc.cjs:
--------------------------------------------------------------------------------
1 | // @ts-check
2 | const { defineConfig } = require('eslint-define-config');
3 | const { readGitignoreFiles } = require('eslint-gitignore');
4 |
5 | ///
6 | ///
7 | ///
8 |
9 | module.exports = defineConfig({
10 | ignorePatterns: [
11 | ...readGitignoreFiles(),
12 | '.eslintrc.cjs', // Skip self linting
13 | ],
14 | root: true,
15 | env: {
16 | browser: true,
17 | node: true,
18 | },
19 | reportUnusedDisableDirectives: true,
20 | extends: [
21 | 'eslint:recommended',
22 | 'plugin:@typescript-eslint/recommended',
23 | 'plugin:@typescript-eslint/recommended-type-checked',
24 | 'plugin:prettier/recommended',
25 | 'plugin:unicorn/recommended',
26 | ],
27 | parser: '@typescript-eslint/parser',
28 | parserOptions: {
29 | project: ['./tsconfig.json'],
30 | sourceType: 'module',
31 | warnOnUnsupportedTypeScriptVersion: false,
32 | },
33 | plugins: ['@typescript-eslint', 'prettier'],
34 | rules: {
35 | eqeqeq: ['error', 'always', { null: 'ignore' }],
36 | 'no-else-return': 'error',
37 | 'prefer-template': 'error',
38 |
39 | 'unicorn/import-style': [
40 | 'error',
41 | {
42 | styles: {
43 | 'node:path': {
44 | named: true,
45 | },
46 | },
47 | },
48 | ],
49 | 'unicorn/no-nested-ternary': 'off',
50 | 'unicorn/no-null': 'off',
51 | 'unicorn/number-literal-case': 'off',
52 |
53 | '@typescript-eslint/array-type': [
54 | 'error',
55 | { default: 'array-simple', readonly: 'generic' },
56 | ],
57 | '@typescript-eslint/consistent-type-imports': 'error',
58 | '@typescript-eslint/explicit-module-boundary-types': 'error',
59 | '@typescript-eslint/naming-convention': [
60 | 'error',
61 | {
62 | format: ['PascalCase'],
63 | selector: ['class', 'interface', 'typeAlias', 'enumMember'],
64 | leadingUnderscore: 'forbid',
65 | trailingUnderscore: 'forbid',
66 | },
67 | {
68 | format: ['PascalCase'],
69 | selector: ['typeParameter'],
70 | prefix: ['T'],
71 | leadingUnderscore: 'forbid',
72 | trailingUnderscore: 'forbid',
73 | },
74 | ],
75 | '@typescript-eslint/no-inferrable-types': [
76 | 'error',
77 | { ignoreParameters: true },
78 | ],
79 | '@typescript-eslint/no-unsafe-argument': 'error',
80 | '@typescript-eslint/no-unsafe-assignment': 'off',
81 | '@typescript-eslint/no-unsafe-call': 'off',
82 | '@typescript-eslint/no-unsafe-member-access': 'off',
83 | '@typescript-eslint/no-unsafe-return': 'error',
84 | '@typescript-eslint/padding-line-between-statements': [
85 | 'error',
86 | { blankLine: 'always', prev: 'block-like', next: '*' },
87 | ],
88 | '@typescript-eslint/prefer-regexp-exec': 'error',
89 | '@typescript-eslint/restrict-template-expressions': [
90 | 'error',
91 | { allowNumber: true, allowBoolean: true },
92 | ],
93 | '@typescript-eslint/unbound-method': 'off',
94 | },
95 | overrides: [
96 | {
97 | files: ['types/**/*.d.ts'],
98 | rules: {
99 | 'unicorn/prevent-abbreviations': 'off',
100 | },
101 | },
102 | ],
103 | });
104 |
--------------------------------------------------------------------------------
/.github/CODEOWNERS:
--------------------------------------------------------------------------------
1 | # Owner
2 | * @Shinigami92
3 |
--------------------------------------------------------------------------------
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | github: [Shinigami92]
2 | custom: ['https://www.paypal.com/donate?hosted_button_id=L7GY729FBKTZY']
3 |
--------------------------------------------------------------------------------
/.github/renovate.json5:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://docs.renovatebot.com/renovate-schema.json",
3 | "extends": [
4 | "config:best-practices",
5 | "schedule:earlyMondays",
6 | "group:allNonMajor",
7 | ":prHourlyLimitNone"
8 | ],
9 | "labels": ["dependencies"],
10 | "lockFileMaintenance": {
11 | "enabled": true
12 | },
13 | "reviewersFromCodeOwners": true,
14 | "rangeStrategy": "bump",
15 | "packageRules": [
16 | {
17 | "groupName": "devDependencies",
18 | "matchDepTypes": ["devDependencies"],
19 | "rangeStrategy": "bump"
20 | },
21 | {
22 | "groupName": "dependencies",
23 | "matchDepTypes": ["dependencies"],
24 | "rangeStrategy": "replace"
25 | },
26 | {
27 | "groupName": "peerDependencies",
28 | "matchDepTypes": ["peerDependencies"],
29 | "rangeStrategy": "widen"
30 | },
31 | {
32 | "groupName": "engines",
33 | "matchDepTypes": ["engines"],
34 | "rangeStrategy": "replace"
35 | },
36 | {
37 | "groupName": "eslint",
38 | "matchPackagePrefixes": [
39 | "@eslint-types/",
40 | "@typescript-eslint/",
41 | "eslint"
42 | ]
43 | },
44 | {
45 | "groupName": "vitest",
46 | "matchPackagePrefixes": ["@vitest/", "vitest"]
47 | },
48 | {
49 | "groupName": "prettier",
50 | "matchPackageNames": ["prettier"]
51 | },
52 | {
53 | "groupName": "typescript",
54 | "matchPackageNames": ["typescript"]
55 | }
56 | ],
57 | "vulnerabilityAlerts": {
58 | "labels": ["security"],
59 | "assigneesFromCodeOwners": true
60 | }
61 | }
62 |
--------------------------------------------------------------------------------
/.github/workflows/ci.yml:
--------------------------------------------------------------------------------
1 | name: CI
2 |
3 | on:
4 | push:
5 | branches:
6 | - main
7 | pull_request:
8 |
9 | jobs:
10 | lint:
11 | runs-on: ubuntu-latest
12 | name: 'Lint: node-20, ubuntu-latest'
13 | steps:
14 | - name: Checkout
15 | uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
16 |
17 | - name: Install pnpm
18 | uses: pnpm/action-setup@v2
19 |
20 | - name: Set node version to 20
21 | uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4
22 | with:
23 | node-version: 20
24 | cache: 'pnpm'
25 |
26 | - name: Prepare
27 | run: pnpm install --frozen-lockfile
28 |
29 | - name: Check formatting
30 | run: pnpm prettier --check .
31 |
32 | - name: Lint
33 | run: pnpm run lint
34 |
35 | - name: Check types
36 | run: pnpm run ts-check
37 |
--------------------------------------------------------------------------------
/.github/workflows/publish.yml:
--------------------------------------------------------------------------------
1 | name: Publish
2 |
3 | on:
4 | workflow_dispatch:
5 |
6 | jobs:
7 | release:
8 | if: github.ref == 'refs/heads/main'
9 | runs-on: ubuntu-latest
10 | name: Release
11 | steps:
12 | - name: Checkout
13 | uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
14 |
15 | - name: Install pnpm
16 | uses: pnpm/action-setup@v3
17 |
18 | - name: Set node version to 20
19 | uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4
20 | with:
21 | node-version: 20
22 | cache: 'pnpm'
23 |
24 | - name: Prepare
25 | run: pnpm install --frozen-lockfile
26 |
27 | - name: Set publishing config
28 | run: pnpm config set '//registry.npmjs.org/:_authToken' "${NODE_AUTH_TOKEN}"
29 | env:
30 | NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
31 |
32 | - name: Publish
33 | run: pnpm --recursive publish --access public --tag latest
34 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | lerna-debug.log*
8 |
9 | # Diagnostic reports (https://nodejs.org/api/report.html)
10 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
11 |
12 | # Runtime data
13 | pids
14 | *.pid
15 | *.seed
16 | *.pid.lock
17 |
18 | # Directory for instrumented libs generated by jscoverage/JSCover
19 | lib-cov
20 |
21 | # Coverage directory used by tools like istanbul
22 | coverage
23 | *.lcov
24 |
25 | # nyc test coverage
26 | .nyc_output
27 |
28 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
29 | .grunt
30 |
31 | # Bower dependency directory (https://bower.io/)
32 | bower_components
33 |
34 | # node-waf configuration
35 | .lock-wscript
36 |
37 | # Compiled binary addons (https://nodejs.org/api/addons.html)
38 | build/Release
39 |
40 | # Dependency directories
41 | node_modules/
42 | jspm_packages/
43 | .pnpm-store/
44 |
45 | # TypeScript v1 declaration files
46 | typings/
47 |
48 | # TypeScript cache
49 | *.tsbuildinfo
50 |
51 | # Optional npm cache directory
52 | .npm
53 |
54 | # Optional eslint cache
55 | .eslintcache
56 |
57 | # Microbundle cache
58 | .rpt2_cache/
59 | .rts2_cache_cjs/
60 | .rts2_cache_es/
61 | .rts2_cache_umd/
62 |
63 | # Optional REPL history
64 | .node_repl_history
65 |
66 | # Output of 'npm pack'
67 | *.tgz
68 |
69 | # Yarn Integrity file
70 | .yarn-integrity
71 |
72 | # dotenv environment variables file
73 | .env
74 | .env.test
75 |
76 | # parcel-bundler cache (https://parceljs.org/)
77 | .cache
78 |
79 | # Next.js build output
80 | .next
81 |
82 | # Nuxt.js build / generate output
83 | .nuxt
84 | dist
85 |
86 | # Gatsby files
87 | .cache/
88 | # Comment in the public line in if your project uses Gatsby and *not* Next.js
89 | # https://nextjs.org/blog/next-9-1#public-directory-support
90 | # public
91 |
92 | # yarn no zero-install
93 | .yarn/*
94 | !.yarn/patches
95 | !.yarn/releases
96 | !.yarn/plugins
97 | !.yarn/sdks
98 | !.yarn/versions
99 | .pnp.*
100 |
101 | # vuepress build output
102 | .vuepress/dist
103 |
104 | # Serverless directories
105 | .serverless/
106 |
107 | # FuseBox cache
108 | .fusebox/
109 |
110 | # DynamoDB Local files
111 | .dynamodb/
112 |
113 | # TernJS port file
114 | .tern-port
115 |
--------------------------------------------------------------------------------
/.prettierignore:
--------------------------------------------------------------------------------
1 | .pnpm-store
2 | dist
3 | pnpm-lock.yaml
4 |
--------------------------------------------------------------------------------
/.prettierrc.cjs:
--------------------------------------------------------------------------------
1 | // @ts-check
2 |
3 | /**
4 | * @type {import('prettier').Options}
5 | */
6 | module.exports = {
7 | plugins: ['prettier-plugin-organize-imports'],
8 | singleQuote: true,
9 | trailingComma: 'all',
10 | overrides: [
11 | {
12 | files: '*.json5',
13 | options: {
14 | parser: 'json5',
15 | quoteProps: 'preserve',
16 | singleQuote: false,
17 | trailingComma: 'none',
18 | },
19 | },
20 | {
21 | files: '*.md',
22 | options: {
23 | organizeImportsSkipDestructiveCodeActions: true,
24 | },
25 | },
26 | ],
27 | };
28 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2023-2024 Christopher Quadflieg
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | # @eslint-types/\*
17 |
18 | This repository is a monorepo that contains types for [eslint-define-config](https://github.com/eslint-types/eslint-define-config).
19 |
20 | [All supported packages](https://npmjs.com/~eslint-types/)
21 |
22 | You can install them e.g. via `npm install @eslint-types/import` which will contain types for the `eslint-plugin-import` plugin.
23 | Then you can use them in your `.eslintrc.cjs` config like this:
24 |
25 | ```js
26 | // @ts-check
27 | const { defineConfig } = require('eslint-define-config');
28 |
29 | ///
30 |
31 | module.exports = defineConfig({
32 | // ...
33 | });
34 | ```
35 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "define-config-plugin-types",
3 | "version": "1.0.0",
4 | "description": "Provides several plugin types for eslint-define-config",
5 | "private": true,
6 | "scripts": {
7 | "clean": "tsx scripts/clean.ts",
8 | "generate:plugin-dts": "tsx scripts/generate-plugin-dts.ts",
9 | "format": "prettier --cache --write .",
10 | "lint:fix": "eslint --cache --cache-strategy content --report-unused-disable-directives --fix .",
11 | "lint": "eslint --cache --cache-strategy content --report-unused-disable-directives .",
12 | "ts-check": "tsc",
13 | "preflight": "pnpm install && run-s generate:plugin-dts format lint:fix ts-check"
14 | },
15 | "type": "module",
16 | "license": "MIT",
17 | "devDependencies": {
18 | "@eslint-types/prettier": "workspace:~",
19 | "@eslint-types/typescript-eslint": "workspace:~",
20 | "@eslint-types/unicorn": "workspace:~",
21 | "@types/eslint": "~8.56.7",
22 | "@types/json-schema": "~7.0.15",
23 | "@types/node": "~20.12.4",
24 | "@typescript-eslint/eslint-plugin": "~7.5.0",
25 | "@typescript-eslint/parser": "~7.5.0",
26 | "change-case": "~5.4.4",
27 | "eslint": "~8.57.0",
28 | "eslint-config-prettier": "~9.1.0",
29 | "eslint-define-config": "2.1.0",
30 | "eslint-gitignore": "~0.1.0",
31 | "eslint-plugin-prettier": "~5.1.3",
32 | "eslint-plugin-unicorn": "~52.0.0",
33 | "json-schema": "~0.4.0",
34 | "json-schema-to-typescript": "~13.1.2",
35 | "npm-run-all2": "~6.1.2",
36 | "package-json-type": "~1.0.3",
37 | "prettier": "~3.2.5",
38 | "prettier-plugin-organize-imports": "~3.2.4",
39 | "rimraf": "~5.0.5",
40 | "tsx": "~4.7.2",
41 | "typescript": "~5.4.4"
42 | },
43 | "packageManager": "pnpm@8.15.6",
44 | "engines": {
45 | "node": ">=18.0.0",
46 | "npm": ">=9.0.0",
47 | "pnpm": ">=8.6.0"
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/pnpm-workspace.yaml:
--------------------------------------------------------------------------------
1 | packages:
2 | - types/*
3 |
--------------------------------------------------------------------------------
/scripts/clean.ts:
--------------------------------------------------------------------------------
1 | import { rimrafSync } from 'rimraf';
2 |
3 | rimrafSync(
4 | [
5 | '**/.eslintcache',
6 | '**/pnpm-lock.yaml',
7 | // node_modules needs to be deleted last
8 | '**/node_modules',
9 | ],
10 | {
11 | glob: true,
12 | },
13 | );
14 |
--------------------------------------------------------------------------------
/scripts/generate-plugin-dts.ts:
--------------------------------------------------------------------------------
1 | import { pascalCase } from 'change-case';
2 | import type { ESLint, Rule } from 'eslint';
3 | import type { JSONSchema4 } from 'json-schema';
4 | import { compile } from 'json-schema-to-typescript';
5 | import { mkdir, readdir, stat, writeFile } from 'node:fs/promises';
6 | import { join } from 'node:path';
7 | import { URL, fileURLToPath } from 'node:url';
8 | import type { IPackageJson } from 'package-json-type';
9 |
10 | const __dirname: string = fileURLToPath(new URL('.', import.meta.url));
11 |
12 | const workspaceRootDirectory = join(__dirname, '..', 'types');
13 |
14 | const workspaces = await readdir(workspaceRootDirectory, {
15 | recursive: false,
16 | });
17 |
18 | for (const workspace of workspaces) {
19 | const workspaceDirectory = join(workspaceRootDirectory, workspace);
20 |
21 | const packageJson: IPackageJson | false = await import(
22 | join(workspaceDirectory, 'package.json')
23 | ).catch(() => false);
24 |
25 | if (!packageJson) {
26 | console.warn(`No package.json found for ${workspace}`);
27 | continue;
28 | }
29 |
30 | const dep = Object.keys(packageJson.devDependencies ?? {}).find((dep) =>
31 | dep.includes(workspace),
32 | );
33 |
34 | if (!dep) {
35 | console.warn(`No matching dependency found for ${workspace}`);
36 | continue;
37 | }
38 |
39 | const pluginName = workspace;
40 | let pluginPrefix: string = pluginName;
41 | if (dep.startsWith('@')) {
42 | pluginPrefix = dep.split('/')[0]!;
43 | } else if (dep.startsWith('eslint-plugin-')) {
44 | pluginPrefix = dep.replace('eslint-plugin-', '');
45 | }
46 |
47 | const pluginDirectory = join(workspaceDirectory, 'node_modules', dep);
48 | const pluginPackageJson: IPackageJson = await import(
49 | join(pluginDirectory, 'package.json')
50 | );
51 | const pluginEntry: string =
52 | pluginPackageJson.main ??
53 | pluginPackageJson.exports?.['.']?.default ??
54 | 'index.js';
55 |
56 | const importedPluginModule:
57 | | (ESLint.Plugin & { __esModule: true })
58 | | { __esModule: undefined; default: ESLint.Plugin }
59 | | false = await import(join(pluginDirectory, pluginEntry)).catch(
60 | () => false,
61 | );
62 |
63 | if (!importedPluginModule) {
64 | console.warn(`No entry found for ${pluginName}`);
65 | continue;
66 | }
67 |
68 | const pluginModule = importedPluginModule.__esModule
69 | ? importedPluginModule
70 | : importedPluginModule.default;
71 |
72 | const pluginConfigs = Object.keys(pluginModule.configs ?? {});
73 |
74 | const pluginRules = pluginModule.rules;
75 | await mkdir(join(workspaceDirectory, 'rules'), { recursive: true });
76 |
77 | const ruleOptionImports: string[] = [];
78 | const ruleDeclarations: string[] = [];
79 |
80 | for (const [ruleName, ruleDefinition] of Object.entries(pluginRules ?? {})) {
81 | // TODO @Shinigami92 2023-10-18: make this more TS safe
82 | const meta = (ruleDefinition as Rule.RuleModule).meta!;
83 |
84 | let schemas = (meta.schema as JSONSchema4[]) ?? [];
85 | if (!Array.isArray(schemas)) {
86 | schemas = [schemas];
87 | }
88 |
89 | const options = await Promise.all(
90 | schemas.map(async (schema, index) => {
91 | schema = JSON.parse(
92 | JSON.stringify(schema).replaceAll('#/items/0/$defs/', '#/$defs/'),
93 | );
94 |
95 | return await compile(schema, `Schema${index}`, {
96 | bannerComment: '',
97 | });
98 | }),
99 | );
100 |
101 | const optionTypes = options.map((_, index) => `Schema${index}?`);
102 | const ruleOptionTypeValue = Array.isArray(meta.schema)
103 | ? `[${optionTypes.join(', ')}]`
104 | : meta.schema
105 | ? 'Schema0'
106 | : '[]';
107 |
108 | await writeFile(
109 | join(workspaceDirectory, 'rules', `${ruleName}.d.ts`),
110 | `${options.join('\n')}
111 | export type ${pascalCase(ruleName)}RuleOptions = ${ruleOptionTypeValue};
112 | `,
113 | {
114 | encoding: 'utf8',
115 | flag: 'w',
116 | },
117 | );
118 |
119 | ruleOptionImports.push(
120 | `import type { ${pascalCase(
121 | ruleName,
122 | )}RuleOptions } from "./rules/${ruleName}"`,
123 | );
124 |
125 | const documentation: Rule.RuleMetaData['docs'] = meta.docs ?? {};
126 |
127 | ruleDeclarations.push(` /**
128 | * ${documentation.description}
129 | *
130 | * @see [${ruleName}](${documentation.url})
131 | */
132 | "${pluginPrefix}/${ruleName}": ${pascalCase(ruleName)}RuleOptions;`);
133 | }
134 |
135 | const hasPluginParsers = await stat(join(workspaceDirectory, 'parsers.d.ts'))
136 | .then(() => true)
137 | .catch(() => false);
138 |
139 | const hasPluginParserOptions = await stat(
140 | join(workspaceDirectory, 'parser-options.d.ts'),
141 | )
142 | .then(() => true)
143 | .catch(() => false);
144 |
145 | const hasPluginSettings = await stat(
146 | join(workspaceDirectory, 'settings.d.ts'),
147 | )
148 | .then(() => true)
149 | .catch(() => false);
150 |
151 | await writeFile(
152 | join(workspaceDirectory, 'types.d.ts'),
153 | `${ruleOptionImports.join('\n')}
154 | ${hasPluginParsers ? `export type { Parsers } from "./parsers";` : ''}${
155 | hasPluginParserOptions
156 | ? `export type { ParserOptions } from "./parser-options";`
157 | : ''
158 | }${hasPluginSettings ? `export type { Settings } from "./settings";` : ''}
159 |
160 | export interface Extends {
161 | ${pluginConfigs
162 | .map((config) => `"plugin:${pluginPrefix}/${config}": void;`)
163 | .join('\n')}
164 | }
165 |
166 | export interface Plugins {
167 | "${pluginPrefix}": void;
168 | }
169 |
170 | export interface RuleOptions {
171 | ${ruleDeclarations.join('\n')}
172 | }
173 | `,
174 | {
175 | encoding: 'utf8',
176 | flag: 'w',
177 | },
178 | );
179 |
180 | const imports = [
181 | 'Extends',
182 | 'Plugins',
183 | 'RuleOptions',
184 | hasPluginParsers ? 'Parsers' : '',
185 | hasPluginParserOptions ? 'ParserOptions' : '',
186 | hasPluginSettings ? 'Settings' : '',
187 | ].filter(Boolean);
188 |
189 | await writeFile(
190 | join(workspaceDirectory, 'index.d.ts'),
191 | `import type { ${imports.join(', ')} } from "./types";
192 |
193 | declare module 'eslint-define-config' {
194 | ${imports
195 | .map(
196 | (importName) =>
197 | ` export interface Custom${importName} extends ${importName} {}`,
198 | )
199 | .join('\n')}
200 | }
201 | `,
202 | {
203 | encoding: 'utf8',
204 | flag: 'w',
205 | },
206 | );
207 | }
208 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "ESNext",
4 | "module": "ESNext",
5 | "moduleResolution": "Bundler",
6 | "strict": true,
7 | "noEmit": true,
8 | "noImplicitOverride": true,
9 | "noUncheckedIndexedAccess": true,
10 | "allowSyntheticDefaultImports": true,
11 | "esModuleInterop": true
12 | },
13 | "exclude": ["node_modules", "dist"]
14 | }
15 |
--------------------------------------------------------------------------------
/types/deprecation/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | # @eslint-types/deprecation
17 |
18 | ## Install
19 |
20 | ```sh
21 | npm install -D @eslint-types/deprecation
22 | ```
23 |
24 | ## Usage
25 |
26 | ```js
27 | // @ts-check
28 | const { defineConfig } = require('eslint-define-config');
29 |
30 | ///
31 |
32 | module.exports = defineConfig({
33 | // ...
34 | });
35 | ```
36 |
--------------------------------------------------------------------------------
/types/deprecation/index.d.ts:
--------------------------------------------------------------------------------
1 | import type { Extends, Plugins, RuleOptions } from './types';
2 |
3 | declare module 'eslint-define-config' {
4 | export interface CustomExtends extends Extends {}
5 | export interface CustomPlugins extends Plugins {}
6 | export interface CustomRuleOptions extends RuleOptions {}
7 | }
8 |
--------------------------------------------------------------------------------
/types/deprecation/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@eslint-types/deprecation",
3 | "version": "2.0.0-1",
4 | "description": "TypeScript definitions for eslint-define-config",
5 | "homepage": "https://github.com/eslint-types/define-config-plugin-types/tree/main/types/deprecation",
6 | "license": "MIT",
7 | "contributors": [
8 | {
9 | "name": "Christopher Quadflieg",
10 | "url": "https://github.com/Shinigami92",
11 | "githubUsername": "Shinigami92"
12 | }
13 | ],
14 | "main": "",
15 | "types": "index.d.ts",
16 | "repository": {
17 | "type": "git",
18 | "url": "https://github.com/eslint-types/define-config-plugin-types.git",
19 | "directory": "types/deprecation"
20 | },
21 | "scripts": {},
22 | "dependencies": {},
23 | "devDependencies": {
24 | "eslint-plugin-deprecation": "2.0.0"
25 | },
26 | "exports": {
27 | ".": {
28 | "types": "./index.d.ts"
29 | },
30 | "./types": {
31 | "types": "./types.d.ts"
32 | },
33 | "./package.json": "./package.json"
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/types/deprecation/rules/deprecation.d.ts:
--------------------------------------------------------------------------------
1 | export type DeprecationRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/deprecation/types.d.ts:
--------------------------------------------------------------------------------
1 | import type { DeprecationRuleOptions } from './rules/deprecation';
2 |
3 | export interface Extends {
4 | 'plugin:deprecation/recommended': void;
5 | }
6 |
7 | export interface Plugins {
8 | deprecation: void;
9 | }
10 |
11 | export interface RuleOptions {
12 | /**
13 | * Do not use deprecated APIs.
14 | *
15 | * @see [deprecation](https://github.com/gund/eslint-plugin-deprecation)
16 | */
17 | 'deprecation/deprecation': DeprecationRuleOptions;
18 | }
19 |
--------------------------------------------------------------------------------
/types/import/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | # @eslint-types/import
17 |
18 | ## Install
19 |
20 | ```sh
21 | npm install -D @eslint-types/import
22 | ```
23 |
24 | ## Usage
25 |
26 | ```js
27 | // @ts-check
28 | const { defineConfig } = require('eslint-define-config');
29 |
30 | ///
31 |
32 | module.exports = defineConfig({
33 | // ...
34 | });
35 | ```
36 |
--------------------------------------------------------------------------------
/types/import/index.d.ts:
--------------------------------------------------------------------------------
1 | import type { Extends, Plugins, RuleOptions, Settings } from './types';
2 |
3 | declare module 'eslint-define-config' {
4 | export interface CustomExtends extends Extends {}
5 | export interface CustomPlugins extends Plugins {}
6 | export interface CustomRuleOptions extends RuleOptions {}
7 | export interface CustomSettings extends Settings {}
8 | }
9 |
--------------------------------------------------------------------------------
/types/import/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@eslint-types/import",
3 | "version": "2.29.1",
4 | "description": "TypeScript definitions for eslint-define-config",
5 | "homepage": "https://github.com/eslint-types/define-config-plugin-types/tree/main/types/import",
6 | "license": "MIT",
7 | "contributors": [
8 | {
9 | "name": "Christopher Quadflieg",
10 | "url": "https://github.com/Shinigami92",
11 | "githubUsername": "Shinigami92"
12 | }
13 | ],
14 | "main": "",
15 | "types": "index.d.ts",
16 | "repository": {
17 | "type": "git",
18 | "url": "https://github.com/eslint-types/define-config-plugin-types.git",
19 | "directory": "types/import"
20 | },
21 | "scripts": {},
22 | "dependencies": {},
23 | "devDependencies": {
24 | "eslint-plugin-import": "2.29.1"
25 | },
26 | "exports": {
27 | ".": {
28 | "types": "./index.d.ts"
29 | },
30 | "./types": {
31 | "types": "./types.d.ts"
32 | },
33 | "./package.json": "./package.json"
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/types/import/rules/consistent-type-specifier-style.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'prefer-inline' | 'prefer-top-level';
2 |
3 | export type ConsistentTypeSpecifierStyleRuleOptions = [Schema0?];
4 |
--------------------------------------------------------------------------------
/types/import/rules/default.d.ts:
--------------------------------------------------------------------------------
1 | export type DefaultRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/import/rules/dynamic-import-chunkname.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | importFunctions?: string[];
3 | webpackChunknameFormat?: string;
4 | [k: string]: unknown;
5 | }
6 |
7 | export type DynamicImportChunknameRuleOptions = [Schema0?];
8 |
--------------------------------------------------------------------------------
/types/import/rules/export.d.ts:
--------------------------------------------------------------------------------
1 | export type ExportRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/import/rules/exports-last.d.ts:
--------------------------------------------------------------------------------
1 | export type ExportsLastRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/import/rules/extensions.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | []
3 | | ['always' | 'ignorePackages' | 'never']
4 | | [
5 | 'always' | 'ignorePackages' | 'never',
6 | {
7 | pattern?: {
8 | /**
9 | * This interface was referenced by `undefined`'s JSON-Schema definition
10 | * via the `patternProperty` ".*".
11 | */
12 | [k: string]: 'always' | 'ignorePackages' | 'never';
13 | };
14 | ignorePackages?: boolean;
15 | [k: string]: unknown;
16 | },
17 | ]
18 | | [
19 | {
20 | pattern?: {
21 | /**
22 | * This interface was referenced by `undefined`'s JSON-Schema definition
23 | * via the `patternProperty` ".*".
24 | */
25 | [k: string]: 'always' | 'ignorePackages' | 'never';
26 | };
27 | ignorePackages?: boolean;
28 | [k: string]: unknown;
29 | },
30 | ]
31 | | [
32 | {
33 | /**
34 | * This interface was referenced by `undefined`'s JSON-Schema definition
35 | * via the `patternProperty` ".*".
36 | */
37 | [k: string]: 'always' | 'ignorePackages' | 'never';
38 | },
39 | ]
40 | | [
41 | 'always' | 'ignorePackages' | 'never',
42 | {
43 | /**
44 | * This interface was referenced by `undefined`'s JSON-Schema definition
45 | * via the `patternProperty` ".*".
46 | */
47 | [k: string]: 'always' | 'ignorePackages' | 'never';
48 | },
49 | ];
50 |
51 | export type ExtensionsRuleOptions = Schema0;
52 |
--------------------------------------------------------------------------------
/types/import/rules/first.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'absolute-first' | 'disable-absolute-first';
2 |
3 | export type FirstRuleOptions = [Schema0?];
4 |
--------------------------------------------------------------------------------
/types/import/rules/group-exports.d.ts:
--------------------------------------------------------------------------------
1 | export type GroupExportsRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/import/rules/imports-first.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'absolute-first' | 'disable-absolute-first';
2 |
3 | export type ImportsFirstRuleOptions = [Schema0?];
4 |
--------------------------------------------------------------------------------
/types/import/rules/max-dependencies.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | max?: number;
3 | ignoreTypeImports?: boolean;
4 | }
5 |
6 | export type MaxDependenciesRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/import/rules/named.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | commonjs?: boolean;
3 | }
4 |
5 | export type NamedRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/import/rules/namespace.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * If `false`, will report computed (and thus, un-lintable) references to namespace members.
4 | */
5 | allowComputed?: boolean;
6 | }
7 |
8 | export type NamespaceRuleOptions = [Schema0?];
9 |
--------------------------------------------------------------------------------
/types/import/rules/newline-after-import.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | count?: number;
3 | exactCount?: boolean;
4 | considerComments?: boolean;
5 | }
6 |
7 | export type NewlineAfterImportRuleOptions = [Schema0?];
8 |
--------------------------------------------------------------------------------
/types/import/rules/no-absolute-path.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | commonjs?: boolean;
3 | amd?: boolean;
4 | esmodule?: boolean;
5 | /**
6 | * @minItems 1
7 | */
8 | ignore?: [string, ...string[]];
9 | }
10 |
11 | export type NoAbsolutePathRuleOptions = [Schema0?];
12 |
--------------------------------------------------------------------------------
/types/import/rules/no-amd.d.ts:
--------------------------------------------------------------------------------
1 | export type NoAmdRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/import/rules/no-anonymous-default-export.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * If `false`, will report default export of an array
4 | */
5 | allowArray?: boolean;
6 | /**
7 | * If `false`, will report default export of an arrow function
8 | */
9 | allowArrowFunction?: boolean;
10 | /**
11 | * If `false`, will report default export of a function call
12 | */
13 | allowCallExpression?: boolean;
14 | /**
15 | * If `false`, will report default export of an anonymous class
16 | */
17 | allowAnonymousClass?: boolean;
18 | /**
19 | * If `false`, will report default export of an anonymous function
20 | */
21 | allowAnonymousFunction?: boolean;
22 | /**
23 | * If `false`, will report default export of a literal
24 | */
25 | allowLiteral?: boolean;
26 | /**
27 | * If `false`, will report default export of an object expression
28 | */
29 | allowObject?: boolean;
30 | /**
31 | * If `false`, will report default export of a class instantiation
32 | */
33 | allowNew?: boolean;
34 | }
35 |
36 | export type NoAnonymousDefaultExportRuleOptions = [Schema0?];
37 |
--------------------------------------------------------------------------------
/types/import/rules/no-commonjs.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | []
3 | | ['allow-primitive-modules']
4 | | [
5 | {
6 | allowPrimitiveModules?: boolean;
7 | allowRequire?: boolean;
8 | allowConditionalRequire?: boolean;
9 | },
10 | ];
11 |
12 | export type NoCommonjsRuleOptions = Schema0;
13 |
--------------------------------------------------------------------------------
/types/import/rules/no-cycle.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | commonjs?: boolean;
3 | amd?: boolean;
4 | esmodule?: boolean;
5 | /**
6 | * @minItems 1
7 | */
8 | ignore?: [string, ...string[]];
9 | maxDepth?: number | '∞';
10 | /**
11 | * ignore external modules
12 | */
13 | ignoreExternal?: boolean;
14 | /**
15 | * Allow cyclic dependency if there is at least one dynamic import in the chain
16 | */
17 | allowUnsafeDynamicCyclicDependency?: boolean;
18 | }
19 |
20 | export type NoCycleRuleOptions = [Schema0?];
21 |
--------------------------------------------------------------------------------
/types/import/rules/no-default-export.d.ts:
--------------------------------------------------------------------------------
1 | export type NoDefaultExportRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/import/rules/no-deprecated.d.ts:
--------------------------------------------------------------------------------
1 | export type NoDeprecatedRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/import/rules/no-duplicates.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | considerQueryString?: boolean;
3 | 'prefer-inline'?: boolean;
4 | }
5 |
6 | export type NoDuplicatesRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/import/rules/no-dynamic-require.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | esmodule?: boolean;
3 | }
4 |
5 | export type NoDynamicRequireRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/import/rules/no-empty-named-blocks.d.ts:
--------------------------------------------------------------------------------
1 | export type NoEmptyNamedBlocksRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/import/rules/no-extraneous-dependencies.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | devDependencies?: boolean | unknown[];
3 | optionalDependencies?: boolean | unknown[];
4 | peerDependencies?: boolean | unknown[];
5 | bundledDependencies?: boolean | unknown[];
6 | packageDir?: string | unknown[];
7 | includeInternal?: boolean;
8 | includeTypes?: boolean;
9 | }
10 |
11 | export type NoExtraneousDependenciesRuleOptions = [Schema0?];
12 |
--------------------------------------------------------------------------------
/types/import/rules/no-import-module-exports.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | exceptions?: unknown[];
3 | }
4 |
5 | export type NoImportModuleExportsRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/import/rules/no-internal-modules.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | {
3 | allow?: string[];
4 | }
5 | | {
6 | forbid?: string[];
7 | };
8 |
9 | export type NoInternalModulesRuleOptions = [Schema0?];
10 |
--------------------------------------------------------------------------------
/types/import/rules/no-mutable-exports.d.ts:
--------------------------------------------------------------------------------
1 | export type NoMutableExportsRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/import/rules/no-named-as-default-member.d.ts:
--------------------------------------------------------------------------------
1 | export type NoNamedAsDefaultMemberRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/import/rules/no-named-as-default.d.ts:
--------------------------------------------------------------------------------
1 | export type NoNamedAsDefaultRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/import/rules/no-named-default.d.ts:
--------------------------------------------------------------------------------
1 | export type NoNamedDefaultRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/import/rules/no-named-export.d.ts:
--------------------------------------------------------------------------------
1 | export type NoNamedExportRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/import/rules/no-namespace.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | ignore?: string[];
3 | [k: string]: unknown;
4 | }
5 |
6 | export type NoNamespaceRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/import/rules/no-nodejs-modules.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allow?: string[];
3 | }
4 |
5 | export type NoNodejsModulesRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/import/rules/no-relative-packages.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | commonjs?: boolean;
3 | amd?: boolean;
4 | esmodule?: boolean;
5 | /**
6 | * @minItems 1
7 | */
8 | ignore?: [string, ...string[]];
9 | }
10 |
11 | export type NoRelativePackagesRuleOptions = [Schema0?];
12 |
--------------------------------------------------------------------------------
/types/import/rules/no-relative-parent-imports.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | commonjs?: boolean;
3 | amd?: boolean;
4 | esmodule?: boolean;
5 | /**
6 | * @minItems 1
7 | */
8 | ignore?: [string, ...string[]];
9 | }
10 |
11 | export type NoRelativeParentImportsRuleOptions = [Schema0?];
12 |
--------------------------------------------------------------------------------
/types/import/rules/no-restricted-paths.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * @minItems 1
4 | */
5 | zones?: [
6 | {
7 | target?: string | string[];
8 | from?: string | string[];
9 | except?: string[];
10 | message?: string;
11 | },
12 | ...Array<{
13 | target?: string | string[];
14 | from?: string | string[];
15 | except?: string[];
16 | message?: string;
17 | }>,
18 | ];
19 | basePath?: string;
20 | }
21 |
22 | export type NoRestrictedPathsRuleOptions = [Schema0?];
23 |
--------------------------------------------------------------------------------
/types/import/rules/no-self-import.d.ts:
--------------------------------------------------------------------------------
1 | export type NoSelfImportRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/import/rules/no-unassigned-import.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | devDependencies?: boolean | unknown[];
3 | optionalDependencies?: boolean | unknown[];
4 | peerDependencies?: boolean | unknown[];
5 | allow?: string[];
6 | }
7 |
8 | export type NoUnassignedImportRuleOptions = [Schema0?];
9 |
--------------------------------------------------------------------------------
/types/import/rules/no-unresolved.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | commonjs?: boolean;
3 | amd?: boolean;
4 | esmodule?: boolean;
5 | /**
6 | * @minItems 1
7 | */
8 | ignore?: [string, ...string[]];
9 | caseSensitive?: boolean;
10 | caseSensitiveStrict?: boolean;
11 | }
12 |
13 | export type NoUnresolvedRuleOptions = [Schema0?];
14 |
--------------------------------------------------------------------------------
/types/import/rules/no-unused-modules.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = (
2 | | {
3 | unusedExports: true;
4 | src?: {
5 | [k: string]: unknown;
6 | };
7 | [k: string]: unknown;
8 | }
9 | | {
10 | missingExports: true;
11 | [k: string]: unknown;
12 | }
13 | ) & {
14 | /**
15 | * files/paths to be analyzed (only for unused exports)
16 | */
17 | src?: string[];
18 | /**
19 | * files/paths for which unused exports will not be reported (e.g module entry points)
20 | */
21 | ignoreExports?: string[];
22 | /**
23 | * report modules without any exports
24 | */
25 | missingExports?: boolean;
26 | /**
27 | * report exports without any usage
28 | */
29 | unusedExports?: boolean;
30 | [k: string]: unknown;
31 | };
32 |
33 | export type NoUnusedModulesRuleOptions = [Schema0?];
34 |
--------------------------------------------------------------------------------
/types/import/rules/no-useless-path-segments.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | commonjs?: boolean;
3 | noUselessIndex?: boolean;
4 | }
5 |
6 | export type NoUselessPathSegmentsRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/import/rules/no-webpack-loader-syntax.d.ts:
--------------------------------------------------------------------------------
1 | export type NoWebpackLoaderSyntaxRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/import/rules/order.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | groups?: unknown[];
3 | pathGroupsExcludedImportTypes?: unknown[];
4 | distinctGroup?: boolean;
5 | pathGroups?: Array<{
6 | pattern: string;
7 | patternOptions?: {
8 | [k: string]: unknown;
9 | };
10 | group:
11 | | 'builtin'
12 | | 'external'
13 | | 'internal'
14 | | 'unknown'
15 | | 'parent'
16 | | 'sibling'
17 | | 'index'
18 | | 'object'
19 | | 'type';
20 | position?: 'after' | 'before';
21 | }>;
22 | 'newlines-between'?:
23 | | 'ignore'
24 | | 'always'
25 | | 'always-and-inside-groups'
26 | | 'never';
27 | alphabetize?: {
28 | caseInsensitive?: boolean;
29 | order?: 'ignore' | 'asc' | 'desc';
30 | orderImportKind?: 'ignore' | 'asc' | 'desc';
31 | };
32 | warnOnUnassignedImports?: boolean;
33 | }
34 |
35 | export type OrderRuleOptions = [Schema0?];
36 |
--------------------------------------------------------------------------------
/types/import/rules/prefer-default-export.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | target?: 'single' | 'any';
3 | }
4 |
5 | export type PreferDefaultExportRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/import/rules/unambiguous.d.ts:
--------------------------------------------------------------------------------
1 | export type UnambiguousRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/import/settings.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * Import settings.
3 | */
4 | export interface ImportSettings {
5 | /**
6 | * A list of file extensions that will be parsed as modules and inspected for `export`s.
7 | *
8 | * @see [import/extensions](https://github.com/benmosher/eslint-plugin-import/blob/master/README.md#importextensions)
9 | */
10 | 'import/extensions'?: string[];
11 |
12 | /**
13 | * If you require more granular extension definitions.
14 | *
15 | * @see [import/resolver](https://github.com/benmosher/eslint-plugin-import/blob/master/README.md#importresolver)
16 | */
17 | 'import/resolver'?: string | Record;
18 |
19 | /**
20 | * A list of regex strings that, if matched by a path, will not report the matching module if no `exports` are found.
21 | *
22 | * @see [import/ignore](https://github.com/benmosher/eslint-plugin-import/blob/master/README.md#importignore)
23 | */
24 | 'import/ignore'?: string[];
25 |
26 | /**
27 | * An array of additional modules to consider as "core" modules--modules that should be considered resolved but have no path on the filesystem.
28 | *
29 | * @see [import/core-modules](https://github.com/benmosher/eslint-plugin-import/blob/master/README.md#importcore-modules)
30 | */
31 | 'import/core-modules'?: string[];
32 |
33 | /**
34 | * An array of folders. Resolved modules only from those folders will be considered as "external".
35 | *
36 | * @default ["node_modules"]
37 | *
38 | * @see [import/external-module-folders](https://github.com/benmosher/eslint-plugin-import/blob/master/README.md#importexternal-module-folders)
39 | */
40 | 'import/external-module-folders'?: string[];
41 |
42 | /**
43 | * A map from parsers to file extension arrays.
44 | *
45 | * @see [import/parsers](https://github.com/benmosher/eslint-plugin-import/blob/master/README.md#importparsers)
46 | */
47 | 'import/parsers'?: Partial>;
48 |
49 | /**
50 | * Settings for cache behavior.
51 | *
52 | * @see [import/cache](https://github.com/benmosher/eslint-plugin-import/blob/master/README.md#importcache)
53 | */
54 | 'import/cache'?: { lifetime?: number } & Record;
55 |
56 | /**
57 | * A regex for packages should be treated as internal.
58 | *
59 | * Useful when you are utilizing a monorepo setup or developing a set of packages that depend on each other.
60 | *
61 | * @see [import/internal-regex](https://github.com/benmosher/eslint-plugin-import/blob/master/README.md#importinternal-regex)
62 | */
63 | 'import/internal-regex'?: string;
64 | }
65 |
66 | export type { ImportSettings as Settings };
67 |
--------------------------------------------------------------------------------
/types/jsdoc/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | # @eslint-types/jsdoc
17 |
18 | ## Install
19 |
20 | ```sh
21 | npm install -D @eslint-types/jsdoc
22 | ```
23 |
24 | ## Usage
25 |
26 | ```js
27 | // @ts-check
28 | const { defineConfig } = require('eslint-define-config');
29 |
30 | ///
31 |
32 | module.exports = defineConfig({
33 | // ...
34 | });
35 | ```
36 |
--------------------------------------------------------------------------------
/types/jsdoc/index.d.ts:
--------------------------------------------------------------------------------
1 | import type { Extends, Plugins, RuleOptions, Settings } from './types';
2 |
3 | declare module 'eslint-define-config' {
4 | export interface CustomExtends extends Extends {}
5 | export interface CustomPlugins extends Plugins {}
6 | export interface CustomRuleOptions extends RuleOptions {}
7 | export interface CustomSettings extends Settings {}
8 | }
9 |
--------------------------------------------------------------------------------
/types/jsdoc/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@eslint-types/jsdoc",
3 | "version": "48.2.2",
4 | "description": "TypeScript definitions for eslint-define-config",
5 | "homepage": "https://github.com/eslint-types/define-config-plugin-types/tree/main/types/jsdoc",
6 | "license": "MIT",
7 | "contributors": [
8 | {
9 | "name": "Christopher Quadflieg",
10 | "url": "https://github.com/Shinigami92",
11 | "githubUsername": "Shinigami92"
12 | }
13 | ],
14 | "main": "",
15 | "types": "index.d.ts",
16 | "repository": {
17 | "type": "git",
18 | "url": "https://github.com/eslint-types/define-config-plugin-types.git",
19 | "directory": "types/jsdoc"
20 | },
21 | "scripts": {},
22 | "dependencies": {},
23 | "devDependencies": {
24 | "eslint-plugin-jsdoc": "48.2.2"
25 | },
26 | "exports": {
27 | ".": {
28 | "types": "./index.d.ts"
29 | },
30 | "./types": {
31 | "types": "./types.d.ts"
32 | },
33 | "./package.json": "./package.json"
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/check-access.d.ts:
--------------------------------------------------------------------------------
1 | export type CheckAccessRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/check-alignment.d.ts:
--------------------------------------------------------------------------------
1 | export type CheckAlignmentRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/check-examples.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowInlineConfig?: boolean;
3 | baseConfig?: {
4 | [k: string]: unknown;
5 | };
6 | captionRequired?: boolean;
7 | checkDefaults?: boolean;
8 | checkEslintrc?: boolean;
9 | checkParams?: boolean;
10 | checkProperties?: boolean;
11 | configFile?: string;
12 | exampleCodeRegex?: string;
13 | matchingFileName?: string;
14 | matchingFileNameDefaults?: string;
15 | matchingFileNameParams?: string;
16 | matchingFileNameProperties?: string;
17 | noDefaultExampleRules?: boolean;
18 | paddedIndent?: number;
19 | rejectExampleCodeRegex?: string;
20 | reportUnusedDisableDirectives?: boolean;
21 | }
22 |
23 | export type CheckExamplesRuleOptions = [Schema0?];
24 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/check-indentation.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | excludeTags?: string[];
3 | }
4 |
5 | export type CheckIndentationRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/check-line-alignment.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'always' | 'never' | 'any';
2 |
3 | export interface Schema1 {
4 | customSpacings?: {
5 | postDelimiter?: number;
6 | postHyphen?: number;
7 | postName?: number;
8 | postTag?: number;
9 | postType?: number;
10 | };
11 | preserveMainDescriptionPostDelimiter?: boolean;
12 | tags?: string[];
13 | wrapIndent?: string;
14 | disableWrapIndent?: boolean;
15 | }
16 |
17 | export type CheckLineAlignmentRuleOptions = [Schema0?, Schema1?];
18 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/check-param-names.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowExtraTrailingParamDocs?: boolean;
3 | checkDestructured?: boolean;
4 | checkRestProperty?: boolean;
5 | checkTypesPattern?: string;
6 | disableExtraPropertyReporting?: boolean;
7 | disableMissingParamChecks?: boolean;
8 | enableFixer?: boolean;
9 | useDefaultObjectProperties?: boolean;
10 | }
11 |
12 | export type CheckParamNamesRuleOptions = [Schema0?];
13 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/check-property-names.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | enableFixer?: boolean;
3 | }
4 |
5 | export type CheckPropertyNamesRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/check-syntax.d.ts:
--------------------------------------------------------------------------------
1 | export type CheckSyntaxRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/check-tag-names.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | definedTags?: string[];
3 | enableFixer?: boolean;
4 | jsxTags?: boolean;
5 | typed?: boolean;
6 | }
7 |
8 | export type CheckTagNamesRuleOptions = [Schema0?];
9 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/check-types.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | exemptTagContexts?: Array<{
3 | tag?: string;
4 | types?: boolean | string[];
5 | }>;
6 | noDefaults?: boolean;
7 | unifyParentAndChildTypeChecks?: boolean;
8 | }
9 |
10 | export type CheckTypesRuleOptions = [Schema0?];
11 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/check-values.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowedAuthors?: string[];
3 | allowedLicenses?: string[] | boolean;
4 | licensePattern?: string;
5 | numericOnlyVariation?: boolean;
6 | }
7 |
8 | export type CheckValuesRuleOptions = [Schema0?];
9 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/empty-tags.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | tags?: string[];
3 | }
4 |
5 | export type EmptyTagsRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/implements-on-classes.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | contexts?: Array<
3 | | string
4 | | {
5 | comment?: string;
6 | context?: string;
7 | }
8 | >;
9 | }
10 |
11 | export type ImplementsOnClassesRuleOptions = [Schema0?];
12 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/imports-as-dependencies.d.ts:
--------------------------------------------------------------------------------
1 | export type ImportsAsDependenciesRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/informative-docs.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | aliases?: {
3 | /**
4 | * This interface was referenced by `undefined`'s JSON-Schema definition
5 | * via the `patternProperty` ".*".
6 | */
7 | [k: string]: string[];
8 | };
9 | excludedTags?: string[];
10 | uselessWords?: string[];
11 | }
12 |
13 | export type InformativeDocsRuleOptions = [Schema0?];
14 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/match-description.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | contexts?: Array<
3 | | string
4 | | {
5 | comment?: string;
6 | context?: string;
7 | }
8 | >;
9 | mainDescription?:
10 | | string
11 | | boolean
12 | | {
13 | match?: string | boolean;
14 | message?: string;
15 | };
16 | matchDescription?: string;
17 | message?: string;
18 | nonemptyTags?: boolean;
19 | tags?: {
20 | /**
21 | * This interface was referenced by `undefined`'s JSON-Schema definition
22 | * via the `patternProperty` ".*".
23 | */
24 | [k: string]:
25 | | string
26 | | true
27 | | {
28 | match?: string | true;
29 | message?: string;
30 | };
31 | };
32 | }
33 |
34 | export type MatchDescriptionRuleOptions = [Schema0?];
35 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/match-name.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | match: Array<{
3 | allowName?: string;
4 | comment?: string;
5 | context?: string;
6 | disallowName?: string;
7 | message?: string;
8 | tags?: string[];
9 | [k: string]: unknown;
10 | }>;
11 | }
12 |
13 | export type MatchNameRuleOptions = [Schema0?];
14 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/multiline-blocks.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowMultipleTags?: boolean;
3 | minimumLengthForMultiline?: number;
4 | multilineTags?: '*' | string[];
5 | noFinalLineText?: boolean;
6 | noMultilineBlocks?: boolean;
7 | noSingleLineBlocks?: boolean;
8 | noZeroLineText?: boolean;
9 | singleLineTags?: string[];
10 | }
11 |
12 | export type MultilineBlocksRuleOptions = [Schema0?];
13 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/no-bad-blocks.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | ignore?: string[];
3 | preventAllMultiAsteriskBlocks?: boolean;
4 | }
5 |
6 | export type NoBadBlocksRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/no-blank-block-descriptions.d.ts:
--------------------------------------------------------------------------------
1 | export type NoBlankBlockDescriptionsRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/no-blank-blocks.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | enableFixer?: boolean;
3 | }
4 |
5 | export type NoBlankBlocksRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/no-defaults.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | contexts?: Array<
3 | | string
4 | | {
5 | comment?: string;
6 | context?: string;
7 | }
8 | >;
9 | noOptionalParamNames?: boolean;
10 | }
11 |
12 | export type NoDefaultsRuleOptions = [Schema0?];
13 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/no-missing-syntax.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | contexts?: Array<
3 | | string
4 | | {
5 | comment?: string;
6 | context?: string;
7 | message?: string;
8 | minimum?: number;
9 | }
10 | >;
11 | }
12 |
13 | export type NoMissingSyntaxRuleOptions = [Schema0?];
14 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/no-multi-asterisks.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowWhitespace?: boolean;
3 | preventAtEnd?: boolean;
4 | preventAtMiddleLines?: boolean;
5 | }
6 |
7 | export type NoMultiAsterisksRuleOptions = [Schema0?];
8 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/no-restricted-syntax.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | contexts: Array<
3 | | string
4 | | {
5 | comment?: string;
6 | context?: string;
7 | message?: string;
8 | }
9 | >;
10 | }
11 |
12 | export type NoRestrictedSyntaxRuleOptions = [Schema0?];
13 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/no-types.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | contexts?: Array<
3 | | string
4 | | {
5 | comment?: string;
6 | context?: string;
7 | }
8 | >;
9 | }
10 |
11 | export type NoTypesRuleOptions = [Schema0?];
12 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/no-undefined-types.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | definedTypes?: string[];
3 | disableReporting?: boolean;
4 | markVariablesAsUsed?: boolean;
5 | }
6 |
7 | export type NoUndefinedTypesRuleOptions = [Schema0?];
8 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-asterisk-prefix.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'always' | 'never' | 'any';
2 |
3 | export interface Schema1 {
4 | tags?: {
5 | always?: string[];
6 | any?: string[];
7 | never?: string[];
8 | [k: string]: unknown;
9 | };
10 | }
11 |
12 | export type RequireAsteriskPrefixRuleOptions = [Schema0?, Schema1?];
13 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-description-complete-sentence.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | abbreviations?: string[];
3 | newlineBeforeCapsAssumesBadSentenceEnd?: boolean;
4 | tags?: string[];
5 | }
6 |
7 | export type RequireDescriptionCompleteSentenceRuleOptions = [Schema0?];
8 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-description.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | checkConstructors?: boolean;
3 | checkGetters?: boolean;
4 | checkSetters?: boolean;
5 | contexts?: Array<
6 | | string
7 | | {
8 | comment?: string;
9 | context?: string;
10 | }
11 | >;
12 | descriptionStyle?: 'body' | 'tag' | 'any';
13 | exemptedBy?: string[];
14 | }
15 |
16 | export type RequireDescriptionRuleOptions = [Schema0?];
17 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-example.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | checkConstructors?: boolean;
3 | checkGetters?: boolean;
4 | checkSetters?: boolean;
5 | contexts?: Array<
6 | | string
7 | | {
8 | comment?: string;
9 | context?: string;
10 | }
11 | >;
12 | enableFixer?: boolean;
13 | exemptedBy?: string[];
14 | exemptNoArguments?: boolean;
15 | }
16 |
17 | export type RequireExampleRuleOptions = [Schema0?];
18 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-file-overview.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | tags?: {
3 | /**
4 | * This interface was referenced by `undefined`'s JSON-Schema definition
5 | * via the `patternProperty` ".*".
6 | */
7 | [k: string]: {
8 | initialCommentsOnly?: boolean;
9 | mustExist?: boolean;
10 | preventDuplicates?: boolean;
11 | };
12 | };
13 | }
14 |
15 | export type RequireFileOverviewRuleOptions = [Schema0?];
16 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-hyphen-before-param-description.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'always' | 'never';
2 |
3 | export interface Schema1 {
4 | tags?:
5 | | {
6 | /**
7 | * This interface was referenced by `undefined`'s JSON-Schema definition
8 | * via the `patternProperty` ".*".
9 | */
10 | [k: string]: 'always' | 'never';
11 | }
12 | | 'any';
13 | }
14 |
15 | export type RequireHyphenBeforeParamDescriptionRuleOptions = [
16 | Schema0?,
17 | Schema1?,
18 | ];
19 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-jsdoc.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | checkConstructors?: boolean;
3 | checkGetters?: boolean | 'no-setter';
4 | checkSetters?: boolean | 'no-getter';
5 | contexts?: Array<
6 | | string
7 | | {
8 | context?: string;
9 | inlineCommentBlock?: boolean;
10 | minLineCount?: number;
11 | }
12 | >;
13 | enableFixer?: boolean;
14 | exemptEmptyConstructors?: boolean;
15 | exemptEmptyFunctions?: boolean;
16 | fixerMessage?: string;
17 | minLineCount?: number;
18 | publicOnly?:
19 | | boolean
20 | | {
21 | ancestorsOnly?: boolean;
22 | cjs?: boolean;
23 | esm?: boolean;
24 | window?: boolean;
25 | };
26 | require?: {
27 | ArrowFunctionExpression?: boolean;
28 | ClassDeclaration?: boolean;
29 | ClassExpression?: boolean;
30 | FunctionDeclaration?: boolean;
31 | FunctionExpression?: boolean;
32 | MethodDefinition?: boolean;
33 | };
34 | }
35 |
36 | export type RequireJsdocRuleOptions = [Schema0?];
37 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-param-description.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | contexts?: Array<
3 | | string
4 | | {
5 | comment?: string;
6 | context?: string;
7 | }
8 | >;
9 | defaultDestructuredRootDescription?: string;
10 | setDefaultDestructuredRootDescription?: boolean;
11 | }
12 |
13 | export type RequireParamDescriptionRuleOptions = [Schema0?];
14 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-param-name.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | contexts?: Array<
3 | | string
4 | | {
5 | comment?: string;
6 | context?: string;
7 | }
8 | >;
9 | }
10 |
11 | export type RequireParamNameRuleOptions = [Schema0?];
12 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-param-type.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | contexts?: Array<
3 | | string
4 | | {
5 | comment?: string;
6 | context?: string;
7 | }
8 | >;
9 | defaultDestructuredRootType?: string;
10 | setDefaultDestructuredRootType?: boolean;
11 | }
12 |
13 | export type RequireParamTypeRuleOptions = [Schema0?];
14 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-param.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | autoIncrementBase?: number;
3 | checkConstructors?: boolean;
4 | checkDestructured?: boolean;
5 | checkDestructuredRoots?: boolean;
6 | checkGetters?: boolean;
7 | checkRestProperty?: boolean;
8 | checkSetters?: boolean;
9 | checkTypesPattern?: string;
10 | contexts?: Array<
11 | | string
12 | | {
13 | comment?: string;
14 | context?: string;
15 | }
16 | >;
17 | enableFixer?: boolean;
18 | enableRestElementFixer?: boolean;
19 | enableRootFixer?: boolean;
20 | exemptedBy?: string[];
21 | unnamedRootBase?: string[];
22 | useDefaultObjectProperties?: boolean;
23 | }
24 |
25 | export type RequireParamRuleOptions = [Schema0?];
26 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-property-description.d.ts:
--------------------------------------------------------------------------------
1 | export type RequirePropertyDescriptionRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-property-name.d.ts:
--------------------------------------------------------------------------------
1 | export type RequirePropertyNameRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-property-type.d.ts:
--------------------------------------------------------------------------------
1 | export type RequirePropertyTypeRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-property.d.ts:
--------------------------------------------------------------------------------
1 | export type RequirePropertyRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-returns-check.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | exemptAsync?: boolean;
3 | exemptGenerators?: boolean;
4 | reportMissingReturnForUndefinedTypes?: boolean;
5 | }
6 |
7 | export type RequireReturnsCheckRuleOptions = [Schema0?];
8 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-returns-description.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | contexts?: Array<
3 | | string
4 | | {
5 | comment?: string;
6 | context?: string;
7 | }
8 | >;
9 | }
10 |
11 | export type RequireReturnsDescriptionRuleOptions = [Schema0?];
12 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-returns-type.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | contexts?: Array<
3 | | string
4 | | {
5 | comment?: string;
6 | context?: string;
7 | }
8 | >;
9 | }
10 |
11 | export type RequireReturnsTypeRuleOptions = [Schema0?];
12 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-returns.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | checkConstructors?: boolean;
3 | checkGetters?: boolean;
4 | contexts?: Array<
5 | | string
6 | | {
7 | comment?: string;
8 | context?: string;
9 | forceRequireReturn?: boolean;
10 | }
11 | >;
12 | enableFixer?: boolean;
13 | exemptedBy?: string[];
14 | forceRequireReturn?: boolean;
15 | forceReturnsWithAsync?: boolean;
16 | publicOnly?:
17 | | boolean
18 | | {
19 | ancestorsOnly?: boolean;
20 | cjs?: boolean;
21 | esm?: boolean;
22 | window?: boolean;
23 | };
24 | }
25 |
26 | export type RequireReturnsRuleOptions = [Schema0?];
27 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-throws.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | contexts?: Array<
3 | | string
4 | | {
5 | comment?: string;
6 | context?: string;
7 | }
8 | >;
9 | exemptedBy?: string[];
10 | }
11 |
12 | export type RequireThrowsRuleOptions = [Schema0?];
13 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-yields-check.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | checkGeneratorsOnly?: boolean;
3 | contexts?: Array<
4 | | string
5 | | {
6 | comment?: string;
7 | context?: string;
8 | }
9 | >;
10 | exemptedBy?: string[];
11 | next?: boolean;
12 | }
13 |
14 | export type RequireYieldsCheckRuleOptions = [Schema0?];
15 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/require-yields.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | contexts?: Array<
3 | | string
4 | | {
5 | comment?: string;
6 | context?: string;
7 | }
8 | >;
9 | exemptedBy?: string[];
10 | forceRequireNext?: boolean;
11 | forceRequireYields?: boolean;
12 | next?: boolean;
13 | nextWithGeneratorTag?: boolean;
14 | withGeneratorTag?: boolean;
15 | }
16 |
17 | export type RequireYieldsRuleOptions = [Schema0?];
18 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/sort-tags.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | alphabetizeExtras?: boolean;
3 | linesBetween?: number;
4 | reportIntraTagGroupSpacing?: boolean;
5 | reportTagGroupSpacing?: boolean;
6 | tagSequence?: Array<{
7 | tags?: string[];
8 | [k: string]: unknown;
9 | }>;
10 | }
11 |
12 | export type SortTagsRuleOptions = [Schema0?];
13 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/tag-lines.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'always' | 'any' | 'never';
2 |
3 | export interface Schema1 {
4 | applyToEndTag?: boolean;
5 | count?: number;
6 | endLines?: number | null;
7 | startLines?: number | null;
8 | tags?: {
9 | /**
10 | * This interface was referenced by `undefined`'s JSON-Schema definition
11 | * via the `patternProperty` ".*".
12 | */
13 | [k: string]: {
14 | count?: number;
15 | lines?: 'always' | 'never' | 'any';
16 | };
17 | };
18 | }
19 |
20 | export type TagLinesRuleOptions = [Schema0?, Schema1?];
21 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/text-escaping.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | escapeHTML?: boolean;
3 | escapeMarkdown?: boolean;
4 | }
5 |
6 | export type TextEscapingRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/jsdoc/rules/valid-types.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowEmptyNamepaths?: boolean;
3 | }
4 |
5 | export type ValidTypesRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/jsdoc/settings.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * JSDoc settings.
3 | */
4 | export interface JSDocSetting extends Partial> {
5 | /**
6 | * Disables all rules for the comment block on which a `@private` tag (or `@access private`) occurs.
7 | *
8 | * Defaults to `false`.
9 | *
10 | * Note: This has no effect with the rule `check-access` (whose purpose is to check access modifiers) or `empty-tags` (which checks `@private` itself).
11 | *
12 | * @see [mode](https://github.com/gajus/eslint-plugin-jsdoc#allow-tags-private-or-internal-to-disable-rules-for-that-comment-block)
13 | */
14 | ignorePrivate?: boolean;
15 |
16 | /**
17 | * Disables all rules for the comment block on which a `@internal` tag occurs.
18 | *
19 | * Defaults to `false`.
20 | *
21 | * Note: This has no effect with the rule `empty-tags` (which checks `@internal` itself).
22 | *
23 | * @see [mode](https://github.com/gajus/eslint-plugin-jsdoc#allow-tags-private-or-internal-to-disable-rules-for-that-comment-block)
24 | */
25 | ignoreInternal?: boolean;
26 |
27 | /**
28 | * Set to `typescript`, `closure`, or `jsdoc` (the default unless the `@typescript-eslint` parser is in use in which case `typescript` will be the default).
29 | *
30 | * @see [mode](https://github.com/gajus/eslint-plugin-jsdoc#mode)
31 | */
32 | mode?: 'typescript' | 'closure' | 'jsdoc';
33 |
34 | /**
35 | * Configure a preferred alias name for a JSDoc tag.
36 | *
37 | * @see [Alias Preference](https://github.com/gajus/eslint-plugin-jsdoc#alias-preference)
38 | */
39 | tagNamePreference?: Record<
40 | string,
41 | string | { message: string; replacement?: string } | false
42 | >;
43 | overrideReplacesDocs?: boolean;
44 | augmentsExtendsReplacesDocs?: boolean;
45 | implementsReplacesDocs?: boolean;
46 | preferredTypes?: unknown;
47 | }
48 |
49 | /**
50 | * JSDoc settings.
51 | */
52 | export interface Settings {
53 | /**
54 | * JSDoc settings.
55 | *
56 | * @see [JSDoc settings](https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-settings)
57 | */
58 | jsdoc?: JSDocSetting;
59 | }
60 |
--------------------------------------------------------------------------------
/types/prettier/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | # @eslint-types/prettier
17 |
18 | ## Install
19 |
20 | ```sh
21 | npm install -D @eslint-types/prettier
22 | ```
23 |
24 | ## Usage
25 |
26 | ```js
27 | // @ts-check
28 | const { defineConfig } = require('eslint-define-config');
29 |
30 | ///
31 |
32 | module.exports = defineConfig({
33 | // ...
34 | });
35 | ```
36 |
--------------------------------------------------------------------------------
/types/prettier/index.d.ts:
--------------------------------------------------------------------------------
1 | import type { Extends, Plugins, RuleOptions } from './types';
2 |
3 | declare module 'eslint-define-config' {
4 | export interface CustomExtends extends Extends {}
5 | export interface CustomPlugins extends Plugins {}
6 | export interface CustomRuleOptions extends RuleOptions {}
7 | }
8 |
--------------------------------------------------------------------------------
/types/prettier/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@eslint-types/prettier",
3 | "version": "5.1.3",
4 | "description": "TypeScript definitions for eslint-define-config",
5 | "homepage": "https://github.com/eslint-types/define-config-plugin-types/tree/main/types/prettier",
6 | "license": "MIT",
7 | "contributors": [
8 | {
9 | "name": "Christopher Quadflieg",
10 | "url": "https://github.com/Shinigami92",
11 | "githubUsername": "Shinigami92"
12 | }
13 | ],
14 | "main": "",
15 | "types": "index.d.ts",
16 | "repository": {
17 | "type": "git",
18 | "url": "https://github.com/eslint-types/define-config-plugin-types.git",
19 | "directory": "types/prettier"
20 | },
21 | "scripts": {},
22 | "dependencies": {},
23 | "devDependencies": {
24 | "eslint-plugin-prettier": "5.1.3"
25 | },
26 | "exports": {
27 | ".": {
28 | "types": "./index.d.ts"
29 | },
30 | "./types": {
31 | "types": "./types.d.ts"
32 | },
33 | "./package.json": "./package.json"
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/types/prettier/rules/prettier.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | [k: string]: unknown;
3 | }
4 |
5 | export interface Schema1 {
6 | usePrettierrc?: boolean;
7 | fileInfoOptions?: {
8 | [k: string]: unknown;
9 | };
10 | [k: string]: unknown;
11 | }
12 |
13 | export type PrettierRuleOptions = [Schema0?, Schema1?];
14 |
--------------------------------------------------------------------------------
/types/prettier/types.d.ts:
--------------------------------------------------------------------------------
1 | import type { PrettierRuleOptions } from './rules/prettier';
2 |
3 | export interface Extends {
4 | 'plugin:prettier/recommended': void;
5 | }
6 |
7 | export interface Plugins {
8 | prettier: void;
9 | }
10 |
11 | export interface RuleOptions {
12 | /**
13 | * undefined
14 | *
15 | * @see [prettier](https://github.com/prettier/eslint-plugin-prettier#options)
16 | */
17 | 'prettier/prettier': PrettierRuleOptions;
18 | }
19 |
--------------------------------------------------------------------------------
/types/typescript-eslint/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | # @eslint-types/typescript-eslint
17 |
18 | ## Install
19 |
20 | ```sh
21 | npm install -D @eslint-types/typescript-eslint
22 | ```
23 |
24 | ## Usage
25 |
26 | ```js
27 | // @ts-check
28 | const { defineConfig } = require('eslint-define-config');
29 |
30 | ///
31 |
32 | module.exports = defineConfig({
33 | // ...
34 | });
35 | ```
36 |
--------------------------------------------------------------------------------
/types/typescript-eslint/index.d.ts:
--------------------------------------------------------------------------------
1 | import type {
2 | Extends,
3 | ParserOptions,
4 | Parsers,
5 | Plugins,
6 | RuleOptions,
7 | } from './types';
8 |
9 | declare module 'eslint-define-config' {
10 | export interface CustomExtends extends Extends {}
11 | export interface CustomPlugins extends Plugins {}
12 | export interface CustomRuleOptions extends RuleOptions {}
13 | export interface CustomParsers extends Parsers {}
14 | export interface CustomParserOptions extends ParserOptions {}
15 | }
16 |
--------------------------------------------------------------------------------
/types/typescript-eslint/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@eslint-types/typescript-eslint",
3 | "version": "7.5.0",
4 | "description": "TypeScript definitions for eslint-define-config",
5 | "homepage": "https://github.com/eslint-types/define-config-plugin-types/tree/main/types/typescript-eslint",
6 | "license": "MIT",
7 | "contributors": [
8 | {
9 | "name": "Christopher Quadflieg",
10 | "url": "https://github.com/Shinigami92",
11 | "githubUsername": "Shinigami92"
12 | }
13 | ],
14 | "main": "",
15 | "types": "index.d.ts",
16 | "repository": {
17 | "type": "git",
18 | "url": "https://github.com/eslint-types/define-config-plugin-types.git",
19 | "directory": "types/typescript-eslint"
20 | },
21 | "scripts": {},
22 | "dependencies": {},
23 | "devDependencies": {
24 | "@typescript-eslint/eslint-plugin": "7.5.0"
25 | },
26 | "exports": {
27 | ".": {
28 | "types": "./index.d.ts"
29 | },
30 | "./types": {
31 | "types": "./types.d.ts"
32 | },
33 | "./package.json": "./package.json"
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/types/typescript-eslint/parser-options.d.ts:
--------------------------------------------------------------------------------
1 | export interface ParserOptions {
2 | /**
3 | * The identifier that's used for JSX Elements creation (after transpilation).
4 | * If you're using a library other than React (like `preact`), then you should change this value.
5 | * If you are using the [new JSX transform](https://reactjs.org/blog/2020/09/22/introducing-the-new-jsx-transform.html) you can set this to `null`.
6 | *
7 | * This should not be a member expression - just the root identifier (i.e. use `"React"` instead of `"React.createElement"`).
8 | *
9 | * If you provide `parserOptions.project`, you do not need to set this, as it will automatically detected from the compiler.
10 | *
11 | * @default 'React'
12 | *
13 | * @see [jsxPragma](https://typescript-eslint.io/architecture/parser#jsxpragma)
14 | */
15 | jsxPragma?: string;
16 |
17 | /**
18 | * The identifier that's used for JSX fragment elements (after transpilation).
19 | * If `null`, assumes transpilation will always use a member of the configured `jsxPragma`.
20 | * This should not be a member expression - just the root identifier (i.e. use `"h"` instead of `"h.Fragment"`).
21 | *
22 | * If you provide `parserOptions.project`, you do not need to set this, as it will automatically detected from the compiler.
23 | *
24 | * @default null
25 | *
26 | * @see [jsxFragmentName](https://typescript-eslint.io/architecture/parser#jsxfragmentname)
27 | */
28 | jsxFragmentName?: string | null;
29 |
30 | /**
31 | * For valid options, see the [TypeScript compiler options](https://www.typescriptlang.org/tsconfig#lib).
32 | *
33 | * Specifies the TypeScript `libs` that are available.
34 | * This is used by the scope analyser to ensure there are global variables declared for the types exposed by TypeScript.
35 | *
36 | * If you provide `parserOptions.project`, you do not need to set this, as it will automatically detected from the compiler.
37 | *
38 | * @default ['es2018']
39 | *
40 | * @see [lib](https://typescript-eslint.io/architecture/parser/#lib)
41 | */
42 | lib?: string[];
43 |
44 | comment?: boolean;
45 |
46 | errorOnTypeScriptSyntacticAndSemanticIssues?: boolean;
47 |
48 | errorOnUnknownASTType?: boolean;
49 |
50 | /**
51 | * This option allows you to provide one or more additional file extensions which should be considered in the TypeScript Program compilation.
52 | *
53 | * The default extensions are `.ts`, `.tsx`, `.js`, and `.jsx`. Add extensions starting with `.`, followed by the file extension.
54 | * E.g. for a `.vue` file use `"extraFileExtensions: [".vue"]`.
55 | *
56 | * @see [extraFileExtensions](https://typescript-eslint.io/architecture/parser/#extrafileextensions)
57 | */
58 | extraFileExtensions?: string[];
59 |
60 | filePath?: string;
61 |
62 | loc?: boolean;
63 |
64 | /**
65 | * Parser.
66 | *
67 | * @see [Working with Custom Parsers](https://eslint.org/docs/developer-guide/working-with-custom-parsers)
68 | * @see [Specifying Parser](https://eslint.org/docs/user-guide/configuring/plugins#specifying-parser)
69 | */
70 | parser?: string;
71 |
72 | /**
73 | * This option allows you to provide a path to your project's `tsconfig.json`.
74 | * **This setting is required if you want to use rules which require type information.**
75 | * Relative paths are interpreted relative to the current working directory if `tsconfigRootDir` is not set.
76 | * If you intend on running ESLint from directories other than the project root, you should consider using `tsconfigRootDir`.
77 | *
78 | * @default undefined
79 | *
80 | * @see [project](https://typescript-eslint.io/architecture/parser/#project)
81 | */
82 | project?: string | string[] | true | null;
83 |
84 | /**
85 | * This option allows you to ignore folders from being included in your provided list of `project`s.
86 | * This is useful if you have configured glob patterns, but want to make sure you ignore certain folders.
87 | *
88 | * It accepts an array of globs to exclude from the `project` globs.
89 | *
90 | * For example, by default it will ensure that a glob like `./**/tsconfig.json` will not match any `tsconfigs` within your `node_modules` folder (some npm packages do not exclude their source files from their published packages).
91 | *
92 | * @default ['**/node_modules/**']
93 | *
94 | * @see [projectFolderIgnoreList](https://typescript-eslint.io/architecture/parser/#projectfolderignorelist)
95 | */
96 | projectFolderIgnoreList?: Array;
97 |
98 | range?: boolean;
99 |
100 | tokens?: boolean;
101 |
102 | /**
103 | * This option allows you to provide the root directory for relative tsconfig paths specified in the `project` option above.
104 | *
105 | * @see [tsconfigRootDir](https://typescript-eslint.io/architecture/parser/#tsconfigrootdir)
106 | */
107 | tsconfigRootDir?: string;
108 |
109 | useJSXTextNode?: boolean;
110 |
111 | /**
112 | * This option allows you to toggle the warning that the parser will give you if you use a version of TypeScript which is not explicitly supported.
113 | *
114 | * @default true
115 | *
116 | * @see [warnOnUnsupportedTypeScriptVersion](https://typescript-eslint.io/architecture/parser/#warnonunsupportedtypescriptversion)
117 | */
118 | warnOnUnsupportedTypeScriptVersion?: boolean;
119 |
120 | /**
121 | * This option allow you to tell parser to act as if `emitDecoratorMetadata: true` is set in `tsconfig.json`, but without [type-aware linting](https://typescript-eslint.io/linting/typed-linting).
122 | * In other words, you don't have to specify `parserOptions.project` in this case, making the linting process faster.
123 | *
124 | * @default undefined
125 | *
126 | * @see [emitDecoratorMetadata](https://typescript-eslint.io/architecture/parser/#emitdecoratormetadata)
127 | */
128 | emitDecoratorMetadata?: boolean;
129 | }
130 |
--------------------------------------------------------------------------------
/types/typescript-eslint/parsers.d.ts:
--------------------------------------------------------------------------------
1 | export interface Parsers {
2 | '@typescript-eslint/parser': void;
3 | }
4 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/adjacent-overload-signatures.d.ts:
--------------------------------------------------------------------------------
1 | export type AdjacentOverloadSignaturesRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/array-type.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * The array type expected for mutable cases.
4 | */
5 | default?: 'array' | 'generic' | 'array-simple';
6 | /**
7 | * The array type expected for readonly cases. If omitted, the value for `default` will be used.
8 | */
9 | readonly?: 'array' | 'generic' | 'array-simple';
10 | }
11 |
12 | export type ArrayTypeRuleOptions = [Schema0?];
13 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/await-thenable.d.ts:
--------------------------------------------------------------------------------
1 | export type AwaitThenableRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/ban-ts-comment.d.ts:
--------------------------------------------------------------------------------
1 | export type DirectiveConfigSchema =
2 | | boolean
3 | | 'allow-with-description'
4 | | {
5 | descriptionFormat?: string;
6 | };
7 |
8 | export interface Schema0 {
9 | 'ts-expect-error'?: DirectiveConfigSchema;
10 | 'ts-ignore'?: DirectiveConfigSchema;
11 | 'ts-nocheck'?: DirectiveConfigSchema;
12 | 'ts-check'?: DirectiveConfigSchema;
13 | minimumDescriptionLength?: number;
14 | }
15 |
16 | export type BanTsCommentRuleOptions = [Schema0?];
17 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/ban-tslint-comment.d.ts:
--------------------------------------------------------------------------------
1 | export type BanTslintCommentRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/ban-types.d.ts:
--------------------------------------------------------------------------------
1 | export type BanConfig =
2 | | null
3 | | false
4 | | true
5 | | string
6 | | {
7 | /**
8 | * Custom error message
9 | */
10 | message?: string;
11 | /**
12 | * Type to autofix replace with. Note that autofixers can be applied automatically - so you need to be careful with this option.
13 | */
14 | fixWith?: string;
15 | /**
16 | * Types to suggest replacing with.
17 | */
18 | suggest?: string[];
19 | };
20 |
21 | export interface Schema0 {
22 | types?: {
23 | [k: string]: BanConfig;
24 | };
25 | extendDefaults?: boolean;
26 | }
27 |
28 | export type BanTypesRuleOptions = [Schema0?];
29 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/block-spacing.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'always' | 'never';
2 |
3 | export type BlockSpacingRuleOptions = [Schema0?];
4 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/brace-style.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = '1tbs' | 'stroustrup' | 'allman';
2 |
3 | export interface Schema1 {
4 | allowSingleLine?: boolean;
5 | }
6 |
7 | export type BraceStyleRuleOptions = [Schema0?, Schema1?];
8 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/class-literal-property-style.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'fields' | 'getters';
2 |
3 | export type ClassLiteralPropertyStyleRuleOptions = [Schema0?];
4 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/class-methods-use-this.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Allows specified method names to be ignored with this rule
4 | */
5 | exceptMethods?: string[];
6 | /**
7 | * Enforces that functions used as instance field initializers utilize `this`
8 | */
9 | enforceForClassFields?: boolean;
10 | /**
11 | * Ignore members marked with the `override` modifier
12 | */
13 | ignoreOverrideMethods?: boolean;
14 | /**
15 | * Ignore classes that specifically implement some interface
16 | */
17 | ignoreClassesThatImplementAnInterface?: boolean | 'public-fields';
18 | }
19 |
20 | export type ClassMethodsUseThisRuleOptions = [Schema0?];
21 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/comma-dangle.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | []
3 | | [
4 | | Value
5 | | {
6 | arrays?: ValueWithIgnore;
7 | objects?: ValueWithIgnore;
8 | imports?: ValueWithIgnore;
9 | exports?: ValueWithIgnore;
10 | functions?: ValueWithIgnore;
11 | enums?: ValueWithIgnore;
12 | generics?: ValueWithIgnore;
13 | tuples?: ValueWithIgnore;
14 | },
15 | ];
16 | export type Value = 'always-multiline' | 'always' | 'never' | 'only-multiline';
17 | export type ValueWithIgnore =
18 | | 'always-multiline'
19 | | 'always'
20 | | 'never'
21 | | 'only-multiline'
22 | | 'ignore';
23 |
24 | export type CommaDangleRuleOptions = Schema0;
25 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/comma-spacing.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | before?: boolean;
3 | after?: boolean;
4 | }
5 |
6 | export type CommaSpacingRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/consistent-generic-constructors.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'type-annotation' | 'constructor';
2 |
3 | export type ConsistentGenericConstructorsRuleOptions = [Schema0?];
4 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/consistent-indexed-object-style.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'record' | 'index-signature';
2 |
3 | export type ConsistentIndexedObjectStyleRuleOptions = [Schema0?];
4 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/consistent-return.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | treatUndefinedAsUnspecified?: boolean;
3 | }
4 |
5 | export type ConsistentReturnRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/consistent-type-assertions.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | {
3 | assertionStyle: 'never';
4 | }
5 | | {
6 | assertionStyle: 'as' | 'angle-bracket';
7 | objectLiteralTypeAssertions?: 'allow' | 'allow-as-parameter' | 'never';
8 | };
9 |
10 | export type ConsistentTypeAssertionsRuleOptions = [Schema0?];
11 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/consistent-type-definitions.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'interface' | 'type';
2 |
3 | export type ConsistentTypeDefinitionsRuleOptions = [Schema0?];
4 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/consistent-type-exports.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | fixMixedExportsWithInlineTypeSpecifier?: boolean;
3 | }
4 |
5 | export type ConsistentTypeExportsRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/consistent-type-imports.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | disallowTypeAnnotations?: boolean;
3 | fixStyle?: 'separate-type-imports' | 'inline-type-imports';
4 | prefer?: 'type-imports' | 'no-type-imports';
5 | }
6 |
7 | export type ConsistentTypeImportsRuleOptions = [Schema0?];
8 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/default-param-last.d.ts:
--------------------------------------------------------------------------------
1 | export type DefaultParamLastRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/dot-notation.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowKeywords?: boolean;
3 | allowPattern?: string;
4 | allowPrivateClassPropertyAccess?: boolean;
5 | allowProtectedClassPropertyAccess?: boolean;
6 | allowIndexSignaturePropertyAccess?: boolean;
7 | }
8 |
9 | export type DotNotationRuleOptions = [Schema0?];
10 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/explicit-function-return-type.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to allow arrow functions that start with the `void` keyword.
4 | */
5 | allowConciseArrowFunctionExpressionsStartingWithVoid?: boolean;
6 | /**
7 | * Whether to ignore function expressions (functions which are not part of a declaration).
8 | */
9 | allowExpressions?: boolean;
10 | /**
11 | * Whether to ignore functions immediately returning another function expression.
12 | */
13 | allowHigherOrderFunctions?: boolean;
14 | /**
15 | * Whether to ignore type annotations on the variable of function expressions.
16 | */
17 | allowTypedFunctionExpressions?: boolean;
18 | /**
19 | * Whether to ignore arrow functions immediately returning a `as const` value.
20 | */
21 | allowDirectConstAssertionInArrowFunctions?: boolean;
22 | /**
23 | * Whether to ignore functions that don't have generic type parameters.
24 | */
25 | allowFunctionsWithoutTypeParameters?: boolean;
26 | /**
27 | * An array of function/method names that will not have their arguments or return values checked.
28 | */
29 | allowedNames?: string[];
30 | /**
31 | * Whether to ignore immediately invoked function expressions (IIFEs).
32 | */
33 | allowIIFEs?: boolean;
34 | }
35 |
36 | export type ExplicitFunctionReturnTypeRuleOptions = [Schema0?];
37 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/explicit-member-accessibility.d.ts:
--------------------------------------------------------------------------------
1 | export type AccessibilityLevel = 'explicit' | 'no-public' | 'off';
2 |
3 | export interface Schema0 {
4 | accessibility?: AccessibilityLevel;
5 | overrides?: {
6 | accessors?: AccessibilityLevel;
7 | constructors?: AccessibilityLevel;
8 | methods?: AccessibilityLevel;
9 | properties?: AccessibilityLevel;
10 | parameterProperties?: AccessibilityLevel;
11 | };
12 | ignoredMethodNames?: string[];
13 | }
14 |
15 | export type ExplicitMemberAccessibilityRuleOptions = [Schema0?];
16 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/explicit-module-boundary-types.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to ignore arguments that are explicitly typed as `any`.
4 | */
5 | allowArgumentsExplicitlyTypedAsAny?: boolean;
6 | /**
7 | * Whether to ignore return type annotations on body-less arrow functions that return an `as const` type assertion.
8 | * You must still type the parameters of the function.
9 | */
10 | allowDirectConstAssertionInArrowFunctions?: boolean;
11 | /**
12 | * An array of function/method names that will not have their arguments or return values checked.
13 | */
14 | allowedNames?: string[];
15 | /**
16 | * Whether to ignore return type annotations on functions immediately returning another function expression.
17 | * You must still type the parameters of the function.
18 | */
19 | allowHigherOrderFunctions?: boolean;
20 | /**
21 | * Whether to ignore type annotations on the variable of a function expression.
22 | */
23 | allowTypedFunctionExpressions?: boolean;
24 | }
25 |
26 | export type ExplicitModuleBoundaryTypesRuleOptions = [Schema0?];
27 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/func-call-spacing.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | []
3 | | ['never']
4 | | ['always']
5 | | [
6 | 'always',
7 | {
8 | allowNewlines?: boolean;
9 | },
10 | ];
11 |
12 | export type FuncCallSpacingRuleOptions = Schema0;
13 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/indent.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'tab' | number;
2 |
3 | export interface Schema1 {
4 | SwitchCase?: number;
5 | VariableDeclarator?:
6 | | (number | ('first' | 'off'))
7 | | {
8 | var?: number | ('first' | 'off');
9 | let?: number | ('first' | 'off');
10 | const?: number | ('first' | 'off');
11 | };
12 | outerIIFEBody?: number | 'off';
13 | MemberExpression?: number | 'off';
14 | FunctionDeclaration?: {
15 | parameters?: number | ('first' | 'off');
16 | body?: number;
17 | };
18 | FunctionExpression?: {
19 | parameters?: number | ('first' | 'off');
20 | body?: number;
21 | };
22 | StaticBlock?: {
23 | body?: number;
24 | };
25 | CallExpression?: {
26 | arguments?: number | ('first' | 'off');
27 | };
28 | ArrayExpression?: number | ('first' | 'off');
29 | ObjectExpression?: number | ('first' | 'off');
30 | ImportDeclaration?: number | ('first' | 'off');
31 | flatTernaryExpressions?: boolean;
32 | offsetTernaryExpressions?: boolean;
33 | ignoredNodes?: string[];
34 | ignoreComments?: boolean;
35 | }
36 |
37 | export type IndentRuleOptions = [Schema0?, Schema1?];
38 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/init-declarations.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | []
3 | | ['always']
4 | | ['never']
5 | | [
6 | 'never',
7 | {
8 | ignoreForLoopInit?: boolean;
9 | },
10 | ];
11 |
12 | export type InitDeclarationsRuleOptions = Schema0;
13 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/key-spacing.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | {
3 | align?:
4 | | ('colon' | 'value')
5 | | {
6 | mode?: 'strict' | 'minimum';
7 | on?: 'colon' | 'value';
8 | beforeColon?: boolean;
9 | afterColon?: boolean;
10 | };
11 | mode?: 'strict' | 'minimum';
12 | beforeColon?: boolean;
13 | afterColon?: boolean;
14 | }
15 | | {
16 | singleLine?: {
17 | mode?: 'strict' | 'minimum';
18 | beforeColon?: boolean;
19 | afterColon?: boolean;
20 | };
21 | multiLine?: {
22 | align?:
23 | | ('colon' | 'value')
24 | | {
25 | mode?: 'strict' | 'minimum';
26 | on?: 'colon' | 'value';
27 | beforeColon?: boolean;
28 | afterColon?: boolean;
29 | };
30 | mode?: 'strict' | 'minimum';
31 | beforeColon?: boolean;
32 | afterColon?: boolean;
33 | };
34 | }
35 | | {
36 | singleLine?: {
37 | mode?: 'strict' | 'minimum';
38 | beforeColon?: boolean;
39 | afterColon?: boolean;
40 | };
41 | multiLine?: {
42 | mode?: 'strict' | 'minimum';
43 | beforeColon?: boolean;
44 | afterColon?: boolean;
45 | };
46 | align?: {
47 | mode?: 'strict' | 'minimum';
48 | on?: 'colon' | 'value';
49 | beforeColon?: boolean;
50 | afterColon?: boolean;
51 | };
52 | };
53 |
54 | export type KeySpacingRuleOptions = [Schema0?];
55 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/keyword-spacing.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | before?: boolean;
3 | after?: boolean;
4 | overrides?: {
5 | abstract?: {
6 | before?: boolean;
7 | after?: boolean;
8 | };
9 | as?: {
10 | before?: boolean;
11 | after?: boolean;
12 | };
13 | async?: {
14 | before?: boolean;
15 | after?: boolean;
16 | };
17 | await?: {
18 | before?: boolean;
19 | after?: boolean;
20 | };
21 | boolean?: {
22 | before?: boolean;
23 | after?: boolean;
24 | };
25 | break?: {
26 | before?: boolean;
27 | after?: boolean;
28 | };
29 | byte?: {
30 | before?: boolean;
31 | after?: boolean;
32 | };
33 | case?: {
34 | before?: boolean;
35 | after?: boolean;
36 | };
37 | catch?: {
38 | before?: boolean;
39 | after?: boolean;
40 | };
41 | char?: {
42 | before?: boolean;
43 | after?: boolean;
44 | };
45 | class?: {
46 | before?: boolean;
47 | after?: boolean;
48 | };
49 | const?: {
50 | before?: boolean;
51 | after?: boolean;
52 | };
53 | continue?: {
54 | before?: boolean;
55 | after?: boolean;
56 | };
57 | debugger?: {
58 | before?: boolean;
59 | after?: boolean;
60 | };
61 | default?: {
62 | before?: boolean;
63 | after?: boolean;
64 | };
65 | delete?: {
66 | before?: boolean;
67 | after?: boolean;
68 | };
69 | do?: {
70 | before?: boolean;
71 | after?: boolean;
72 | };
73 | double?: {
74 | before?: boolean;
75 | after?: boolean;
76 | };
77 | else?: {
78 | before?: boolean;
79 | after?: boolean;
80 | };
81 | enum?: {
82 | before?: boolean;
83 | after?: boolean;
84 | };
85 | export?: {
86 | before?: boolean;
87 | after?: boolean;
88 | };
89 | extends?: {
90 | before?: boolean;
91 | after?: boolean;
92 | };
93 | false?: {
94 | before?: boolean;
95 | after?: boolean;
96 | };
97 | final?: {
98 | before?: boolean;
99 | after?: boolean;
100 | };
101 | finally?: {
102 | before?: boolean;
103 | after?: boolean;
104 | };
105 | float?: {
106 | before?: boolean;
107 | after?: boolean;
108 | };
109 | for?: {
110 | before?: boolean;
111 | after?: boolean;
112 | };
113 | from?: {
114 | before?: boolean;
115 | after?: boolean;
116 | };
117 | function?: {
118 | before?: boolean;
119 | after?: boolean;
120 | };
121 | get?: {
122 | before?: boolean;
123 | after?: boolean;
124 | };
125 | goto?: {
126 | before?: boolean;
127 | after?: boolean;
128 | };
129 | if?: {
130 | before?: boolean;
131 | after?: boolean;
132 | };
133 | implements?: {
134 | before?: boolean;
135 | after?: boolean;
136 | };
137 | import?: {
138 | before?: boolean;
139 | after?: boolean;
140 | };
141 | in?: {
142 | before?: boolean;
143 | after?: boolean;
144 | };
145 | instanceof?: {
146 | before?: boolean;
147 | after?: boolean;
148 | };
149 | int?: {
150 | before?: boolean;
151 | after?: boolean;
152 | };
153 | interface?: {
154 | before?: boolean;
155 | after?: boolean;
156 | };
157 | let?: {
158 | before?: boolean;
159 | after?: boolean;
160 | };
161 | long?: {
162 | before?: boolean;
163 | after?: boolean;
164 | };
165 | native?: {
166 | before?: boolean;
167 | after?: boolean;
168 | };
169 | new?: {
170 | before?: boolean;
171 | after?: boolean;
172 | };
173 | null?: {
174 | before?: boolean;
175 | after?: boolean;
176 | };
177 | of?: {
178 | before?: boolean;
179 | after?: boolean;
180 | };
181 | package?: {
182 | before?: boolean;
183 | after?: boolean;
184 | };
185 | private?: {
186 | before?: boolean;
187 | after?: boolean;
188 | };
189 | protected?: {
190 | before?: boolean;
191 | after?: boolean;
192 | };
193 | public?: {
194 | before?: boolean;
195 | after?: boolean;
196 | };
197 | return?: {
198 | before?: boolean;
199 | after?: boolean;
200 | };
201 | set?: {
202 | before?: boolean;
203 | after?: boolean;
204 | };
205 | short?: {
206 | before?: boolean;
207 | after?: boolean;
208 | };
209 | static?: {
210 | before?: boolean;
211 | after?: boolean;
212 | };
213 | super?: {
214 | before?: boolean;
215 | after?: boolean;
216 | };
217 | switch?: {
218 | before?: boolean;
219 | after?: boolean;
220 | };
221 | synchronized?: {
222 | before?: boolean;
223 | after?: boolean;
224 | };
225 | this?: {
226 | before?: boolean;
227 | after?: boolean;
228 | };
229 | throw?: {
230 | before?: boolean;
231 | after?: boolean;
232 | };
233 | throws?: {
234 | before?: boolean;
235 | after?: boolean;
236 | };
237 | transient?: {
238 | before?: boolean;
239 | after?: boolean;
240 | };
241 | true?: {
242 | before?: boolean;
243 | after?: boolean;
244 | };
245 | try?: {
246 | before?: boolean;
247 | after?: boolean;
248 | };
249 | typeof?: {
250 | before?: boolean;
251 | after?: boolean;
252 | };
253 | var?: {
254 | before?: boolean;
255 | after?: boolean;
256 | };
257 | void?: {
258 | before?: boolean;
259 | after?: boolean;
260 | };
261 | volatile?: {
262 | before?: boolean;
263 | after?: boolean;
264 | };
265 | while?: {
266 | before?: boolean;
267 | after?: boolean;
268 | };
269 | with?: {
270 | before?: boolean;
271 | after?: boolean;
272 | };
273 | yield?: {
274 | before?: boolean;
275 | after?: boolean;
276 | };
277 | type?: {
278 | before?: boolean;
279 | after?: boolean;
280 | };
281 | };
282 | }
283 |
284 | export type KeywordSpacingRuleOptions = [Schema0?];
285 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/lines-around-comment.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | beforeBlockComment?: boolean;
3 | afterBlockComment?: boolean;
4 | beforeLineComment?: boolean;
5 | afterLineComment?: boolean;
6 | allowBlockStart?: boolean;
7 | allowBlockEnd?: boolean;
8 | allowClassStart?: boolean;
9 | allowClassEnd?: boolean;
10 | allowObjectStart?: boolean;
11 | allowObjectEnd?: boolean;
12 | allowArrayStart?: boolean;
13 | allowArrayEnd?: boolean;
14 | allowInterfaceStart?: boolean;
15 | allowInterfaceEnd?: boolean;
16 | allowTypeStart?: boolean;
17 | allowTypeEnd?: boolean;
18 | allowEnumStart?: boolean;
19 | allowEnumEnd?: boolean;
20 | allowModuleStart?: boolean;
21 | allowModuleEnd?: boolean;
22 | ignorePattern?: string;
23 | applyDefaultIgnorePatterns?: boolean;
24 | }
25 |
26 | export type LinesAroundCommentRuleOptions = [Schema0?];
27 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/lines-between-class-members.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | {
3 | /**
4 | * @minItems 1
5 | */
6 | enforce: [
7 | {
8 | blankLine: 'always' | 'never';
9 | prev: 'method' | 'field' | '*';
10 | next: 'method' | 'field' | '*';
11 | },
12 | ...Array<{
13 | blankLine: 'always' | 'never';
14 | prev: 'method' | 'field' | '*';
15 | next: 'method' | 'field' | '*';
16 | }>,
17 | ];
18 | }
19 | | ('always' | 'never');
20 |
21 | export interface Schema1 {
22 | exceptAfterSingleLine?: boolean;
23 | exceptAfterOverload?: boolean;
24 | }
25 |
26 | export type LinesBetweenClassMembersRuleOptions = [Schema0?, Schema1?];
27 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/max-params.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | maximum?: number;
3 | max?: number;
4 | countVoidThis?: boolean;
5 | }
6 |
7 | export type MaxParamsRuleOptions = [Schema0?];
8 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/member-delimiter-style.d.ts:
--------------------------------------------------------------------------------
1 | export type MultiLineOption = 'none' | 'semi' | 'comma';
2 | export type SingleLineOption = 'semi' | 'comma';
3 |
4 | export interface Schema0 {
5 | multiline?: {
6 | delimiter?: MultiLineOption;
7 | requireLast?: boolean;
8 | };
9 | singleline?: {
10 | delimiter?: SingleLineOption;
11 | requireLast?: boolean;
12 | };
13 | overrides?: {
14 | interface?: DelimiterConfig;
15 | typeLiteral?: DelimiterConfig;
16 | };
17 | multilineDetection?: 'brackets' | 'last-member';
18 | }
19 | export interface DelimiterConfig {
20 | multiline?: {
21 | delimiter?: MultiLineOption;
22 | requireLast?: boolean;
23 | };
24 | singleline?: {
25 | delimiter?: SingleLineOption;
26 | requireLast?: boolean;
27 | };
28 | }
29 |
30 | export type MemberDelimiterStyleRuleOptions = [Schema0?];
31 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/member-ordering.d.ts:
--------------------------------------------------------------------------------
1 | export type BaseConfig =
2 | | 'never'
3 | | Array
4 | | {
5 | memberTypes?: Array | 'never';
6 | order?: OrderOptions;
7 | optionalityOrder?: OptionalityOrderOptions;
8 | };
9 | export type AllItems =
10 | | 'readonly-signature'
11 | | 'signature'
12 | | 'readonly-field'
13 | | 'public-readonly-field'
14 | | 'public-decorated-readonly-field'
15 | | 'decorated-readonly-field'
16 | | 'static-readonly-field'
17 | | 'public-static-readonly-field'
18 | | 'instance-readonly-field'
19 | | 'public-instance-readonly-field'
20 | | 'abstract-readonly-field'
21 | | 'public-abstract-readonly-field'
22 | | 'protected-readonly-field'
23 | | 'protected-decorated-readonly-field'
24 | | 'protected-static-readonly-field'
25 | | 'protected-instance-readonly-field'
26 | | 'protected-abstract-readonly-field'
27 | | 'private-readonly-field'
28 | | 'private-decorated-readonly-field'
29 | | 'private-static-readonly-field'
30 | | 'private-instance-readonly-field'
31 | | '#private-readonly-field'
32 | | '#private-static-readonly-field'
33 | | '#private-instance-readonly-field'
34 | | 'field'
35 | | 'public-field'
36 | | 'public-decorated-field'
37 | | 'decorated-field'
38 | | 'static-field'
39 | | 'public-static-field'
40 | | 'instance-field'
41 | | 'public-instance-field'
42 | | 'abstract-field'
43 | | 'public-abstract-field'
44 | | 'protected-field'
45 | | 'protected-decorated-field'
46 | | 'protected-static-field'
47 | | 'protected-instance-field'
48 | | 'protected-abstract-field'
49 | | 'private-field'
50 | | 'private-decorated-field'
51 | | 'private-static-field'
52 | | 'private-instance-field'
53 | | '#private-field'
54 | | '#private-static-field'
55 | | '#private-instance-field'
56 | | 'method'
57 | | 'public-method'
58 | | 'public-decorated-method'
59 | | 'decorated-method'
60 | | 'static-method'
61 | | 'public-static-method'
62 | | 'instance-method'
63 | | 'public-instance-method'
64 | | 'abstract-method'
65 | | 'public-abstract-method'
66 | | 'protected-method'
67 | | 'protected-decorated-method'
68 | | 'protected-static-method'
69 | | 'protected-instance-method'
70 | | 'protected-abstract-method'
71 | | 'private-method'
72 | | 'private-decorated-method'
73 | | 'private-static-method'
74 | | 'private-instance-method'
75 | | '#private-method'
76 | | '#private-static-method'
77 | | '#private-instance-method'
78 | | 'call-signature'
79 | | 'constructor'
80 | | 'public-constructor'
81 | | 'protected-constructor'
82 | | 'private-constructor'
83 | | 'accessor'
84 | | 'public-accessor'
85 | | 'public-decorated-accessor'
86 | | 'decorated-accessor'
87 | | 'static-accessor'
88 | | 'public-static-accessor'
89 | | 'instance-accessor'
90 | | 'public-instance-accessor'
91 | | 'abstract-accessor'
92 | | 'public-abstract-accessor'
93 | | 'protected-accessor'
94 | | 'protected-decorated-accessor'
95 | | 'protected-static-accessor'
96 | | 'protected-instance-accessor'
97 | | 'protected-abstract-accessor'
98 | | 'private-accessor'
99 | | 'private-decorated-accessor'
100 | | 'private-static-accessor'
101 | | 'private-instance-accessor'
102 | | '#private-accessor'
103 | | '#private-static-accessor'
104 | | '#private-instance-accessor'
105 | | 'get'
106 | | 'public-get'
107 | | 'public-decorated-get'
108 | | 'decorated-get'
109 | | 'static-get'
110 | | 'public-static-get'
111 | | 'instance-get'
112 | | 'public-instance-get'
113 | | 'abstract-get'
114 | | 'public-abstract-get'
115 | | 'protected-get'
116 | | 'protected-decorated-get'
117 | | 'protected-static-get'
118 | | 'protected-instance-get'
119 | | 'protected-abstract-get'
120 | | 'private-get'
121 | | 'private-decorated-get'
122 | | 'private-static-get'
123 | | 'private-instance-get'
124 | | '#private-get'
125 | | '#private-static-get'
126 | | '#private-instance-get'
127 | | 'set'
128 | | 'public-set'
129 | | 'public-decorated-set'
130 | | 'decorated-set'
131 | | 'static-set'
132 | | 'public-static-set'
133 | | 'instance-set'
134 | | 'public-instance-set'
135 | | 'abstract-set'
136 | | 'public-abstract-set'
137 | | 'protected-set'
138 | | 'protected-decorated-set'
139 | | 'protected-static-set'
140 | | 'protected-instance-set'
141 | | 'protected-abstract-set'
142 | | 'private-set'
143 | | 'private-decorated-set'
144 | | 'private-static-set'
145 | | 'private-instance-set'
146 | | '#private-set'
147 | | '#private-static-set'
148 | | '#private-instance-set'
149 | | 'static-initialization'
150 | | 'static-static-initialization'
151 | | 'public-static-static-initialization'
152 | | 'instance-static-initialization'
153 | | 'public-instance-static-initialization'
154 | | 'abstract-static-initialization'
155 | | 'public-abstract-static-initialization'
156 | | 'protected-static-static-initialization'
157 | | 'protected-instance-static-initialization'
158 | | 'protected-abstract-static-initialization'
159 | | 'private-static-static-initialization'
160 | | 'private-instance-static-initialization'
161 | | '#private-static-static-initialization'
162 | | '#private-instance-static-initialization';
163 | export type OrderOptions =
164 | | 'alphabetically'
165 | | 'alphabetically-case-insensitive'
166 | | 'as-written'
167 | | 'natural'
168 | | 'natural-case-insensitive';
169 | export type OptionalityOrderOptions = 'optional-first' | 'required-first';
170 | export type TypesConfig =
171 | | 'never'
172 | | Array
173 | | {
174 | memberTypes?: Array | 'never';
175 | order?: OrderOptions;
176 | optionalityOrder?: OptionalityOrderOptions;
177 | };
178 | export type TypeItems =
179 | | 'readonly-signature'
180 | | 'signature'
181 | | 'readonly-field'
182 | | 'field'
183 | | 'method'
184 | | 'constructor';
185 |
186 | export interface Schema0 {
187 | default?: BaseConfig;
188 | classes?: BaseConfig;
189 | classExpressions?: BaseConfig;
190 | interfaces?: TypesConfig;
191 | typeLiterals?: TypesConfig;
192 | }
193 |
194 | export type MemberOrderingRuleOptions = [Schema0?];
195 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/method-signature-style.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'property' | 'method';
2 |
3 | export type MethodSignatureStyleRuleOptions = [Schema0?];
4 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-array-constructor.d.ts:
--------------------------------------------------------------------------------
1 | export type NoArrayConstructorRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-array-delete.d.ts:
--------------------------------------------------------------------------------
1 | export type NoArrayDeleteRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-base-to-string.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | ignoredTypeNames?: string[];
3 | }
4 |
5 | export type NoBaseToStringRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-confusing-non-null-assertion.d.ts:
--------------------------------------------------------------------------------
1 | export type NoConfusingNonNullAssertionRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-confusing-void-expression.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | ignoreArrowShorthand?: boolean;
3 | ignoreVoidOperator?: boolean;
4 | }
5 |
6 | export type NoConfusingVoidExpressionRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-dupe-class-members.d.ts:
--------------------------------------------------------------------------------
1 | export type NoDupeClassMembersRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-duplicate-enum-values.d.ts:
--------------------------------------------------------------------------------
1 | export type NoDuplicateEnumValuesRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-duplicate-type-constituents.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | ignoreIntersections?: boolean;
3 | ignoreUnions?: boolean;
4 | }
5 |
6 | export type NoDuplicateTypeConstituentsRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-dynamic-delete.d.ts:
--------------------------------------------------------------------------------
1 | export type NoDynamicDeleteRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-empty-function.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allow?: Array<
3 | | 'functions'
4 | | 'arrowFunctions'
5 | | 'generatorFunctions'
6 | | 'methods'
7 | | 'generatorMethods'
8 | | 'getters'
9 | | 'setters'
10 | | 'constructors'
11 | | 'private-constructors'
12 | | 'protected-constructors'
13 | | 'asyncFunctions'
14 | | 'asyncMethods'
15 | | 'decoratedFunctions'
16 | | 'overrideMethods'
17 | >;
18 | }
19 |
20 | export type NoEmptyFunctionRuleOptions = [Schema0?];
21 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-empty-interface.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowSingleExtends?: boolean;
3 | }
4 |
5 | export type NoEmptyInterfaceRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-explicit-any.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to enable auto-fixing in which the `any` type is converted to the `unknown` type.
4 | */
5 | fixToUnknown?: boolean;
6 | /**
7 | * Whether to ignore rest parameter arrays.
8 | */
9 | ignoreRestArgs?: boolean;
10 | }
11 |
12 | export type NoExplicitAnyRuleOptions = [Schema0?];
13 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-extra-non-null-assertion.d.ts:
--------------------------------------------------------------------------------
1 | export type NoExtraNonNullAssertionRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-extra-parens.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | []
3 | | ['functions']
4 | | ['all']
5 | | [
6 | 'all',
7 | {
8 | conditionalAssign?: boolean;
9 | ternaryOperandBinaryExpressions?: boolean;
10 | nestedBinaryExpressions?: boolean;
11 | returnAssign?: boolean;
12 | ignoreJSX?: 'none' | 'all' | 'single-line' | 'multi-line';
13 | enforceForArrowConditionals?: boolean;
14 | enforceForSequenceExpressions?: boolean;
15 | enforceForNewInMemberExpressions?: boolean;
16 | enforceForFunctionPrototypeMethods?: boolean;
17 | allowParensAfterCommentPattern?: string;
18 | },
19 | ];
20 |
21 | export type NoExtraParensRuleOptions = Schema0;
22 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-extra-semi.d.ts:
--------------------------------------------------------------------------------
1 | export type NoExtraSemiRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-extraneous-class.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to allow extraneous classes that contain only a constructor.
4 | */
5 | allowConstructorOnly?: boolean;
6 | /**
7 | * Whether to allow extraneous classes that have no body (i.e. are empty).
8 | */
9 | allowEmpty?: boolean;
10 | /**
11 | * Whether to allow extraneous classes that only contain static members.
12 | */
13 | allowStaticOnly?: boolean;
14 | /**
15 | * Whether to allow extraneous classes that include a decorator.
16 | */
17 | allowWithDecorator?: boolean;
18 | }
19 |
20 | export type NoExtraneousClassRuleOptions = [Schema0?];
21 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-floating-promises.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to ignore `void` expressions.
4 | */
5 | ignoreVoid?: boolean;
6 | /**
7 | * Whether to ignore async IIFEs (Immediately Invoked Function Expressions).
8 | */
9 | ignoreIIFE?: boolean;
10 | }
11 |
12 | export type NoFloatingPromisesRuleOptions = [Schema0?];
13 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-for-in-array.d.ts:
--------------------------------------------------------------------------------
1 | export type NoForInArrayRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-implied-eval.d.ts:
--------------------------------------------------------------------------------
1 | export type NoImpliedEvalRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-import-type-side-effects.d.ts:
--------------------------------------------------------------------------------
1 | export type NoImportTypeSideEffectsRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-inferrable-types.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | ignoreParameters?: boolean;
3 | ignoreProperties?: boolean;
4 | }
5 |
6 | export type NoInferrableTypesRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-invalid-this.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | capIsConstructor?: boolean;
3 | }
4 |
5 | export type NoInvalidThisRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-invalid-void-type.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowInGenericTypeArguments?: boolean | [string, ...string[]];
3 | allowAsThisParameter?: boolean;
4 | }
5 |
6 | export type NoInvalidVoidTypeRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-loop-func.d.ts:
--------------------------------------------------------------------------------
1 | export type NoLoopFuncRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-loss-of-precision.d.ts:
--------------------------------------------------------------------------------
1 | export type NoLossOfPrecisionRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-magic-numbers.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | detectObjects?: boolean;
3 | enforceConst?: boolean;
4 | ignore?: Array;
5 | ignoreArrayIndexes?: boolean;
6 | ignoreDefaultValues?: boolean;
7 | ignoreClassFieldInitialValues?: boolean;
8 | ignoreNumericLiteralTypes?: boolean;
9 | ignoreEnums?: boolean;
10 | ignoreReadonlyClassProperties?: boolean;
11 | ignoreTypeIndexes?: boolean;
12 | }
13 |
14 | export type NoMagicNumbersRuleOptions = [Schema0?];
15 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-meaningless-void-operator.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | checkNever?: boolean;
3 | }
4 |
5 | export type NoMeaninglessVoidOperatorRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-misused-new.d.ts:
--------------------------------------------------------------------------------
1 | export type NoMisusedNewRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-misused-promises.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | checksConditionals?: boolean;
3 | checksVoidReturn?:
4 | | boolean
5 | | {
6 | arguments?: boolean;
7 | attributes?: boolean;
8 | properties?: boolean;
9 | returns?: boolean;
10 | variables?: boolean;
11 | };
12 | checksSpreads?: boolean;
13 | }
14 |
15 | export type NoMisusedPromisesRuleOptions = [Schema0?];
16 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-mixed-enums.d.ts:
--------------------------------------------------------------------------------
1 | export type NoMixedEnumsRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-namespace.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to allow `declare` with custom TypeScript namespaces.
4 | */
5 | allowDeclarations?: boolean;
6 | /**
7 | * Whether to allow `declare` with custom TypeScript namespaces inside definition files.
8 | */
9 | allowDefinitionFiles?: boolean;
10 | }
11 |
12 | export type NoNamespaceRuleOptions = [Schema0?];
13 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-non-null-asserted-nullish-coalescing.d.ts:
--------------------------------------------------------------------------------
1 | export type NoNonNullAssertedNullishCoalescingRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-non-null-asserted-optional-chain.d.ts:
--------------------------------------------------------------------------------
1 | export type NoNonNullAssertedOptionalChainRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-non-null-assertion.d.ts:
--------------------------------------------------------------------------------
1 | export type NoNonNullAssertionRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-redeclare.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | builtinGlobals?: boolean;
3 | ignoreDeclarationMerge?: boolean;
4 | }
5 |
6 | export type NoRedeclareRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-redundant-type-constituents.d.ts:
--------------------------------------------------------------------------------
1 | export type NoRedundantTypeConstituentsRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-require-imports.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Patterns of import paths to allow requiring from.
4 | */
5 | allow?: string[];
6 | }
7 |
8 | export type NoRequireImportsRuleOptions = [Schema0?];
9 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-restricted-imports.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | Array<
3 | | string
4 | | {
5 | name: string;
6 | message?: string;
7 | importNames?: string[];
8 | /**
9 | * Disallow value imports, but allow type-only imports.
10 | */
11 | allowTypeImports?: boolean;
12 | }
13 | >
14 | | []
15 | | [
16 | {
17 | paths?: Array<
18 | | string
19 | | {
20 | name: string;
21 | message?: string;
22 | importNames?: string[];
23 | /**
24 | * Disallow value imports, but allow type-only imports.
25 | */
26 | allowTypeImports?: boolean;
27 | }
28 | >;
29 | patterns?:
30 | | string[]
31 | | Array<{
32 | /**
33 | * @minItems 1
34 | */
35 | importNames?: [string, ...string[]];
36 | /**
37 | * @minItems 1
38 | */
39 | group: [string, ...string[]];
40 | importNamePattern?: string;
41 | message?: string;
42 | caseSensitive?: boolean;
43 | /**
44 | * Disallow value imports, but allow type-only imports.
45 | */
46 | allowTypeImports?: boolean;
47 | }>;
48 | },
49 | ];
50 |
51 | export type NoRestrictedImportsRuleOptions = Schema0;
52 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-shadow.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | builtinGlobals?: boolean;
3 | hoist?: 'all' | 'functions' | 'never';
4 | allow?: string[];
5 | ignoreOnInitialization?: boolean;
6 | ignoreTypeValueShadow?: boolean;
7 | ignoreFunctionTypeParameterNameValueShadow?: boolean;
8 | }
9 |
10 | export type NoShadowRuleOptions = [Schema0?];
11 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-this-alias.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to ignore destructurings, such as `const { props, state } = this`.
4 | */
5 | allowDestructuring?: boolean;
6 | /**
7 | * Names to ignore, such as ["self"] for `const self = this;`.
8 | */
9 | allowedNames?: string[];
10 | }
11 |
12 | export type NoThisAliasRuleOptions = [Schema0?];
13 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-throw-literal.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowThrowingAny?: boolean;
3 | allowThrowingUnknown?: boolean;
4 | }
5 |
6 | export type NoThrowLiteralRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-type-alias.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to allow direct one-to-one type aliases.
4 | */
5 | allowAliases?:
6 | | 'always'
7 | | 'never'
8 | | 'in-unions'
9 | | 'in-intersections'
10 | | 'in-unions-and-intersections';
11 | /**
12 | * Whether to allow type aliases for callbacks.
13 | */
14 | allowCallbacks?: 'always' | 'never';
15 | /**
16 | * Whether to allow type aliases for conditional types.
17 | */
18 | allowConditionalTypes?: 'always' | 'never';
19 | /**
20 | * Whether to allow type aliases with constructors.
21 | */
22 | allowConstructors?: 'always' | 'never';
23 | /**
24 | * Whether to allow type aliases with object literal types.
25 | */
26 | allowLiterals?:
27 | | 'always'
28 | | 'never'
29 | | 'in-unions'
30 | | 'in-intersections'
31 | | 'in-unions-and-intersections';
32 | /**
33 | * Whether to allow type aliases with mapped types.
34 | */
35 | allowMappedTypes?:
36 | | 'always'
37 | | 'never'
38 | | 'in-unions'
39 | | 'in-intersections'
40 | | 'in-unions-and-intersections';
41 | /**
42 | * Whether to allow type aliases with tuple types.
43 | */
44 | allowTupleTypes?:
45 | | 'always'
46 | | 'never'
47 | | 'in-unions'
48 | | 'in-intersections'
49 | | 'in-unions-and-intersections';
50 | /**
51 | * Whether to allow type aliases with generic types.
52 | */
53 | allowGenerics?: 'always' | 'never';
54 | }
55 |
56 | export type NoTypeAliasRuleOptions = [Schema0?];
57 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-unnecessary-boolean-literal-compare.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to allow comparisons between nullable boolean variables and `true`.
4 | */
5 | allowComparingNullableBooleansToTrue?: boolean;
6 | /**
7 | * Whether to allow comparisons between nullable boolean variables and `false`.
8 | */
9 | allowComparingNullableBooleansToFalse?: boolean;
10 | }
11 |
12 | export type NoUnnecessaryBooleanLiteralCompareRuleOptions = [Schema0?];
13 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-unnecessary-condition.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to ignore constant loop conditions, such as `while (true)`.
4 | */
5 | allowConstantLoopConditions?: boolean;
6 | /**
7 | * Whether to not error when running with a tsconfig that has strictNullChecks turned.
8 | */
9 | allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean;
10 | }
11 |
12 | export type NoUnnecessaryConditionRuleOptions = [Schema0?];
13 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-unnecessary-qualifier.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUnnecessaryQualifierRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-unnecessary-type-arguments.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUnnecessaryTypeArgumentsRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-unnecessary-type-assertion.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * A list of type names to ignore.
4 | */
5 | typesToIgnore?: string[];
6 | }
7 |
8 | export type NoUnnecessaryTypeAssertionRuleOptions = [Schema0?];
9 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-unnecessary-type-constraint.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUnnecessaryTypeConstraintRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-unsafe-argument.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUnsafeArgumentRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-unsafe-assignment.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUnsafeAssignmentRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-unsafe-call.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUnsafeCallRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-unsafe-declaration-merging.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUnsafeDeclarationMergingRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-unsafe-enum-comparison.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUnsafeEnumComparisonRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-unsafe-member-access.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUnsafeMemberAccessRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-unsafe-return.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUnsafeReturnRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-unsafe-unary-minus.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUnsafeUnaryMinusRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-unused-expressions.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowShortCircuit?: boolean;
3 | allowTernary?: boolean;
4 | allowTaggedTemplates?: boolean;
5 | enforceForJSX?: boolean;
6 | }
7 |
8 | export type NoUnusedExpressionsRuleOptions = [Schema0?];
9 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-unused-vars.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | ('all' | 'local')
3 | | {
4 | vars?: 'all' | 'local';
5 | varsIgnorePattern?: string;
6 | args?: 'all' | 'after-used' | 'none';
7 | ignoreRestSiblings?: boolean;
8 | argsIgnorePattern?: string;
9 | caughtErrors?: 'all' | 'none';
10 | caughtErrorsIgnorePattern?: string;
11 | destructuredArrayIgnorePattern?: string;
12 | };
13 |
14 | export type NoUnusedVarsRuleOptions = [Schema0?];
15 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-use-before-define.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | 'nofunc'
3 | | {
4 | functions?: boolean;
5 | classes?: boolean;
6 | enums?: boolean;
7 | variables?: boolean;
8 | typedefs?: boolean;
9 | ignoreTypeReferences?: boolean;
10 | allowNamedExports?: boolean;
11 | };
12 |
13 | export type NoUseBeforeDefineRuleOptions = [Schema0?];
14 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-useless-constructor.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUselessConstructorRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-useless-empty-export.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUselessEmptyExportRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-useless-template-literals.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUselessTemplateLiteralsRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/no-var-requires.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Patterns of import paths to allow requiring from.
4 | */
5 | allow?: string[];
6 | }
7 |
8 | export type NoVarRequiresRuleOptions = [Schema0?];
9 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/non-nullable-type-assertion-style.d.ts:
--------------------------------------------------------------------------------
1 | export type NonNullableTypeAssertionStyleRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/object-curly-spacing.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'always' | 'never';
2 |
3 | export interface Schema1 {
4 | arraysInObjects?: boolean;
5 | objectsInObjects?: boolean;
6 | }
7 |
8 | export type ObjectCurlySpacingRuleOptions = [Schema0?, Schema1?];
9 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/only-throw-error.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowThrowingAny?: boolean;
3 | allowThrowingUnknown?: boolean;
4 | }
5 |
6 | export type OnlyThrowErrorRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/padding-line-between-statements.d.ts:
--------------------------------------------------------------------------------
1 | export type PaddingType = 'any' | 'never' | 'always';
2 | export type StatementType =
3 | | (
4 | | '*'
5 | | 'block-like'
6 | | 'exports'
7 | | 'require'
8 | | 'directive'
9 | | 'expression'
10 | | 'iife'
11 | | 'multiline-block-like'
12 | | 'multiline-expression'
13 | | 'multiline-const'
14 | | 'multiline-let'
15 | | 'multiline-var'
16 | | 'singleline-const'
17 | | 'singleline-let'
18 | | 'singleline-var'
19 | | 'block'
20 | | 'empty'
21 | | 'function'
22 | | 'break'
23 | | 'case'
24 | | 'class'
25 | | 'const'
26 | | 'continue'
27 | | 'debugger'
28 | | 'default'
29 | | 'do'
30 | | 'export'
31 | | 'for'
32 | | 'if'
33 | | 'import'
34 | | 'let'
35 | | 'return'
36 | | 'switch'
37 | | 'throw'
38 | | 'try'
39 | | 'var'
40 | | 'while'
41 | | 'with'
42 | | 'interface'
43 | | 'type'
44 | )
45 | | [
46 | (
47 | | '*'
48 | | 'block-like'
49 | | 'exports'
50 | | 'require'
51 | | 'directive'
52 | | 'expression'
53 | | 'iife'
54 | | 'multiline-block-like'
55 | | 'multiline-expression'
56 | | 'multiline-const'
57 | | 'multiline-let'
58 | | 'multiline-var'
59 | | 'singleline-const'
60 | | 'singleline-let'
61 | | 'singleline-var'
62 | | 'block'
63 | | 'empty'
64 | | 'function'
65 | | 'break'
66 | | 'case'
67 | | 'class'
68 | | 'const'
69 | | 'continue'
70 | | 'debugger'
71 | | 'default'
72 | | 'do'
73 | | 'export'
74 | | 'for'
75 | | 'if'
76 | | 'import'
77 | | 'let'
78 | | 'return'
79 | | 'switch'
80 | | 'throw'
81 | | 'try'
82 | | 'var'
83 | | 'while'
84 | | 'with'
85 | | 'interface'
86 | | 'type'
87 | ),
88 | ...Array<
89 | | '*'
90 | | 'block-like'
91 | | 'exports'
92 | | 'require'
93 | | 'directive'
94 | | 'expression'
95 | | 'iife'
96 | | 'multiline-block-like'
97 | | 'multiline-expression'
98 | | 'multiline-const'
99 | | 'multiline-let'
100 | | 'multiline-var'
101 | | 'singleline-const'
102 | | 'singleline-let'
103 | | 'singleline-var'
104 | | 'block'
105 | | 'empty'
106 | | 'function'
107 | | 'break'
108 | | 'case'
109 | | 'class'
110 | | 'const'
111 | | 'continue'
112 | | 'debugger'
113 | | 'default'
114 | | 'do'
115 | | 'export'
116 | | 'for'
117 | | 'if'
118 | | 'import'
119 | | 'let'
120 | | 'return'
121 | | 'switch'
122 | | 'throw'
123 | | 'try'
124 | | 'var'
125 | | 'while'
126 | | 'with'
127 | | 'interface'
128 | | 'type'
129 | >,
130 | ];
131 | export type Schema0 = Array<{
132 | blankLine: PaddingType;
133 | prev: StatementType;
134 | next: StatementType;
135 | }>;
136 |
137 | export type PaddingLineBetweenStatementsRuleOptions = Schema0;
138 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/parameter-properties.d.ts:
--------------------------------------------------------------------------------
1 | export type Modifier =
2 | | 'readonly'
3 | | 'private'
4 | | 'protected'
5 | | 'public'
6 | | 'private readonly'
7 | | 'protected readonly'
8 | | 'public readonly';
9 |
10 | export interface Schema0 {
11 | allow?: Modifier[];
12 | prefer?: 'class-property' | 'parameter-property';
13 | }
14 |
15 | export type ParameterPropertiesRuleOptions = [Schema0?];
16 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-as-const.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferAsConstRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-destructuring.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | {
3 | VariableDeclarator?: {
4 | array?: boolean;
5 | object?: boolean;
6 | };
7 | AssignmentExpression?: {
8 | array?: boolean;
9 | object?: boolean;
10 | };
11 | }
12 | | {
13 | array?: boolean;
14 | object?: boolean;
15 | };
16 |
17 | export interface Schema1 {
18 | enforceForRenamedProperties?: boolean;
19 | enforceForDeclarationWithTypeAnnotation?: boolean;
20 | [k: string]: unknown;
21 | }
22 |
23 | export type PreferDestructuringRuleOptions = [Schema0?, Schema1?];
24 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-enum-initializers.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferEnumInitializersRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-find.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferFindRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-for-of.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferForOfRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-function-type.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferFunctionTypeRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-includes.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferIncludesRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-literal-enum-member.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowBitwiseExpressions?: boolean;
3 | }
4 |
5 | export type PreferLiteralEnumMemberRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-namespace-keyword.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferNamespaceKeywordRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-nullish-coalescing.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean;
3 | ignoreConditionalTests?: boolean;
4 | ignoreMixedLogicalExpressions?: boolean;
5 | ignorePrimitives?:
6 | | {
7 | bigint?: boolean;
8 | boolean?: boolean;
9 | number?: boolean;
10 | string?: boolean;
11 | [k: string]: unknown;
12 | }
13 | | true;
14 | ignoreTernaryTests?: boolean;
15 | }
16 |
17 | export type PreferNullishCoalescingRuleOptions = [Schema0?];
18 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-optional-chain.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Check operands that are typed as `any` when inspecting "loose boolean" operands.
4 | */
5 | checkAny?: boolean;
6 | /**
7 | * Check operands that are typed as `unknown` when inspecting "loose boolean" operands.
8 | */
9 | checkUnknown?: boolean;
10 | /**
11 | * Check operands that are typed as `string` when inspecting "loose boolean" operands.
12 | */
13 | checkString?: boolean;
14 | /**
15 | * Check operands that are typed as `number` when inspecting "loose boolean" operands.
16 | */
17 | checkNumber?: boolean;
18 | /**
19 | * Check operands that are typed as `boolean` when inspecting "loose boolean" operands.
20 | */
21 | checkBoolean?: boolean;
22 | /**
23 | * Check operands that are typed as `bigint` when inspecting "loose boolean" operands.
24 | */
25 | checkBigInt?: boolean;
26 | /**
27 | * Skip operands that are not typed with `null` and/or `undefined` when inspecting "loose boolean" operands.
28 | */
29 | requireNullish?: boolean;
30 | /**
31 | * Allow autofixers that will change the return type of the expression. This option is considered unsafe as it may break the build.
32 | */
33 | allowPotentiallyUnsafeFixesThatModifyTheReturnTypeIKnowWhatImDoing?: boolean;
34 | }
35 |
36 | export type PreferOptionalChainRuleOptions = [Schema0?];
37 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-promise-reject-errors.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowEmptyReject?: boolean;
3 | }
4 |
5 | export type PreferPromiseRejectErrorsRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-readonly-parameter-types.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allow?: Array<
3 | | string
4 | | {
5 | from: 'file';
6 | name: string | [string, ...string[]];
7 | path?: string;
8 | }
9 | | {
10 | from: 'lib';
11 | name: string | [string, ...string[]];
12 | }
13 | | {
14 | from: 'package';
15 | name: string | [string, ...string[]];
16 | package: string;
17 | }
18 | >;
19 | checkParameterProperties?: boolean;
20 | ignoreInferredTypes?: boolean;
21 | treatMethodsAsReadonly?: boolean;
22 | }
23 |
24 | export type PreferReadonlyParameterTypesRuleOptions = [Schema0?];
25 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-readonly.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | onlyInlineLambdas?: boolean;
3 | }
4 |
5 | export type PreferReadonlyRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-reduce-type-parameter.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferReduceTypeParameterRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-regexp-exec.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferRegexpExecRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-return-this-type.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferReturnThisTypeRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-string-starts-ends-with.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to allow equality checks against the first or last element of a string.
4 | */
5 | allowSingleElementEquality?: 'always' | 'never';
6 | }
7 |
8 | export type PreferStringStartsEndsWithRuleOptions = [Schema0?];
9 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/prefer-ts-expect-error.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferTsExpectErrorRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/promise-function-async.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to consider `any` and `unknown` to be Promises.
4 | */
5 | allowAny?: boolean;
6 | /**
7 | * Any extra names of classes or interfaces to be considered Promises.
8 | */
9 | allowedPromiseNames?: string[];
10 | checkArrowFunctions?: boolean;
11 | checkFunctionDeclarations?: boolean;
12 | checkFunctionExpressions?: boolean;
13 | checkMethodDeclarations?: boolean;
14 | }
15 |
16 | export type PromiseFunctionAsyncRuleOptions = [Schema0?];
17 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/quotes.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'single' | 'double' | 'backtick';
2 |
3 | export type Schema1 =
4 | | 'avoid-escape'
5 | | {
6 | avoidEscape?: boolean;
7 | allowTemplateLiterals?: boolean;
8 | };
9 |
10 | export type QuotesRuleOptions = [Schema0?, Schema1?];
11 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/require-array-sort-compare.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to ignore arrays in which all elements are strings.
4 | */
5 | ignoreStringArrays?: boolean;
6 | }
7 |
8 | export type RequireArraySortCompareRuleOptions = [Schema0?];
9 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/require-await.d.ts:
--------------------------------------------------------------------------------
1 | export type RequireAwaitRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/restrict-plus-operands.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to allow `any` typed values.
4 | */
5 | allowAny?: boolean;
6 | /**
7 | * Whether to allow `boolean` typed values.
8 | */
9 | allowBoolean?: boolean;
10 | /**
11 | * Whether to allow potentially `null` or `undefined` typed values.
12 | */
13 | allowNullish?: boolean;
14 | /**
15 | * Whether to allow `bigint`/`number` typed values and `string` typed values to be added together.
16 | */
17 | allowNumberAndString?: boolean;
18 | /**
19 | * Whether to allow `regexp` typed values.
20 | */
21 | allowRegExp?: boolean;
22 | /**
23 | * Whether to skip compound assignments such as `+=`.
24 | */
25 | skipCompoundAssignments?: boolean;
26 | }
27 |
28 | export type RestrictPlusOperandsRuleOptions = [Schema0?];
29 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/restrict-template-expressions.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to allow `any` typed values in template expressions.
4 | */
5 | allowAny?: boolean;
6 | /**
7 | * Whether to allow `array` typed values in template expressions.
8 | */
9 | allowArray?: boolean;
10 | /**
11 | * Whether to allow `boolean` typed values in template expressions.
12 | */
13 | allowBoolean?: boolean;
14 | /**
15 | * Whether to allow `nullish` typed values in template expressions.
16 | */
17 | allowNullish?: boolean;
18 | /**
19 | * Whether to allow `number` typed values in template expressions.
20 | */
21 | allowNumber?: boolean;
22 | /**
23 | * Whether to allow `regexp` typed values in template expressions.
24 | */
25 | allowRegExp?: boolean;
26 | /**
27 | * Whether to allow `never` typed values in template expressions.
28 | */
29 | allowNever?: boolean;
30 | }
31 |
32 | export type RestrictTemplateExpressionsRuleOptions = [Schema0?];
33 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/return-await.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'in-try-catch' | 'always' | 'never';
2 |
3 | export type ReturnAwaitRuleOptions = [Schema0?];
4 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/semi.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | []
3 | | ['never']
4 | | [
5 | 'never',
6 | {
7 | beforeStatementContinuationChars?: 'always' | 'any' | 'never';
8 | },
9 | ]
10 | | ['always']
11 | | [
12 | 'always',
13 | {
14 | omitLastInOneLineBlock?: boolean;
15 | omitLastInOneLineClassBody?: boolean;
16 | },
17 | ];
18 |
19 | export type SemiRuleOptions = Schema0;
20 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/sort-type-constituents.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to check intersection types.
4 | */
5 | checkIntersections?: boolean;
6 | /**
7 | * Whether to check union types.
8 | */
9 | checkUnions?: boolean;
10 | /**
11 | * Ordering of the groups.
12 | */
13 | groupOrder?: Array<
14 | | 'conditional'
15 | | 'function'
16 | | 'import'
17 | | 'intersection'
18 | | 'keyword'
19 | | 'nullish'
20 | | 'literal'
21 | | 'named'
22 | | 'object'
23 | | 'operator'
24 | | 'tuple'
25 | | 'union'
26 | >;
27 | }
28 |
29 | export type SortTypeConstituentsRuleOptions = [Schema0?];
30 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/space-before-blocks.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | ('always' | 'never')
3 | | {
4 | keywords?: 'always' | 'never' | 'off';
5 | functions?: 'always' | 'never' | 'off';
6 | classes?: 'always' | 'never' | 'off';
7 | };
8 |
9 | export type SpaceBeforeBlocksRuleOptions = [Schema0?];
10 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/space-before-function-paren.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | ('always' | 'never')
3 | | {
4 | anonymous?: 'always' | 'never' | 'ignore';
5 | named?: 'always' | 'never' | 'ignore';
6 | asyncArrow?: 'always' | 'never' | 'ignore';
7 | };
8 |
9 | export type SpaceBeforeFunctionParenRuleOptions = [Schema0?];
10 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/space-infix-ops.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | int32Hint?: boolean;
3 | }
4 |
5 | export type SpaceInfixOpsRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/strict-boolean-expressions.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowString?: boolean;
3 | allowNumber?: boolean;
4 | allowNullableObject?: boolean;
5 | allowNullableBoolean?: boolean;
6 | allowNullableString?: boolean;
7 | allowNullableNumber?: boolean;
8 | allowNullableEnum?: boolean;
9 | allowAny?: boolean;
10 | allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean;
11 | }
12 |
13 | export type StrictBooleanExpressionsRuleOptions = [Schema0?];
14 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/switch-exhaustiveness-check.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * If 'true', allow 'default' cases on switch statements with exhaustive cases.
4 | */
5 | allowDefaultCaseForExhaustiveSwitch?: boolean;
6 | /**
7 | * If 'true', require a 'default' clause for switches on non-union types.
8 | */
9 | requireDefaultForNonUnion?: boolean;
10 | }
11 |
12 | export type SwitchExhaustivenessCheckRuleOptions = [Schema0?];
13 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/triple-slash-reference.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | lib?: 'always' | 'never';
3 | path?: 'always' | 'never';
4 | types?: 'always' | 'never' | 'prefer-import';
5 | }
6 |
7 | export type TripleSlashReferenceRuleOptions = [Schema0?];
8 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/type-annotation-spacing.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | before?: boolean;
3 | after?: boolean;
4 | overrides?: {
5 | colon?: SpacingConfig;
6 | arrow?: SpacingConfig;
7 | variable?: SpacingConfig;
8 | parameter?: SpacingConfig;
9 | property?: SpacingConfig;
10 | returnType?: SpacingConfig;
11 | };
12 | }
13 | export interface SpacingConfig {
14 | before?: boolean;
15 | after?: boolean;
16 | }
17 |
18 | export type TypeAnnotationSpacingRuleOptions = [Schema0?];
19 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/typedef.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | arrayDestructuring?: boolean;
3 | arrowParameter?: boolean;
4 | memberVariableDeclaration?: boolean;
5 | objectDestructuring?: boolean;
6 | parameter?: boolean;
7 | propertyDeclaration?: boolean;
8 | variableDeclaration?: boolean;
9 | variableDeclarationIgnoreFunction?: boolean;
10 | }
11 |
12 | export type TypedefRuleOptions = [Schema0?];
13 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/unbound-method.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether to skip checking whether `static` methods are correctly bound.
4 | */
5 | ignoreStatic?: boolean;
6 | }
7 |
8 | export type UnboundMethodRuleOptions = [Schema0?];
9 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/unified-signatures.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * Whether two parameters with different names at the same index should be considered different even if their types are the same.
4 | */
5 | ignoreDifferentlyNamedParameters?: boolean;
6 | }
7 |
8 | export type UnifiedSignaturesRuleOptions = [Schema0?];
9 |
--------------------------------------------------------------------------------
/types/typescript-eslint/rules/use-unknown-in-catch-callback-variable.d.ts:
--------------------------------------------------------------------------------
1 | export type UseUnknownInCatchCallbackVariableRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | # @eslint-types/unicorn
17 |
18 | ## Install
19 |
20 | ```sh
21 | npm install -D @eslint-types/unicorn
22 | ```
23 |
24 | ## Usage
25 |
26 | ```js
27 | // @ts-check
28 | const { defineConfig } = require('eslint-define-config');
29 |
30 | ///
31 |
32 | module.exports = defineConfig({
33 | // ...
34 | });
35 | ```
36 |
--------------------------------------------------------------------------------
/types/unicorn/index.d.ts:
--------------------------------------------------------------------------------
1 | import type { Extends, Plugins, RuleOptions } from './types';
2 |
3 | declare module 'eslint-define-config' {
4 | export interface CustomExtends extends Extends {}
5 | export interface CustomPlugins extends Plugins {}
6 | export interface CustomRuleOptions extends RuleOptions {}
7 | }
8 |
--------------------------------------------------------------------------------
/types/unicorn/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@eslint-types/unicorn",
3 | "version": "52.0.0",
4 | "description": "TypeScript definitions for eslint-define-config",
5 | "homepage": "https://github.com/eslint-types/define-config-plugin-types/tree/main/types/unicorn",
6 | "license": "MIT",
7 | "contributors": [
8 | {
9 | "name": "Christopher Quadflieg",
10 | "url": "https://github.com/Shinigami92",
11 | "githubUsername": "Shinigami92"
12 | }
13 | ],
14 | "main": "",
15 | "types": "index.d.ts",
16 | "repository": {
17 | "type": "git",
18 | "url": "https://github.com/eslint-types/define-config-plugin-types.git",
19 | "directory": "types/unicorn"
20 | },
21 | "scripts": {},
22 | "dependencies": {},
23 | "devDependencies": {
24 | "eslint-plugin-unicorn": "52.0.0"
25 | },
26 | "exports": {
27 | ".": {
28 | "types": "./index.d.ts"
29 | },
30 | "./types": {
31 | "types": "./types.d.ts"
32 | },
33 | "./package.json": "./package.json"
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/types/unicorn/rules/better-regex.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | sortCharacterClasses?: boolean;
3 | }
4 |
5 | export type BetterRegexRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/unicorn/rules/catch-error-name.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | name?: string;
3 | ignore?: unknown[];
4 | }
5 |
6 | export type CatchErrorNameRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/unicorn/rules/consistent-destructuring.d.ts:
--------------------------------------------------------------------------------
1 | export type ConsistentDestructuringRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/consistent-function-scoping.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | checkArrowFunctions?: boolean;
3 | }
4 |
5 | export type ConsistentFunctionScopingRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/unicorn/rules/custom-error-definition.d.ts:
--------------------------------------------------------------------------------
1 | export type CustomErrorDefinitionRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/empty-brace-spaces.d.ts:
--------------------------------------------------------------------------------
1 | export type EmptyBraceSpacesRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/error-message.d.ts:
--------------------------------------------------------------------------------
1 | export type ErrorMessageRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/escape-case.d.ts:
--------------------------------------------------------------------------------
1 | export type EscapeCaseRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/expiring-todo-comments.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | terms?: string[];
3 | ignore?: unknown[];
4 | ignoreDatesOnPullRequests?: boolean;
5 | allowWarningComments?: boolean;
6 | date?: string;
7 | }
8 |
9 | export type ExpiringTodoCommentsRuleOptions = [Schema0?];
10 |
--------------------------------------------------------------------------------
/types/unicorn/rules/explicit-length-check.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | 'non-zero'?: 'greater-than' | 'not-equal';
3 | }
4 |
5 | export type ExplicitLengthCheckRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/unicorn/rules/filename-case.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | {
3 | case?: 'camelCase' | 'snakeCase' | 'kebabCase' | 'pascalCase';
4 | ignore?: unknown[];
5 | multipleFileExtensions?: boolean;
6 | }
7 | | {
8 | cases?: {
9 | camelCase?: boolean;
10 | snakeCase?: boolean;
11 | kebabCase?: boolean;
12 | pascalCase?: boolean;
13 | };
14 | ignore?: unknown[];
15 | multipleFileExtensions?: boolean;
16 | };
17 |
18 | export type FilenameCaseRuleOptions = [Schema0?];
19 |
--------------------------------------------------------------------------------
/types/unicorn/rules/import-index.d.ts:
--------------------------------------------------------------------------------
1 | export type ImportIndexRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/import-style.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | []
3 | | [
4 | {
5 | checkImport?: boolean;
6 | checkDynamicImport?: boolean;
7 | checkExportFrom?: boolean;
8 | checkRequire?: boolean;
9 | extendDefaultStyles?: boolean;
10 | styles?: ModuleStyles;
11 | },
12 | ];
13 | export type Styles = false | BooleanObject;
14 |
15 | export interface ModuleStyles {
16 | [k: string]: Styles;
17 | }
18 | export interface BooleanObject {
19 | [k: string]: boolean;
20 | }
21 |
22 | export type ImportStyleRuleOptions = Schema0;
23 |
--------------------------------------------------------------------------------
/types/unicorn/rules/new-for-builtins.d.ts:
--------------------------------------------------------------------------------
1 | export type NewForBuiltinsRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-abusive-eslint-disable.d.ts:
--------------------------------------------------------------------------------
1 | export type NoAbusiveEslintDisableRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-anonymous-default-export.d.ts:
--------------------------------------------------------------------------------
1 | export type NoAnonymousDefaultExportRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-array-callback-reference.d.ts:
--------------------------------------------------------------------------------
1 | export type NoArrayCallbackReferenceRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-array-for-each.d.ts:
--------------------------------------------------------------------------------
1 | export type NoArrayForEachRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-array-instanceof.d.ts:
--------------------------------------------------------------------------------
1 | export type NoArrayInstanceofRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-array-method-this-argument.d.ts:
--------------------------------------------------------------------------------
1 | export type NoArrayMethodThisArgumentRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-array-push-push.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | ignore?: unknown[];
3 | }
4 |
5 | export type NoArrayPushPushRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-array-reduce.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | allowSimpleOperations?: boolean;
3 | }
4 |
5 | export type NoArrayReduceRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-await-expression-member.d.ts:
--------------------------------------------------------------------------------
1 | export type NoAwaitExpressionMemberRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-await-in-promise-methods.d.ts:
--------------------------------------------------------------------------------
1 | export type NoAwaitInPromiseMethodsRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-console-spaces.d.ts:
--------------------------------------------------------------------------------
1 | export type NoConsoleSpacesRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-document-cookie.d.ts:
--------------------------------------------------------------------------------
1 | export type NoDocumentCookieRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-empty-file.d.ts:
--------------------------------------------------------------------------------
1 | export type NoEmptyFileRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-fn-reference-in-iterator.d.ts:
--------------------------------------------------------------------------------
1 | export type NoFnReferenceInIteratorRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-for-loop.d.ts:
--------------------------------------------------------------------------------
1 | export type NoForLoopRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-hex-escape.d.ts:
--------------------------------------------------------------------------------
1 | export type NoHexEscapeRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-instanceof-array.d.ts:
--------------------------------------------------------------------------------
1 | export type NoInstanceofArrayRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-invalid-remove-event-listener.d.ts:
--------------------------------------------------------------------------------
1 | export type NoInvalidRemoveEventListenerRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-keyword-prefix.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | /**
3 | * @minItems 0
4 | */
5 | disallowedPrefixes?: [] | [string];
6 | checkProperties?: boolean;
7 | onlyCamelCase?: boolean;
8 | }
9 |
10 | export type NoKeywordPrefixRuleOptions = [Schema0?];
11 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-lonely-if.d.ts:
--------------------------------------------------------------------------------
1 | export type NoLonelyIfRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-negated-condition.d.ts:
--------------------------------------------------------------------------------
1 | export type NoNegatedConditionRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-nested-ternary.d.ts:
--------------------------------------------------------------------------------
1 | export type NoNestedTernaryRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-new-array.d.ts:
--------------------------------------------------------------------------------
1 | export type NoNewArrayRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-new-buffer.d.ts:
--------------------------------------------------------------------------------
1 | export type NoNewBufferRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-null.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | checkStrictEquality?: boolean;
3 | }
4 |
5 | export type NoNullRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-object-as-default-parameter.d.ts:
--------------------------------------------------------------------------------
1 | export type NoObjectAsDefaultParameterRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-process-exit.d.ts:
--------------------------------------------------------------------------------
1 | export type NoProcessExitRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-reduce.d.ts:
--------------------------------------------------------------------------------
1 | export type NoReduceRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-single-promise-in-promise-methods.d.ts:
--------------------------------------------------------------------------------
1 | export type NoSinglePromiseInPromiseMethodsRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-static-only-class.d.ts:
--------------------------------------------------------------------------------
1 | export type NoStaticOnlyClassRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-thenable.d.ts:
--------------------------------------------------------------------------------
1 | export type NoThenableRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-this-assignment.d.ts:
--------------------------------------------------------------------------------
1 | export type NoThisAssignmentRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-typeof-undefined.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | checkGlobalVariables?: boolean;
3 | }
4 |
5 | export type NoTypeofUndefinedRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-unnecessary-await.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUnnecessaryAwaitRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-unnecessary-polyfills.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | targets:
3 | | string
4 | | unknown[]
5 | | {
6 | [k: string]: unknown;
7 | };
8 | }
9 |
10 | export type NoUnnecessaryPolyfillsRuleOptions = [Schema0?];
11 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-unreadable-array-destructuring.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUnreadableArrayDestructuringRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-unreadable-iife.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUnreadableIifeRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-unsafe-regex.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUnsafeRegexRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-unused-properties.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUnusedPropertiesRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-useless-fallback-in-spread.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUselessFallbackInSpreadRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-useless-length-check.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUselessLengthCheckRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-useless-promise-resolve-reject.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUselessPromiseResolveRejectRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-useless-spread.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUselessSpreadRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-useless-switch-case.d.ts:
--------------------------------------------------------------------------------
1 | export type NoUselessSwitchCaseRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-useless-undefined.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | checkArguments?: boolean;
3 | checkArrowFunctionBody?: boolean;
4 | }
5 |
6 | export type NoUselessUndefinedRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/unicorn/rules/no-zero-fractions.d.ts:
--------------------------------------------------------------------------------
1 | export type NoZeroFractionsRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/number-literal-case.d.ts:
--------------------------------------------------------------------------------
1 | export type NumberLiteralCaseRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/numeric-separators-style.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | binary?: {
3 | onlyIfContainsSeparator?: boolean;
4 | minimumDigits?: number;
5 | groupLength?: number;
6 | };
7 | octal?: {
8 | onlyIfContainsSeparator?: boolean;
9 | minimumDigits?: number;
10 | groupLength?: number;
11 | };
12 | hexadecimal?: {
13 | onlyIfContainsSeparator?: boolean;
14 | minimumDigits?: number;
15 | groupLength?: number;
16 | };
17 | number?: {
18 | onlyIfContainsSeparator?: boolean;
19 | minimumDigits?: number;
20 | groupLength?: number;
21 | };
22 | onlyIfContainsSeparator?: boolean;
23 | }
24 |
25 | export type NumericSeparatorsStyleRuleOptions = [Schema0?];
26 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-add-event-listener.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | excludedPackages?: string[];
3 | }
4 |
5 | export type PreferAddEventListenerRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-array-find.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | checkFromLast?: boolean;
3 | }
4 |
5 | export type PreferArrayFindRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-array-flat-map.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferArrayFlatMapRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-array-flat.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | functions?: unknown[];
3 | }
4 |
5 | export type PreferArrayFlatRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-array-index-of.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferArrayIndexOfRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-array-some.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferArraySomeRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-at.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | getLastElementFunctions?: unknown[];
3 | checkAllIndexAccess?: boolean;
4 | }
5 |
6 | export type PreferAtRuleOptions = [Schema0?];
7 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-blob-reading-methods.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferBlobReadingMethodsRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-code-point.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferCodePointRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-dataset.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferDatasetRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-date-now.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferDateNowRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-default-parameters.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferDefaultParametersRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-dom-node-append.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferDomNodeAppendRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-dom-node-dataset.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferDomNodeDatasetRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-dom-node-remove.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferDomNodeRemoveRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-dom-node-text-content.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferDomNodeTextContentRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-event-key.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferEventKeyRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-event-target.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferEventTargetRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-exponentiation-operator.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferExponentiationOperatorRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-export-from.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | ignoreUsedVariables?: boolean;
3 | }
4 |
5 | export type PreferExportFromRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-flat-map.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferFlatMapRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-includes.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferIncludesRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-json-parse-buffer.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferJsonParseBufferRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-keyboard-event-key.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferKeyboardEventKeyRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-logical-operator-over-ternary.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferLogicalOperatorOverTernaryRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-math-trunc.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferMathTruncRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-modern-dom-apis.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferModernDomApisRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-modern-math-apis.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferModernMathApisRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-module.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferModuleRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-native-coercion-functions.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferNativeCoercionFunctionsRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-negative-index.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferNegativeIndexRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-node-append.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferNodeAppendRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-node-protocol.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferNodeProtocolRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-node-remove.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferNodeRemoveRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-number-properties.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | checkInfinity?: boolean;
3 | }
4 |
5 | export type PreferNumberPropertiesRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-object-from-entries.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | functions?: unknown[];
3 | }
4 |
5 | export type PreferObjectFromEntriesRuleOptions = [Schema0?];
6 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-object-has-own.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferObjectHasOwnRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-optional-catch-binding.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferOptionalCatchBindingRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-prototype-methods.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferPrototypeMethodsRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-query-selector.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferQuerySelectorRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-reflect-apply.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferReflectApplyRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-regexp-test.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferRegexpTestRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-replace-all.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferReplaceAllRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-set-has.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferSetHasRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-set-size.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferSetSizeRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-spread.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferSpreadRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-starts-ends-with.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferStartsEndsWithRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-string-replace-all.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferStringReplaceAllRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-string-slice.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferStringSliceRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-string-starts-ends-with.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferStringStartsEndsWithRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-string-trim-start-end.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferStringTrimStartEndRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-switch.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | minimumCases?: number;
3 | emptyDefaultCase?:
4 | | 'no-default-comment'
5 | | 'do-nothing-comment'
6 | | 'no-default-case';
7 | }
8 |
9 | export type PreferSwitchRuleOptions = [Schema0?];
10 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-ternary.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'always' | 'only-single-line';
2 |
3 | export type PreferTernaryRuleOptions = [Schema0?];
4 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-text-content.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferTextContentRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-top-level-await.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferTopLevelAwaitRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-trim-start-end.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferTrimStartEndRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prefer-type-error.d.ts:
--------------------------------------------------------------------------------
1 | export type PreferTypeErrorRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/prevent-abbreviations.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 =
2 | | []
3 | | [
4 | {
5 | checkProperties?: boolean;
6 | checkVariables?: boolean;
7 | checkDefaultAndNamespaceImports?: boolean | string;
8 | checkShorthandImports?: boolean | string;
9 | checkShorthandProperties?: boolean;
10 | checkFilenames?: boolean;
11 | extendDefaultReplacements?: boolean;
12 | replacements?: Abbreviations;
13 | extendDefaultAllowList?: boolean;
14 | allowList?: BooleanObject;
15 | ignore?: unknown[];
16 | },
17 | ];
18 | export type Replacements = false | BooleanObject;
19 |
20 | export interface Abbreviations {
21 | [k: string]: Replacements;
22 | }
23 | export interface BooleanObject {
24 | [k: string]: boolean;
25 | }
26 |
27 | export type PreventAbbreviationsRuleOptions = Schema0;
28 |
--------------------------------------------------------------------------------
/types/unicorn/rules/regex-shorthand.d.ts:
--------------------------------------------------------------------------------
1 | export type RegexShorthandRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/relative-url-style.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'never' | 'always';
2 |
3 | export type RelativeUrlStyleRuleOptions = [Schema0?];
4 |
--------------------------------------------------------------------------------
/types/unicorn/rules/require-array-join-separator.d.ts:
--------------------------------------------------------------------------------
1 | export type RequireArrayJoinSeparatorRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/require-number-to-fixed-digits-argument.d.ts:
--------------------------------------------------------------------------------
1 | export type RequireNumberToFixedDigitsArgumentRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/require-post-message-target-origin.d.ts:
--------------------------------------------------------------------------------
1 | export type RequirePostMessageTargetOriginRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/string-content.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | patterns?: {
3 | [k: string]:
4 | | string
5 | | {
6 | suggest: string;
7 | fix?: boolean;
8 | message?: string;
9 | };
10 | };
11 | }
12 |
13 | export type StringContentRuleOptions = [Schema0?];
14 |
--------------------------------------------------------------------------------
/types/unicorn/rules/switch-case-braces.d.ts:
--------------------------------------------------------------------------------
1 | export type Schema0 = 'always' | 'avoid';
2 |
3 | export type SwitchCaseBracesRuleOptions = [Schema0?];
4 |
--------------------------------------------------------------------------------
/types/unicorn/rules/template-indent.d.ts:
--------------------------------------------------------------------------------
1 | export interface Schema0 {
2 | indent?: string | number;
3 | tags?: string[];
4 | functions?: string[];
5 | selectors?: string[];
6 | comments?: string[];
7 | }
8 |
9 | export type TemplateIndentRuleOptions = [Schema0?];
10 |
--------------------------------------------------------------------------------
/types/unicorn/rules/text-encoding-identifier-case.d.ts:
--------------------------------------------------------------------------------
1 | export type TextEncodingIdentifierCaseRuleOptions = [];
2 |
--------------------------------------------------------------------------------
/types/unicorn/rules/throw-new-error.d.ts:
--------------------------------------------------------------------------------
1 | export type ThrowNewErrorRuleOptions = [];
2 |
--------------------------------------------------------------------------------