knip 5.50.0 → 5.50.1

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 (311) hide show
  1. package/dist/CacheConsultant.d.ts +14 -0
  2. package/dist/ConfigurationChief.d.ts +182 -0
  3. package/dist/ConsoleStreamer.d.ts +12 -0
  4. package/dist/DependencyDeputy.d.ts +78 -0
  5. package/dist/IssueCollector.d.ts +39 -0
  6. package/dist/IssueFixer.d.ts +27 -0
  7. package/dist/PackageJsonPeeker.d.ts +13 -0
  8. package/dist/PrincipalFactory.d.ts +20 -0
  9. package/dist/ProjectPrincipal.d.ts +58 -0
  10. package/dist/WorkspaceWorker.d.ts +69 -0
  11. package/dist/binaries/bash-parser.d.ts +3 -0
  12. package/dist/binaries/fallback.d.ts +2 -0
  13. package/dist/binaries/index.d.ts +2 -0
  14. package/dist/binaries/package-manager/bun.d.ts +2 -0
  15. package/dist/binaries/package-manager/bunx.d.ts +3 -0
  16. package/dist/binaries/package-manager/index.d.ts +10 -0
  17. package/dist/binaries/package-manager/npm.d.ts +2 -0
  18. package/dist/binaries/package-manager/npx.d.ts +2 -0
  19. package/dist/binaries/package-manager/pnpm.d.ts +2 -0
  20. package/dist/binaries/package-manager/pnpx.d.ts +3 -0
  21. package/dist/binaries/package-manager/yarn.d.ts +2 -0
  22. package/dist/binaries/plugins.d.ts +2 -0
  23. package/dist/binaries/util.d.ts +3 -0
  24. package/dist/cli.d.ts +1 -0
  25. package/dist/compilers/astro.d.ts +6 -0
  26. package/dist/compilers/compilers.d.ts +5 -0
  27. package/dist/compilers/index.d.ts +997 -0
  28. package/dist/compilers/mdx.d.ts +6 -0
  29. package/dist/compilers/svelte.d.ts +6 -0
  30. package/dist/compilers/types.d.ts +7 -0
  31. package/dist/compilers/vue.d.ts +6 -0
  32. package/dist/constants.d.ts +26 -0
  33. package/dist/graph/analyze.d.ts +30 -0
  34. package/dist/graph/build.d.ts +40 -0
  35. package/dist/index.d.ts +11 -0
  36. package/dist/manifest/helpers.d.ts +9 -0
  37. package/dist/manifest/index.d.ts +12 -0
  38. package/dist/plugins/_template/index.d.ts +12 -0
  39. package/dist/plugins/_template/types.d.ts +4 -0
  40. package/dist/plugins/angular/index.d.ts +10 -0
  41. package/dist/plugins/angular/types.d.ts +1048 -0
  42. package/dist/plugins/astro/index.d.ts +11 -0
  43. package/dist/plugins/ava/index.d.ts +12 -0
  44. package/dist/plugins/ava/types.d.ts +8 -0
  45. package/dist/plugins/babel/helpers.d.ts +14 -0
  46. package/dist/plugins/babel/index.d.ts +12 -0
  47. package/dist/plugins/babel/types.d.ts +10 -0
  48. package/dist/plugins/c8/index.d.ts +10 -0
  49. package/dist/plugins/capacitor/index.d.ts +10 -0
  50. package/dist/plugins/capacitor/types.d.ts +3 -0
  51. package/dist/plugins/changesets/index.d.ts +11 -0
  52. package/dist/plugins/changesets/types.d.ts +3 -0
  53. package/dist/plugins/commitizen/index.d.ts +12 -0
  54. package/dist/plugins/commitizen/types.d.ts +3 -0
  55. package/dist/plugins/commitlint/index.d.ts +10 -0
  56. package/dist/plugins/commitlint/types.d.ts +12 -0
  57. package/dist/plugins/create-typescript-app/index.d.ts +8 -0
  58. package/dist/plugins/cspell/index.d.ts +10 -0
  59. package/dist/plugins/cspell/types.d.ts +3 -0
  60. package/dist/plugins/cucumber/index.d.ts +12 -0
  61. package/dist/plugins/cucumber/types.d.ts +7 -0
  62. package/dist/plugins/cypress/helpers.d.ts +3 -0
  63. package/dist/plugins/cypress/index.d.ts +12 -0
  64. package/dist/plugins/cypress/types.d.ts +6 -0
  65. package/dist/plugins/dependency-cruiser/index.d.ts +12 -0
  66. package/dist/plugins/dotenv/index.d.ts +8 -0
  67. package/dist/plugins/drizzle/index.d.ts +10 -0
  68. package/dist/plugins/drizzle/types.d.ts +3 -0
  69. package/dist/plugins/eleventy/helpers.d.ts +138 -0
  70. package/dist/plugins/eleventy/index.d.ts +14 -0
  71. package/dist/plugins/eleventy/types.d.ts +10 -0
  72. package/dist/plugins/eslint/helpers.d.ts +4 -0
  73. package/dist/plugins/eslint/index.d.ts +15 -0
  74. package/dist/plugins/eslint/types.d.ts +29 -0
  75. package/dist/plugins/expo/helpers.d.ts +20 -0
  76. package/dist/plugins/expo/index.d.ts +14 -0
  77. package/dist/plugins/expo/types.d.ts +28 -0
  78. package/dist/plugins/gatsby/index.d.ts +11 -0
  79. package/dist/plugins/gatsby/types.d.ts +15 -0
  80. package/dist/plugins/github-action/index.d.ts +9 -0
  81. package/dist/plugins/github-actions/index.d.ts +11 -0
  82. package/dist/plugins/github-actions/types.d.ts +20 -0
  83. package/dist/plugins/glob/index.d.ts +12 -0
  84. package/dist/plugins/graphql-codegen/index.d.ts +11 -0
  85. package/dist/plugins/graphql-codegen/types.d.ts +37 -0
  86. package/dist/plugins/husky/index.d.ts +10 -0
  87. package/dist/plugins/index.d.ts +788 -0
  88. package/dist/plugins/jest/helpers.d.ts +4 -0
  89. package/dist/plugins/jest/index.d.ts +15 -0
  90. package/dist/plugins/jest/types.d.ts +3 -0
  91. package/dist/plugins/karma/helpers.d.ts +7 -0
  92. package/dist/plugins/karma/index.d.ts +12 -0
  93. package/dist/plugins/karma/types.d.ts +22 -0
  94. package/dist/plugins/ladle/index.d.ts +13 -0
  95. package/dist/plugins/ladle/types.d.ts +4 -0
  96. package/dist/plugins/lefthook/index.d.ts +9 -0
  97. package/dist/plugins/lint-staged/index.d.ts +11 -0
  98. package/dist/plugins/lint-staged/types.d.ts +5 -0
  99. package/dist/plugins/linthtml/index.d.ts +11 -0
  100. package/dist/plugins/linthtml/types.d.ts +4 -0
  101. package/dist/plugins/lockfile-lint/index.d.ts +8 -0
  102. package/dist/plugins/lost-pixel/index.d.ts +8 -0
  103. package/dist/plugins/markdownlint/helpers.d.ts +1 -0
  104. package/dist/plugins/markdownlint/index.d.ts +10 -0
  105. package/dist/plugins/markdownlint/types.d.ts +3 -0
  106. package/dist/plugins/metro/index.d.ts +15 -0
  107. package/dist/plugins/metro/types.d.ts +13 -0
  108. package/dist/plugins/mocha/index.d.ts +15 -0
  109. package/dist/plugins/mocha/types.d.ts +4 -0
  110. package/dist/plugins/moonrepo/index.d.ts +11 -0
  111. package/dist/plugins/moonrepo/types.d.ts +7 -0
  112. package/dist/plugins/msw/index.d.ts +11 -0
  113. package/dist/plugins/msw/types.d.ts +3 -0
  114. package/dist/plugins/nest/index.d.ts +10 -0
  115. package/dist/plugins/nest/types.d.ts +3 -0
  116. package/dist/plugins/netlify/helpers.d.ts +2 -0
  117. package/dist/plugins/netlify/index.d.ts +12 -0
  118. package/dist/plugins/netlify/types.d.ts +11 -0
  119. package/dist/plugins/next/index.d.ts +10 -0
  120. package/dist/plugins/next/resolveFromAST.d.ts +2 -0
  121. package/dist/plugins/node/index.d.ts +16 -0
  122. package/dist/plugins/nodemon/index.d.ts +10 -0
  123. package/dist/plugins/npm-package-json-lint/index.d.ts +11 -0
  124. package/dist/plugins/npm-package-json-lint/types.d.ts +3 -0
  125. package/dist/plugins/nuxt/index.d.ts +14 -0
  126. package/dist/plugins/nuxt/types.d.ts +8 -0
  127. package/dist/plugins/nx/index.d.ts +14 -0
  128. package/dist/plugins/nx/types.d.ts +19 -0
  129. package/dist/plugins/nyc/index.d.ts +10 -0
  130. package/dist/plugins/nyc/types.d.ts +4 -0
  131. package/dist/plugins/oclif/index.d.ts +10 -0
  132. package/dist/plugins/oclif/types.d.ts +4 -0
  133. package/dist/plugins/playwright/index.d.ts +21 -0
  134. package/dist/plugins/playwright/types.d.ts +36 -0
  135. package/dist/plugins/playwright-ct/index.d.ts +11 -0
  136. package/dist/plugins/playwright-test/index.d.ts +13 -0
  137. package/dist/plugins/plop/index.d.ts +8 -0
  138. package/dist/plugins/postcss/index.d.ts +10 -0
  139. package/dist/plugins/postcss/types.d.ts +3 -0
  140. package/dist/plugins/preconstruct/index.d.ts +10 -0
  141. package/dist/plugins/preconstruct/types.d.ts +3 -0
  142. package/dist/plugins/prettier/index.d.ts +10 -0
  143. package/dist/plugins/prettier/types.d.ts +8 -0
  144. package/dist/plugins/react-cosmos/index.d.ts +12 -0
  145. package/dist/plugins/react-cosmos/types.d.ts +5 -0
  146. package/dist/plugins/react-router/index.d.ts +10 -0
  147. package/dist/plugins/react-router/types.d.ts +7 -0
  148. package/dist/plugins/release-it/index.d.ts +10 -0
  149. package/dist/plugins/release-it/types.d.ts +10 -0
  150. package/dist/plugins/remark/index.d.ts +11 -0
  151. package/dist/plugins/remark/types.d.ts +3 -0
  152. package/dist/plugins/remix/index.d.ts +9 -0
  153. package/dist/plugins/rollup/index.d.ts +10 -0
  154. package/dist/plugins/rsbuild/index.d.ts +10 -0
  155. package/dist/plugins/rsbuild/types.d.ts +3 -0
  156. package/dist/plugins/rspack/index.d.ts +10 -0
  157. package/dist/plugins/semantic-release/index.d.ts +12 -0
  158. package/dist/plugins/semantic-release/types.d.ts +3 -0
  159. package/dist/plugins/sentry/index.d.ts +8 -0
  160. package/dist/plugins/simple-git-hooks/index.d.ts +10 -0
  161. package/dist/plugins/simple-git-hooks/types.d.ts +3 -0
  162. package/dist/plugins/size-limit/index.d.ts +8 -0
  163. package/dist/plugins/sst/index.d.ts +9 -0
  164. package/dist/plugins/sst/resolveFromAST.d.ts +2 -0
  165. package/dist/plugins/starlight/index.d.ts +9 -0
  166. package/dist/plugins/starlight/resolveFromAST.d.ts +2 -0
  167. package/dist/plugins/storybook/index.d.ts +13 -0
  168. package/dist/plugins/storybook/types.d.ts +20 -0
  169. package/dist/plugins/stryker/index.d.ts +10 -0
  170. package/dist/plugins/stryker/types.d.ts +5 -0
  171. package/dist/plugins/stylelint/index.d.ts +10 -0
  172. package/dist/plugins/stylelint/types.d.ts +8 -0
  173. package/dist/plugins/svelte/index.d.ts +9 -0
  174. package/dist/plugins/syncpack/index.d.ts +8 -0
  175. package/dist/plugins/tailwind/index.d.ts +8 -0
  176. package/dist/plugins/tanstack-router/index.d.ts +12 -0
  177. package/dist/plugins/tanstack-router/resolveFromAST.d.ts +2 -0
  178. package/dist/plugins/tanstack-router/types.d.ts +7 -0
  179. package/dist/plugins/travis/index.d.ts +10 -0
  180. package/dist/plugins/ts-node/index.d.ts +15 -0
  181. package/dist/plugins/tsup/index.d.ts +13 -0
  182. package/dist/plugins/tsup/types.d.ts +7 -0
  183. package/dist/plugins/tsx/index.d.ts +9 -0
  184. package/dist/plugins/typedoc/index.d.ts +16 -0
  185. package/dist/plugins/typedoc/types.d.ts +4 -0
  186. package/dist/plugins/typescript/index.d.ts +21 -0
  187. package/dist/plugins/unbuild/index.d.ts +10 -0
  188. package/dist/plugins/unbuild/types.d.ts +13 -0
  189. package/dist/plugins/unocss/index.d.ts +8 -0
  190. package/dist/plugins/vercel-og/index.d.ts +8 -0
  191. package/dist/plugins/vike/index.d.ts +8 -0
  192. package/dist/plugins/vite/index.d.ts +11 -0
  193. package/dist/plugins/vitest/helpers.d.ts +3 -0
  194. package/dist/plugins/vitest/index.d.ts +17 -0
  195. package/dist/plugins/vitest/types.d.ts +39 -0
  196. package/dist/plugins/vue/index.d.ts +10 -0
  197. package/dist/plugins/vue/types.d.ts +5 -0
  198. package/dist/plugins/webdriver-io/index.d.ts +10 -0
  199. package/dist/plugins/webdriver-io/types.d.ts +3 -0
  200. package/dist/plugins/webpack/index.d.ts +19 -0
  201. package/dist/plugins/webpack/types.d.ts +12 -0
  202. package/dist/plugins/wireit/index.d.ts +10 -0
  203. package/dist/plugins/wireit/types.d.ts +3 -0
  204. package/dist/plugins/wrangler/index.d.ts +10 -0
  205. package/dist/plugins/wrangler/types.d.ts +3 -0
  206. package/dist/plugins/xo/index.d.ts +11 -0
  207. package/dist/plugins/xo/types.d.ts +12 -0
  208. package/dist/plugins/yarn/index.d.ts +9 -0
  209. package/dist/plugins/yorkie/index.d.ts +11 -0
  210. package/dist/plugins.d.ts +7 -0
  211. package/dist/reporters/codeclimate.d.ts +3 -0
  212. package/dist/reporters/codeowners.d.ts +3 -0
  213. package/dist/reporters/compact.d.ts +3 -0
  214. package/dist/reporters/disclosure.d.ts +3 -0
  215. package/dist/reporters/index.d.ts +10 -0
  216. package/dist/reporters/json.d.ts +3 -0
  217. package/dist/reporters/markdown.d.ts +3 -0
  218. package/dist/reporters/symbols.d.ts +3 -0
  219. package/dist/reporters/util.d.ts +22 -0
  220. package/dist/reporters/watch.d.ts +12 -0
  221. package/dist/schema/configuration.d.ts +5495 -0
  222. package/dist/schema/plugins.d.ts +2227 -0
  223. package/dist/types/PluginNames.d.ts +2 -0
  224. package/dist/types/args.d.ts +14 -0
  225. package/dist/types/cli.d.ts +27 -0
  226. package/dist/types/config.d.ts +119 -0
  227. package/dist/types/exports.d.ts +24 -0
  228. package/dist/types/imports.d.ts +12 -0
  229. package/dist/types/issues.d.ts +88 -0
  230. package/dist/types/module-graph.d.ts +67 -0
  231. package/dist/types/package-json.d.ts +53 -0
  232. package/dist/types/project.d.ts +18 -0
  233. package/dist/types/workspace.d.ts +27 -0
  234. package/dist/typescript/SourceFile.d.ts +35 -0
  235. package/dist/typescript/SourceFileManager.d.ts +19 -0
  236. package/dist/typescript/ast-helpers.d.ts +38 -0
  237. package/dist/typescript/create-hosts.d.ts +21 -0
  238. package/dist/typescript/find-internal-references.d.ts +4 -0
  239. package/dist/typescript/get-imports-and-exports.d.ts +18 -0
  240. package/dist/typescript/resolve-module-names.d.ts +4 -0
  241. package/dist/typescript/visitors/dynamic-imports/importCall.d.ts +3 -0
  242. package/dist/typescript/visitors/dynamic-imports/importType.d.ts +3 -0
  243. package/dist/typescript/visitors/dynamic-imports/index.d.ts +3 -0
  244. package/dist/typescript/visitors/dynamic-imports/jsDocType.d.ts +4 -0
  245. package/dist/typescript/visitors/dynamic-imports/requireCall.d.ts +3 -0
  246. package/dist/typescript/visitors/dynamic-imports/resolveCall.d.ts +3 -0
  247. package/dist/typescript/visitors/exports/exportAssignment.d.ts +3 -0
  248. package/dist/typescript/visitors/exports/exportDeclaration.d.ts +3 -0
  249. package/dist/typescript/visitors/exports/exportKeyword.d.ts +3 -0
  250. package/dist/typescript/visitors/exports/exportsAccessExpression.d.ts +3 -0
  251. package/dist/typescript/visitors/exports/index.d.ts +3 -0
  252. package/dist/typescript/visitors/exports/moduleExportsAccessExpression.d.ts +3 -0
  253. package/dist/typescript/visitors/helpers.d.ts +8 -0
  254. package/dist/typescript/visitors/imports/importDeclaration.d.ts +3 -0
  255. package/dist/typescript/visitors/imports/importEqualsDeclaration.d.ts +3 -0
  256. package/dist/typescript/visitors/imports/index.d.ts +3 -0
  257. package/dist/typescript/visitors/imports/reExportDeclaration.d.ts +3 -0
  258. package/dist/typescript/visitors/index.d.ts +12 -0
  259. package/dist/typescript/visitors/scripts/bun.d.ts +3 -0
  260. package/dist/typescript/visitors/scripts/execa.d.ts +3 -0
  261. package/dist/typescript/visitors/scripts/index.d.ts +3 -0
  262. package/dist/typescript/visitors/scripts/zx.d.ts +3 -0
  263. package/dist/util/Performance.d.ts +26 -0
  264. package/dist/util/array.d.ts +5 -0
  265. package/dist/util/cli-arguments.d.ts +44 -0
  266. package/dist/util/codeowners.d.ts +2 -0
  267. package/dist/util/create-workspace-graph.d.ts +3 -0
  268. package/dist/util/debug.d.ts +4 -0
  269. package/dist/util/empty.d.ts +1 -0
  270. package/dist/util/errors.d.ts +13 -0
  271. package/dist/util/file-entry-cache.d.ts +29 -0
  272. package/dist/util/fs.d.ts +9 -0
  273. package/dist/util/get-included-issue-types.d.ts +18 -0
  274. package/dist/util/get-referenced-inputs.d.ts +5 -0
  275. package/dist/util/git.d.ts +1 -0
  276. package/dist/util/glob-core.d.ts +28 -0
  277. package/dist/util/glob.d.ts +16 -0
  278. package/dist/util/graph-sequencer.d.ts +9 -0
  279. package/dist/util/has-strictly-ns-references.d.ts +4 -0
  280. package/dist/util/input.d.ts +43 -0
  281. package/dist/util/is-identifier-referenced.d.ts +9 -0
  282. package/dist/util/issue-initializers.d.ts +4 -0
  283. package/dist/util/jiti.d.ts +1 -0
  284. package/dist/util/loader.d.ts +1 -0
  285. package/dist/util/log.d.ts +2 -0
  286. package/dist/util/map-workspaces.d.ts +5 -0
  287. package/dist/util/math.d.ts +6 -0
  288. package/dist/util/module-graph.d.ts +6 -0
  289. package/dist/util/modules.d.ts +10 -0
  290. package/dist/util/object.d.ts +4 -0
  291. package/dist/util/package-json.d.ts +14 -0
  292. package/dist/util/package-name.d.ts +2 -0
  293. package/dist/util/path.d.ts +13 -0
  294. package/dist/util/plugin-config.d.ts +24 -0
  295. package/dist/util/plugin.d.ts +9 -0
  296. package/dist/util/regex.d.ts +3 -0
  297. package/dist/util/remove-export.d.ts +8 -0
  298. package/dist/util/reporter.d.ts +3 -0
  299. package/dist/util/require.d.ts +1 -0
  300. package/dist/util/resolve.d.ts +2 -0
  301. package/dist/util/string.d.ts +1 -0
  302. package/dist/util/tag.d.ts +5 -0
  303. package/dist/util/to-source-path.d.ts +5 -0
  304. package/dist/util/trace.d.ts +20 -0
  305. package/dist/util/tsconfig-loader.d.ts +6 -0
  306. package/dist/util/unwrap-function.d.ts +1 -0
  307. package/dist/util/watch.d.ts +25 -0
  308. package/dist/util/workspace.d.ts +1 -0
  309. package/dist/version.d.ts +1 -0
  310. package/dist/version.js +1 -1
  311. package/package.json +1 -1
