knip 6.40.0 → 6.41.0

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.
Files changed (49) hide show
  1. package/dist/ConfigurationChief.d.ts +12 -0
  2. package/dist/DependencyDeputy.d.ts +1 -0
  3. package/dist/DependencyDeputy.js +28 -2
  4. package/dist/IssueCollector.js +13 -15
  5. package/dist/IssueFixer.js +1 -1
  6. package/dist/WorkspaceWorker.js +14 -8
  7. package/dist/binaries/bash-parser.js +10 -4
  8. package/dist/binaries/command.d.ts +1 -1
  9. package/dist/binaries/command.js +14 -8
  10. package/dist/graph/build.js +18 -9
  11. package/dist/manifest/index.d.ts +1 -0
  12. package/dist/manifest/index.js +5 -0
  13. package/dist/plugins/expo/helpers.js +1 -1
  14. package/dist/plugins/expo/index.js +4 -24
  15. package/dist/plugins/expo-router/index.d.ts +3 -0
  16. package/dist/plugins/expo-router/index.js +32 -0
  17. package/dist/plugins/flue/index.d.ts +3 -0
  18. package/dist/plugins/flue/index.js +42 -0
  19. package/dist/plugins/index.d.ts +2 -0
  20. package/dist/plugins/index.js +4 -0
  21. package/dist/plugins/mise/scripts.js +32 -10
  22. package/dist/plugins/moonrepo/index.js +2 -1
  23. package/dist/plugins/nx/index.js +6 -2
  24. package/dist/plugins/react-native/index.js +1 -1
  25. package/dist/plugins/rsbuild/index.js +20 -6
  26. package/dist/plugins/rsbuild/types.d.ts +6 -0
  27. package/dist/plugins/rstest/types.d.ts +1 -5
  28. package/dist/plugins/sveltejs-package/helpers.js +7 -44
  29. package/dist/run.js +2 -0
  30. package/dist/schema/configuration.d.ts +30 -0
  31. package/dist/schema/plugins.d.ts +10 -0
  32. package/dist/schema/plugins.js +2 -0
  33. package/dist/types/PluginNames.d.ts +2 -2
  34. package/dist/types/PluginNames.js +2 -0
  35. package/dist/types/workspace.d.ts +1 -0
  36. package/dist/util/create-options.d.ts +20 -0
  37. package/dist/util/glob-cache.d.ts +2 -2
  38. package/dist/util/glob-core.js +70 -47
  39. package/dist/util/glob.js +15 -10
  40. package/dist/util/load-tsconfig.d.ts +1 -1
  41. package/dist/util/load-tsconfig.js +21 -11
  42. package/dist/util/module-graph.js +9 -4
  43. package/dist/util/scripts.d.ts +3 -2
  44. package/dist/util/scripts.js +9 -3
  45. package/dist/util/to-source-path.js +1 -1
  46. package/dist/version.d.ts +1 -1
  47. package/dist/version.js +1 -1
  48. package/package.json +9 -10
  49. package/schema.json +8 -0
@@ -41,7 +41,26 @@ export const getInputsFromMiseScript = (script, options, hasLocalBinPath) => {
41
41
  if (!word.parts)
42
42
  return word;
43
43
  const { text, value, hasExpansion } = readParts(word.parts);
44
- return hasExpansion ? { ...word, text, value } : word;
44
+ return hasExpansion ? { type: 'Word', pos: word.pos, end: word.end, text, value } : word;
45
+ };
46
+ const readAssignment = (assignment) => {
47
+ const original = assignment.value;
48
+ const value = original.type === 'Word'
49
+ ? readWord(original)
50
+ : { type: 'ArrayValue', pos: original.pos, end: original.end, elements: original.elements.map(readWord) };
51
+ if (value === original)
52
+ return assignment;
53
+ const text = value.type === 'Word' ? value.text : `(${value.elements.map(word => word.text).join(' ')})`;
54
+ return {
55
+ type: 'Assignment',
56
+ pos: assignment.pos,
57
+ end: assignment.end,
58
+ name: assignment.name,
59
+ index: assignment.index,
60
+ append: assignment.append,
61
+ value,
62
+ text: assignment.text.slice(0, original.pos - assignment.pos) + text,
63
+ };
45
64
  };
