@eslinted/core 31.2.3 → 31.2.6

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/dist/factory.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type Core from "./index.js";
2
- export default function factory<Scope extends string, Optional extends Scope, RequiredPlugin extends string, RequiredParser extends Scope, Parser extends RequiredParser | Optional>(scopes: Parameters<typeof Core<Scope, Optional, RequiredPlugin, RequiredParser, Parser>>[0], optional: Parameters<typeof Core<Scope, Optional, RequiredPlugin, RequiredParser, Parser>>[1], tree: Parameters<typeof Core<Scope, Optional, RequiredPlugin, RequiredParser, Parser>>[2], imports: Parameters<typeof Core<Scope, Optional, RequiredPlugin, RequiredParser, Parser>>[3], settings: Parameters<typeof Core<Scope, Optional, RequiredPlugin, RequiredParser, Parser>>[4], defaults: Parameters<typeof Core<Scope, Optional, RequiredPlugin, RequiredParser, Parser>>[5], extensions?: Parameters<typeof Core<Scope, Optional, RequiredPlugin, RequiredParser, Parser>>[6]): {
2
+ export default function factory<Scope extends string, Optional extends Scope>(scopes: Parameters<typeof Core<Scope, Optional>>[0], optional: Parameters<typeof Core<Scope, Optional>>[1], tree: Parameters<typeof Core<Scope, Optional>>[2], imports: Parameters<typeof Core<Scope, Optional>>[3], settings: Parameters<typeof Core<Scope, Optional>>[4], defaults: Parameters<typeof Core<Scope, Optional>>[5], extensions?: Parameters<typeof Core<Scope, Optional>>[6]): {
3
3
  plugins?: unknown;
4
4
  rules?: (typeof defaults.rules)[Scope][number]["rules"];
5
5
  files?: Array<string | [
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,GAAG,CAAC;AAE1B,MAAM,CAAC,OAAO,UAAU,OAAO,CAC7B,KAAK,SAAS,MAAM,EACpB,QAAQ,SAAS,KAAK,EACtB,cAAc,SAAS,MAAM,EAC7B,cAAc,SAAS,KAAK,EAC5B,MAAM,SAAS,cAAc,GAAG,QAAQ,EAExC,MAAM,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAC3F,QAAQ,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAC7F,IAAI,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EACzF,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAC5F,QAAQ,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAC7F,QAAQ,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAC7F,UAAU,CAAC,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;cAwGlF,OAAO;YACT,CAAA,OAAO,QAAQ,CAAC,KAAK,EAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YAC7C,KAAK,CAAC,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;cAC9B,MAAM,EAAE;sBACA,OAAO;eACd,MAAM;gBACL,MAAM;IAqBvB"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,GAAG,CAAC;AAE1B,MAAM,CAAC,OAAO,UAAU,OAAO,CAC7B,KAAK,SAAS,MAAM,EACpB,QAAQ,SAAS,KAAK,EAEtB,MAAM,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EACnD,QAAQ,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EACrD,IAAI,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EACjD,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EACpD,QAAQ,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EACrD,QAAQ,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EACrD,UAAU,GAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAM;cA0G9C,OAAO;YACT,CAAA,OAAO,QAAQ,CAAC,KAAK,EAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YAC7C,KAAK,CAAC,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;cAC9B,MAAM,EAAE;sBACA,OAAO;eACd,MAAM;gBACL,MAAM;IAqBvB"}
package/dist/factory.js CHANGED
@@ -1,34 +1,31 @@
1
- export default function factory(scopes, optional, tree, imports, settings, defaults, extensions) {
2
- const Scopes = new Set(scopes);
3
- if (extensions) {
4
- const global = extensions["*"];
5
- if (global)
6
- if (global.override
7
- || !defaults.ignores["*"])
8
- defaults.ignores["*"] = global.ignores ?? [];
9
- else if (global.ignores?.length)
10
- void defaults.ignores["*"].push(...global.ignores);
11
- for (const scope of optional)
12
- if (extensions[scope]) {
13
- imports.plugins[scope] = extensions[scope].plugin;
14
- imports.parsers[scope] = extensions[scope].parser;
15
- }
16
- else
17
- Scopes.delete(scope);
18
- for (const scope of Scopes)
19
- if (extensions[scope]) {
20
- const extension = extensions[scope];
21
- if (extension.files)
22
- void defaults.files[scope].push(...extension.files);
23
- if (extension.ignores)
24
- if (defaults.ignores[scope])
25
- void defaults.ignores[scope].push(...extension.ignores);
26
- else
27
- defaults.ignores[scope] = extension.ignores;
28
- if (extension.rules)
29
- defaults.rules[scope][defaults.rules[scope].length] = { rules: extension.rules };
30
- }
31
- }
1
+ export default function factory(scopes, optional, tree, imports, settings, defaults, extensions = {}) {
2
+ const Scopes = new Set(scopes), global = extensions["*"];
3
+ if (global)
4
+ if (global.override
5
+ || !defaults.ignores["*"])
6
+ defaults.ignores["*"] = global.ignores ?? [];
7
+ else if (global.ignores?.length)
8
+ void defaults.ignores["*"].push(...global.ignores);
9
+ for (const scope of optional)
10
+ if (extensions[scope]) {
11
+ imports.plugins[scope] = extensions[scope].plugin;
12
+ imports.parsers[scope] = extensions[scope].parser;
13
+ }
14
+ else
15
+ Scopes.delete(scope);
16
+ for (const scope of Scopes)
17
+ if (extensions[scope]) {
18
+ const extension = extensions[scope];
19
+ if (extension.files)
20
+ void defaults.files[scope].push(...extension.files);
21
+ if (extension.ignores)
22
+ if (defaults.ignores[scope])
23
+ void defaults.ignores[scope].push(...extension.ignores);
24
+ else
25
+ defaults.ignores[scope] = extension.ignores;
26
+ if (extension.rules)
27
+ defaults.rules[scope][defaults.rules[scope].length] = { rules: extension.rules };
28
+ }
32
29
  for (const [scope, parents] of tree)
33
30
  if (Scopes.has(scope)
34
31
  && defaults.files[scope].length) {
@@ -1 +1 @@
1
- {"version":3,"file":"factory.js","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,9 +1,9 @@
1
1
  import type { Settings, Defaults, Extensions } from "../typings";
2
2
  import type { Rules } from "../typings/rules";
3
- export default function <Scope extends string, Optional extends Scope, RequiredPlugin extends string, RequiredParser extends Scope, Parser extends RequiredParser | Optional>(scopes: readonly Scope[], optional: readonly Optional[], tree: Array<readonly [Scope, readonly Scope[]]>, imports: {
4
- plugins: Record<RequiredPlugin, unknown> & Partial<Record<Optional, unknown>>;
5
- parsers: Record<RequiredParser, unknown> & Partial<Record<Optional, unknown>>;
6
- }, settings: Settings<Scope, Parser>, defaults: Defaults<Scope>, extensions: Extensions<Scope, Optional>): Array<{
3
+ export default function <Scope extends string, Optional extends Scope>(scopes: readonly Scope[], optional: readonly Optional[], tree: Array<readonly [Scope, readonly Scope[]]>, imports: {
4
+ plugins: Record<string, unknown>;
5
+ parsers: Record<string, unknown>;
6
+ }, settings: Settings<Scope>, defaults: Defaults<Scope>, extensions?: Extensions<Scope, Optional>): Array<{
7
7
  files?: Array<string | [string, string]>;
8
8
  ignores?: string[];
9
9
  rules?: Rules;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,QAAQ,EACR,QAAQ,EACR,UAAU,EACX,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,CAAC,OAAO,WACZ,KAAK,SAAS,MAAM,EACpB,QAAQ,SAAS,KAAK,EACtB,cAAc,SAAS,MAAM,EAC7B,cAAc,SAAS,KAAK,EAC5B,MAAM,SAAS,cAAc,GAAG,QAAQ,EAExC,MAAM,EAAE,SAAS,KAAK,EAAE,EACxB,QAAQ,EAAE,SAAS,QAAQ,EAAE,EAC7B,IAAI,EAAE,KAAK,CACT,SAAS,CAAC,KAAK,EAAE,SAAS,KAAK,EAAE,CAAC,CACnC,EACD,OAAO,EAAE;IACP,OAAO,EACH,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IACvC,OAAO,EACH,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;CACxC,EACD,QAAQ,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,EACjC,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,EACzB,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,GACtC,KAAK,CACN;IACE,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACzC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CACF,CAUA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,QAAQ,EACR,QAAQ,EACR,UAAU,EACX,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,CAAC,OAAO,WACZ,KAAK,SAAS,MAAM,EACpB,QAAQ,SAAS,KAAK,EAEtB,MAAM,EAAE,SAAS,KAAK,EAAE,EACxB,QAAQ,EAAE,SAAS,QAAQ,EAAE,EAC7B,IAAI,EAAE,KAAK,CACT,SAAS,CAAC,KAAK,EAAE,SAAS,KAAK,EAAE,CAAC,CACnC,EACD,OAAO,EAAE;IACP,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC,EACD,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,EACzB,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,EACzB,UAAU,GAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAM,GAC3C,KAAK,CACN;IACE,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACzC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CACF,CAUA"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import factory from "./factory.js";
2
- export default function (scopes, optional, tree, imports, settings, defaults, extensions) {
2
+ export default function (scopes, optional, tree, imports, settings, defaults, extensions = {}) {
3
3
  return factory(scopes, optional, tree, imports, settings, defaults, extensions);
4
4
  }
5
5
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,WAAW,CAAC;AAQhC,MAAM,CAAC,OAAO,WAOZ,MAAwB,EACxB,QAA6B,EAC7B,IAEC,EACD,OAOC,EACD,QAAiC,EACjC,QAAyB,EACzB,UAAuC;IAQvC,OAAO,OAAO,CACZ,MAAM,EACN,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,UAAU,CACX,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,WAAW,CAAC;AAQhC,MAAM,CAAC,OAAO,WAIZ,MAAwB,EACxB,QAA6B,EAC7B,IAEC,EACD,OAGC,EACD,QAAyB,EACzB,QAAyB,EACzB,aAA0C,EAAE;IAQ5C,OAAO,OAAO,CACZ,MAAM,EACN,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,UAAU,CACX,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "$schema": "https://json.schemastore.org/package",
4
4
  "$help": "https://docs.npmjs.com/cli/configuring-npm/package-json",
5
5
  "name": "@eslinted/core",
6
- "version": "31.2.3",
6
+ "version": "31.2.6",
7
7
  "repository": "github:jimmy-zhening-luo/linted-core",
8
8
  "description": "Internal core for npm package `linted`, responsible for producing an array of fully-formed ESLint configurations according to `linted` spec.",
9
9
  "keywords": [],
package/src/factory.ts CHANGED
@@ -3,66 +3,60 @@ import type Core from ".";
3
3
  export default function factory<
4
4
  Scope extends string,
5
5
  Optional extends Scope,
6
- RequiredPlugin extends string,
7
- RequiredParser extends Scope,
8
- Parser extends RequiredParser | Optional,
9
6
  >(
10
- scopes: Parameters<typeof Core<Scope, Optional, RequiredPlugin, RequiredParser, Parser>>[0],
11
- optional: Parameters<typeof Core<Scope, Optional, RequiredPlugin, RequiredParser, Parser>>[1],
12
- tree: Parameters<typeof Core<Scope, Optional, RequiredPlugin, RequiredParser, Parser>>[2],
13
- imports: Parameters<typeof Core<Scope, Optional, RequiredPlugin, RequiredParser, Parser>>[3],
14
- settings: Parameters<typeof Core<Scope, Optional, RequiredPlugin, RequiredParser, Parser>>[4],
15
- defaults: Parameters<typeof Core<Scope, Optional, RequiredPlugin, RequiredParser, Parser>>[5],
16
- extensions?: Parameters<typeof Core<Scope, Optional, RequiredPlugin, RequiredParser, Parser>>[6],
7
+ scopes: Parameters<typeof Core<Scope, Optional>>[0],
8
+ optional: Parameters<typeof Core<Scope, Optional>>[1],
9
+ tree: Parameters<typeof Core<Scope, Optional>>[2],
10
+ imports: Parameters<typeof Core<Scope, Optional>>[3],
11
+ settings: Parameters<typeof Core<Scope, Optional>>[4],
12
+ defaults: Parameters<typeof Core<Scope, Optional>>[5],
13
+ extensions: Parameters<typeof Core<Scope, Optional>>[6] = {},
17
14
  ) {
18
- const Scopes = new Set(scopes);
19
-
20
- if (extensions) {
21
- const global = extensions["*"];
22
-
23
- if (global)
24
- if (
25
- global.override
26
- || !defaults.ignores["*"]
27
- )
28
- defaults.ignores["*"] = global.ignores ?? [];
29
- else
30
- if (global.ignores?.length)
31
- void defaults.ignores["*"].push(
32
- ...global.ignores,
33
- );
34
-
35
- for (const scope of optional)
36
- if (extensions[scope]) {
37
- imports.plugins[scope] = extensions[scope].plugin as typeof imports.plugins[Optional];
38
- imports.parsers[scope] = extensions[scope].parser as typeof imports.parsers[Optional];
39
- }
40
- else
41
- Scopes.delete(scope);
15
+ const Scopes = new Set(scopes),
16
+ global = extensions["*"];
42
17
 
43
- for (const scope of Scopes)
44
- if (extensions[scope]) {
45
- const extension = extensions[scope];
46
-
47
- if (extension.files)
48
- void defaults.files[scope].push(
49
- ...extension.files,
18
+ if (global)
19
+ if (
20
+ global.override
21
+ || !defaults.ignores["*"]
22
+ )
23
+ defaults.ignores["*"] = global.ignores ?? [];
24
+ else
25
+ if (global.ignores?.length)
26
+ void defaults.ignores["*"].push(
27
+ ...global.ignores,
28
+ );
29
+
30
+ for (const scope of optional)
31
+ if (extensions[scope]) {
32
+ imports.plugins[scope] = extensions[scope].plugin;
33
+ imports.parsers[scope] = extensions[scope].parser;
34
+ }
35
+ else
36
+ Scopes.delete(scope);
37
+
38
+ for (const scope of Scopes)
39
+ if (extensions[scope]) {
40
+ const extension = extensions[scope];
41
+
42
+ if (extension.files)
43
+ void defaults.files[scope].push(
44
+ ...extension.files,
45
+ );
46
+
47
+ if (extension.ignores)
48
+ if (defaults.ignores[scope])
49
+ void defaults.ignores[scope].push(
50
+ ...extension.ignores,
50
51
  );
52
+ else
53
+ defaults.ignores[scope] = extension.ignores;
51
54
 
52
- if (extension.ignores)
53
- if (defaults.ignores[scope])
54
- void defaults.ignores[scope].push(
55
- ...extension.ignores,
56
- );
57
- else
58
- defaults.ignores[scope] = extension.ignores;
59
-
60
- if (extension.rules)
61
- defaults.rules[scope][
62
- defaults.rules[scope].length
63
- ] = { rules: extension.rules };
64
- }
65
- }
55
+ if (extension.rules)
56
+ defaults.rules[scope][
57
+ defaults.rules[scope].length
58
+ ] = { rules: extension.rules };
59
+ }
66
60
 
67
61
  for (const [scope, parents] of tree)
68
62
  if (
@@ -84,16 +78,21 @@ export default function factory<
84
78
  const files = defaults.files[scope],
85
79
  ignores = defaults.ignores[scope] ?? [];
86
80
 
81
+ type Enscope<Config> = Config & {
82
+ files?: typeof files;
83
+ ignores?: typeof ignores;
84
+ };
85
+
87
86
  for (const rule of defaults.rules[scope]) {
88
- (rule as typeof rule & { files: Array<string | [string, string]> }).files = files;
89
- (rule as typeof rule & { ignores: string[] }).ignores = ignores;
87
+ (rule as Enscope<typeof rule>).files = files;
88
+ (rule as Enscope<typeof rule>).ignores = ignores;
90
89
  }
91
90
 
92
91
  const setting = settings[scope];
93
92
 
94
93
  if (setting) {
95
- (setting as typeof setting & { files: Array<string | [string, string]> }).files = files;
96
- (setting as typeof setting & { ignores: string[] }).ignores = ignores;
94
+ (setting as Enscope<typeof setting>).files = files;
95
+ (setting as Enscope<typeof setting>).ignores = ignores;
97
96
 
98
97
  if (setting.languageOptions) {
99
98
  const {
@@ -104,13 +103,13 @@ export default function factory<
104
103
  if (parser)
105
104
  setting
106
105
  .languageOptions
107
- .parser = imports.parsers[parser] as Parser;
106
+ .parser = imports.parsers[parser] as Scope;
108
107
 
109
108
  if (subparser)
110
109
  setting
111
110
  .languageOptions
112
111
  .parserOptions!
113
- .parser = imports.parsers[subparser] as Parser;
112
+ .parser = imports.parsers[subparser] as Scope;
114
113
  }
115
114
  }
116
115
  }
package/src/index.ts CHANGED
@@ -9,9 +9,6 @@ import type { Rules } from "../typings/rules";
9
9
  export default function<
10
10
  Scope extends string,
11
11
  Optional extends Scope,
12
- RequiredPlugin extends string,
13
- RequiredParser extends Scope,
14
- Parser extends RequiredParser | Optional,
15
12
  >(
16
13
  scopes: readonly Scope[],
17
14
  optional: readonly Optional[],
@@ -19,16 +16,12 @@ export default function<
19
16
  readonly [Scope, readonly Scope[]]
20
17
  >,
21
18
  imports: {
22
- plugins:
23
- & Record<RequiredPlugin, unknown>
24
- & Partial<Record<Optional, unknown>>;
25
- parsers:
26
- & Record<RequiredParser, unknown>
27
- & Partial<Record<Optional, unknown>>;
19
+ plugins: Record<string, unknown>;
20
+ parsers: Record<string, unknown>;
28
21
  },
29
- settings: Settings<Scope, Parser>,
22
+ settings: Settings<Scope>,
30
23
  defaults: Defaults<Scope>,
31
- extensions: Extensions<Scope, Optional>,
24
+ extensions: Extensions<Scope, Optional> = {},
32
25
  ): Array<
33
26
  {
34
27
  files?: Array<string | [string, string]>;
@@ -5,7 +5,5 @@ export type Extensions<
5
5
  Scope extends string,
6
6
  Optional extends Scope,
7
7
  >
8
- = Partial<
9
- & GlobalExtension
10
- & ScopeExtensions<Scope, Optional>
11
- >;
8
+ = & Partial<GlobalExtension>
9
+ & Partial<ScopeExtensions<Scope, Optional>>;
@@ -1,11 +1,8 @@
1
1
  import type { Setting } from "./setting";
2
2
 
3
- export type Settings<
4
- Scope extends string,
5
- Parser extends Scope,
6
- > = Partial<
3
+ export type Settings<Scope extends string> = Partial<
7
4
  Record<
8
5
  Scope,
9
- Setting<Parser>
6
+ Setting
10
7
  >
11
8
  >;
@@ -1,12 +1,10 @@
1
- export interface Setting<
2
- Parser extends string,
3
- > {
1
+ export interface Setting {
4
2
  languageOptions?: {
5
3
  [property: string]: unknown;
6
- parser?: Parser;
4
+ parser?: string;
7
5
  parserOptions?: {
8
6
  [property: string]: unknown;
9
- parser?: Parser;
7
+ parser?: string;
10
8
  };
11
9
  };
12
10
  language?: string;