veryfront 0.1.215 → 0.1.217

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 (305) hide show
  1. package/README.md +1 -1
  2. package/esm/cli/commands/extension/command-help.d.ts +3 -0
  3. package/esm/cli/commands/extension/command-help.d.ts.map +1 -0
  4. package/esm/cli/commands/extension/command-help.js +16 -0
  5. package/esm/cli/commands/extension/handler.d.ts +3 -0
  6. package/esm/cli/commands/extension/handler.d.ts.map +1 -0
  7. package/esm/cli/commands/extension/handler.js +36 -0
  8. package/esm/cli/commands/extension/init-command.d.ts +19 -0
  9. package/esm/cli/commands/extension/init-command.d.ts.map +1 -0
  10. package/esm/cli/commands/extension/init-command.js +122 -0
  11. package/esm/cli/commands/extension/validate-command.d.ts +13 -0
  12. package/esm/cli/commands/extension/validate-command.d.ts.map +1 -0
  13. package/esm/cli/commands/extension/validate-command.js +62 -0
  14. package/esm/cli/commands/generate/integration-generator-helpers.d.ts +35 -0
  15. package/esm/cli/commands/generate/integration-generator-helpers.d.ts.map +1 -0
  16. package/esm/cli/commands/generate/integration-generator-helpers.js +123 -0
  17. package/esm/cli/commands/generate/integration-generator.d.ts +1 -2
  18. package/esm/cli/commands/generate/integration-generator.d.ts.map +1 -1
  19. package/esm/cli/commands/generate/integration-generator.js +1 -123
  20. package/esm/cli/commands/knowledge/command-helpers.d.ts +48 -0
  21. package/esm/cli/commands/knowledge/command-helpers.d.ts.map +1 -0
  22. package/esm/cli/commands/knowledge/command-helpers.js +216 -0
  23. package/esm/cli/commands/knowledge/command.d.ts +12 -17
  24. package/esm/cli/commands/knowledge/command.d.ts.map +1 -1
  25. package/esm/cli/commands/knowledge/command.js +26 -214
  26. package/esm/cli/help/command-definitions.d.ts.map +1 -1
  27. package/esm/cli/help/command-definitions.js +2 -0
  28. package/esm/cli/mcp/remote-file-tool-helpers.d.ts +5 -0
  29. package/esm/cli/mcp/remote-file-tool-helpers.d.ts.map +1 -0
  30. package/esm/cli/mcp/remote-file-tool-helpers.js +22 -0
  31. package/esm/cli/mcp/remote-file-tools.d.ts.map +1 -1
  32. package/esm/cli/mcp/remote-file-tools.js +1 -22
  33. package/esm/cli/router.d.ts.map +1 -1
  34. package/esm/cli/router.js +2 -0
  35. package/esm/cli/templates/integration-loader-helpers.d.ts +8 -0
  36. package/esm/cli/templates/integration-loader-helpers.d.ts.map +1 -0
  37. package/esm/cli/templates/integration-loader-helpers.js +29 -0
  38. package/esm/cli/templates/integration-loader.d.ts.map +1 -1
  39. package/esm/cli/templates/integration-loader.js +5 -21
  40. package/esm/cli/templates/manifest.d.ts +1 -0
  41. package/esm/cli/templates/manifest.js +2 -1
  42. package/esm/deno.d.ts +3 -0
  43. package/esm/deno.js +5 -2
  44. package/esm/src/agent/runtime/index.d.ts.map +1 -1
  45. package/esm/src/agent/runtime/index.js +48 -90
  46. package/esm/src/chat/ag-ui-helpers.d.ts +17 -0
  47. package/esm/src/chat/ag-ui-helpers.d.ts.map +1 -0
  48. package/esm/src/chat/ag-ui-helpers.js +111 -0
  49. package/esm/src/chat/ag-ui.d.ts.map +1 -1
  50. package/esm/src/chat/ag-ui.js +1 -111
  51. package/esm/src/config/schemas/config.schema.d.ts +1 -0
  52. package/esm/src/config/schemas/config.schema.d.ts.map +1 -1
  53. package/esm/src/config/schemas/config.schema.js +11 -0
  54. package/esm/src/config/schemas/index.d.ts +11 -1
  55. package/esm/src/config/schemas/index.d.ts.map +1 -1
  56. package/esm/src/errors/error-registry-helpers.d.ts +6 -0
  57. package/esm/src/errors/error-registry-helpers.d.ts.map +1 -0
  58. package/esm/src/errors/error-registry-helpers.js +9 -0
  59. package/esm/src/errors/error-registry.d.ts.map +1 -1
  60. package/esm/src/errors/error-registry.js +4 -3
  61. package/esm/src/extensions/capabilities.d.ts +20 -0
  62. package/esm/src/extensions/capabilities.d.ts.map +1 -0
  63. package/esm/src/extensions/capabilities.js +77 -0
  64. package/esm/src/extensions/contracts.d.ts +10 -0
  65. package/esm/src/extensions/contracts.d.ts.map +1 -0
  66. package/esm/src/extensions/contracts.js +28 -0
  67. package/esm/src/extensions/discovery.d.ts +48 -0
  68. package/esm/src/extensions/discovery.d.ts.map +1 -0
  69. package/esm/src/extensions/discovery.js +179 -0
  70. package/esm/src/extensions/errors.d.ts +10 -0
  71. package/esm/src/extensions/errors.d.ts.map +1 -0
  72. package/esm/src/extensions/errors.js +34 -0
  73. package/esm/src/extensions/factory-loader.d.ts +29 -0
  74. package/esm/src/extensions/factory-loader.d.ts.map +1 -0
  75. package/esm/src/extensions/factory-loader.js +63 -0
  76. package/esm/src/extensions/index.d.ts +37 -0
  77. package/esm/src/extensions/index.d.ts.map +1 -0
  78. package/esm/src/extensions/index.js +41 -0
  79. package/esm/src/extensions/interfaces/ai-model-provider.d.ts +94 -0
  80. package/esm/src/extensions/interfaces/ai-model-provider.d.ts.map +1 -0
  81. package/esm/src/extensions/interfaces/ai-model-provider.js +8 -0
  82. package/esm/src/extensions/interfaces/auth-provider.d.ts +49 -0
  83. package/esm/src/extensions/interfaces/auth-provider.d.ts.map +1 -0
  84. package/esm/src/extensions/interfaces/auth-provider.js +8 -0
  85. package/esm/src/extensions/interfaces/bundler.d.ts +118 -0
  86. package/esm/src/extensions/interfaces/bundler.d.ts.map +1 -0
  87. package/esm/src/extensions/interfaces/bundler.js +8 -0
  88. package/esm/src/extensions/interfaces/cache-store.d.ts +27 -0
  89. package/esm/src/extensions/interfaces/cache-store.d.ts.map +1 -0
  90. package/esm/src/extensions/interfaces/cache-store.js +8 -0
  91. package/esm/src/extensions/interfaces/code-parser.d.ts +76 -0
  92. package/esm/src/extensions/interfaces/code-parser.d.ts.map +1 -0
  93. package/esm/src/extensions/interfaces/code-parser.js +8 -0
  94. package/esm/src/extensions/interfaces/content-transformer.d.ts +40 -0
  95. package/esm/src/extensions/interfaces/content-transformer.d.ts.map +1 -0
  96. package/esm/src/extensions/interfaces/content-transformer.js +8 -0
  97. package/esm/src/extensions/interfaces/css-processor.d.ts +38 -0
  98. package/esm/src/extensions/interfaces/css-processor.d.ts.map +1 -0
  99. package/esm/src/extensions/interfaces/css-processor.js +8 -0
  100. package/esm/src/extensions/interfaces/database-client.d.ts +31 -0
  101. package/esm/src/extensions/interfaces/database-client.d.ts.map +1 -0
  102. package/esm/src/extensions/interfaces/database-client.js +8 -0
  103. package/esm/src/extensions/interfaces/embedding-provider.d.ts +37 -0
  104. package/esm/src/extensions/interfaces/embedding-provider.d.ts.map +1 -0
  105. package/esm/src/extensions/interfaces/embedding-provider.js +8 -0
  106. package/esm/src/extensions/interfaces/index.d.ts +21 -0
  107. package/esm/src/extensions/interfaces/index.d.ts.map +1 -0
  108. package/esm/src/extensions/interfaces/index.js +9 -0
  109. package/esm/src/extensions/interfaces/node-compat.d.ts +25 -0
  110. package/esm/src/extensions/interfaces/node-compat.d.ts.map +1 -0
  111. package/esm/src/extensions/interfaces/node-compat.js +8 -0
  112. package/esm/src/extensions/interfaces/schema-validator.d.ts +46 -0
  113. package/esm/src/extensions/interfaces/schema-validator.d.ts.map +1 -0
  114. package/esm/src/extensions/interfaces/schema-validator.js +8 -0
  115. package/esm/src/extensions/interfaces/tracing-exporter.d.ts +44 -0
  116. package/esm/src/extensions/interfaces/tracing-exporter.d.ts.map +1 -0
  117. package/esm/src/extensions/interfaces/tracing-exporter.js +8 -0
  118. package/esm/src/extensions/loader.d.ts +33 -0
  119. package/esm/src/extensions/loader.d.ts.map +1 -0
  120. package/esm/src/extensions/loader.js +209 -0
  121. package/esm/src/extensions/orchestrate.d.ts +54 -0
  122. package/esm/src/extensions/orchestrate.d.ts.map +1 -0
  123. package/esm/src/extensions/orchestrate.js +116 -0
  124. package/esm/src/extensions/recommendations.d.ts +7 -0
  125. package/esm/src/extensions/recommendations.d.ts.map +1 -0
  126. package/esm/src/extensions/recommendations.js +22 -0
  127. package/esm/src/extensions/types.d.ts +47 -0
  128. package/esm/src/extensions/types.d.ts.map +1 -0
  129. package/esm/src/extensions/types.js +6 -0
  130. package/esm/src/extensions/validation.d.ts +44 -0
  131. package/esm/src/extensions/validation.d.ts.map +1 -0
  132. package/esm/src/extensions/validation.js +115 -0
  133. package/esm/src/html/styles-builder/plugin-loader.d.ts.map +1 -1
  134. package/esm/src/html/styles-builder/plugin-loader.js +23 -0
  135. package/esm/src/html/styles-builder/tailwind-plugin-allowlist.d.ts +29 -0
  136. package/esm/src/html/styles-builder/tailwind-plugin-allowlist.d.ts.map +1 -0
  137. package/esm/src/html/styles-builder/tailwind-plugin-allowlist.js +48 -0
  138. package/esm/src/modules/react-loader/ssr-module-loader/loader-helpers.d.ts +15 -0
  139. package/esm/src/modules/react-loader/ssr-module-loader/loader-helpers.d.ts.map +1 -0
  140. package/esm/src/modules/react-loader/ssr-module-loader/loader-helpers.js +22 -0
  141. package/esm/src/modules/react-loader/ssr-module-loader/loader.d.ts +0 -2
  142. package/esm/src/modules/react-loader/ssr-module-loader/loader.d.ts.map +1 -1
  143. package/esm/src/modules/react-loader/ssr-module-loader/loader.js +4 -24
  144. package/esm/src/platform/adapters/fs/veryfront/adapter-helpers.d.ts +19 -0
  145. package/esm/src/platform/adapters/fs/veryfront/adapter-helpers.d.ts.map +1 -0
  146. package/esm/src/platform/adapters/fs/veryfront/adapter-helpers.js +26 -0
  147. package/esm/src/platform/adapters/fs/veryfront/adapter.d.ts.map +1 -1
  148. package/esm/src/platform/adapters/fs/veryfront/adapter.js +4 -20
  149. package/esm/src/platform/adapters/fs/veryfront/read-operations-helpers.d.ts +1 -0
  150. package/esm/src/platform/adapters/fs/veryfront/read-operations-helpers.d.ts.map +1 -1
  151. package/esm/src/platform/adapters/fs/veryfront/read-operations-helpers.js +3 -0
  152. package/esm/src/platform/adapters/fs/veryfront/read-operations.d.ts.map +1 -1
  153. package/esm/src/platform/adapters/fs/veryfront/read-operations.js +4 -7
  154. package/esm/src/platform/adapters/fs/veryfront/websocket-manager-helpers.d.ts +28 -0
  155. package/esm/src/platform/adapters/fs/veryfront/websocket-manager-helpers.d.ts.map +1 -0
  156. package/esm/src/platform/adapters/fs/veryfront/websocket-manager-helpers.js +41 -0
  157. package/esm/src/platform/adapters/fs/veryfront/websocket-manager.d.ts +1 -4
  158. package/esm/src/platform/adapters/fs/veryfront/websocket-manager.d.ts.map +1 -1
  159. package/esm/src/platform/adapters/fs/veryfront/websocket-manager.js +7 -40
  160. package/esm/src/platform/compat/process/command.d.ts +31 -0
  161. package/esm/src/platform/compat/process/command.d.ts.map +1 -0
  162. package/esm/src/platform/compat/process/command.js +193 -0
  163. package/esm/src/platform/compat/process/env.d.ts +31 -0
  164. package/esm/src/platform/compat/process/env.d.ts.map +1 -0
  165. package/esm/src/platform/compat/process/env.js +175 -0
  166. package/esm/src/platform/compat/process/lifecycle.d.ts +98 -0
  167. package/esm/src/platform/compat/process/lifecycle.d.ts.map +1 -0
  168. package/esm/src/platform/compat/process/lifecycle.js +305 -0
  169. package/esm/src/platform/compat/process/runtime-process.d.ts +10 -0
  170. package/esm/src/platform/compat/process/runtime-process.d.ts.map +1 -0
  171. package/esm/src/platform/compat/process/runtime-process.js +24 -0
  172. package/esm/src/platform/compat/process.d.ts +4 -165
  173. package/esm/src/platform/compat/process.d.ts.map +1 -1
  174. package/esm/src/platform/compat/process.js +4 -682
  175. package/esm/src/platform/index.d.ts +1 -1
  176. package/esm/src/platform/index.d.ts.map +1 -1
  177. package/esm/src/provider/runtime-loader/provider-endpoints.d.ts +8 -0
  178. package/esm/src/provider/runtime-loader/provider-endpoints.d.ts.map +1 -0
  179. package/esm/src/provider/runtime-loader/provider-endpoints.js +27 -0
  180. package/esm/src/provider/runtime-loader/provider-request-init.d.ts +32 -0
  181. package/esm/src/provider/runtime-loader/provider-request-init.d.ts.map +1 -0
  182. package/esm/src/provider/runtime-loader/provider-request-init.js +67 -0
  183. package/esm/src/provider/runtime-loader/tool-input-status.d.ts +17 -0
  184. package/esm/src/provider/runtime-loader/tool-input-status.d.ts.map +1 -0
  185. package/esm/src/provider/runtime-loader/tool-input-status.js +155 -0
  186. package/esm/src/provider/runtime-loader.d.ts +2 -3
  187. package/esm/src/provider/runtime-loader.d.ts.map +1 -1
  188. package/esm/src/provider/runtime-loader.js +92 -291
  189. package/esm/src/proxy/handler.d.ts.map +1 -1
  190. package/esm/src/proxy/handler.js +14 -0
  191. package/esm/src/rendering/orchestrator/pipeline-helpers.d.ts +8 -0
  192. package/esm/src/rendering/orchestrator/pipeline-helpers.d.ts.map +1 -0
  193. package/esm/src/rendering/orchestrator/pipeline-helpers.js +20 -0
  194. package/esm/src/rendering/orchestrator/pipeline.d.ts +0 -3
  195. package/esm/src/rendering/orchestrator/pipeline.d.ts.map +1 -1
  196. package/esm/src/rendering/orchestrator/pipeline.js +4 -22
  197. package/esm/src/routing/api/module-loader/loader-helpers.d.ts +10 -0
  198. package/esm/src/routing/api/module-loader/loader-helpers.d.ts.map +1 -0
  199. package/esm/src/routing/api/module-loader/loader-helpers.js +62 -0
  200. package/esm/src/routing/api/module-loader/loader.d.ts +1 -1
  201. package/esm/src/routing/api/module-loader/loader.d.ts.map +1 -1
  202. package/esm/src/routing/api/module-loader/loader.js +2 -60
  203. package/esm/src/server/bootstrap.d.ts +22 -2
  204. package/esm/src/server/bootstrap.d.ts.map +1 -1
  205. package/esm/src/server/bootstrap.js +67 -5
  206. package/esm/src/server/dev-ui/manifest.d.ts +2 -0
  207. package/esm/src/server/dev-ui/manifest.js +3 -1
  208. package/esm/src/server/handlers/request/api/project-discovery.d.ts.map +1 -1
  209. package/esm/src/server/handlers/request/api/project-discovery.js +14 -8
  210. package/esm/src/server/production-server.js +1 -1
  211. package/esm/src/server/services/rsc/endpoints/rsc-bundles.generated.d.ts.map +1 -1
  212. package/esm/src/server/services/rsc/endpoints/rsc-bundles.generated.js +2 -2
  213. package/esm/src/server/utils/domain-parser.d.ts.map +1 -1
  214. package/esm/src/server/utils/domain-parser.js +4 -0
  215. package/esm/src/studio/bridge/bridge-bundle.generated.d.ts.map +1 -1
  216. package/esm/src/studio/bridge/bridge-bundle.generated.js +1 -1
  217. package/esm/src/tool/index.d.ts +1 -1
  218. package/esm/src/tool/index.d.ts.map +1 -1
  219. package/esm/src/tool/types.d.ts +20 -0
  220. package/esm/src/tool/types.d.ts.map +1 -1
  221. package/esm/src/utils/version-constant.d.ts +1 -1
  222. package/esm/src/utils/version-constant.js +1 -1
  223. package/package.json +7 -1
  224. package/src/cli/commands/extension/command-help.ts +18 -0
  225. package/src/cli/commands/extension/handler.ts +41 -0
  226. package/src/cli/commands/extension/init-command.ts +140 -0
  227. package/src/cli/commands/extension/validate-command.ts +78 -0
  228. package/src/cli/commands/generate/integration-generator-helpers.ts +185 -0
  229. package/src/cli/commands/generate/integration-generator.ts +12 -168
  230. package/src/cli/commands/knowledge/command-helpers.ts +295 -0
  231. package/src/cli/commands/knowledge/command.ts +34 -261
  232. package/src/cli/help/command-definitions.ts +2 -0
  233. package/src/cli/mcp/remote-file-tool-helpers.ts +27 -0
  234. package/src/cli/mcp/remote-file-tools.ts +6 -28
  235. package/src/cli/router.ts +2 -0
  236. package/src/cli/templates/integration-loader-helpers.ts +49 -0
  237. package/src/cli/templates/integration-loader.ts +10 -28
  238. package/src/cli/templates/manifest.js +2 -1
  239. package/src/deno.js +5 -2
  240. package/src/src/agent/runtime/index.ts +77 -94
  241. package/src/src/chat/ag-ui-helpers.ts +139 -0
  242. package/src/src/chat/ag-ui.ts +11 -139
  243. package/src/src/config/schemas/config.schema.ts +11 -0
  244. package/src/src/config/schemas/index.ts +15 -1
  245. package/src/src/errors/error-registry-helpers.ts +23 -0
  246. package/src/src/errors/error-registry.ts +8 -3
  247. package/src/src/extensions/capabilities.ts +97 -0
  248. package/src/src/extensions/contracts.ts +36 -0
  249. package/src/src/extensions/discovery.ts +221 -0
  250. package/src/src/extensions/errors.ts +39 -0
  251. package/src/src/extensions/factory-loader.ts +76 -0
  252. package/src/src/extensions/index.ts +79 -0
  253. package/src/src/extensions/interfaces/ai-model-provider.ts +100 -0
  254. package/src/src/extensions/interfaces/auth-provider.ts +52 -0
  255. package/src/src/extensions/interfaces/bundler.ts +116 -0
  256. package/src/src/extensions/interfaces/cache-store.ts +27 -0
  257. package/src/src/extensions/interfaces/code-parser.ts +84 -0
  258. package/src/src/extensions/interfaces/content-transformer.ts +38 -0
  259. package/src/src/extensions/interfaces/css-processor.ts +40 -0
  260. package/src/src/extensions/interfaces/database-client.ts +35 -0
  261. package/src/src/extensions/interfaces/embedding-provider.ts +39 -0
  262. package/src/src/extensions/interfaces/index.ts +81 -0
  263. package/src/src/extensions/interfaces/node-compat.ts +25 -0
  264. package/src/src/extensions/interfaces/schema-validator.ts +51 -0
  265. package/src/src/extensions/interfaces/tracing-exporter.ts +42 -0
  266. package/src/src/extensions/loader.ts +245 -0
  267. package/src/src/extensions/orchestrate.ts +184 -0
  268. package/src/src/extensions/recommendations.ts +24 -0
  269. package/src/src/extensions/types.ts +57 -0
  270. package/src/src/extensions/validation.ts +147 -0
  271. package/src/src/html/styles-builder/plugin-loader.ts +32 -0
  272. package/src/src/html/styles-builder/tailwind-plugin-allowlist.ts +51 -0
  273. package/src/src/modules/react-loader/ssr-module-loader/loader-helpers.ts +37 -0
  274. package/src/src/modules/react-loader/ssr-module-loader/loader.ts +8 -39
  275. package/src/src/platform/adapters/fs/veryfront/adapter-helpers.ts +43 -0
  276. package/src/src/platform/adapters/fs/veryfront/adapter.ts +8 -22
  277. package/src/src/platform/adapters/fs/veryfront/read-operations-helpers.ts +4 -0
  278. package/src/src/platform/adapters/fs/veryfront/read-operations.ts +4 -7
  279. package/src/src/platform/adapters/fs/veryfront/websocket-manager-helpers.ts +73 -0
  280. package/src/src/platform/adapters/fs/veryfront/websocket-manager.ts +29 -44
  281. package/src/src/platform/compat/process/command.ts +297 -0
  282. package/src/src/platform/compat/process/env.ts +227 -0
  283. package/src/src/platform/compat/process/lifecycle.ts +330 -0
  284. package/src/src/platform/compat/process/runtime-process.ts +27 -0
  285. package/src/src/platform/compat/process.ts +37 -870
  286. package/src/src/platform/index.ts +1 -0
  287. package/src/src/provider/runtime-loader/provider-endpoints.ts +50 -0
  288. package/src/src/provider/runtime-loader/provider-request-init.ts +101 -0
  289. package/src/src/provider/runtime-loader/tool-input-status.ts +210 -0
  290. package/src/src/provider/runtime-loader.ts +113 -368
  291. package/src/src/proxy/handler.ts +16 -0
  292. package/src/src/rendering/orchestrator/pipeline-helpers.ts +35 -0
  293. package/src/src/rendering/orchestrator/pipeline.ts +8 -35
  294. package/src/src/routing/api/module-loader/loader-helpers.ts +68 -0
  295. package/src/src/routing/api/module-loader/loader.ts +8 -65
  296. package/src/src/server/bootstrap.ts +88 -7
  297. package/src/src/server/dev-ui/manifest.js +3 -1
  298. package/src/src/server/handlers/request/api/project-discovery.ts +19 -8
  299. package/src/src/server/production-server.ts +1 -1
  300. package/src/src/server/services/rsc/endpoints/rsc-bundles.generated.ts +2 -2
  301. package/src/src/server/utils/domain-parser.ts +4 -0
  302. package/src/src/studio/bridge/bridge-bundle.generated.ts +1 -1
  303. package/src/src/tool/index.ts +1 -0
  304. package/src/src/tool/types.ts +21 -0
  305. package/src/src/utils/version-constant.ts +1 -1