46
65
  const readScript = (parsed) => {
47
66
  for (const statement of parsed.commands) {
@@ -52,19 +71,22 @@ export const getInputsFromMiseScript = (script, options, hasLocalBinPath) => {
52
71
  for (const command of walkCommands(statement.command)) {
53
72
  const name = command.name?.value;
54
73
  const word = command.name && readWord(command.name);
55
- const prefix = command.prefix.map(assignment => {
56
- const value = assignment.value && readWord(assignment.value);
57
- return value && value !== assignment.value
58
- ? { ...assignment, value, text: `${assignment.name}=${value.text}` }
59
- : assignment;
60
- });
61
- const words = command.suffix.map(readWord);
74
+ const prefix = command.prefix
75
+ .filter((item) => item.type === 'Assignment')
76
+ .map(readAssignment);
77
+ const words = [];
78
+ for (const arg of command.args) {
79
+ if (arg.type === 'Word')
80
+ words.push(readWord(arg));
81
+ else
82
+ readAssignment(arg);
83
+ }
62
84
  if (!name || !word || definedFunctions.has(name))
63
85
  continue;
64
86
  const binary = extractBinary(name);
65
87
  const isPackageCommand = isPackageManager(binary);
66
88
  const isExplicit = isPackageCommand || name.startsWith('./') || isRelativeNodeModulesBin(name);
67
- const isLocal = hasLocalBinPath && !command.prefix.some(assignment => assignment.name === 'PATH');
89
+ const isLocal = hasLocalBinPath && !prefix.some(assignment => assignment.name === 'PATH');
68
90
  const isWrapperCommand = !isPackageCommand && isWrapper(binary);
69
91
  if (!isExplicit && !isLocal && !isWrapperCommand && binary !== 'node' && binary !== 'find')
70
92
  continue;
@@ -75,7 +97,7 @@ export const getInputsFromMiseScript = (script, options, hasLocalBinPath) => {
75
97
  return [];
76
98
  };
77
99
  const fromArgs = args => fromScript(toScript(args));
78
- commandInputs = getDependenciesFromCommand({ ...command, name: word, prefix, suffix: words }, { ...options, fromArgs });
100
+ commandInputs = getDependenciesFromCommand({ name: word, prefix, args: words }, { ...options, fromArgs });
79
101
  }
80
102
  else {
81
103
  commandInputs = options.getInputsFromScripts([...prefix.map(assignment => assignment.text), word.text, ...words.map(word => word.text)].join(' '), { cwd: options.cwd, manifest: options.manifest });
@@ -1,3 +1,4 @@
1
+ import { relative } from '../../util/path.js';
1
2
  import { hasDependency } from '../../util/plugin.js';
2
3
  import { toShellCommand } from '../../util/scripts.js';
3
4
  const title = 'moonrepo';
@@ -7,7 +8,7 @@ const isRootOnly = true;
7
8
  const config = ['moon.yml', '.moon/tasks.yml', '.moon/tasks/*.yml'];
8
9
  const resolveConfig = async (config, options) => {
9
10
  const tasks = config.tasks ? Object.values(config.tasks) : [];
10
- const expand = (value) => value.replace('$workspaceRoot', options.rootCwd).replace('$projectRoot', options.cwd);
11
+ const expand = (value) => value.replace('$workspaceRoot', relative(options.cwd, options.rootCwd)).replace('$projectRoot', '.');
11
12
  const inputs = tasks
12
13
  .map(task => task.command)
13
14
  .filter(command => command)
@@ -1,6 +1,6 @@
1
1
  import { compact } from '../../util/array.js';
2
2
  import { toConfig, toDependency } from '../../util/input.js';
3
- import { join } from '../../util/path.js';
3
+ import { join, relative } from '../../util/path.js';
4
4
  import { hasDependency } from '../../util/plugin.js';
5
5
  import { substringBefore } from '../../util/string.js';
6
6
  const title = 'Nx';
@@ -53,7 +53,11 @@ const resolveConfig = async (localConfig, options) => {
53
53
  commands = [target.options.command];
54
54
  else if (target.options?.commands)
55
55
  commands = target.options.commands.map(commandConfig => typeof commandConfig === 'string' ? commandConfig : commandConfig.command);
56
- return options.getInputsFromScripts(commands.map(expand), { cwd: resolveTargetCwd(target.options?.cwd) });
56
+ const cwd = resolveTargetCwd(target.options?.cwd);
57
+ const expandRelative = (command) => command
58
+ .replaceAll('{projectRoot}', relative(cwd, options.configFileDir))
59
+ .replaceAll('{workspaceRoot}', relative(cwd, options.rootCwd));
60
+ return options.getInputsFromScripts(commands.map(expandRelative), { cwd });
57
61
  });
58
62
  const configInputs = targets.flatMap(target => {
59
63
  const opts = target.options;
@@ -3,7 +3,7 @@ import { hasDependency } from '../../util/plugin.js';
3
3
  const title = 'React Native';
4
4
  const enablers = ['react-native'];
5
5
  const isEnabled = ({ dependencies }) => hasDependency(dependencies, enablers);
6
- const config = ['react-native.config.js'];
6
+ const config = ['react-native.config.{js,cjs,mjs,ts}'];
7
7
  const RN_CLI_PACKAGES = [
8
8
  '@react-native-community/cli',
9
9
  '@react-native-community/cli-platform-android',
@@ -5,7 +5,19 @@ const title = 'Rsbuild';
5
5
  const enablers = ['@rsbuild/core'];
6
6
  const isEnabled = ({ dependencies }) => hasDependency(dependencies, enablers);
7
7
  const config = ['rsbuild*.config.{mjs,ts,js,cjs,mts,cts}'];
8
- const resolveConfig = async (config, options) => {
8
+ const configParams = [
9
+ { env: 'development', command: 'dev', envMode: 'development' },
10
+ { env: 'production', command: 'build', envMode: 'production' },
11
+ ];
12
+ const getConfigs = async (configOrFn) => {
13
+ if (typeof configOrFn !== 'function')
14
+ return [configOrFn];
15
+ const configs = [];
16
+ for (const params of configParams)
17
+ configs.push(await configOrFn(params));
18
+ return configs;
19
+ };
20
+ const resolveConfig = async (configOrFn, options) => {
9
21
  const entries = new Set();
10
22
  const inputs = [];
11
23
  const checkSource = (source) => {
@@ -34,7 +46,7 @@ const resolveConfig = async (config, options) => {
34
46
  entries.add(e);
35
47
  }
36
48
  };
37
- const checkConfig = async (localConfig) => {
49
+ const checkConfig = async (localConfig, config) => {
38
50
  checkSource(localConfig.source);
39
51
  if (!localConfig.tools?.rspack)
40
52
  return;
@@ -68,10 +80,12 @@ const resolveConfig = async (config, options) => {
68
80
  }
69
81
  }
70
82
  };
71
- await checkConfig(config);
72
- if (config.environments) {
73
- for (const environment of Object.values(config.environments)) {
74
- await checkConfig(environment);
83
+ for (const config of await getConfigs(configOrFn)) {
84
+ await checkConfig(config, config);
85
+ if (config.environments) {
86
+ for (const environment of Object.values(config.environments)) {
87
+ await checkConfig(environment, config);
88
+ }
75
89
  }
76
90
  }
77
91
  for (const entry of entries)
@@ -29,4 +29,10 @@ export type RsbuildConfig = {
29
29
  [k: string]: Omit<RsbuildConfig, 'environments'>;
30
30
  };
31
31
  };
32
+ export type ConfigParams = {
33
+ env: string;
34
+ command: string;
35
+ envMode: string;
36
+ };
37
+ export type RsbuildConfigOrFn = RsbuildConfig | ((params: ConfigParams) => RsbuildConfig | Promise<RsbuildConfig>);
32
38
  export {};
@@ -1,3 +1,4 @@
1
+ import type { ConfigParams } from '../rsbuild/types.ts';
1
2
  type TestEnvironment = 'node' | 'jsdom' | 'happy-dom';
2
3
  export type RstestProjectConfig = {
3
4
  root?: string;
@@ -23,10 +24,5 @@ type RstestConfig = RstestProjectConfig & {
23
24
  provider?: 'istanbul' | 'v8';
24
25
  };
25
26
  };
26
- type ConfigParams = {
27
- env: string;
28
- command: string;
29
- envMode: string;
30
- };
31
27
  export type RstestConfigOrFn = RstestConfig | ((params: ConfigParams) => RstestConfig | Promise<RstestConfig>);
32
28
  export {};
@@ -1,5 +1,6 @@
1
1
  import parseArgs from '../../util/parse-args.js';
2
2
  import { parse } from 'unbash';
3
+ import { getCommandWords, walkCommands } from '../../util/scripts.js';
3
4
  const BIN = 'svelte-package';
4
5
  export const DEFAULT_INPUT = 'src/lib';
5
6
  export const DEFAULT_OUTPUT = 'dist';
@@ -7,48 +8,6 @@ const parseCommandIO = (args) => {
7
8
  const parsed = parseArgs(args, { string: ['i', 'o', 'input', 'output'], alias: { input: ['i'], output: ['o'] } });
8
9
  return { input: parsed.input ?? DEFAULT_INPUT, output: parsed.output ?? DEFAULT_OUTPUT };
9
10
  };
10
- const collectFromCommands = (statements, out) => {
11
- for (const stmt of statements)
12
- visit(stmt.command, out);
13
- };
14
- const visit = (node, out) => {
15
- switch (node.type) {
16
- case 'Command':
17
- if (node.name?.value === BIN)
18
- out.push(parseCommandIO(node.suffix.map(w => w.value)));
19
- return;
20
- case 'AndOr':
21
- case 'Pipeline':
22
- for (const n of node.commands)
23
- visit(n, out);
24
- return;
25
- case 'If':
26
- collectFromCommands(node.clause.commands, out);
27
- collectFromCommands(node.then.commands, out);
28
- if (node.else)
29
- visit(node.else, out);
30
- return;
31
- case 'While':
32
- collectFromCommands(node.clause.commands, out);
33
- collectFromCommands(node.body.commands, out);
34
- return;
35
- case 'For':
36
- case 'Select':
37
- case 'Subshell':
38
- case 'BraceGroup':
39
- collectFromCommands(node.body.commands, out);
40
- return;
41
- case 'CompoundList':
42
- collectFromCommands(node.commands, out);
43
- return;
44
- case 'Function':
45
- case 'Coproc':
46
- visit(node.body, out);
47
- return;
48
- case 'Statement':
49
- visit(node.command, out);
50
- }
51
- };
52
11
  export const parseScripts = (scripts) => {
53
12
  const out = [];
54
13
  for (const script of Object.values(scripts ?? {})) {
@@ -56,8 +15,12 @@ export const parseScripts = (scripts) => {
56
15
  continue;
57
16
  try {
58
17
  const parsed = parse(script);
59
- if (parsed.commands)
60
- collectFromCommands(parsed.commands, out);
18
+ for (const statement of parsed.commands) {
19
+ for (const node of walkCommands(statement.command)) {
20
+ if (node.name?.value === BIN)
21
+ out.push(parseCommandIO(getCommandWords(node).map(word => word.value)));
22
+ }
23
+ }
61
24
  }
62
25
  catch { }
63
26
  }
package/dist/run.js CHANGED
@@ -17,10 +17,12 @@ import { getGitIgnoredHandler } from './util/glob-core.js';
17
17
  import { isCatalog } from './util/input.js';
18
18
  import { createManifest } from './util/package-json.js';
19
19
  import { getModuleSourcePathHandler, getWorkspacePackageTargetHandler } from './util/to-source-path.js';
20
+ import { clearResolverCache } from './util/resolve.js';
20
21
  import { getSessionHandler } from './util/watch.js';
21
22
  export const run = async (options) => {
22
23
  debugLogObject('*', 'Unresolved configuration', options);
23
24
  debugLogObject('*', 'Included issue types', options.includedIssueTypes);
25
+ clearResolverCache();
24
26
  if (options.isCache) {
25
27
  initGlobCache(options.cacheLocation);
26
28
  initGitignoreCache(options.cacheLocation);
@@ -181,6 +181,11 @@ export declare const workspaceConfigurationSchema: z.ZodMiniObject<{
181
181
  entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
182
182
  project: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
183
183
  }, z.core.$strip>]>>;
184
+ 'expo-router': z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>, z.ZodMiniObject<{
185
+ config: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
186
+ entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
187
+ project: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
188
+ }, z.core.$strip>]>>;
184
189
  'expressive-code': z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>, z.ZodMiniObject<{
185
190
  config: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
186
191
  entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
@@ -191,6 +196,11 @@ export declare const workspaceConfigurationSchema: z.ZodMiniObject<{
191
196
  entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
192
197
  project: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
193
198
  }, z.core.$strip>]>>;
199
+ flue: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>, z.ZodMiniObject<{
200
+ config: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
201
+ entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
202
+ project: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
203
+ }, z.core.$strip>]>>;
194
204
  fumadocs: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>, z.ZodMiniObject<{
195
205
  config: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
196
206
  entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
@@ -1148,6 +1158,11 @@ export declare const knipConfigurationSchema: z.ZodMiniObject<{
1148
1158
  entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
1149
1159
  project: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
1150
1160
  }, z.core.$strip>]>>;
1161
+ 'expo-router': z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>, z.ZodMiniObject<{
1162
+ config: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
1163
+ entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
1164
+ project: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
1165
+ }, z.core.$strip>]>>;
1151
1166
  'expressive-code': z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>, z.ZodMiniObject<{
1152
1167
  config: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
1153
1168
  entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
@@ -1158,6 +1173,11 @@ export declare const knipConfigurationSchema: z.ZodMiniObject<{
1158
1173
  entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
1159
1174
  project: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
1160
1175
  }, z.core.$strip>]>>;
1176
+ flue: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>, z.ZodMiniObject<{
1177
+ config: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
1178
+ entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
1179
+ project: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
1180
+ }, z.core.$strip>]>>;
1161
1181
  fumadocs: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>, z.ZodMiniObject<{
1162
1182
  config: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
1163
1183
  entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
@@ -2134,6 +2154,11 @@ export declare const knipConfigurationSchema: z.ZodMiniObject<{
2134
2154
  entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
2135
2155
  project: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
2136
2156
  }, z.core.$strip>]>>;
2157
+ 'expo-router': z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>, z.ZodMiniObject<{
2158
+ config: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
2159
+ entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
2160
+ project: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
2161
+ }, z.core.$strip>]>>;
2137
2162
  'expressive-code': z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>, z.ZodMiniObject<{
2138
2163
  config: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
2139
2164
  entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
@@ -2144,6 +2169,11 @@ export declare const knipConfigurationSchema: z.ZodMiniObject<{
2144
2169
  entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
2145
2170
  project: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
2146
2171
  }, z.core.$strip>]>>;
2172
+ flue: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>, z.ZodMiniObject<{
2173
+ config: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
2174
+ entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
2175
+ project: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
2176
+ }, z.core.$strip>]>>;
2147
2177
  fumadocs: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>, z.ZodMiniObject<{
2148
2178
  config: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
2149
2179
  entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
@@ -186,6 +186,11 @@ export declare const pluginsSchema: z.ZodMiniObject<{
186
186
  entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
187
187
  project: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
188
188
  }, z.core.$strip>]>;
189
+ 'expo-router': z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>, z.ZodMiniObject<{
190
+ config: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
191
+ entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
192
+ project: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
193
+ }, z.core.$strip>]>;
189
194
  'expressive-code': z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>, z.ZodMiniObject<{
190
195
  config: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
191
196
  entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
@@ -196,6 +201,11 @@ export declare const pluginsSchema: z.ZodMiniObject<{
196
201
  entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
197
202
  project: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
198
203
  }, z.core.$strip>]>;
204
+ flue: z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>, z.ZodMiniObject<{
205
+ config: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
206
+ entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
207
+ project: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
208
+ }, z.core.$strip>]>;
199
209
  fumadocs: z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>, z.ZodMiniObject<{
200
210
  config: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
201
211
  entry: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
@@ -46,8 +46,10 @@ export const pluginsSchema = z.object({
46
46
  eve: pluginSchema,
47
47
  execa: pluginSchema,
48
48
  expo: pluginSchema,
49
+ 'expo-router': pluginSchema,
49
50
  'expressive-code': pluginSchema,
50
51
  fast: pluginSchema,
52
+ flue: pluginSchema,
51
53
  fumadocs: pluginSchema,
52
54
  gatsby: pluginSchema,
53
55
  'github-action': pluginSchema,
@@ -1,2 +1,2 @@
1
- export type PluginName = 'angular' | 'astro' | 'astro-db' | 'astro-markdoc' | 'astro-og-canvas' | 'ava' | 'babel' | 'biome' | 'borp' | 'bumpp' | 'bun' | 'c8' | 'capacitor' | 'catalyst' | 'changelogen' | 'changelogithub' | 'changesets' | 'commitizen' | 'commitlint' | 'convex' | 'create-typescript-app' | 'cspell' | 'cucumber' | 'cypress' | 'danger' | 'dependency-cruiser' | 'docusaurus' | 'dotenv' | 'drizzle' | 'electron-vite' | 'eleventy' | 'esbuild' | 'eslint' | 'eve' | 'execa' | 'expo' | 'expressive-code' | 'fast' | 'fumadocs' | 'gatsby' | 'github-action' | 'github-actions' | 'glob' | 'graphql-codegen' | 'hardhat' | 'husky' | 'i18next-parser' | 'jasmine' | 'jest' | 'karma' | 'knex' | 'ladle' | 'laravel-vite-plugin' | 'lefthook' | 'lint-staged' | 'linthtml' | 'lit' | 'lockfile-lint' | 'lost-pixel' | 'lunaria' | 'markdownlint' | 'marko' | 'mdx' | 'mdxlint' | 'metro' | 'mise' | 'mocha' | 'moonrepo' | 'msw' | 'nano-spawn' | 'nano-staged' | 'nest' | 'netlify' | 'next' | 'next-intl' | 'next-mdx' | 'nitro' | 'node' | 'node-modules-inspector' | 'nodemon' | 'npm-package-json-lint' | 'nuxt' | 'nuxtjs-i18n' | 'nx' | 'nyc' | 'oclif' | 'openapi-ts' | 'openclaw' | 'orval' | 'osls' | 'oxfmt' | 'oxlint' | 'panda-css' | 'parcel' | 'payload' | 'pino' | 'playwright' | 'playwright-ct' | 'playwright-test' | 'plop' | 'pm2' | 'pnpm' | 'postcss' | 'pre-commit' | 'preconstruct' | 'prettier' | 'prisma' | 'quasar' | 'qwik' | 'railway' | 'raycast' | 'react-cosmos' | 'react-email' | 'react-native' | 'react-router' | 'relay' | 'release-it' | 'remark' | 'remix' | 'rolldown' | 'rollup' | 'rsbuild' | 'rslib' | 'rspack' | 'rstest' | 'sanity' | 'semantic-release' | 'sentry' | 'serverless-framework' | 'simple-git-hooks' | 'size-limit' | 'sst' | 'starlight' | 'stencil' | 'storybook' | 'stryker' | 'stylelint' | 'svelte' | 'sveltejs-package' | 'sveltekit' | 'svgo' | 'svgr' | 'swc' | 'syncpack' | 'tailwind' | 'tanstack-router' | 'taskfile' | 'tauri' | 'temporal' | 'textlint' | 'travis' | 'ts-node' | 'tsd' | 'tsdown' | 'tsup' | 'tsx' | 'turbo' | 'typedoc' | 'typescript' | 'typescript-content-mapper' | 'unbuild' | 'unocss' | 'unplugin-auto-import' | 'unplugin-icons' | 'unplugin-vue-components' | 'unplugin-vue-i18n' | 'unplugin-vue-markdown' | 'unplugin-vue-router' | 'varlock' | 'vercel' | 'vercel-og' | 'vike' | 'vite' | 'vite-plugin-pages' | 'vite-plugin-pwa' | 'vite-plugin-vue-layouts-next' | 'vite-plus' | 'vite-pwa-assets-generator' | 'vitepress' | 'vitest' | 'vue' | 'webdriver-io' | 'webpack' | 'wireit' | 'wrangler' | 'wxt' | 'xo' | 'yarn' | 'yorkie' | 'zx';
2
- export declare const pluginNames: readonly ['angular', 'astro', 'astro-db', 'astro-markdoc', 'astro-og-canvas', 'ava', 'babel', 'biome', 'borp', 'bumpp', 'bun', 'c8', 'capacitor', 'catalyst', 'changelogen', 'changelogithub', 'changesets', 'commitizen', 'commitlint', 'convex', 'create-typescript-app', 'cspell', 'cucumber', 'cypress', 'danger', 'dependency-cruiser', 'docusaurus', 'dotenv', 'drizzle', 'electron-vite', 'eleventy', 'esbuild', 'eslint', 'eve', 'execa', 'expo', 'expressive-code', 'fast', 'fumadocs', 'gatsby', 'github-action', 'github-actions', 'glob', 'graphql-codegen', 'hardhat', 'husky', 'i18next-parser', 'jasmine', 'jest', 'karma', 'knex', 'ladle', 'laravel-vite-plugin', 'lefthook', 'lint-staged', 'linthtml', 'lit', 'lockfile-lint', 'lost-pixel', 'lunaria', 'markdownlint', 'marko', 'mdx', 'mdxlint', 'metro', 'mise', 'mocha', 'moonrepo', 'msw', 'nano-spawn', 'nano-staged', 'nest', 'netlify', 'next', 'next-intl', 'next-mdx', 'nitro', 'node', 'node-modules-inspector', 'nodemon', 'npm-package-json-lint', 'nuxt', 'nuxtjs-i18n', 'nx', 'nyc', 'oclif', 'openapi-ts', 'openclaw', 'orval', 'osls', 'oxfmt', 'oxlint', 'panda-css', 'parcel', 'payload', 'pino', 'playwright', 'playwright-ct', 'playwright-test', 'plop', 'pm2', 'pnpm', 'postcss', 'pre-commit', 'preconstruct', 'prettier', 'prisma', 'quasar', 'qwik', 'railway', 'raycast', 'react-cosmos', 'react-email', 'react-native', 'react-router', 'relay', 'release-it', 'remark', 'remix', 'rolldown', 'rollup', 'rsbuild', 'rslib', 'rspack', 'rstest', 'sanity', 'semantic-release', 'sentry', 'serverless-framework', 'simple-git-hooks', 'size-limit', 'sst', 'starlight', 'stencil', 'storybook', 'stryker', 'stylelint', 'svelte', 'sveltejs-package', 'sveltekit', 'svgo', 'svgr', 'swc', 'syncpack', 'tailwind', 'tanstack-router', 'taskfile', 'tauri', 'temporal', 'textlint', 'travis', 'ts-node', 'tsd', 'tsdown', 'tsup', 'tsx', 'turbo', 'typedoc', 'typescript', 'typescript-content-mapper', 'unbuild', 'unocss', 'unplugin-auto-import', 'unplugin-icons', 'unplugin-vue-components', 'unplugin-vue-i18n', 'unplugin-vue-markdown', 'unplugin-vue-router', 'varlock', 'vercel', 'vercel-og', 'vike', 'vite', 'vite-plugin-pages', 'vite-plugin-pwa', 'vite-plugin-vue-layouts-next', 'vite-plus', 'vite-pwa-assets-generator', 'vitepress', 'vitest', 'vue', 'webdriver-io', 'webpack', 'wireit', 'wrangler', 'wxt', 'xo', 'yarn', 'yorkie', 'zx'];
1
+ export type PluginName = 'angular' | 'astro' | 'astro-db' | 'astro-markdoc' | 'astro-og-canvas' | 'ava' | 'babel' | 'biome' | 'borp' | 'bumpp' | 'bun' | 'c8' | 'capacitor' | 'catalyst' | 'changelogen' | 'changelogithub' | 'changesets' | 'commitizen' | 'commitlint' | 'convex' | 'create-typescript-app' | 'cspell' | 'cucumber' | 'cypress' | 'danger' | 'dependency-cruiser' | 'docusaurus' | 'dotenv' | 'drizzle' | 'electron-vite' | 'eleventy' | 'esbuild' | 'eslint' | 'eve' | 'execa' | 'expo' | 'expo-router' | 'expressive-code' | 'fast' | 'flue' | 'fumadocs' | 'gatsby' | 'github-action' | 'github-actions' | 'glob' | 'graphql-codegen' | 'hardhat' | 'husky' | 'i18next-parser' | 'jasmine' | 'jest' | 'karma' | 'knex' | 'ladle' | 'laravel-vite-plugin' | 'lefthook' | 'lint-staged' | 'linthtml' | 'lit' | 'lockfile-lint' | 'lost-pixel' | 'lunaria' | 'markdownlint' | 'marko' | 'mdx' | 'mdxlint' | 'metro' | 'mise' | 'mocha' | 'moonrepo' | 'msw' | 'nano-spawn' | 'nano-staged' | 'nest' | 'netlify' | 'next' | 'next-intl' | 'next-mdx' | 'nitro' | 'node' | 'node-modules-inspector' | 'nodemon' | 'npm-package-json-lint' | 'nuxt' | 'nuxtjs-i18n' | 'nx' | 'nyc' | 'oclif' | 'openapi-ts' | 'openclaw' | 'orval' | 'osls' | 'oxfmt' | 'oxlint' | 'panda-css' | 'parcel' | 'payload' | 'pino' | 'playwright' | 'playwright-ct' | 'playwright-test' | 'plop' | 'pm2' | 'pnpm' | 'postcss' | 'pre-commit' | 'preconstruct' | 'prettier' | 'prisma' | 'quasar' | 'qwik' | 'railway' | 'raycast' | 'react-cosmos' | 'react-email' | 'react-native' | 'react-router' | 'relay' | 'release-it' | 'remark' | 'remix' | 'rolldown' | 'rollup' | 'rsbuild' | 'rslib' | 'rspack' | 'rstest' | 'sanity' | 'semantic-release' | 'sentry' | 'serverless-framework' | 'simple-git-hooks' | 'size-limit' | 'sst' | 'starlight' | 'stencil' | 'storybook' | 'stryker' | 'stylelint' | 'svelte' | 'sveltejs-package' | 'sveltekit' | 'svgo' | 'svgr' | 'swc' | 'syncpack' | 'tailwind' | 'tanstack-router' | 'taskfile' | 'tauri' | 'temporal' | 'textlint' | 'travis' | 'ts-node' | 'tsd' | 'tsdown' | 'tsup' | 'tsx' | 'turbo' | 'typedoc' | 'typescript' | 'typescript-content-mapper' | 'unbuild' | 'unocss' | 'unplugin-auto-import' | 'unplugin-icons' | 'unplugin-vue-components' | 'unplugin-vue-i18n' | 'unplugin-vue-markdown' | 'unplugin-vue-router' | 'varlock' | 'vercel' | 'vercel-og' | 'vike' | 'vite' | 'vite-plugin-pages' | 'vite-plugin-pwa' | 'vite-plugin-vue-layouts-next' | 'vite-plus' | 'vite-pwa-assets-generator' | 'vitepress' | 'vitest' | 'vue' | 'webdriver-io' | 'webpack' | 'wireit' | 'wrangler' | 'wxt' | 'xo' | 'yarn' | 'yorkie' | 'zx';
2
+ export declare const pluginNames: readonly ['angular', 'astro', 'astro-db', 'astro-markdoc', 'astro-og-canvas', 'ava', 'babel', 'biome', 'borp', 'bumpp', 'bun', 'c8', 'capacitor', 'catalyst', 'changelogen', 'changelogithub', 'changesets', 'commitizen', 'commitlint', 'convex', 'create-typescript-app', 'cspell', 'cucumber', 'cypress', 'danger', 'dependency-cruiser', 'docusaurus', 'dotenv', 'drizzle', 'electron-vite', 'eleventy', 'esbuild', 'eslint', 'eve', 'execa', 'expo', 'expo-router', 'expressive-code', 'fast', 'flue', 'fumadocs', 'gatsby', 'github-action', 'github-actions', 'glob', 'graphql-codegen', 'hardhat', 'husky', 'i18next-parser', 'jasmine', 'jest', 'karma', 'knex', 'ladle', 'laravel-vite-plugin', 'lefthook', 'lint-staged', 'linthtml', 'lit', 'lockfile-lint', 'lost-pixel', 'lunaria', 'markdownlint', 'marko', 'mdx', 'mdxlint', 'metro', 'mise', 'mocha', 'moonrepo', 'msw', 'nano-spawn', 'nano-staged', 'nest', 'netlify', 'next', 'next-intl', 'next-mdx', 'nitro', 'node', 'node-modules-inspector', 'nodemon', 'npm-package-json-lint', 'nuxt', 'nuxtjs-i18n', 'nx', 'nyc', 'oclif', 'openapi-ts', 'openclaw', 'orval', 'osls', 'oxfmt', 'oxlint', 'panda-css', 'parcel', 'payload', 'pino', 'playwright', 'playwright-ct', 'playwright-test', 'plop', 'pm2', 'pnpm', 'postcss', 'pre-commit', 'preconstruct', 'prettier', 'prisma', 'quasar', 'qwik', 'railway', 'raycast', 'react-cosmos', 'react-email', 'react-native', 'react-router', 'relay', 'release-it', 'remark', 'remix', 'rolldown', 'rollup', 'rsbuild', 'rslib', 'rspack', 'rstest', 'sanity', 'semantic-release', 'sentry', 'serverless-framework', 'simple-git-hooks', 'size-limit', 'sst', 'starlight', 'stencil', 'storybook', 'stryker', 'stylelint', 'svelte', 'sveltejs-package', 'sveltekit', 'svgo', 'svgr', 'swc', 'syncpack', 'tailwind', 'tanstack-router', 'taskfile', 'tauri', 'temporal', 'textlint', 'travis', 'ts-node', 'tsd', 'tsdown', 'tsup', 'tsx', 'turbo', 'typedoc', 'typescript', 'typescript-content-mapper', 'unbuild', 'unocss', 'unplugin-auto-import', 'unplugin-icons', 'unplugin-vue-components', 'unplugin-vue-i18n', 'unplugin-vue-markdown', 'unplugin-vue-router', 'varlock', 'vercel', 'vercel-og', 'vike', 'vite', 'vite-plugin-pages', 'vite-plugin-pwa', 'vite-plugin-vue-layouts-next', 'vite-plus', 'vite-pwa-assets-generator', 'vitepress', 'vitest', 'vue', 'webdriver-io', 'webpack', 'wireit', 'wrangler', 'wxt', 'xo', 'yarn', 'yorkie', 'zx'];
@@ -35,8 +35,10 @@ export const pluginNames = [
35
35
  'eve',
36
36
  'execa',
37
37
  'expo',
38
+ 'expo-router',
38
39
  'expressive-code',
39
40
  'fast',
41
+ 'flue',
40
42
  'fumadocs',
41
43
  'gatsby',
42
44
  'github-action',
@@ -9,6 +9,7 @@ type WorkspaceManifest = {
9
9
  peerDependencies: DependencySet;
10
10
  optionalPeerDependencies: DependencySet;
11
11
  requiredPeerDependencies: DependencyArray;
12
+ uninstalledOptionalDependencies: DependencySet;
12
13
  allDependencies: DependencySet;
13
14
  engines: Record<string, string>;
14
15
  isPrivate: boolean;
@@ -226,6 +226,11 @@ export declare const createOptions: (options: CreateOptions) => Promise<{
226
226
  entry?: string | string[] | undefined;
227
227
  project?: string | string[] | undefined;
228
228
  } | undefined;
229
+ 'expo-router'?: string | boolean | string[] | {
230
+ config?: string | string[] | undefined;
231
+ entry?: string | string[] | undefined;
232
+ project?: string | string[] | undefined;
233
+ } | undefined;
229
234
  'expressive-code'?: string | boolean | string[] | {
230
235
  config?: string | string[] | undefined;
231
236
  entry?: string | string[] | undefined;
@@ -236,6 +241,11 @@ export declare const createOptions: (options: CreateOptions) => Promise<{
236
241
  entry?: string | string[] | undefined;
237
242
  project?: string | string[] | undefined;
238
243
  } | undefined;
244
+ flue?: string | boolean | string[] | {
245
+ config?: string | string[] | undefined;
246
+ entry?: string | string[] | undefined;
247
+ project?: string | string[] | undefined;
248
+ } | undefined;
239
249
  fumadocs?: string | boolean | string[] | {
240
250
  config?: string | string[] | undefined;
241
251
  entry?: string | string[] | undefined;
@@ -1208,6 +1218,11 @@ export declare const createOptions: (options: CreateOptions) => Promise<{
1208
1218
  entry?: string | string[] | undefined;
1209
1219
  project?: string | string[] | undefined;
1210
1220
  } | undefined;
1221
+ 'expo-router'?: string | boolean | string[] | {
1222
+ config?: string | string[] | undefined;
1223
+ entry?: string | string[] | undefined;
1224
+ project?: string | string[] | undefined;
1225
+ } | undefined;
1211
1226
  'expressive-code'?: string | boolean | string[] | {
1212
1227
  config?: string | string[] | undefined;
1213
1228
  entry?: string | string[] | undefined;
@@ -1218,6 +1233,11 @@ export declare const createOptions: (options: CreateOptions) => Promise<{
1218
1233
  entry?: string | string[] | undefined;
1219
1234
  project?: string | string[] | undefined;
1220
1235
  } | undefined;
1236
+ flue?: string | boolean | string[] | {
1237
+ config?: string | string[] | undefined;
1238
+ entry?: string | string[] | undefined;
1239
+ project?: string | string[] | undefined;
1240
+ } | undefined;
1221
1241
  fumadocs?: string | boolean | string[] | {
1222
1242
  config?: string | string[] | undefined;
1223
1243
  entry?: string | string[] | undefined;
@@ -1,4 +1,4 @@
1
- import type { FSLike } from 'fdir';
1
+ import type { FileSystemAdapter } from 'tinyglobby';
2
2
  export declare const initGlobCache: (cacheLocation: string) => void;
3
3
  export declare const isGlobCacheEnabled: () => boolean;
4
4
  export declare const flushGlobCache: () => void;
@@ -13,6 +13,6 @@ export declare const computeGlobCacheKey: (input: {
13
13
  export declare const getCachedGlob: (key: string) => string[] | undefined;
14
14
  export declare const createDirTracker: () => {
15
15
  dirs: Set<string>;
16
- fs: Partial<FSLike>;
16
+ fs: FileSystemAdapter;
17
17
  };
18
18
  export declare const setCachedGlob: (key: string, paths: string[], baseDir: string, dirs?: Iterable<string>) => void;