@isentinel/eslint-config 6.0.0-beta.41 → 6.0.0-beta.43
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +43 -0
- package/dist/cli.mjs +5 -2
- package/dist/index.d.mts +134 -25
- package/dist/index.mjs +83 -8
- package/dist/lint-cli.mjs +73 -13
- package/dist/oxlint.d.mts +171 -34
- package/dist/oxlint.mjs +14 -2
- package/package.json +16 -11
package/README.md
CHANGED
|
@@ -890,6 +890,49 @@ otherwise, you can install them manually:
|
|
|
890
890
|
pnpm i -D eslint-plugin-eslint-plugin
|
|
891
891
|
```
|
|
892
892
|
|
|
893
|
+
#### Co-located Tests
|
|
894
|
+
|
|
895
|
+
`projectStructure` requires every source file to sit next to its test file,
|
|
896
|
+
through
|
|
897
|
+
[eslint-plugin-project-structure](https://github.com/Igorkowalski94/eslint-plugin-project-structure).
|
|
898
|
+
`src/place-service.ts` then has to be joined by `src/place-service.spec.ts`.
|
|
899
|
+
Only `enforceExistence` is driven here, so the rule never enforces naming:
|
|
900
|
+
|
|
901
|
+
```ts
|
|
902
|
+
// eslint.config.ts
|
|
903
|
+
import isentinel from "@isentinel/eslint-config";
|
|
904
|
+
|
|
905
|
+
export default isentinel({
|
|
906
|
+
projectStructure: {
|
|
907
|
+
// The plugin's name placeholders, plus `{ext}` for the extension of the
|
|
908
|
+
// file that matched. Default: ["{node-name}.spec.{ext}"]
|
|
909
|
+
enforceExistence: "__tests__/{node-name}.test.{ext}",
|
|
910
|
+
// Default: every source file the preset lints
|
|
911
|
+
files: ["src/**/*.{ts,tsx}"],
|
|
912
|
+
// Default: tests, `.d.ts` files and build configs
|
|
913
|
+
ignores: ["**/index.ts"],
|
|
914
|
+
// Default: `process.cwd()`
|
|
915
|
+
projectRoot: import.meta.dirname,
|
|
916
|
+
// Restricts the check to one subtree. Default: all of `projectRoot`
|
|
917
|
+
structureRoot: "src",
|
|
918
|
+
},
|
|
919
|
+
});
|
|
920
|
+
```
|
|
921
|
+
|
|
922
|
+
```bash
|
|
923
|
+
pnpm i -D eslint-plugin-project-structure
|
|
924
|
+
```
|
|
925
|
+
|
|
926
|
+
`{node-name}` matches the kebab-case filenames the preset enforces; the others
|
|
927
|
+
are `{nodeName}`, `{NodeName}`, `{node_name}` and `{NODE_NAME}`. A file already
|
|
928
|
+
matching a template is exempt from it. A source file with no test disables the
|
|
929
|
+
rule at the source.
|
|
930
|
+
|
|
931
|
+
Two caveats. Deleting `foo.spec.ts` does not change `foo.ts`, so a cached run
|
|
932
|
+
replays the old clean result — the check is only sound uncached. And the plugin
|
|
933
|
+
writes `projectStructure.cache.json` into `projectRoot` while it has something
|
|
934
|
+
to report, so gitignore it.
|
|
935
|
+
|
|
893
936
|
### Git hooks
|
|
894
937
|
|
|
895
938
|
If you want to apply lint and auto-fix before every commit, use
|
package/dist/cli.mjs
CHANGED
|
@@ -9,7 +9,7 @@ import path from "node:path";
|
|
|
9
9
|
import { existsSync, readFileSync } from "fs";
|
|
10
10
|
import { execSync } from "node:child_process";
|
|
11
11
|
//#region package.json
|
|
12
|
-
var version = "6.0.0-beta.
|
|
12
|
+
var version = "6.0.0-beta.43";
|
|
13
13
|
var package_default = {
|
|
14
14
|
name: "@isentinel/eslint-config",
|
|
15
15
|
version,
|
|
@@ -155,6 +155,7 @@ var package_default = {
|
|
|
155
155
|
"eslint-plugin-jest": "catalog:peer",
|
|
156
156
|
"eslint-plugin-jest-extended": "catalog:peer",
|
|
157
157
|
"eslint-plugin-n": "catalog:peer",
|
|
158
|
+
"eslint-plugin-project-structure": "catalog:peer",
|
|
158
159
|
"eslint-plugin-react-jsx": "catalog:peer",
|
|
159
160
|
"eslint-plugin-react-naming-convention": "catalog:peer",
|
|
160
161
|
"eslint-plugin-react-x": "catalog:peer",
|
|
@@ -179,6 +180,7 @@ var package_default = {
|
|
|
179
180
|
"eslint-plugin-jest": "^29.15.0",
|
|
180
181
|
"eslint-plugin-jest-extended": "^3.0.0",
|
|
181
182
|
"eslint-plugin-n": "^17.0.0 || ^18.0.0",
|
|
183
|
+
"eslint-plugin-project-structure": "^3.14.0",
|
|
182
184
|
"eslint-plugin-react-jsx": "^5.10.0",
|
|
183
185
|
"eslint-plugin-react-naming-convention": "^5.10.0",
|
|
184
186
|
"eslint-plugin-react-x": "^5.10.0",
|
|
@@ -192,6 +194,7 @@ var package_default = {
|
|
|
192
194
|
"eslint-plugin-jest": { "optional": true },
|
|
193
195
|
"eslint-plugin-jest-extended": { "optional": true },
|
|
194
196
|
"eslint-plugin-n": { "optional": true },
|
|
197
|
+
"eslint-plugin-project-structure": { "optional": true },
|
|
195
198
|
"eslint-plugin-react-jsx": { "optional": true },
|
|
196
199
|
"eslint-plugin-react-naming-convention": { "optional": true },
|
|
197
200
|
"eslint-plugin-react-x": { "optional": true },
|
|
@@ -531,7 +534,7 @@ async function updateEslintFiles(result) {
|
|
|
531
534
|
//#endregion
|
|
532
535
|
//#region src/cli/constants-generated.ts
|
|
533
536
|
const versionsMap = {
|
|
534
|
-
"eslint": "10.
|
|
537
|
+
"eslint": "10.8.1",
|
|
535
538
|
"eslint-plugin-jest": "29.16.0",
|
|
536
539
|
"eslint-plugin-react-jsx": "5.17.3",
|
|
537
540
|
"eslint-plugin-react-naming-convention": "5.17.3",
|
package/dist/index.d.mts
CHANGED
|
@@ -6488,6 +6488,7 @@ interface OverrideSiteChains {
|
|
|
6488
6488
|
jsonc: [JsoncRuleDefaults];
|
|
6489
6489
|
markdown: [MarkdownRuleDefaults];
|
|
6490
6490
|
naming: FeatureChain;
|
|
6491
|
+
projectStructure: FeatureChain;
|
|
6491
6492
|
react: ReactChain;
|
|
6492
6493
|
roblox: MainChain;
|
|
6493
6494
|
toml: [TomlRuleDefaults];
|
|
@@ -6497,7 +6498,7 @@ interface OverrideSiteChains {
|
|
|
6497
6498
|
type TestChain = [TestRuleDefaults, SourceFeatureRuleDefaults, MainRuleDefaults];
|
|
6498
6499
|
type ValidateOptionsWith<O, VK extends VariantKey> = ValidateSite<O, "rules", MainChain, VK> & ValidateSubOptionsFromTable<O, OverrideSiteChains, VK> & ValidateTestOption<O, TestChain, VK>;
|
|
6499
6500
|
//#endregion
|
|
6500
|
-
//#region ../../../setup-pnpm/node_modules/.bin/store/v11/links/@/eslint-config-flat-gitignore/2.3.0/
|
|
6501
|
+
//#region ../../../setup-pnpm/node_modules/.bin/store/v11/links/@/eslint-config-flat-gitignore/2.3.0/0a594adbd94ca75e2950b1104992894d49bc93f4f2bc935ad192d7104e4c271e/node_modules/eslint-config-flat-gitignore/dist/index.d.mts
|
|
6501
6502
|
interface FlatGitignoreOptions {
|
|
6502
6503
|
/**
|
|
6503
6504
|
* Name of the configuration.
|
|
@@ -7170,112 +7171,112 @@ interface RuleOptions {
|
|
|
7170
7171
|
'eslint-plugin/unique-test-case-names'?: Linter.RuleEntry<[]>;
|
|
7171
7172
|
/**
|
|
7172
7173
|
* Enforce arrow function return style based on line length
|
|
7173
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7174
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/arrow-return-style/documentation.md
|
|
7174
7175
|
*/
|
|
7175
7176
|
'flawless/arrow-return-style'?: Linter.RuleEntry<FlawlessArrowReturnStyle>;
|
|
7176
7177
|
/**
|
|
7177
7178
|
* Disallow shorthand boolean JSX attributes
|
|
7178
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7179
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/jsx-shorthand-boolean/documentation.md
|
|
7179
7180
|
*/
|
|
7180
7181
|
'flawless/jsx-shorthand-boolean'?: Linter.RuleEntry<[]>;
|
|
7181
7182
|
/**
|
|
7182
7183
|
* Enforce a consistent fragment form: the shorthand `<>...</>` or a named fragment
|
|
7183
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7184
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/jsx-shorthand-fragment/documentation.md
|
|
7184
7185
|
*/
|
|
7185
7186
|
'flawless/jsx-shorthand-fragment'?: Linter.RuleEntry<FlawlessJsxShorthandFragment>;
|
|
7186
7187
|
/**
|
|
7187
7188
|
* Enforce a maximum number of lines of code in a function
|
|
7188
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7189
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/max-lines-per-function/documentation.md
|
|
7189
7190
|
*/
|
|
7190
7191
|
'flawless/max-lines-per-function'?: Linter.RuleEntry<FlawlessMaxLinesPerFunction>;
|
|
7191
7192
|
/**
|
|
7192
7193
|
* Enforce naming conventions for everything across a codebase
|
|
7193
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7194
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/naming-convention/documentation.md
|
|
7194
7195
|
*/
|
|
7195
7196
|
'flawless/naming-convention'?: Linter.RuleEntry<FlawlessNamingConvention>;
|
|
7196
7197
|
/**
|
|
7197
7198
|
* Disallow conditional logic in tests
|
|
7198
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7199
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/no-conditional-in-test/documentation.md
|
|
7199
7200
|
*/
|
|
7200
7201
|
'flawless/no-conditional-in-test'?: Linter.RuleEntry<FlawlessNoConditionalInTest>;
|
|
7201
7202
|
/**
|
|
7202
7203
|
* Disallow anonymous arrow functions as export default declarations
|
|
7203
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7204
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/no-export-default-arrow/documentation.md
|
|
7204
7205
|
*/
|
|
7205
7206
|
'flawless/no-export-default-arrow'?: Linter.RuleEntry<[]>;
|
|
7206
7207
|
/**
|
|
7207
7208
|
* Disallow exact equality checks involving floating-point-sensitive values
|
|
7208
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7209
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/no-floating-point-equality/documentation.md
|
|
7209
7210
|
*/
|
|
7210
7211
|
'flawless/no-floating-point-equality'?: Linter.RuleEntry<[]>;
|
|
7211
7212
|
/**
|
|
7212
7213
|
* Disallow tsconfig options that redundantly re-set a value already provided by an extended config
|
|
7213
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7214
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/no-redundant-tsconfig-options/documentation.md
|
|
7214
7215
|
*/
|
|
7215
7216
|
'flawless/no-redundant-tsconfig-options'?: Linter.RuleEntry<[]>;
|
|
7216
7217
|
/**
|
|
7217
7218
|
* Disallow mocks created once and shared between tests
|
|
7218
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7219
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/no-shared-mocks/documentation.md
|
|
7219
7220
|
*/
|
|
7220
7221
|
'flawless/no-shared-mocks'?: Linter.RuleEntry<[]>;
|
|
7221
7222
|
/**
|
|
7222
7223
|
* Disallow unnecessary usage of 'useCallback'
|
|
7223
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7224
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/no-unnecessary-use-callback/documentation.md
|
|
7224
7225
|
*/
|
|
7225
7226
|
'flawless/no-unnecessary-use-callback'?: Linter.RuleEntry<[]>;
|
|
7226
7227
|
/**
|
|
7227
7228
|
* Disallow unnecessary usage of 'useMemo'
|
|
7228
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7229
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/no-unnecessary-use-memo/documentation.md
|
|
7229
7230
|
*/
|
|
7230
7231
|
'flawless/no-unnecessary-use-memo'?: Linter.RuleEntry<[]>;
|
|
7231
7232
|
/**
|
|
7232
7233
|
* Enforce a blank line after `expect.assertions` and `expect.hasAssertions`
|
|
7233
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7234
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/padding-after-expect-assertions/documentation.md
|
|
7234
7235
|
*/
|
|
7235
7236
|
'flawless/padding-after-expect-assertions'?: Linter.RuleEntry<[]>;
|
|
7236
7237
|
/**
|
|
7237
7238
|
* Enforce destructuring assignment for component props
|
|
7238
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7239
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/prefer-destructuring-assignment/documentation.md
|
|
7239
7240
|
*/
|
|
7240
7241
|
'flawless/prefer-destructuring-assignment'?: Linter.RuleEntry<[]>;
|
|
7241
7242
|
/**
|
|
7242
7243
|
* Prefer having the last statement in a test be an assertion
|
|
7243
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7244
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/prefer-ending-with-an-expect/documentation.md
|
|
7244
7245
|
*/
|
|
7245
7246
|
'flawless/prefer-ending-with-an-expect'?: Linter.RuleEntry<FlawlessPreferEndingWithAnExpect>;
|
|
7246
7247
|
/**
|
|
7247
7248
|
* Prefer `expect.assertions(<count>)` over `expect.hasAssertions()`
|
|
7248
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7249
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/prefer-expect-assertions-count/documentation.md
|
|
7249
7250
|
*/
|
|
7250
7251
|
'flawless/prefer-expect-assertions-count'?: Linter.RuleEntry<[]>;
|
|
7251
7252
|
/**
|
|
7252
7253
|
* Enforce destructuring parameters in the function signature
|
|
7253
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7254
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/prefer-parameter-destructuring/documentation.md
|
|
7254
7255
|
*/
|
|
7255
7256
|
'flawless/prefer-parameter-destructuring'?: Linter.RuleEntry<FlawlessPreferParameterDestructuring>;
|
|
7256
7257
|
/**
|
|
7257
7258
|
* Enforce that function component props are read-only
|
|
7258
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7259
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/prefer-read-only-props/documentation.md
|
|
7259
7260
|
*/
|
|
7260
7261
|
'flawless/prefer-read-only-props'?: Linter.RuleEntry<FlawlessPreferReadOnlyProps>;
|
|
7261
7262
|
/**
|
|
7262
7263
|
* Disallow impure calls such as `math.random` or `os.clock` during render
|
|
7263
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7264
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/purity/documentation.md
|
|
7264
7265
|
*/
|
|
7265
7266
|
'flawless/purity'?: Linter.RuleEntry<FlawlessPurity>;
|
|
7266
7267
|
/**
|
|
7267
7268
|
* Prefer named imports for React runtime values and the React namespace for React types
|
|
7268
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7269
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/react-namespace/documentation.md
|
|
7269
7270
|
*/
|
|
7270
7271
|
'flawless/react-namespace'?: Linter.RuleEntry<[]>;
|
|
7271
7272
|
/**
|
|
7272
7273
|
* Enforce a configured sort order for TOML keys and tables
|
|
7273
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7274
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/toml-sort-keys/documentation.md
|
|
7274
7275
|
*/
|
|
7275
7276
|
'flawless/toml-sort-keys'?: Linter.RuleEntry<FlawlessTomlSortKeys>;
|
|
7276
7277
|
/**
|
|
7277
7278
|
* Enforce blank lines around top-level YAML block collection keys
|
|
7278
|
-
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.
|
|
7279
|
+
* @see https://github.com/christopher-buss/eslint-plugin-flawless/blob/v1.11.0/src/rules/yaml-block-key-blank-lines/documentation.md
|
|
7279
7280
|
*/
|
|
7280
7281
|
'flawless/yaml-block-key-blank-lines'?: Linter.RuleEntry<[]>;
|
|
7281
7282
|
/**
|
|
@@ -10470,6 +10471,21 @@ interface RuleOptions {
|
|
|
10470
10471
|
* @see https://eslint.org/docs/latest/rules/preserve-caught-error
|
|
10471
10472
|
*/
|
|
10472
10473
|
'preserve-caught-error'?: Linter.RuleEntry<PreserveCaughtError>;
|
|
10474
|
+
/**
|
|
10475
|
+
* Enforce advanced naming rules and prohibit the use of given selectors in a given file. Have full control over what your file can contain and the naming conventions it must follow.
|
|
10476
|
+
* @see https://github.com/Igorkowalski94/eslint-plugin-project-structure/wiki/project%E2%80%91structure-%E2%80%8Bfile%E2%80%91composition#root
|
|
10477
|
+
*/
|
|
10478
|
+
'project-structure/file-composition'?: Linter.RuleEntry<ProjectStructureFileComposition>;
|
|
10479
|
+
/**
|
|
10480
|
+
* Enforce rules on folder structure to keep your repository consistent, orderly and well thought out.
|
|
10481
|
+
* @see https://github.com/Igorkowalski94/eslint-plugin-project-structure/wiki/project%E2%80%91structure-%E2%80%8Bfolder%E2%80%91structure#root
|
|
10482
|
+
*/
|
|
10483
|
+
'project-structure/folder-structure'?: Linter.RuleEntry<ProjectStructureFolderStructure>;
|
|
10484
|
+
/**
|
|
10485
|
+
* A key principle of a healthy project is to prevent the creation of a massive dependency tree, where removing or editing one feature triggers a chain reaction that impacts the entire project. Create independent modules to keep your project scalable and easy to maintain. Get rid of dependencies between modules and create truly independent functionalities.
|
|
10486
|
+
* @see https://github.com/Igorkowalski94/eslint-plugin-project-structure/wiki/project%E2%80%91structure-%E2%80%8Bindependent%E2%80%91modules#root
|
|
10487
|
+
*/
|
|
10488
|
+
'project-structure/independent-modules'?: Linter.RuleEntry<ProjectStructureIndependentModules>;
|
|
10473
10489
|
/**
|
|
10474
10490
|
* Require returning inside each `then()` to create readable and reusable Promise chains.
|
|
10475
10491
|
* @see https://github.com/eslint-community/eslint-plugin-promise/blob/main/docs/rules/always-return.md
|
|
@@ -17163,6 +17179,16 @@ type _FlawlessNamingConventionFormatOptionsConfig = (_FlawlessNamingConventionPr
|
|
|
17163
17179
|
type _FlawlessNamingConventionPredefinedFormats = ("camelCase" | "strictCamelCase" | "PascalCase" | "StrictPascalCase" | "snake_case" | "UPPER_CASE");
|
|
17164
17180
|
type _FlawlessNamingConventionUnderscoreOptions = ("forbid" | "allow" | "require" | "requireDouble" | "allowDouble" | "allowSingleOrDouble");
|
|
17165
17181
|
type _FlawlessNamingConvention_PrefixSuffixConfig = string[];
|
|
17182
|
+
type _FlawlessNamingConvention_TypeArgumentReferenceMatcher = (_FlawlessNamingConventionTypeArgumentReferenceMatcher & {
|
|
17183
|
+
name?: string;
|
|
17184
|
+
from?: string;
|
|
17185
|
+
});
|
|
17186
|
+
type _FlawlessNamingConventionTypeArgumentReferenceMatcher = ({
|
|
17187
|
+
[k: string]: unknown | undefined;
|
|
17188
|
+
} | {
|
|
17189
|
+
[k: string]: unknown | undefined;
|
|
17190
|
+
});
|
|
17191
|
+
type _FlawlessNamingConvention_TypeArgumentOfConfig = _FlawlessNamingConvention_TypeArgumentReferenceMatcher[];
|
|
17166
17192
|
type _FlawlessNamingConventionTypeMatcher = (("boolean" | "string" | "number" | "function" | "array") | _FlawlessNamingConvention_TypeReferenceMatcher);
|
|
17167
17193
|
type _FlawlessNamingConvention_TypeReferenceMatcher = (_FlawlessNamingConventionTypeReferenceMatcher & {
|
|
17168
17194
|
name?: string;
|
|
@@ -17205,6 +17231,7 @@ type FlawlessNamingConvention = ({
|
|
|
17205
17231
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17206
17232
|
modifiers?: ("const" | "readonly" | "static" | "public" | "protected" | "private" | "#private" | "abstract" | "destructured" | "global" | "exported" | "unused" | "requiresQuotes" | "override" | "async" | "default" | "namespace" | "constAsserted")[];
|
|
17207
17233
|
selector: ("default" | "variableLike" | "memberLike" | "typeLike" | "method" | "property" | "accessor" | "variable" | "function" | "parameter" | "objectStyleEnum" | "parameterProperty" | "classicAccessor" | "enumMember" | "objectStyleEnumMember" | "classMethod" | "objectLiteralMethod" | "typeMethod" | "classProperty" | "objectLiteralProperty" | "typeProperty" | "autoAccessor" | "class" | "interface" | "typeAlias" | "enum" | "typeParameter" | "import")[];
|
|
17234
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17208
17235
|
types?: _FlawlessNamingConventionTypeMatcher[];
|
|
17209
17236
|
} | {
|
|
17210
17237
|
allowedWords?: _FlawlessNamingConvention_AllowedWordsConfig;
|
|
@@ -17217,6 +17244,7 @@ type FlawlessNamingConvention = ({
|
|
|
17217
17244
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17218
17245
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17219
17246
|
selector: "default";
|
|
17247
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17220
17248
|
modifiers?: ("const" | "readonly" | "static" | "public" | "protected" | "private" | "#private" | "abstract" | "destructured" | "global" | "exported" | "unused" | "requiresQuotes" | "override" | "async" | "default" | "namespace" | "constAsserted")[];
|
|
17221
17249
|
} | {
|
|
17222
17250
|
allowedWords?: _FlawlessNamingConvention_AllowedWordsConfig;
|
|
@@ -17229,6 +17257,7 @@ type FlawlessNamingConvention = ({
|
|
|
17229
17257
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17230
17258
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17231
17259
|
selector: "variableLike";
|
|
17260
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17232
17261
|
modifiers?: ("unused" | "async")[];
|
|
17233
17262
|
} | {
|
|
17234
17263
|
allowedWords?: _FlawlessNamingConvention_AllowedWordsConfig;
|
|
@@ -17241,6 +17270,7 @@ type FlawlessNamingConvention = ({
|
|
|
17241
17270
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17242
17271
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17243
17272
|
selector: "variable";
|
|
17273
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17244
17274
|
modifiers?: ("const" | "constAsserted" | "destructured" | "exported" | "global" | "unused" | "async")[];
|
|
17245
17275
|
types?: _FlawlessNamingConventionTypeMatcher[];
|
|
17246
17276
|
} | {
|
|
@@ -17254,6 +17284,7 @@ type FlawlessNamingConvention = ({
|
|
|
17254
17284
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17255
17285
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17256
17286
|
selector: "function";
|
|
17287
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17257
17288
|
modifiers?: ("exported" | "global" | "unused" | "async")[];
|
|
17258
17289
|
types?: _FlawlessNamingConventionTypeMatcher[];
|
|
17259
17290
|
} | {
|
|
@@ -17267,6 +17298,7 @@ type FlawlessNamingConvention = ({
|
|
|
17267
17298
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17268
17299
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17269
17300
|
selector: "parameter";
|
|
17301
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17270
17302
|
modifiers?: ("destructured" | "unused")[];
|
|
17271
17303
|
types?: _FlawlessNamingConventionTypeMatcher[];
|
|
17272
17304
|
} | {
|
|
@@ -17280,6 +17312,7 @@ type FlawlessNamingConvention = ({
|
|
|
17280
17312
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17281
17313
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17282
17314
|
selector: "objectStyleEnum";
|
|
17315
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17283
17316
|
modifiers?: ("const" | "exported" | "global" | "unused")[];
|
|
17284
17317
|
} | {
|
|
17285
17318
|
allowedWords?: _FlawlessNamingConvention_AllowedWordsConfig;
|
|
@@ -17292,6 +17325,7 @@ type FlawlessNamingConvention = ({
|
|
|
17292
17325
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17293
17326
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17294
17327
|
selector: "memberLike";
|
|
17328
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17295
17329
|
modifiers?: ("abstract" | "private" | "#private" | "protected" | "public" | "readonly" | "requiresQuotes" | "static" | "override" | "async")[];
|
|
17296
17330
|
} | {
|
|
17297
17331
|
allowedWords?: _FlawlessNamingConvention_AllowedWordsConfig;
|
|
@@ -17304,6 +17338,7 @@ type FlawlessNamingConvention = ({
|
|
|
17304
17338
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17305
17339
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17306
17340
|
selector: "classProperty";
|
|
17341
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17307
17342
|
modifiers?: ("abstract" | "private" | "#private" | "protected" | "public" | "readonly" | "requiresQuotes" | "static" | "override")[];
|
|
17308
17343
|
types?: _FlawlessNamingConventionTypeMatcher[];
|
|
17309
17344
|
} | {
|
|
@@ -17317,6 +17352,7 @@ type FlawlessNamingConvention = ({
|
|
|
17317
17352
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17318
17353
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17319
17354
|
selector: "objectLiteralProperty";
|
|
17355
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17320
17356
|
modifiers?: ("public" | "requiresQuotes")[];
|
|
17321
17357
|
types?: _FlawlessNamingConventionTypeMatcher[];
|
|
17322
17358
|
} | {
|
|
@@ -17330,6 +17366,7 @@ type FlawlessNamingConvention = ({
|
|
|
17330
17366
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17331
17367
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17332
17368
|
selector: "typeProperty";
|
|
17369
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17333
17370
|
modifiers?: ("public" | "readonly" | "requiresQuotes")[];
|
|
17334
17371
|
types?: _FlawlessNamingConventionTypeMatcher[];
|
|
17335
17372
|
} | {
|
|
@@ -17343,6 +17380,7 @@ type FlawlessNamingConvention = ({
|
|
|
17343
17380
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17344
17381
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17345
17382
|
selector: "parameterProperty";
|
|
17383
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17346
17384
|
modifiers?: ("private" | "protected" | "public" | "readonly")[];
|
|
17347
17385
|
types?: _FlawlessNamingConventionTypeMatcher[];
|
|
17348
17386
|
} | {
|
|
@@ -17356,6 +17394,7 @@ type FlawlessNamingConvention = ({
|
|
|
17356
17394
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17357
17395
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17358
17396
|
selector: "property";
|
|
17397
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17359
17398
|
modifiers?: ("abstract" | "private" | "#private" | "protected" | "public" | "readonly" | "requiresQuotes" | "static" | "override" | "async")[];
|
|
17360
17399
|
types?: _FlawlessNamingConventionTypeMatcher[];
|
|
17361
17400
|
} | {
|
|
@@ -17369,6 +17408,7 @@ type FlawlessNamingConvention = ({
|
|
|
17369
17408
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17370
17409
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17371
17410
|
selector: "classMethod";
|
|
17411
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17372
17412
|
modifiers?: ("abstract" | "private" | "#private" | "protected" | "public" | "requiresQuotes" | "static" | "override" | "async")[];
|
|
17373
17413
|
types?: _FlawlessNamingConventionTypeMatcher[];
|
|
17374
17414
|
} | {
|
|
@@ -17382,6 +17422,7 @@ type FlawlessNamingConvention = ({
|
|
|
17382
17422
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17383
17423
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17384
17424
|
selector: "objectLiteralMethod";
|
|
17425
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17385
17426
|
modifiers?: ("public" | "requiresQuotes" | "async")[];
|
|
17386
17427
|
types?: _FlawlessNamingConventionTypeMatcher[];
|
|
17387
17428
|
} | {
|
|
@@ -17395,6 +17436,7 @@ type FlawlessNamingConvention = ({
|
|
|
17395
17436
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17396
17437
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17397
17438
|
selector: "typeMethod";
|
|
17439
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17398
17440
|
modifiers?: ("public" | "requiresQuotes")[];
|
|
17399
17441
|
types?: _FlawlessNamingConventionTypeMatcher[];
|
|
17400
17442
|
} | {
|
|
@@ -17408,6 +17450,7 @@ type FlawlessNamingConvention = ({
|
|
|
17408
17450
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17409
17451
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17410
17452
|
selector: "method";
|
|
17453
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17411
17454
|
modifiers?: ("abstract" | "private" | "#private" | "protected" | "public" | "requiresQuotes" | "static" | "override" | "async")[];
|
|
17412
17455
|
types?: _FlawlessNamingConventionTypeMatcher[];
|
|
17413
17456
|
} | {
|
|
@@ -17421,6 +17464,7 @@ type FlawlessNamingConvention = ({
|
|
|
17421
17464
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17422
17465
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17423
17466
|
selector: "classicAccessor";
|
|
17467
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17424
17468
|
modifiers?: ("abstract" | "private" | "protected" | "public" | "requiresQuotes" | "static" | "override")[];
|
|
17425
17469
|
types?: _FlawlessNamingConventionTypeMatcher[];
|
|
17426
17470
|
} | {
|
|
@@ -17434,6 +17478,7 @@ type FlawlessNamingConvention = ({
|
|
|
17434
17478
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17435
17479
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17436
17480
|
selector: "autoAccessor";
|
|
17481
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17437
17482
|
modifiers?: ("abstract" | "private" | "protected" | "public" | "requiresQuotes" | "static" | "override")[];
|
|
17438
17483
|
types?: _FlawlessNamingConventionTypeMatcher[];
|
|
17439
17484
|
} | {
|
|
@@ -17447,6 +17492,7 @@ type FlawlessNamingConvention = ({
|
|
|
17447
17492
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17448
17493
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17449
17494
|
selector: "accessor";
|
|
17495
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17450
17496
|
modifiers?: ("abstract" | "private" | "protected" | "public" | "requiresQuotes" | "static" | "override")[];
|
|
17451
17497
|
types?: _FlawlessNamingConventionTypeMatcher[];
|
|
17452
17498
|
} | {
|
|
@@ -17460,6 +17506,7 @@ type FlawlessNamingConvention = ({
|
|
|
17460
17506
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17461
17507
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17462
17508
|
selector: "enumMember";
|
|
17509
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17463
17510
|
modifiers?: ("requiresQuotes")[];
|
|
17464
17511
|
} | {
|
|
17465
17512
|
allowedWords?: _FlawlessNamingConvention_AllowedWordsConfig;
|
|
@@ -17472,6 +17519,7 @@ type FlawlessNamingConvention = ({
|
|
|
17472
17519
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17473
17520
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17474
17521
|
selector: "objectStyleEnumMember";
|
|
17522
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17475
17523
|
modifiers?: ("requiresQuotes")[];
|
|
17476
17524
|
} | {
|
|
17477
17525
|
allowedWords?: _FlawlessNamingConvention_AllowedWordsConfig;
|
|
@@ -17484,6 +17532,7 @@ type FlawlessNamingConvention = ({
|
|
|
17484
17532
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17485
17533
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17486
17534
|
selector: "typeLike";
|
|
17535
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17487
17536
|
modifiers?: ("abstract" | "exported" | "unused")[];
|
|
17488
17537
|
} | {
|
|
17489
17538
|
allowedWords?: _FlawlessNamingConvention_AllowedWordsConfig;
|
|
@@ -17496,6 +17545,7 @@ type FlawlessNamingConvention = ({
|
|
|
17496
17545
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17497
17546
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17498
17547
|
selector: "class";
|
|
17548
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17499
17549
|
modifiers?: ("abstract" | "exported" | "unused")[];
|
|
17500
17550
|
} | {
|
|
17501
17551
|
allowedWords?: _FlawlessNamingConvention_AllowedWordsConfig;
|
|
@@ -17508,6 +17558,7 @@ type FlawlessNamingConvention = ({
|
|
|
17508
17558
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17509
17559
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17510
17560
|
selector: "interface";
|
|
17561
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17511
17562
|
modifiers?: ("exported" | "unused")[];
|
|
17512
17563
|
} | {
|
|
17513
17564
|
allowedWords?: _FlawlessNamingConvention_AllowedWordsConfig;
|
|
@@ -17520,6 +17571,7 @@ type FlawlessNamingConvention = ({
|
|
|
17520
17571
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17521
17572
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17522
17573
|
selector: "typeAlias";
|
|
17574
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17523
17575
|
modifiers?: ("exported" | "unused")[];
|
|
17524
17576
|
} | {
|
|
17525
17577
|
allowedWords?: _FlawlessNamingConvention_AllowedWordsConfig;
|
|
@@ -17532,6 +17584,7 @@ type FlawlessNamingConvention = ({
|
|
|
17532
17584
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17533
17585
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17534
17586
|
selector: "enum";
|
|
17587
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17535
17588
|
modifiers?: ("exported" | "unused")[];
|
|
17536
17589
|
} | {
|
|
17537
17590
|
allowedWords?: _FlawlessNamingConvention_AllowedWordsConfig;
|
|
@@ -17544,6 +17597,7 @@ type FlawlessNamingConvention = ({
|
|
|
17544
17597
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17545
17598
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17546
17599
|
selector: "typeParameter";
|
|
17600
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17547
17601
|
modifiers?: ("unused")[];
|
|
17548
17602
|
} | {
|
|
17549
17603
|
allowedWords?: _FlawlessNamingConvention_AllowedWordsConfig;
|
|
@@ -17556,6 +17610,7 @@ type FlawlessNamingConvention = ({
|
|
|
17556
17610
|
trailingUnderscore?: _FlawlessNamingConventionUnderscoreOptions;
|
|
17557
17611
|
filter?: (string | _FlawlessNamingConvention_MatchRegexConfig);
|
|
17558
17612
|
selector: "import";
|
|
17613
|
+
typeArgumentOf?: _FlawlessNamingConvention_TypeArgumentOfConfig;
|
|
17559
17614
|
modifiers?: ("default" | "namespace")[];
|
|
17560
17615
|
})[];
|
|
17561
17616
|
interface _FlawlessNamingConvention_MatchRegexConfig {
|
|
@@ -23239,6 +23294,18 @@ type PreserveCaughtError = [] | [{
|
|
|
23239
23294
|
argumentPosition: number;
|
|
23240
23295
|
})[];
|
|
23241
23296
|
}];
|
|
23297
|
+
// ----- project-structure/file-composition -----
|
|
23298
|
+
type ProjectStructureFileComposition = [] | [{
|
|
23299
|
+
[k: string]: unknown | undefined;
|
|
23300
|
+
}];
|
|
23301
|
+
// ----- project-structure/folder-structure -----
|
|
23302
|
+
type ProjectStructureFolderStructure = [] | [{
|
|
23303
|
+
[k: string]: unknown | undefined;
|
|
23304
|
+
}];
|
|
23305
|
+
// ----- project-structure/independent-modules -----
|
|
23306
|
+
type ProjectStructureIndependentModules = [] | [{
|
|
23307
|
+
[k: string]: unknown | undefined;
|
|
23308
|
+
}];
|
|
23242
23309
|
// ----- promise/always-return -----
|
|
23243
23310
|
type PromiseAlwaysReturn = [] | [{
|
|
23244
23311
|
ignoreLastCallback?: boolean;
|
|
@@ -27119,7 +27186,7 @@ type Yoda = [] | [("always" | "never")] | [("always" | "never"), {
|
|
|
27119
27186
|
onlyEquality?: boolean;
|
|
27120
27187
|
}];
|
|
27121
27188
|
// Names of all the configs
|
|
27122
|
-
type ConfigNames = 'isentinel/eslint/comments' | 'isentinel/eslint/comments/src' | 'isentinel/e18e/rules' | 'isentinel/eslint-plugin/setup' | 'isentinel/eslint-plugin/rules' | 'isentinel/flawless/setup' | 'isentinel/flawless/rules' | 'isentinel/flawless/markdown-code' | 'isentinel/flawless/rules-type-aware' | 'isentinel/gitignore' | 'isentinel/ignores' | 'isentinel/imports/rules' | 'isentinel/imports/game' | 'isentinel/javascript/setup' | 'isentinel/javascript/rules' | 'isentinel/jsdoc/setup' | 'isentinel/jsdoc' | 'isentinel/jsonc/setup' | 'isentinel/jsonc/rules' | 'isentinel/jsonc/tsconfig' | 'isentinel/markdown/setup' | 'isentinel/markdown/processor' | 'isentinel/markdown/parser' | 'isentinel/markdown/disables' | 'isentinel/naming/setup' | 'isentinel/naming/ts/rules-type-aware' | 'isentinel/naming/tsx/rules-type-aware' | 'isentinel/node/rules' | 'isentinel/oxfmt/setup' | 'isentinel/oxfmt/javascript' | 'isentinel/oxfmt/typescript' | 'isentinel/oxfmt/css' | 'isentinel/oxfmt/scss' | 'isentinel/oxfmt/less' | 'isentinel/oxfmt/html' | 'isentinel/oxfmt/markdown' | 'isentinel/oxfmt/graphql' | 'isentinel/oxfmt/json' | 'isentinel/oxfmt/yaml' | 'isentinel/package-json/setup' | 'isentinel/package-json' | 'isentinel/package-json/root' | 'isentinel/perfectionist/setup' | 'isentinel/perfectionist' | 'isentinel/perfectionist/jsx' | 'isentinel/pnpm/setup' | 'isentinel/pnpm/package-json' | 'isentinel/pnpm/pnpm-workspace-yaml' | 'isentinel/promise' | 'isentinel/react/setup' | 'isentinel/react/setup/naming' | 'isentinel/react/setup/testing-library' | 'isentinel/react/rules' | 'isentinel/react/type-aware-rules' | 'isentinel/roblox/setup' | 'isentinel/roblox/parser' | 'isentinel/roblox/type-aware-parser' | 'isentinel/roblox' | 'isentinel/roblox/rules-type-aware' | 'isentinel/roblox/format-lua/setup' | 'isentinel/roblox/format-lua' | 'isentinel/small-rules/setup' | 'isentinel/small-rules' | 'isentinel/sonarjs' | 'isentinel/spelling/setup' | 'isentinel/spelling' | 'isentinel/stylistic/setup' | 'isentinel/stylistic' | 'isentinel/test/jest/setup' | 'isentinel/test/jest/rules' | 'isentinel/test/jest/type-tests' | 'isentinel/test/vitest/setup' | 'isentinel/test/vitest/rules' | 'isentinel/test/vitest/type-tests' | 'isentinel/toml/setup' | 'isentinel/toml/rules' | 'isentinel/typescript/setup' | 'isentinel/typescript/parser' | 'isentinel/typescript/type-aware-parser' | 'isentinel/typescript/rules' | 'isentinel/typescript/rules-type-aware' | 'isentinel/typescript/erasable-syntax-only' | 'isentinel/unicorn/setup' | 'isentinel/unicorn/rules' | 'isentinel/unicorn/root' | 'isentinel/yaml/setup' | 'isentinel/yaml/rules';
|
|
27189
|
+
type ConfigNames = 'isentinel/eslint/comments' | 'isentinel/eslint/comments/src' | 'isentinel/e18e/rules' | 'isentinel/eslint-plugin/setup' | 'isentinel/eslint-plugin/rules' | 'isentinel/flawless/setup' | 'isentinel/flawless/rules' | 'isentinel/flawless/markdown-code' | 'isentinel/flawless/rules-type-aware' | 'isentinel/gitignore' | 'isentinel/ignores' | 'isentinel/imports/rules' | 'isentinel/imports/game' | 'isentinel/javascript/setup' | 'isentinel/javascript/rules' | 'isentinel/jsdoc/setup' | 'isentinel/jsdoc' | 'isentinel/jsonc/setup' | 'isentinel/jsonc/rules' | 'isentinel/jsonc/tsconfig' | 'isentinel/markdown/setup' | 'isentinel/markdown/processor' | 'isentinel/markdown/parser' | 'isentinel/markdown/disables' | 'isentinel/naming/setup' | 'isentinel/naming/ts/rules-type-aware' | 'isentinel/naming/tsx/rules-type-aware' | 'isentinel/node/rules' | 'isentinel/oxfmt/setup' | 'isentinel/oxfmt/javascript' | 'isentinel/oxfmt/typescript' | 'isentinel/oxfmt/css' | 'isentinel/oxfmt/scss' | 'isentinel/oxfmt/less' | 'isentinel/oxfmt/html' | 'isentinel/oxfmt/markdown' | 'isentinel/oxfmt/graphql' | 'isentinel/oxfmt/json' | 'isentinel/oxfmt/yaml' | 'isentinel/package-json/setup' | 'isentinel/package-json' | 'isentinel/package-json/root' | 'isentinel/perfectionist/setup' | 'isentinel/perfectionist' | 'isentinel/perfectionist/jsx' | 'isentinel/pnpm/setup' | 'isentinel/pnpm/package-json' | 'isentinel/pnpm/pnpm-workspace-yaml' | 'isentinel/project-structure/setup' | 'isentinel/project-structure/rules' | 'isentinel/promise' | 'isentinel/react/setup' | 'isentinel/react/setup/naming' | 'isentinel/react/setup/testing-library' | 'isentinel/react/rules' | 'isentinel/react/type-aware-rules' | 'isentinel/roblox/setup' | 'isentinel/roblox/parser' | 'isentinel/roblox/type-aware-parser' | 'isentinel/roblox' | 'isentinel/roblox/rules-type-aware' | 'isentinel/roblox/format-lua/setup' | 'isentinel/roblox/format-lua' | 'isentinel/small-rules/setup' | 'isentinel/small-rules' | 'isentinel/sonarjs' | 'isentinel/spelling/setup' | 'isentinel/spelling' | 'isentinel/stylistic/setup' | 'isentinel/stylistic' | 'isentinel/test/jest/setup' | 'isentinel/test/jest/rules' | 'isentinel/test/jest/type-tests' | 'isentinel/test/vitest/setup' | 'isentinel/test/vitest/rules' | 'isentinel/test/vitest/type-tests' | 'isentinel/toml/setup' | 'isentinel/toml/rules' | 'isentinel/typescript/setup' | 'isentinel/typescript/parser' | 'isentinel/typescript/type-aware-parser' | 'isentinel/typescript/rules' | 'isentinel/typescript/rules-type-aware' | 'isentinel/typescript/erasable-syntax-only' | 'isentinel/unicorn/setup' | 'isentinel/unicorn/rules' | 'isentinel/unicorn/root' | 'isentinel/yaml/setup' | 'isentinel/yaml/rules';
|
|
27123
27190
|
//#endregion
|
|
27124
27191
|
//#region src/utils.d.ts
|
|
27125
27192
|
type ExtractRuleOptions<T> = T extends Linter.RuleEntry<infer U> ? U : never;
|
|
@@ -27457,6 +27524,37 @@ interface NamingConfig extends OptionsOverridesTypeAware {
|
|
|
27457
27524
|
*/
|
|
27458
27525
|
selectorsTsx?: Array<NamingSelector>;
|
|
27459
27526
|
}
|
|
27527
|
+
interface ProjectStructureConfig extends OptionsOverrides {
|
|
27528
|
+
/**
|
|
27529
|
+
* The files each linted source file has to sit next to, as
|
|
27530
|
+
* `enforceExistence` templates. Takes the plugin's name placeholders
|
|
27531
|
+
* (`{nodeName}`, `{NodeName}`, `{node-name}`, `{node_name}`,
|
|
27532
|
+
* `{NODE_NAME}`) plus `{ext}` for the extension of the file that matched.
|
|
27533
|
+
* A file already matching a template is exempt from it.
|
|
27534
|
+
*
|
|
27535
|
+
* @default ["{node-name}.spec.{ext}"]
|
|
27536
|
+
*/
|
|
27537
|
+
enforceExistence?: Array<string> | string;
|
|
27538
|
+
/**
|
|
27539
|
+
* Files exempt from the check.
|
|
27540
|
+
*
|
|
27541
|
+
* @default [...GLOB_TESTS, GLOB_DTS, ...GLOB_BUILD_CONFIGS]
|
|
27542
|
+
*/
|
|
27543
|
+
ignores?: Array<string>;
|
|
27544
|
+
/**
|
|
27545
|
+
* The folder the enforced paths resolve against, and where the plugin
|
|
27546
|
+
* writes `projectStructure.cache.json` when it reports.
|
|
27547
|
+
*
|
|
27548
|
+
* @default process.cwd()
|
|
27549
|
+
*/
|
|
27550
|
+
projectRoot?: string;
|
|
27551
|
+
/**
|
|
27552
|
+
* Restricts the check to one subtree of `projectRoot`, as a relative path.
|
|
27553
|
+
*
|
|
27554
|
+
* @default undefined - the whole of `projectRoot`
|
|
27555
|
+
*/
|
|
27556
|
+
structureRoot?: string;
|
|
27557
|
+
}
|
|
27460
27558
|
interface OptionsTypeScriptParserOptions {
|
|
27461
27559
|
/**
|
|
27462
27560
|
* Glob patterns for files that should be type aware.
|
|
@@ -27805,6 +27903,14 @@ interface OptionsConfig extends OptionsComponentExtensions, OptionsProjectType {
|
|
|
27805
27903
|
* @see https://github.com/antfu/pnpm-workspace-utils
|
|
27806
27904
|
*/
|
|
27807
27905
|
pnpm?: boolean | OptionsPnpm;
|
|
27906
|
+
/**
|
|
27907
|
+
* Require every source file to have a co-located test file, via
|
|
27908
|
+
* [eslint-plugin-project-structure](https://github.com/Igorkowalski94/eslint-plugin-project-structure).
|
|
27909
|
+
*
|
|
27910
|
+
* @default false
|
|
27911
|
+
* @requires eslint-plugin-project-structure
|
|
27912
|
+
*/
|
|
27913
|
+
projectStructure?: boolean | ProjectStructureConfig;
|
|
27808
27914
|
/**
|
|
27809
27915
|
* Enable react rules.
|
|
27810
27916
|
*
|
|
@@ -28243,6 +28349,9 @@ declare function perfectionist(config?: OptionsProjectType & PerfectionistConfig
|
|
|
28243
28349
|
//#region src/eslint/configs/pnpm.d.ts
|
|
28244
28350
|
declare function pnpm(options: OptionsPnpm & Required<OptionsIsInEditor>): Promise<Array<TypedFlatConfigItem>>;
|
|
28245
28351
|
//#endregion
|
|
28352
|
+
//#region src/eslint/configs/project-structure.d.ts
|
|
28353
|
+
declare function projectStructure({ enforceExistence, files, ignores, overrides, projectRoot, structureRoot }?: ProjectStructureConfig): Promise<Array<TypedFlatConfigItem>>;
|
|
28354
|
+
//#endregion
|
|
28246
28355
|
//#region src/eslint/configs/promise.d.ts
|
|
28247
28356
|
declare function promise(): Array<TypedFlatConfigItem>;
|
|
28248
28357
|
//#endregion
|
|
@@ -28349,4 +28458,4 @@ declare function unicorn({ complementIgnores, nameReplacements, roblox, root: cu
|
|
|
28349
28458
|
//#region src/eslint/configs/yaml.d.ts
|
|
28350
28459
|
declare function yaml({ files, overrides, stylistic }?: OptionsFiles & OptionsOverrides & OptionsStylistic): Promise<Array<TypedFlatConfigItem>>;
|
|
28351
28460
|
//#endregion
|
|
28352
|
-
export { type Awaitable, type ConfigNames, type ConfigSettings, type FlatConfigComposer, GLOB_ALL_JSON, GLOB_ALL_SRC, GLOB_BIN, GLOB_BUILD_CONFIGS, GLOB_CSS, GLOB_DTS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_LINTABLE_EXTENSIONS, GLOB_LUA, GLOB_MARKDOWN, GLOB_MARKDOWN_BLOCKS, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_MISE, GLOB_PACKAGE_JSON, GLOB_PACKAGE_JSON_ROOT, GLOB_POSTCSS, GLOB_ROOT, GLOB_ROOT_SRC, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_SRC_EXTENSIONS, GLOB_STYLE, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSCONFIG, GLOB_TSX, GLOB_TYPE_TESTS, GLOB_XML, GLOB_YAML, GitignoreOptions, type JsdocOptions, MARKDOWN_PROCESSOR_NAME, type NamedFlatConfigItem, type NamedOptionsConfig, type NamingConfig, type NamingSelector, type OptionsComponentExtensions, type OptionsConfig, type OptionsE18e, type OptionsFiles, type OptionsFilesTypeAware, type OptionsFormatters, type OptionsHasRoblox, type OptionsHasTypeScript, type OptionsIsInEditor, type OptionsJest, type OptionsOverrides, type OptionsOverridesTypeAware, type OptionsPnpm, type OptionsProjectType, type OptionsStylistic, type OptionsTestFramework, type OptionsTypeScriptErasableOnly, type OptionsTypeScriptParserOptions, type OptionsTypeScriptWithTypes, type OptionsTypescript, type OptionsUnicorn, type OptionsVitest, type OxfmtOptions, type PerfectionistConfig, type PrettierOptions, ROBLOX_ALLOWED_WORDS, type ReactConfig, type ReactSettings, type Rules, type SpellCheckConfig, type StylisticConfig, StylisticConfigDefaults, type TypedFlatConfigItem, comments, isentinel as default, isentinel, defaultPluginRenaming, disables, e18e, eslintPlugin, flawless, gitignore, ignores$1 as ignores, imports, isAgentAutofixDisabled, isInAgentSession, isInEditorEnvironment, isInGitHooksOrLintStaged, javascript, jsdoc, jsonc, loadSmallRulesPlugin, markdown, naming, node, oxfmt, packageJson, perfectionist, pnpm, promise, react, roblox$1 as roblox, smallRules, sonarjs, sortCspell, sortGithubAction, sortMiseToml, sortPnpmWorkspace, sortRojoProject, sortTsconfig, spelling, stylistic$1 as stylistic, test, toml, typescript, unicorn, yaml };
|
|
28461
|
+
export { type Awaitable, type ConfigNames, type ConfigSettings, type FlatConfigComposer, GLOB_ALL_JSON, GLOB_ALL_SRC, GLOB_BIN, GLOB_BUILD_CONFIGS, GLOB_CSS, GLOB_DTS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_LINTABLE_EXTENSIONS, GLOB_LUA, GLOB_MARKDOWN, GLOB_MARKDOWN_BLOCKS, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_MISE, GLOB_PACKAGE_JSON, GLOB_PACKAGE_JSON_ROOT, GLOB_POSTCSS, GLOB_ROOT, GLOB_ROOT_SRC, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_SRC_EXTENSIONS, GLOB_STYLE, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSCONFIG, GLOB_TSX, GLOB_TYPE_TESTS, GLOB_XML, GLOB_YAML, GitignoreOptions, type JsdocOptions, MARKDOWN_PROCESSOR_NAME, type NamedFlatConfigItem, type NamedOptionsConfig, type NamingConfig, type NamingSelector, type OptionsComponentExtensions, type OptionsConfig, type OptionsE18e, type OptionsFiles, type OptionsFilesTypeAware, type OptionsFormatters, type OptionsHasRoblox, type OptionsHasTypeScript, type OptionsIsInEditor, type OptionsJest, type OptionsOverrides, type OptionsOverridesTypeAware, type OptionsPnpm, type OptionsProjectType, type OptionsStylistic, type OptionsTestFramework, type OptionsTypeScriptErasableOnly, type OptionsTypeScriptParserOptions, type OptionsTypeScriptWithTypes, type OptionsTypescript, type OptionsUnicorn, type OptionsVitest, type OxfmtOptions, type PerfectionistConfig, type PrettierOptions, type ProjectStructureConfig, ROBLOX_ALLOWED_WORDS, type ReactConfig, type ReactSettings, type Rules, type SpellCheckConfig, type StylisticConfig, StylisticConfigDefaults, type TypedFlatConfigItem, comments, isentinel as default, isentinel, defaultPluginRenaming, disables, e18e, eslintPlugin, flawless, gitignore, ignores$1 as ignores, imports, isAgentAutofixDisabled, isInAgentSession, isInEditorEnvironment, isInGitHooksOrLintStaged, javascript, jsdoc, jsonc, loadSmallRulesPlugin, markdown, naming, node, oxfmt, packageJson, perfectionist, pnpm, projectStructure, promise, react, roblox$1 as roblox, smallRules, sonarjs, sortCspell, sortGithubAction, sortMiseToml, sortPnpmWorkspace, sortRojoProject, sortTsconfig, spelling, stylistic$1 as stylistic, test, toml, typescript, unicorn, yaml };
|