@@ -0,0 +1,2 @@
1
+ export type PluginName = 'angular' | 'astro' | 'ava' | 'babel' | 'c8' | 'capacitor' | 'changesets' | 'commitizen' | 'commitlint' | 'create-typescript-app' | 'cspell' | 'cucumber' | 'cypress' | 'dependency-cruiser' | 'dotenv' | 'drizzle' | 'eleventy' | 'eslint' | 'expo' | 'gatsby' | 'github-action' | 'github-actions' | 'glob' | 'graphql-codegen' | 'husky' | 'jest' | 'karma' | 'ladle' | 'lefthook' | 'lint-staged' | 'linthtml' | 'lockfile-lint' | 'lost-pixel' | 'markdownlint' | 'metro' | 'mocha' | 'moonrepo' | 'msw' | 'nest' | 'netlify' | 'next' | 'node' | 'nodemon' | 'npm-package-json-lint' | 'nuxt' | 'nx' | 'nyc' | 'oclif' | 'playwright' | 'playwright-ct' | 'playwright-test' | 'plop' | 'postcss' | 'preconstruct' | 'prettier' | 'react-cosmos' | 'react-router' | 'release-it' | 'remark' | 'remix' | 'rollup' | 'rsbuild' | 'rspack' | 'semantic-release' | 'sentry' | 'simple-git-hooks' | 'size-limit' | 'sst' | 'starlight' | 'storybook' | 'stryker' | 'stylelint' | 'svelte' | 'syncpack' | 'tailwind' | 'tanstack-router' | 'travis' | 'ts-node' | 'tsup' | 'tsx' | 'typedoc' | 'typescript' | 'unbuild' | 'unocss' | 'vercel-og' | 'vike' | 'vite' | 'vitest' | 'vue' | 'webdriver-io' | 'webpack' | 'wireit' | 'wrangler' | 'xo' | 'yarn' | 'yorkie';
2
+ export declare const pluginNames: readonly ["angular", "astro", "ava", "babel", "c8", "capacitor", "changesets", "commitizen", "commitlint", "create-typescript-app", "cspell", "cucumber", "cypress", "dependency-cruiser", "dotenv", "drizzle", "eleventy", "eslint", "expo", "gatsby", "github-action", "github-actions", "glob", "graphql-codegen", "husky", "jest", "karma", "ladle", "lefthook", "lint-staged", "linthtml", "lockfile-lint", "lost-pixel", "markdownlint", "metro", "mocha", "moonrepo", "msw", "nest", "netlify", "next", "node", "nodemon", "npm-package-json-lint", "nuxt", "nx", "nyc", "oclif", "playwright", "playwright-ct", "playwright-test", "plop", "postcss", "preconstruct", "prettier", "react-cosmos", "react-router", "release-it", "remark", "remix", "rollup", "rsbuild", "rspack", "semantic-release", "sentry", "simple-git-hooks", "size-limit", "sst", "starlight", "storybook", "stryker", "stylelint", "svelte", "syncpack", "tailwind", "tanstack-router", "travis", "ts-node", "tsup", "tsx", "typedoc", "typescript", "unbuild", "unocss", "vercel-og", "vike", "vite", "vitest", "vue", "webdriver-io", "webpack", "wireit", "wrangler", "xo", "yarn", "yorkie"];
@@ -0,0 +1,14 @@
1
+ import type { ParsedArgs } from 'minimist';
2
+ export type ConfigArg = boolean | (string | [string, (id: string) => string])[];
3
+ export type Args = {
4
+ binaries?: string[];
5
+ positional?: boolean;
6
+ string?: string[];
7
+ boolean?: string[];
8
+ alias?: Record<string, string[]>;
9
+ resolve?: string[];
10
+ nodeImportArgs?: boolean;
11
+ config?: ConfigArg;
12
+ args?: (args: string[]) => string[];
13
+ fromArgs?: string[] | ((parsed: ParsedArgs, args: string[]) => string[]);
14
+ };
@@ -0,0 +1,27 @@
1
+ export interface CommandLineOptions {
2
+ cacheLocation: string;
3
+ cwd: string;
4
+ excludedIssueTypes: string[];
5
+ fixTypes: string[];
6
+ gitignore: boolean;
7
+ includedIssueTypes: string[];
8
+ isCache: boolean;
9
+ isDebug: boolean;
10
+ isDependenciesShorthand: boolean;
11
+ isExportsShorthand: boolean;
12
+ isFilesShorthand: boolean;
13
+ isFix: boolean;
14
+ isDisableConfigHints: boolean;
15
+ isIncludeEntryExports: boolean;
16
+ isIncludeLibs: boolean;
17
+ isIsolateWorkspaces: boolean;
18
+ isProduction: boolean;
19
+ isRemoveFiles: boolean;
20
+ isShowProgress: boolean;
21
+ isStrict: boolean;
22
+ isWatch: boolean;
23
+ tags: Tags;
24
+ tsConfigFile: string | undefined;
25
+ workspace: string | undefined;
26
+ }
27
+ export type Tags = [string[], string[]];
@@ -0,0 +1,119 @@
1
+ import type ts from 'typescript';
2
+ import type { z } from 'zod';
3
+ import type { AsyncCompilers, SyncCompilers } from '../compilers/types.js';
4
+ import type { knipConfigurationSchema } from '../schema/configuration.js';
5
+ import type { pluginSchema } from '../schema/plugins.js';
6
+ import type { Input } from '../util/input.js';
7
+ import type { PluginName } from './PluginNames.js';
8
+ import type { Args } from './args.js';
9
+ import type { Tags } from './cli.js';
10
+ import type { IssueType, Rules, SymbolType } from './issues.js';
11
+ import type { PackageJson } from './package-json.js';
12
+ export interface GetInputsFromScriptsOptions extends BaseOptions {
13
+ knownBinsOnly?: boolean;
14
+ containingFilePath: string;
15
+ }
16
+ export type GetInputsFromScripts<T = GetInputsFromScriptsOptions> = (npmScripts: string | string[] | Set<string>, options: T) => Input[];
17
+ export type GetInputsFromScriptsPartial = (npmScripts: string | string[] | Set<string>, options?: Partial<GetInputsFromScriptsOptions>) => Input[];
18
+ export type FromArgs = (args: string[], options?: Partial<GetInputsFromScriptsOptions>) => Input[];
19
+ export interface BinaryResolverOptions extends GetInputsFromScriptsOptions {
20
+ fromArgs: FromArgs;
21
+ }
22
+ export type BinaryResolver = (binary: string, args: string[], options: BinaryResolverOptions) => Input[];
23
+ export type RawConfiguration = z.infer<typeof knipConfigurationSchema>;
24
+ export type RawPluginConfiguration = z.infer<typeof pluginSchema>;
25
+ export type IgnorePatterns = (string | RegExp)[];
26
+ type IgnorableExport = Exclude<SymbolType, SymbolType.UNKNOWN>;
27
+ type IgnoreExportsUsedInFile = boolean | Partial<Record<IgnorableExport, boolean>>;
28
+ export type GetImportsAndExportsOptions = {
29
+ skipTypeOnly: boolean;
30
+ skipExports: boolean;
31
+ isFixExports: boolean;
32
+ isFixTypes: boolean;
33
+ isReportClassMembers: boolean;
34
+ ignoreExportsUsedInFile: IgnoreExportsUsedInFile;
35
+ tags: Tags;
36
+ };
37
+ export interface Configuration {
38
+ rules: Rules;
39
+ include: IssueType[];
40
+ exclude: IssueType[];
41
+ ignore: NormalizedGlob;
42
+ ignoreBinaries: IgnorePatterns;
43
+ ignoreDependencies: IgnorePatterns;
44
+ ignoreExportsUsedInFile: IgnoreExportsUsedInFile;
45
+ ignoreMembers: IgnorePatterns;
46
+ ignoreWorkspaces: string[];
47
+ isIncludeEntryExports: boolean;
48
+ syncCompilers: SyncCompilers;
49
+ asyncCompilers: AsyncCompilers;
50
+ rootPluginConfigs: Partial<PluginsConfiguration>;
51
+ tags: string[];
52
+ }
53
+ type NormalizedGlob = string[];
54
+ export type EnsuredPluginConfiguration = {
55
+ config: NormalizedGlob | null;
56
+ entry: NormalizedGlob | null;
57
+ project: NormalizedGlob | null;
58
+ };
59
+ interface BaseWorkspaceConfiguration {
60
+ entry: NormalizedGlob;
61
+ project: NormalizedGlob;
62
+ paths: Record<string, string[]>;
63
+ ignore: NormalizedGlob;
64
+ isIncludeEntryExports: boolean;
65
+ }
66
+ type PluginConfiguration = EnsuredPluginConfiguration | boolean;
67
+ export type PluginsConfiguration = Record<PluginName, PluginConfiguration>;
68
+ export interface WorkspaceConfiguration extends BaseWorkspaceConfiguration, Partial<PluginsConfiguration> {
69
+ }
70
+ interface BaseOptions {
71
+ rootCwd: string;
72
+ cwd: string;
73
+ manifestScriptNames: Set<string>;
74
+ }
75
+ type IsPluginEnabledOptions = {
76
+ cwd: string;
77
+ manifest: PackageJson;
78
+ dependencies: Set<string>;
79
+ config: WorkspaceConfiguration;
80
+ };
81
+ export type IsPluginEnabled = (options: IsPluginEnabledOptions) => boolean | Promise<boolean>;
82
+ export interface PluginOptions extends BaseOptions {
83
+ manifest: PackageJson;
84
+ config: EnsuredPluginConfiguration;
85
+ configFileDir: string;
86
+ configFileName: string;
87
+ configFilePath: string;
88
+ isProduction: boolean;
89
+ enabledPlugins: string[];
90
+ getInputsFromScripts: GetInputsFromScriptsPartial;
91
+ }
92
+ export type ResolveEntryPaths<T = any> = (config: T, options: PluginOptions) => Promise<Input[]> | Input[];
93
+ export type ResolveConfig<T = any> = (config: T, options: PluginOptions) => Promise<Input[]> | Input[];
94
+ export type Resolve = (options: PluginOptions) => Promise<Input[]> | Input[];
95
+ export type GetSourceFile = (filePath: string) => ts.SourceFile | undefined;
96
+ export type GetReferencedInternalFilePath = (input: Input) => string | undefined;
97
+ export type ResolveFromAST = (sourceFile: ts.SourceFile, options: PluginOptions & {
98
+ getSourceFile: GetSourceFile;
99
+ getReferencedInternalFilePath: GetReferencedInternalFilePath;
100
+ }) => Input[];
101
+ export interface Plugin {
102
+ title: string;
103
+ args?: Args;
104
+ packageJsonPath?: string | ((manifest: PackageJson) => unknown);
105
+ enablers?: IgnorePatterns | string;
106
+ isEnabled?: IsPluginEnabled;
107
+ isRootOnly?: boolean;
108
+ config?: string[];
109
+ entry?: string[];
110
+ production?: string[];
111
+ project?: string[];
112
+ resolveEntryPaths?: ResolveEntryPaths;
113
+ resolveConfig?: ResolveConfig;
114
+ resolve?: Resolve;
115
+ resolveFromAST?: ResolveFromAST;
116
+ }
117
+ export type PluginMap = Record<PluginName, Plugin>;
118
+ export type Entries = [PluginName, Plugin][];
119
+ export {};
@@ -0,0 +1,24 @@
1
+ import type ts from 'typescript';
2
+ import type { SymbolType } from './issues.js';
3
+ type Identifier = string;
4
+ type ExportPosTuple = [number, number, number];
5
+ export type Fix = ExportPosTuple | undefined;
6
+ export type Fixes = Array<ExportPosTuple>;
7
+ export type ExportNode = {
8
+ node: ts.Node;
9
+ symbol?: ts.Symbol;
10
+ identifier: Identifier;
11
+ pos: number;
12
+ type: SymbolType;
13
+ members?: ExportNodeMember[];
14
+ jsDocTags?: Set<string>;
15
+ fix: Fix;
16
+ };
17
+ export type ExportNodeMember = {
18
+ node: ts.Node;
19
+ identifier: Identifier;
20
+ pos: number;
21
+ type: SymbolType;
22
+ fix: Fix;
23
+ };
24
+ export {};
@@ -0,0 +1,12 @@
1
+ import type ts from 'typescript';
2
+ export interface ImportNode {
3
+ specifier: string;
4
+ identifier: string | undefined;
5
+ alias?: string | undefined;
6
+ namespace?: string | undefined;
7
+ pos: number | undefined;
8
+ symbol?: ts.Symbol;
9
+ isTypeOnly?: boolean;
10
+ isReExport?: boolean;
11
+ resolve?: boolean;
12
+ }
@@ -0,0 +1,88 @@
1
+ export declare enum SymbolType {
2
+ VARIABLE = "variable",
3
+ TYPE = "type",
4
+ INTERFACE = "interface",
5
+ ENUM = "enum",
6
+ FUNCTION = "function",
7
+ CLASS = "class",
8
+ MEMBER = "member",
9
+ UNKNOWN = "unknown"
10
+ }
11
+ export type IssueSymbol = {
12
+ symbol: string;
13
+ pos?: number;
14
+ line?: number;
15
+ col?: number;
16
+ };
17
+ export type Issue = {
18
+ type: SymbolIssueType;
19
+ filePath: string;
20
+ workspace: string;
21
+ symbol: string;
22
+ symbols?: IssueSymbol[];
23
+ symbolType?: SymbolType;
24
+ parentSymbol?: string;
25
+ specifier?: string;
26
+ severity?: IssueSeverity;
27
+ pos?: number;
28
+ line?: number;
29
+ col?: number;
30
+ isFixed?: boolean;
31
+ };
32
+ export type IssueSet = Set<string>;
33
+ export type IssueRecords = Record<string, Record<string, Issue>>;
34
+ export type Issues = {
35
+ files: IssueSet;
36
+ _files: IssueRecords;
37
+ dependencies: IssueRecords;
38
+ devDependencies: IssueRecords;
39
+ optionalPeerDependencies: IssueRecords;
40
+ unlisted: IssueRecords;
41
+ binaries: IssueRecords;
42
+ unresolved: IssueRecords;
43
+ exports: IssueRecords;
44
+ types: IssueRecords;
45
+ nsExports: IssueRecords;
46
+ nsTypes: IssueRecords;
47
+ duplicates: IssueRecords;
48
+ enumMembers: IssueRecords;
49
+ classMembers: IssueRecords;
50
+ };
51
+ export type IssueType = keyof Issues;
52
+ export type SymbolIssueType = Exclude<IssueType, 'files'>;
53
+ export type Report = {
54
+ [key in keyof Issues]: boolean;
55
+ };
56
+ export type Counters = Record<IssueType | 'processed' | 'total', number>;
57
+ export type ReporterOptions = {
58
+ report: Report;
59
+ issues: Issues;
60
+ counters: Counters;
61
+ tagHints: TagHints;
62
+ configurationHints: ConfigurationHints;
63
+ isDisableConfigHints: boolean;
64
+ isTreatConfigHintsAsErrors: boolean;
65
+ cwd: string;
66
+ isProduction: boolean;
67
+ isShowProgress: boolean;
68
+ options: string;
69
+ preprocessorOptions: string;
70
+ };
71
+ export type Reporter = (options: ReporterOptions) => void;
72
+ export type Preprocessor = (options: ReporterOptions) => ReporterOptions;
73
+ export type IssueSeverity = 'error' | 'warn' | 'off';
74
+ export type Rules = Record<IssueType, IssueSeverity>;
75
+ export type ConfigurationHints = Set<ConfigurationHint>;
76
+ export type ConfigurationHint = {
77
+ type: 'ignoreBinaries' | 'ignoreDependencies' | 'ignoreUnresolved' | 'ignoreWorkspaces';
78
+ identifier: string | RegExp;
79
+ workspaceName?: string;
80
+ };
81
+ type TagHints = Set<TagHint>;
82
+ export type TagHint = {
83
+ type: 'tag';
84
+ filePath: string;
85
+ identifier: string;
86
+ tagName: string;
87
+ };
88
+ export {};
@@ -0,0 +1,67 @@
1
+ import type ts from 'typescript';
2
+ import type { Fix, Fixes } from './exports.js';
3
+ import type { IssueSymbol, SymbolType } from './issues.js';
4
+ type Identifier = string;
5
+ type FilePath = string;
6
+ type NamespaceOrAlias = string;
7
+ type Reference = string;
8
+ type References = Set<Reference>;
9
+ type Tags = Set<string>;
10
+ export type IdToFileMap = Map<Identifier, Set<FilePath>>;
11
+ export type IdToNsToFileMap = Map<Identifier, Map<NamespaceOrAlias, Set<FilePath>>>;
12
+ export type ImportDetails = {
13
+ refs: References;
14
+ imported: IdToFileMap;
15
+ importedAs: IdToNsToFileMap;
16
+ importedNs: IdToFileMap;
17
+ reExported: IdToFileMap;
18
+ reExportedAs: IdToNsToFileMap;
19
+ reExportedNs: IdToFileMap;
20
+ };
21
+ export type ImportMap = Map<FilePath, ImportDetails>;
22
+ export type UnresolvedImport = {
23
+ specifier: string;
24
+ pos?: number;
25
+ line?: number;
26
+ col?: number;
27
+ };
28
+ export interface Export {
29
+ identifier: Identifier;
30
+ pos: number;
31
+ line: number;
32
+ col: number;
33
+ type: SymbolType;
34
+ members: ExportMember[];
35
+ jsDocTags: Tags;
36
+ refs: [number, boolean];
37
+ fixes: Fixes;
38
+ symbol?: ts.Symbol;
39
+ isReExport: boolean;
40
+ }
41
+ export type ExportMember = {
42
+ identifier: Identifier;
43
+ pos: number;
44
+ line: number;
45
+ col: number;
46
+ type: SymbolType;
47
+ refs: [number, boolean];
48
+ fix: Fix;
49
+ symbol?: ts.Symbol;
50
+ jsDocTags: Tags;
51
+ };
52
+ export type ExportMap = Map<Identifier, Export>;
53
+ export type FileNode = {
54
+ imports: {
55
+ internal: ImportMap;
56
+ external: Set<string>;
57
+ unresolved: Set<UnresolvedImport>;
58
+ };
59
+ exports: ExportMap;
60
+ duplicates: Iterable<Array<IssueSymbol>>;
61
+ scripts: Set<string>;
62
+ imported?: ImportDetails;
63
+ internalImportCache?: ImportMap;
64
+ traceRefs: References;
65
+ };
66
+ export type ModuleGraph = Map<FilePath, FileNode>;
67
+ export {};
@@ -0,0 +1,53 @@
1
+ import type { PluginMap } from './config.js';
2
+ type Primitive = null | undefined | string | number | boolean | symbol | bigint;
3
+ type LiteralUnion<LiteralType, BaseType extends Primitive> = LiteralType | (BaseType & Record<never, never>);
4
+ type Dependencies = Record<string, string>;
5
+ type C = 'import' | 'require' | 'node' | 'node-addons' | 'deno' | 'browser' | 'electron' | 'react-native' | 'default';
6
+ type ExportCondition = LiteralUnion<C, string>;
7
+ type Exports = null | string | string[] | {
8
+ [key in ExportCondition]: Exports;
9
+ } | {
10
+ [key: string]: Exports;
11
+ };
12
+ type PackageJsonPath<T> = T extends {
13
+ packageJsonPath: infer P;
14
+ } ? (P extends string ? P : never) : never;
15
+ type WithPackageJsonPathAsKey<T> = {
16
+ [K in keyof T]: PackageJsonPath<T[K]> extends never ? K : PackageJsonPath<T[K]>;
17
+ };
18
+ type PluginConfig<P> = {
19
+ [K in keyof P as WithPackageJsonPathAsKey<P>[K]]: unknown;
20
+ };
21
+ type Plugins = PluginConfig<PluginMap>;
22
+ export type Scripts = Record<string, string>;
23
+ export type PackageJson = {
24
+ name?: string;
25
+ main?: string;
26
+ bin?: string | Record<string, string>;
27
+ version?: string;
28
+ workspaces?: string[] | {
29
+ packages?: string[];
30
+ };
31
+ exports?: Exports;
32
+ scripts?: Scripts;
33
+ dependencies?: Dependencies;
34
+ devDependencies?: Dependencies;
35
+ peerDependencies?: Dependencies;
36
+ optionalDependencies?: Dependencies;
37
+ peerDependenciesMeta?: Record<string, {
38
+ optional: true;
39
+ }>;
40
+ module?: string;
41
+ browser?: string;
42
+ types?: string;
43
+ typings?: string;
44
+ } & Plugins;
45
+ export type WorkspacePackage = {
46
+ dir: string;
47
+ name: string;
48
+ pkgName: string | undefined;
49
+ manifest: PackageJson;
50
+ manifestPath: string;
51
+ manifestStr: string;
52
+ };
53
+ export {};
@@ -0,0 +1,18 @@
1
+ import type ts from 'typescript';
2
+ import type { AsyncCompilers, SyncCompilers } from '../compilers/types.js';
3
+ import type { ToSourceFilePath } from '../util/to-source-path.js';
4
+ export type Paths = ts.CompilerOptions['paths'];
5
+ export type PrincipalOptions = {
6
+ cwd: string;
7
+ isFile: boolean;
8
+ compilerOptions: ts.CompilerOptions;
9
+ paths: Paths;
10
+ compilers: [SyncCompilers, AsyncCompilers];
11
+ pkgName: string;
12
+ isIsolateWorkspaces: boolean;
13
+ isSkipLibs: boolean;
14
+ isWatch: boolean;
15
+ toSourceFilePath: ToSourceFilePath;
16
+ isCache: boolean;
17
+ cacheLocation: string;
18
+ };
@@ -0,0 +1,27 @@
1
+ export type DependencySet = Set<string>;
2
+ export type DependencyArray = Array<string>;
3
+ type WorkspaceManifest = {
4
+ workspaceDir: string;
5
+ manifestPath: string;
6
+ manifestStr: string;
7
+ dependencies: DependencyArray;
8
+ devDependencies: DependencyArray;
9
+ peerDependencies: DependencySet;
10
+ optionalPeerDependencies: DependencyArray;
11
+ allDependencies: DependencySet;
12
+ ignoreDependencies: (string | RegExp)[];
13
+ ignoreBinaries: (string | RegExp)[];
14
+ ignoreUnresolved: (string | RegExp)[];
15
+ usedIgnoreDependencies: Set<string | RegExp>;
16
+ usedIgnoreBinaries: Set<string | RegExp>;
17
+ usedIgnoreUnresolved: Set<string | RegExp>;
18
+ };
19
+ export type WorkspaceManifests = Map<string, WorkspaceManifest>;
20
+ export type HostDependencies = Map<string, Array<{
21
+ name: string;
22
+ isPeerOptional: boolean;
23
+ }>>;
24
+ type PackageName = string;
25
+ type BinaryName = string;
26
+ export type InstalledBinaries = Map<PackageName, Set<BinaryName>>;
27
+ export {};
@@ -0,0 +1,35 @@
1
+ import type ts from 'typescript';
2
+ type SymbolTable = Map<string, SymbolWithExportSymbol>;
3
+ type SymbolWithExports = ts.Symbol & {
4
+ exports?: SymbolTable;
5
+ };
6
+ interface SymbolWithExportSymbol extends ts.Symbol {
7
+ exportSymbol?: ts.Symbol;
8
+ }
9
+ type PragmaMap = {
10
+ arguments: {
11
+ factory?: string;
12
+ path?: {
13
+ value?: string;
14
+ pos?: number;
15
+ };
16
+ types?: {
17
+ value?: string;
18
+ pos?: number;
19
+ };
20
+ };
21
+ range?: {
22
+ kind?: number;
23
+ pos?: number;
24
+ end?: number;
25
+ hasTrailingNewLine?: boolean;
26
+ };
27
+ };
28
+ export interface BoundSourceFile extends ts.SourceFile {
29
+ symbol?: SymbolWithExports;
30
+ locals?: SymbolTable;
31
+ getNamedDeclarations?(): Map<string, readonly ts.Declaration[]>;
32
+ scriptKind?: ts.ScriptKind;
33
+ pragmas?: Map<string, PragmaMap | PragmaMap[]>;
34
+ }
35
+ export {};
@@ -0,0 +1,19 @@
1
+ import ts from 'typescript';
2
+ import type { AsyncCompilers, SyncCompilers } from '../compilers/types.js';
3
+ interface SourceFileManagerOptions {
4
+ isSkipLibs: boolean;
5
+ compilers: [SyncCompilers, AsyncCompilers];
6
+ }
7
+ export declare class SourceFileManager {
8
+ isSkipLibs: boolean;
9
+ sourceFileCache: Map<string, ts.SourceFile | undefined>;
10
+ snapshotCache: Map<string, ts.IScriptSnapshot | undefined>;
11
+ syncCompilers: SyncCompilers;
12
+ asyncCompilers: AsyncCompilers;
13
+ constructor({ compilers, isSkipLibs }: SourceFileManagerOptions);
14
+ createSourceFile(filePath: string, contents: string): ts.SourceFile;
15
+ getSourceFile(filePath: string): ts.SourceFile | undefined;
16
+ getSnapshot(filePath: string): ts.IScriptSnapshot | undefined;
17
+ compileAndAddSourceFile(filePath: string): Promise<void>;
18
+ }
19
+ export {};
@@ -0,0 +1,38 @@
1
+ import ts from 'typescript';
2
+ import { SymbolType } from '../types/issues.js';
3
+ export declare function isGetOrSetAccessorDeclaration(node: ts.Node): node is ts.AccessorDeclaration;
4
+ export declare function isPrivateMember(node: ts.MethodDeclaration | ts.PropertyDeclaration | ts.SetAccessorDeclaration | ts.GetAccessorDeclaration): boolean;
5
+ export declare function isDefaultImport(node: ts.ImportDeclaration | ts.ImportEqualsDeclaration | ts.ExportDeclaration): boolean;
6
+ export declare function isAccessExpression(node: ts.Node): node is ts.AccessExpression;
7
+ export declare function isImportCall(node: ts.Node): node is ts.ImportCall;
8
+ export declare function isRequireCall(callExpression: ts.Node): callExpression is ts.CallExpression;
9
+ export declare function isPropertyAccessCall(node: ts.Node, identifier: string): node is ts.CallExpression;
10
+ export declare const getNodeType: (node: ts.Node) => SymbolType;
11
+ export declare function stripQuotes(name: string): string;
12
+ export declare function findAncestor<T>(node: ts.Node | undefined, callback: (element: ts.Node) => boolean | 'STOP'): T | undefined;
13
+ export declare function findDescendants<T>(node: ts.Node | undefined, callback: (element: ts.Node) => boolean | 'STOP'): T[];
14
+ export declare const isDeclarationFileExtension: (extension: string) => extension is ".d.ts" | ".d.mts" | ".d.cts";
15
+ export declare const getJSDocTags: (node: ts.Node) => Set<string>;
16
+ export declare const getLineAndCharacterOfPosition: (node: ts.Node, pos: number) => {
17
+ line: number;
18
+ col: number;
19
+ pos: number;
20
+ };
21
+ export declare const getAccessMembers: (typeChecker: ts.TypeChecker, node: ts.Identifier) => string[];
22
+ export declare const isDestructuring: (node: ts.Node) => boolean;
23
+ export declare const getDestructuredIds: (name: ts.ObjectBindingPattern) => string[];
24
+ export declare const isConsiderReferencedNS: (node: ts.Identifier) => boolean;
25
+ export declare const isObjectEnumerationCallExpressionArgument: (node: ts.Identifier) => boolean;
26
+ export declare const isInForIteration: (node: ts.Node) => boolean;
27
+ export declare const isTopLevel: (node: ts.Node) => boolean;
28
+ export declare const getTypeRef: (node: ts.Identifier) => ts.TypeReferenceNode | undefined;
29
+ export declare const isImportSpecifier: (node: ts.Node) => boolean;
30
+ export declare const isReferencedInExport: (node: ts.Node) => boolean;
31
+ export declare const getExportKeywordNode: (node: ts.Node) => ts.ExportKeyword | undefined;
32
+ export declare const getDefaultKeywordNode: (node: ts.Node) => ts.DefaultKeyword | undefined;
33
+ export declare const hasRequireCall: (node: ts.Node) => boolean;
34
+ export declare const isModuleExportsAccess: (node: ts.PropertyAccessExpression) => boolean;
35
+ export declare const getImportMap: (sourceFile: ts.SourceFile) => Map<string, string>;
36
+ export declare const getDefaultImportName: (importMap: ReturnType<typeof getImportMap>, specifier: string) => string | undefined;
37
+ export declare const getPropertyValues: (node: ts.ObjectLiteralExpression, propertyName: string) => Set<string>;
38
+ export declare const getPropertyValueEntries: (node: ts.ObjectLiteralExpression, propertyNames: Set<string>) => [string, string][];
@@ -0,0 +1,21 @@
1
+ import ts from 'typescript';
2
+ import type { AsyncCompilers, SyncCompilers } from '../compilers/types.js';
3
+ import type { ToSourceFilePath } from '../util/to-source-path.js';
4
+ import type { SourceFileManager } from './SourceFileManager.js';
5
+ type CreateHostsOptions = {
6
+ cwd: string;
7
+ compilerOptions: ts.CompilerOptions;
8
+ entryPaths: Set<string>;
9
+ compilers: [SyncCompilers, AsyncCompilers];
10
+ isSkipLibs: boolean;
11
+ toSourceFilePath: ToSourceFilePath;
12
+ useResolverCache: boolean;
13
+ fileManager: SourceFileManager;
14
+ };
15
+ export declare const createHosts: ({ cwd, compilerOptions, fileManager, entryPaths, compilers, isSkipLibs, toSourceFilePath, useResolverCache, }: CreateHostsOptions) => {
16
+ fileManager: SourceFileManager;
17
+ compilerHost: ts.CompilerHost;
18
+ resolveModuleNames: (moduleNames: string[], containingFile: string) => Array<ts.ResolvedModuleFull | undefined>;
19
+ languageServiceHost: ts.LanguageServiceHost;
20
+ };
21
+ export {};
@@ -0,0 +1,4 @@
1
+ import ts from 'typescript';
2
+ import type { Export, ExportMember } from '../types/module-graph.js';
3
+ export declare const isType: (item: Export | ExportMember) => boolean;
4
+ export declare const findInternalReferences: (item: Export | ExportMember, sourceFile: ts.SourceFile, typeChecker: ts.TypeChecker, referencedSymbolsInExport: Set<ts.Symbol>, isBindingElement?: boolean) => [number, boolean];
@@ -0,0 +1,18 @@
1
+ import ts from 'typescript';
2
+ import type { GetImportsAndExportsOptions } from '../types/config.js';
3
+ import type { IssueSymbol } from '../types/issues.js';
4
+ import type { ExportMap, ImportMap, UnresolvedImport } from '../types/module-graph.js';
5
+ import type { BoundSourceFile } from './SourceFile.js';
6
+ export declare const _getImportsAndExports: (sourceFile: BoundSourceFile, resolveModule: (specifier: string) => ts.ResolvedModuleFull | undefined, typeChecker: ts.TypeChecker, options: GetImportsAndExportsOptions) => {
7
+ imports: {
8
+ internal: ImportMap;
9
+ external: Set<string>;
10
+ resolved: Set<string>;
11
+ specifiers: Set<[string, string]>;
12
+ unresolved: Set<UnresolvedImport>;
13
+ };
14
+ exports: ExportMap;
15
+ duplicates: IssueSymbol[][];
16
+ scripts: Set<string>;
17
+ traceRefs: Set<string>;
18
+ };
@@ -0,0 +1,4 @@
1
+ import ts from 'typescript';
2
+ import type { ToSourceFilePath } from '../util/to-source-path.js';
3
+ export type ResolveModuleNames = ReturnType<typeof createCustomModuleResolver>;
4
+ export declare function createCustomModuleResolver(compilerOptions: ts.CompilerOptions, customCompilerExtensions: string[], toSourceFilePath: ToSourceFilePath, useCache?: boolean, isSkipLibs?: boolean): (moduleNames: string[], containingFile: string) => Array<ts.ResolvedModuleFull | undefined>;
@@ -0,0 +1,3 @@
1
+ import ts from 'typescript';
2
+ declare const _default: (sourceFile: ts.SourceFile) => (node: ts.Node, options: import("../../../types/config.js").GetImportsAndExportsOptions) => import("../../../types/imports.js").ImportNode | import("../../../types/imports.js").ImportNode[] | undefined;
3
+ export default _default;
@@ -0,0 +1,3 @@
1
+ import ts from 'typescript';
2
+ declare const _default: (sourceFile: ts.SourceFile) => (node: ts.Node, options: import("../../../types/config.js").GetImportsAndExportsOptions) => import("../../../types/imports.js").ImportNode | import("../../../types/imports.js").ImportNode[] | undefined;
3
+ export default _default;
@@ -0,0 +1,3 @@
1
+ import type ts from 'typescript';
2
+ declare const _default: (sourceFile: ts.SourceFile) => ((node: ts.Node, options: import("../../../types/config.js").GetImportsAndExportsOptions) => import("../../../types/imports.js").ImportNode | import("../../../types/imports.js").ImportNode[] | undefined)[];
3
+ export default _default;
@@ -0,0 +1,4 @@
1
+ import ts from 'typescript';
2
+ import type { ImportNode } from '../../../types/imports.js';
3
+ declare const _default: (sourceFile: ts.SourceFile) => (node: ts.Node, options: import("../../../types/config.js").GetImportsAndExportsOptions) => ImportNode | ImportNode[] | undefined;
4
+ export default _default;
@@ -0,0 +1,3 @@
1
+ import ts from 'typescript';
2
+ declare const _default: (sourceFile: ts.SourceFile) => (node: ts.Node, options: import("../../../types/config.js").GetImportsAndExportsOptions) => import("../../../types/imports.js").ImportNode | import("../../../types/imports.js").ImportNode[] | undefined;
3
+ export default _default;
@@ -0,0 +1,3 @@
1
+ import ts from 'typescript';
2
+ declare const _default: (sourceFile: ts.SourceFile) => (node: ts.Node, options: import("../../../types/config.js").GetImportsAndExportsOptions) => import("../../../types/imports.js").ImportNode | import("../../../types/imports.js").ImportNode[] | undefined;
3
+ export default _default;
@@ -0,0 +1,3 @@
1
+ import ts from 'typescript';
2
+ declare const _default: (sourceFile: ts.SourceFile) => (node: ts.Node, options: import("../../../types/config.js").GetImportsAndExportsOptions) => import("../../../types/exports.js").ExportNode | import("../../../types/exports.js").ExportNode[] | undefined;
3
+ export default _default;
@@ -0,0 +1,3 @@
1
+ import ts from 'typescript';
2
+ declare const _default: (sourceFile: ts.SourceFile) => (node: ts.Node, options: import("../../../types/config.js").GetImportsAndExportsOptions) => import("../../../types/exports.js").ExportNode | import("../../../types/exports.js").ExportNode[] | undefined;
3
+ export default _default;