@@ -0,0 +1,116 @@
1
+ /**
2
+ * Contract interface for module bundlers.
3
+ *
4
+ * Default implementation: `@veryfront/ext-esbuild`
5
+ *
6
+ * @module extensions/interfaces/bundler
7
+ */
8
+
9
+ /** Options passed to {@link Bundler.bundle}. */
10
+ export interface BundleOptions {
11
+ /** Entry point file paths. */
12
+ entryPoints: string[];
13
+ /** Output directory. */
14
+ outdir: string;
15
+ /** Bundle format (`esm`, `cjs`, `iife`). */
16
+ format?: "esm" | "cjs" | "iife";
17
+ /** Target environment(s). */
18
+ target?: string | string[];
19
+ /** Enable minification. */
20
+ minify?: boolean;
21
+ /** Enable source maps. */
22
+ sourcemap?: boolean | "inline" | "external";
23
+ /** Enable code splitting. */
24
+ splitting?: boolean;
25
+ /** Additional plugins. */
26
+ plugins?: BundlerPlugin[];
27
+ /** Extra implementation-specific options. */
28
+ [key: string]: unknown;
29
+ }
30
+
31
+ /** A single output file produced by a bundle operation. */
32
+ export interface BundleOutput {
33
+ /** Absolute path to the output file. */
34
+ path: string;
35
+ /** Raw byte content. */
36
+ contents: Uint8Array;
37
+ }
38
+
39
+ /** Result returned from {@link Bundler.bundle}. */
40
+ export interface BundleResult {
41
+ /** Output files produced by the bundle. */
42
+ outputs: BundleOutput[];
43
+ /** Warnings emitted during bundling. */
44
+ warnings: string[];
45
+ /** Errors encountered during bundling. */
46
+ errors: string[];
47
+ }
48
+
49
+ /** Options passed to {@link Bundler.transform}. */
50
+ export interface TransformOptions {
51
+ /** Source code to transform. */
52
+ code: string;
53
+ /** Loader hint (`ts`, `tsx`, `jsx`, `css`, etc.). */
54
+ loader?: string;
55
+ /** Output format. */
56
+ format?: "esm" | "cjs" | "iife";
57
+ /** Target environment(s). */
58
+ target?: string | string[];
59
+ /** Enable minification. */
60
+ minify?: boolean;
61
+ /** Enable source maps. */
62
+ sourcemap?: boolean | "inline" | "external";
63
+ /** Extra implementation-specific options. */
64
+ [key: string]: unknown;
65
+ }
66
+
67
+ /** Result returned from {@link Bundler.transform}. */
68
+ export interface TransformResult {
69
+ /** Transformed source code. */
70
+ code: string;
71
+ /** Source map, if requested. */
72
+ map?: string;
73
+ /** Warnings emitted during transformation. */
74
+ warnings: string[];
75
+ }
76
+
77
+ /** Build context exposed to bundler plugins. */
78
+ export interface BundlerPluginBuild {
79
+ /** Register a resolver callback for the given filter. */
80
+ onResolve(
81
+ options: { filter: RegExp; namespace?: string },
82
+ callback: (
83
+ args: { path: string; namespace: string },
84
+ ) => { path?: string; namespace?: string; external?: boolean } | undefined,
85
+ ): void;
86
+ /** Register a loader callback for the given filter. */
87
+ onLoad(
88
+ options: { filter: RegExp; namespace?: string },
89
+ callback: (
90
+ args: { path: string; namespace: string },
91
+ ) => { contents?: string; loader?: string } | undefined,
92
+ ): void;
93
+ }
94
+
95
+ /** A bundler plugin that hooks into the build pipeline. */
96
+ export interface BundlerPlugin {
97
+ /** Unique plugin name. */
98
+ name: string;
99
+ /** Called once when the plugin is registered. */
100
+ setup(build: BundlerPluginBuild): void;
101
+ }
102
+
103
+ /**
104
+ * Bundler contract interface.
105
+ *
106
+ * Implementations compile and bundle application source code into
107
+ * optimized output suitable for deployment or development.
108
+ */
109
+ export interface Bundler {
110
+ /** Bundle one or more entry points into output files. */
111
+ bundle(options: BundleOptions): Promise<BundleResult>;
112
+ /** Transform a single source string without writing to disk. */
113
+ transform(options: TransformOptions): Promise<TransformResult>;
114
+ /** Release bundler resources (child processes, watchers, etc.). */
115
+ stop?(): Promise<void>;
116
+ }
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Contract interface for key-value cache stores.
3
+ *
4
+ * Default implementation: `@veryfront/ext-redis`
5
+ *
6
+ * @module extensions/interfaces/cache-store
7
+ */
8
+
9
+ /**
10
+ * CacheStore contract interface.
11
+ *
12
+ * Implementations provide key-value caching with optional TTL support.
13
+ */
14
+ export interface CacheStore {
15
+ /** Retrieve a cached value by key. Returns `undefined` on miss. */
16
+ get<T = unknown>(key: string): Promise<T | undefined>;
17
+ /** Store a value under the given key with an optional TTL in seconds. */
18
+ set<T = unknown>(key: string, value: T, ttl?: number): Promise<void>;
19
+ /** Delete a cached entry. */
20
+ delete(key: string): Promise<void>;
21
+ /** Check whether a key exists in the cache. */
22
+ has(key: string): Promise<boolean>;
23
+ /** Remove all entries from the cache. */
24
+ clear(): Promise<void>;
25
+ /** Close connections and release resources. */
26
+ disconnect?(): Promise<void>;
27
+ }
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Contract interface for code parsing and AST manipulation.
3
+ *
4
+ * Default implementation: `@veryfront/ext-babel`
5
+ *
6
+ * @module extensions/interfaces/code-parser
7
+ */
8
+
9
+ /** A single node in an abstract syntax tree. */
10
+ export interface ASTNode {
11
+ /** Node type identifier (e.g. `"Identifier"`, `"CallExpression"`). */
12
+ type: string;
13
+ /** Start character offset in the source. */
14
+ start?: number;
15
+ /** End character offset in the source. */
16
+ end?: number;
17
+ /** Child nodes and properties. */
18
+ [key: string]: unknown;
19
+ }
20
+
21
+ /** Wrapper providing traversal context for a visited node. */
22
+ export interface NodePath<T extends ASTNode = ASTNode> {
23
+ /** The AST node at this path. */
24
+ node: T;
25
+ /** The parent path, if any. */
26
+ parent: NodePath | undefined;
27
+ /** Replace this node with one or more new nodes. */
28
+ replaceWith(node: ASTNode): void;
29
+ /** Remove this node from the tree. */
30
+ remove(): void;
31
+ }
32
+
33
+ /** Visitor callbacks keyed by node type. */
34
+ export interface TraverseVisitor {
35
+ [nodeType: string]:
36
+ | ((path: NodePath) => void)
37
+ | {
38
+ enter?(path: NodePath): void;
39
+ exit?(path: NodePath): void;
40
+ };
41
+ }
42
+
43
+ /** Options passed to {@link CodeParser.parse}. */
44
+ export interface ParseOptions {
45
+ /** Source code to parse. */
46
+ code: string;
47
+ /** File path hint for parser configuration (e.g. `.tsx`). */
48
+ filePath?: string;
49
+ /** Additional parser-specific options. */
50
+ [key: string]: unknown;
51
+ }
52
+
53
+ /** Options passed to {@link CodeParser.generate}. */
54
+ export interface GenerateOptions {
55
+ /** Include source maps in the output. */
56
+ sourceMaps?: boolean;
57
+ /** Minify the generated code. */
58
+ minified?: boolean;
59
+ /** Additional generator-specific options. */
60
+ [key: string]: unknown;
61
+ }
62
+
63
+ /** Result returned from {@link CodeParser.generate}. */
64
+ export interface GenerateResult {
65
+ /** Generated source code. */
66
+ code: string;
67
+ /** Source map, if requested. */
68
+ map?: string;
69
+ }
70
+
71
+ /**
72
+ * CodeParser contract interface.
73
+ *
74
+ * Implementations parse source code into ASTs, traverse/transform
75
+ * nodes, and generate code back from modified trees.
76
+ */
77
+ export interface CodeParser {
78
+ /** Parse source code into an abstract syntax tree. */
79
+ parse(options: ParseOptions): Promise<ASTNode>;
80
+ /** Walk the AST calling visitor callbacks for matching node types. */
81
+ traverse(ast: ASTNode, visitor: TraverseVisitor): void;
82
+ /** Generate source code from an AST. */
83
+ generate(ast: ASTNode, options?: GenerateOptions): Promise<GenerateResult>;
84
+ }
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Contract interface for content transformation pipelines.
3
+ *
4
+ * Default implementation: `@veryfront/ext-mdx`
5
+ *
6
+ * @module extensions/interfaces/content-transformer
7
+ */
8
+
9
+ /** Options passed to {@link ContentTransformer.transform}. */
10
+ export interface ContentTransformOptions {
11
+ /** Raw source content (e.g. MDX, Markdown). */
12
+ source: string;
13
+ /** File path hint for the source content. */
14
+ filePath?: string;
15
+ /** Additional remark/rehype plugins or processor-specific settings. */
16
+ [key: string]: unknown;
17
+ }
18
+
19
+ /** Result returned from {@link ContentTransformer.transform}. */
20
+ export interface ContentTransformResult {
21
+ /** Transformed output code. */
22
+ code: string;
23
+ /** Front-matter or metadata extracted from the source. */
24
+ frontmatter?: Record<string, unknown>;
25
+ /** Extracted table-of-contents headings. */
26
+ headings?: Array<{ depth: number; text: string; slug: string }>;
27
+ }
28
+
29
+ /**
30
+ * ContentTransformer contract interface.
31
+ *
32
+ * Implementations transform authoring formats (MDX, Markdown, etc.)
33
+ * into renderable code or HTML.
34
+ */
35
+ export interface ContentTransformer {
36
+ /** Transform source content into its processed form. */
37
+ transform(options: ContentTransformOptions): Promise<ContentTransformResult>;
38
+ }
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Contract interface for CSS processing engines.
3
+ *
4
+ * Default implementation: `@veryfront/ext-tailwind`
5
+ *
6
+ * @module extensions/interfaces/css-processor
7
+ */
8
+
9
+ /** Options passed to {@link CSSProcessor.process}. */
10
+ export interface CSSProcessOptions {
11
+ /** Raw CSS or utility-class input. */
12
+ content: string;
13
+ /** Paths to source files used for scanning class usage. */
14
+ sources?: string[];
15
+ /** Enable minification of the output. */
16
+ minify?: boolean;
17
+ /** Extra implementation-specific options. */
18
+ [key: string]: unknown;
19
+ }
20
+
21
+ /** Result returned from {@link CSSProcessor.process}. */
22
+ export interface CSSProcessResult {
23
+ /** Processed CSS output. */
24
+ css: string;
25
+ /** Source map, if generated. */
26
+ map?: string;
27
+ }
28
+
29
+ /**
30
+ * CSSProcessor contract interface.
31
+ *
32
+ * Implementations compile utility classes or raw CSS into optimized
33
+ * stylesheets ready for the browser.
34
+ */
35
+ export interface CSSProcessor {
36
+ /** Process CSS input and return the compiled result. */
37
+ process(options: CSSProcessOptions): Promise<CSSProcessResult>;
38
+ /** Merge class names using the processor's conflict-resolution strategy. */
39
+ mergeClasses?(...classes: string[]): string;
40
+ }
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Contract interface for database clients.
3
+ *
4
+ * Default implementation: `@veryfront/ext-postgres`
5
+ *
6
+ * @module extensions/interfaces/database-client
7
+ */
8
+
9
+ /** Result returned from {@link DatabaseClient.query}. */
10
+ export interface QueryResult<T = Record<string, unknown>> {
11
+ /** Array of rows returned by the query. */
12
+ rows: T[];
13
+ /** Number of rows affected by the statement. */
14
+ rowCount: number;
15
+ }
16
+
17
+ /**
18
+ * DatabaseClient contract interface.
19
+ *
20
+ * Implementations provide parameterized query execution against a
21
+ * relational or document database.
22
+ */
23
+ export interface DatabaseClient {
24
+ /** Run a read query and return the matching rows. */
25
+ query<T = Record<string, unknown>>(
26
+ sql: string,
27
+ params?: unknown[],
28
+ ): Promise<QueryResult<T>>;
29
+ /** Execute a write statement and return the affected row count. */
30
+ execute(sql: string, params?: unknown[]): Promise<QueryResult>;
31
+ /** Open or initialize the database connection. */
32
+ connect(): Promise<void>;
33
+ /** Close the database connection and release resources. */
34
+ disconnect(): Promise<void>;
35
+ }
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Contract interface for text embedding providers.
3
+ *
4
+ * Default implementation: `@veryfront/ext-embeddings`
5
+ *
6
+ * @module extensions/interfaces/embedding-provider
7
+ */
8
+
9
+ /** Options passed to {@link EmbeddingProvider.embed}. */
10
+ export interface EmbeddingOptions {
11
+ /** Model identifier (e.g. `"text-embedding-3-small"`). */
12
+ model: string;
13
+ /** Input texts to embed. */
14
+ input: string[];
15
+ /** Additional provider-specific options. */
16
+ [key: string]: unknown;
17
+ }
18
+
19
+ /** Result returned from {@link EmbeddingProvider.embed}. */
20
+ export interface EmbeddingResult {
21
+ /** One embedding vector per input string. */
22
+ embeddings: number[][];
23
+ /** Token usage statistics. */
24
+ usage?: {
25
+ promptTokens: number;
26
+ totalTokens: number;
27
+ };
28
+ }
29
+
30
+ /**
31
+ * EmbeddingProvider contract interface.
32
+ *
33
+ * Implementations convert text inputs into dense vector embeddings
34
+ * for similarity search and retrieval-augmented generation.
35
+ */
36
+ export interface EmbeddingProvider {
37
+ /** Generate embedding vectors for the given input texts. */
38
+ embed(options: EmbeddingOptions): Promise<EmbeddingResult>;
39
+ }
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Barrel export for all extension contract interfaces.
3
+ *
4
+ * Every export is a pure TypeScript type -- no runtime code is emitted.
5
+ *
6
+ * @module extensions/interfaces
7
+ */
8
+
9
+ // Bundler
10
+ import "../../../_dnt.polyfills.js";
11
+
12
+ export type {
13
+ BundleOptions,
14
+ BundleOutput,
15
+ Bundler,
16
+ BundleResult,
17
+ BundlerPlugin,
18
+ BundlerPluginBuild,
19
+ TransformOptions,
20
+ TransformResult,
21
+ } from "./bundler.js";
22
+
23
+ // Cache store
24
+ export type { CacheStore } from "./cache-store.js";
25
+
26
+ // CSS processor
27
+ export type { CSSProcessOptions, CSSProcessor, CSSProcessResult } from "./css-processor.js";
28
+
29
+ // Content transformer
30
+ export type {
31
+ ContentTransformer,
32
+ ContentTransformOptions,
33
+ ContentTransformResult,
34
+ } from "./content-transformer.js";
35
+
36
+ // Database client
37
+ export type { DatabaseClient, QueryResult } from "./database-client.js";
38
+
39
+ // Auth provider
40
+ export type { AuthProvider, SignOptions, TokenPayload, VerifyOptions } from "./auth-provider.js";
41
+
42
+ // Tracing exporter
43
+ export type { SpanData, TracingExporter } from "./tracing-exporter.js";
44
+
45
+ // AI model provider
46
+ export type {
47
+ AIModelProvider,
48
+ ChatMessage,
49
+ CompletionOptions,
50
+ CompletionResult,
51
+ ContentPart,
52
+ StreamChunk,
53
+ ToolDefinition,
54
+ } from "./ai-model-provider.js";
55
+
56
+ // Embedding provider
57
+ export type { EmbeddingOptions, EmbeddingProvider, EmbeddingResult } from "./embedding-provider.js";
58
+
59
+ // Code parser
60
+ export type {
61
+ ASTNode,
62
+ CodeParser,
63
+ GenerateOptions,
64
+ GenerateResult,
65
+ NodePath,
66
+ ParseOptions,
67
+ TraverseVisitor,
68
+ } from "./code-parser.js";
69
+
70
+ // Schema validator
71
+ export type {
72
+ Schema,
73
+ SchemaValidator,
74
+ ValidationFailure,
75
+ ValidationIssue,
76
+ ValidationResult,
77
+ ValidationSuccess,
78
+ } from "./schema-validator.js";
79
+
80
+ // Node compatibility
81
+ export type { NodeCompat } from "./node-compat.js";
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Contract interface for Node.js compatibility shims.
3
+ *
4
+ * Default implementation: `@veryfront/ext-node-compat`
5
+ *
6
+ * @module extensions/interfaces/node-compat
7
+ */
8
+
9
+ /**
10
+ * NodeCompat contract interface.
11
+ *
12
+ * Implementations provide access to Node.js-compatible APIs in
13
+ * environments where native Node modules are unavailable (e.g. Deno).
14
+ *
15
+ * Each getter returns the module's namespace object, matching the
16
+ * shape of the corresponding Node.js built-in.
17
+ */
18
+ export interface NodeCompat {
19
+ /** Return a Node-compatible `fs` module (sync + async + promises). */
20
+ getFS(): unknown;
21
+ /** Return a Node-compatible `path` module. */
22
+ getPath(): unknown;
23
+ /** Return a Node-compatible `WebSocket` constructor. */
24
+ getWebSocket(): unknown;
25
+ }
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Contract interface for schema validation.
3
+ *
4
+ * Default implementation: `@veryfront/ext-zod`
5
+ *
6
+ * @module extensions/interfaces/schema-validator
7
+ */
8
+
9
+ /** An opaque schema definition that validates and infers type `T`. */
10
+ export interface Schema<T = unknown> {
11
+ /** Brand field for nominal typing -- not used at runtime. */
12
+ readonly _output: T;
13
+ }
14
+
15
+ /** A single validation issue with location context. */
16
+ export interface ValidationIssue {
17
+ /** Dot-path to the offending field (e.g. `"user.email"`). */
18
+ path: (string | number)[];
19
+ /** Human-readable error message. */
20
+ message: string;
21
+ /** Machine-readable error code. */
22
+ code?: string;
23
+ }
24
+
25
+ /** Successful validation outcome. */
26
+ export interface ValidationSuccess<T> {
27
+ success: true;
28
+ /** Parsed and validated data. */
29
+ data: T;
30
+ }
31
+
32
+ /** Failed validation outcome. */
33
+ export interface ValidationFailure {
34
+ success: false;
35
+ /** List of issues found during validation. */
36
+ issues: ValidationIssue[];
37
+ }
38
+
39
+ /** Discriminated union of validation outcomes. */
40
+ export type ValidationResult<T> = ValidationSuccess<T> | ValidationFailure;
41
+
42
+ /**
43
+ * SchemaValidator contract interface.
44
+ *
45
+ * Implementations validate unknown input against a typed schema and
46
+ * return a discriminated success/failure result.
47
+ */
48
+ export interface SchemaValidator {
49
+ /** Validate `data` against the given schema. */
50
+ validate<T>(schema: Schema<T>, data: unknown): ValidationResult<T>;
51
+ }
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Contract interface for tracing/telemetry exporters.
3
+ *
4
+ * Default implementation: `@veryfront/ext-opentelemetry`
5
+ *
6
+ * @module extensions/interfaces/tracing-exporter
7
+ */
8
+
9
+ /** Data describing a single trace span. */
10
+ export interface SpanData {
11
+ /** Unique span identifier. */
12
+ spanId: string;
13
+ /** Trace identifier this span belongs to. */
14
+ traceId: string;
15
+ /** Parent span identifier, if any. */
16
+ parentSpanId?: string;
17
+ /** Human-readable operation name. */
18
+ name: string;
19
+ /** Span kind (`client`, `server`, `internal`, `producer`, `consumer`). */
20
+ kind: "client" | "server" | "internal" | "producer" | "consumer";
21
+ /** Start time as a Unix timestamp in milliseconds. */
22
+ startTime: number;
23
+ /** End time as a Unix timestamp in milliseconds. */
24
+ endTime: number;
25
+ /** Key-value attributes attached to the span. */
26
+ attributes: Record<string, string | number | boolean>;
27
+ /** Status of the span. */
28
+ status: { code: "ok" | "error" | "unset"; message?: string };
29
+ }
30
+
31
+ /**
32
+ * TracingExporter contract interface.
33
+ *
34
+ * Implementations export collected trace spans to an observability
35
+ * backend (e.g. Jaeger, Zipkin, OTLP collector).
36
+ */
37
+ export interface TracingExporter {
38
+ /** Export a batch of completed spans. */
39
+ export(spans: SpanData[]): Promise<void>;
40
+ /** Flush pending data and release resources. */
41
+ shutdown(): Promise<void>;
42
+ }