@buenojs/bueno 0.8.6 → 0.8.7

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 (398) hide show
  1. package/.claude/settings.local.json +9 -0
  2. package/README.md +132 -15
  3. package/dist/cache/index.d.ts +187 -0
  4. package/dist/cache/index.d.ts.map +1 -0
  5. package/dist/cli/bin.d.ts +8 -0
  6. package/dist/cli/bin.d.ts.map +1 -0
  7. package/dist/cli/bin.js +483 -155
  8. package/dist/cli/commands/add-frontend.d.ts +7 -0
  9. package/dist/cli/commands/add-frontend.d.ts.map +1 -0
  10. package/dist/cli/commands/build.d.ts +7 -0
  11. package/dist/cli/commands/build.d.ts.map +1 -0
  12. package/dist/cli/commands/dev.d.ts +7 -0
  13. package/dist/cli/commands/dev.d.ts.map +1 -0
  14. package/dist/cli/commands/generate.d.ts +7 -0
  15. package/dist/cli/commands/generate.d.ts.map +1 -0
  16. package/dist/cli/commands/help.d.ts +7 -0
  17. package/dist/cli/commands/help.d.ts.map +1 -0
  18. package/dist/cli/commands/index.d.ts +59 -0
  19. package/dist/cli/commands/index.d.ts.map +1 -0
  20. package/dist/cli/commands/migration.d.ts +7 -0
  21. package/dist/cli/commands/migration.d.ts.map +1 -0
  22. package/dist/cli/commands/new.d.ts +7 -0
  23. package/dist/cli/commands/new.d.ts.map +1 -0
  24. package/dist/cli/commands/start.d.ts +7 -0
  25. package/dist/cli/commands/start.d.ts.map +1 -0
  26. package/dist/cli/core/args.d.ts +61 -0
  27. package/dist/cli/core/args.d.ts.map +1 -0
  28. package/dist/cli/core/console.d.ts +135 -0
  29. package/dist/cli/core/console.d.ts.map +1 -0
  30. package/dist/cli/core/index.d.ts +10 -0
  31. package/dist/cli/core/index.d.ts.map +1 -0
  32. package/dist/cli/core/prompt.d.ts +63 -0
  33. package/dist/cli/core/prompt.d.ts.map +1 -0
  34. package/dist/cli/core/spinner.d.ts +111 -0
  35. package/dist/cli/core/spinner.d.ts.map +1 -0
  36. package/dist/cli/index.d.ts +47 -0
  37. package/dist/cli/index.d.ts.map +1 -0
  38. package/dist/cli/templates/database/index.d.ts +24 -0
  39. package/dist/cli/templates/database/index.d.ts.map +1 -0
  40. package/dist/cli/templates/database/mysql.d.ts +6 -0
  41. package/dist/cli/templates/database/mysql.d.ts.map +1 -0
  42. package/dist/cli/templates/database/none.d.ts +8 -0
  43. package/dist/cli/templates/database/none.d.ts.map +1 -0
  44. package/dist/cli/templates/database/postgresql.d.ts +6 -0
  45. package/dist/cli/templates/database/postgresql.d.ts.map +1 -0
  46. package/dist/cli/templates/database/sqlite.d.ts +6 -0
  47. package/dist/cli/templates/database/sqlite.d.ts.map +1 -0
  48. package/dist/cli/templates/deploy.d.ts +41 -0
  49. package/dist/cli/templates/deploy.d.ts.map +1 -0
  50. package/dist/cli/templates/docker.d.ts +30 -0
  51. package/dist/cli/templates/docker.d.ts.map +1 -0
  52. package/dist/cli/templates/frontend/index.d.ts +25 -0
  53. package/dist/cli/templates/frontend/index.d.ts.map +1 -0
  54. package/dist/cli/templates/frontend/none.d.ts +8 -0
  55. package/dist/cli/templates/frontend/none.d.ts.map +1 -0
  56. package/dist/cli/templates/frontend/react.d.ts +6 -0
  57. package/dist/cli/templates/frontend/react.d.ts.map +1 -0
  58. package/dist/cli/templates/frontend/solid.d.ts +6 -0
  59. package/dist/cli/templates/frontend/solid.d.ts.map +1 -0
  60. package/dist/cli/templates/frontend/svelte.d.ts +6 -0
  61. package/dist/cli/templates/frontend/svelte.d.ts.map +1 -0
  62. package/dist/cli/templates/frontend/vue.d.ts +6 -0
  63. package/dist/cli/templates/frontend/vue.d.ts.map +1 -0
  64. package/dist/cli/templates/generators/index.d.ts +29 -0
  65. package/dist/cli/templates/generators/index.d.ts.map +1 -0
  66. package/dist/cli/templates/generators/types.d.ts +32 -0
  67. package/dist/cli/templates/generators/types.d.ts.map +1 -0
  68. package/dist/cli/templates/index.d.ts +12 -0
  69. package/dist/cli/templates/index.d.ts.map +1 -0
  70. package/dist/cli/templates/project/api.d.ts +6 -0
  71. package/dist/cli/templates/project/api.d.ts.map +1 -0
  72. package/dist/cli/templates/project/default.d.ts +6 -0
  73. package/dist/cli/templates/project/default.d.ts.map +1 -0
  74. package/dist/cli/templates/project/fullstack.d.ts +14 -0
  75. package/dist/cli/templates/project/fullstack.d.ts.map +1 -0
  76. package/dist/cli/templates/project/index.d.ts +26 -0
  77. package/dist/cli/templates/project/index.d.ts.map +1 -0
  78. package/dist/cli/templates/project/minimal.d.ts +6 -0
  79. package/dist/cli/templates/project/minimal.d.ts.map +1 -0
  80. package/dist/cli/templates/project/types.d.ts +80 -0
  81. package/dist/cli/templates/project/types.d.ts.map +1 -0
  82. package/dist/cli/templates/project/website.d.ts +8 -0
  83. package/dist/cli/templates/project/website.d.ts.map +1 -0
  84. package/dist/cli/utils/fs.d.ts +137 -0
  85. package/dist/cli/utils/fs.d.ts.map +1 -0
  86. package/dist/cli/utils/index.d.ts +9 -0
  87. package/dist/cli/utils/index.d.ts.map +1 -0
  88. package/dist/cli/utils/strings.d.ts +86 -0
  89. package/dist/cli/utils/strings.d.ts.map +1 -0
  90. package/dist/cli/utils/version.d.ts +15 -0
  91. package/dist/cli/utils/version.d.ts.map +1 -0
  92. package/dist/config/env-validation.d.ts +49 -0
  93. package/dist/config/env-validation.d.ts.map +1 -0
  94. package/dist/config/env.d.ts +167 -0
  95. package/dist/config/env.d.ts.map +1 -0
  96. package/dist/config/index.d.ts +168 -0
  97. package/dist/config/index.d.ts.map +1 -0
  98. package/dist/config/loader.d.ts +81 -0
  99. package/dist/config/loader.d.ts.map +1 -0
  100. package/dist/config/merge.d.ts +66 -0
  101. package/dist/config/merge.d.ts.map +1 -0
  102. package/dist/config/types.d.ts +322 -0
  103. package/dist/config/types.d.ts.map +1 -0
  104. package/dist/config/validation.d.ts +100 -0
  105. package/dist/config/validation.d.ts.map +1 -0
  106. package/dist/container/forward-ref.d.ts +116 -0
  107. package/dist/container/forward-ref.d.ts.map +1 -0
  108. package/dist/container/index.d.ts +95 -0
  109. package/dist/container/index.d.ts.map +1 -0
  110. package/dist/context/index.d.ts +143 -0
  111. package/dist/context/index.d.ts.map +1 -0
  112. package/dist/database/index.d.ts +219 -0
  113. package/dist/database/index.d.ts.map +1 -0
  114. package/dist/database/migrations/index.d.ts +146 -0
  115. package/dist/database/migrations/index.d.ts.map +1 -0
  116. package/dist/database/orm/builder.d.ts +122 -0
  117. package/dist/database/orm/builder.d.ts.map +1 -0
  118. package/dist/database/orm/casts/index.d.ts +16 -0
  119. package/dist/database/orm/casts/index.d.ts.map +1 -0
  120. package/dist/database/orm/casts/types.d.ts +16 -0
  121. package/dist/database/orm/casts/types.d.ts.map +1 -0
  122. package/dist/database/orm/compiler.d.ts +90 -0
  123. package/dist/database/orm/compiler.d.ts.map +1 -0
  124. package/dist/database/orm/hooks/index.d.ts +53 -0
  125. package/dist/database/orm/hooks/index.d.ts.map +1 -0
  126. package/dist/database/orm/index.d.ts +21 -0
  127. package/dist/database/orm/index.d.ts.map +1 -0
  128. package/dist/database/orm/model-registry.d.ts +33 -0
  129. package/dist/database/orm/model-registry.d.ts.map +1 -0
  130. package/dist/database/orm/model.d.ts +245 -0
  131. package/dist/database/orm/model.d.ts.map +1 -0
  132. package/dist/database/orm/relationships/base.d.ts +69 -0
  133. package/dist/database/orm/relationships/base.d.ts.map +1 -0
  134. package/dist/database/orm/relationships/belongs-to-many.d.ts +47 -0
  135. package/dist/database/orm/relationships/belongs-to-many.d.ts.map +1 -0
  136. package/dist/database/orm/relationships/belongs-to.d.ts +17 -0
  137. package/dist/database/orm/relationships/belongs-to.d.ts.map +1 -0
  138. package/dist/database/orm/relationships/has-many.d.ts +14 -0
  139. package/dist/database/orm/relationships/has-many.d.ts.map +1 -0
  140. package/dist/database/orm/relationships/has-one.d.ts +14 -0
  141. package/dist/database/orm/relationships/has-one.d.ts.map +1 -0
  142. package/dist/database/orm/relationships/index.d.ts +10 -0
  143. package/dist/database/orm/relationships/index.d.ts.map +1 -0
  144. package/dist/database/orm/scopes/index.d.ts +36 -0
  145. package/dist/database/orm/scopes/index.d.ts.map +1 -0
  146. package/dist/database/schema/index.d.ts +155 -0
  147. package/dist/database/schema/index.d.ts.map +1 -0
  148. package/dist/events/__tests__/event-system.test.d.ts +2 -0
  149. package/dist/events/__tests__/event-system.test.d.ts.map +1 -0
  150. package/dist/events/config.d.ts +16 -0
  151. package/dist/events/config.d.ts.map +1 -0
  152. package/dist/events/example-usage.d.ts +12 -0
  153. package/dist/events/example-usage.d.ts.map +1 -0
  154. package/dist/events/index.d.ts +27 -0
  155. package/dist/events/index.d.ts.map +1 -0
  156. package/dist/events/manager.d.ts +33 -0
  157. package/dist/events/manager.d.ts.map +1 -0
  158. package/dist/events/registry.d.ts +31 -0
  159. package/dist/events/registry.d.ts.map +1 -0
  160. package/dist/events/types.d.ts +105 -0
  161. package/dist/events/types.d.ts.map +1 -0
  162. package/dist/frontend/api-routes.d.ts +189 -0
  163. package/dist/frontend/api-routes.d.ts.map +1 -0
  164. package/dist/frontend/bundler.d.ts +99 -0
  165. package/dist/frontend/bundler.d.ts.map +1 -0
  166. package/dist/frontend/console-client.d.ts +11 -0
  167. package/dist/frontend/console-client.d.ts.map +1 -0
  168. package/dist/frontend/console-stream.d.ts +138 -0
  169. package/dist/frontend/console-stream.d.ts.map +1 -0
  170. package/dist/frontend/dev-server.d.ts +174 -0
  171. package/dist/frontend/dev-server.d.ts.map +1 -0
  172. package/dist/frontend/file-router.d.ts +170 -0
  173. package/dist/frontend/file-router.d.ts.map +1 -0
  174. package/dist/frontend/frameworks/index.d.ts +41 -0
  175. package/dist/frontend/frameworks/index.d.ts.map +1 -0
  176. package/dist/frontend/frameworks/react.d.ts +32 -0
  177. package/dist/frontend/frameworks/react.d.ts.map +1 -0
  178. package/dist/frontend/frameworks/solid.d.ts +42 -0
  179. package/dist/frontend/frameworks/solid.d.ts.map +1 -0
  180. package/dist/frontend/frameworks/svelte.d.ts +57 -0
  181. package/dist/frontend/frameworks/svelte.d.ts.map +1 -0
  182. package/dist/frontend/frameworks/vue.d.ts +36 -0
  183. package/dist/frontend/frameworks/vue.d.ts.map +1 -0
  184. package/dist/frontend/hmr-client.d.ts +22 -0
  185. package/dist/frontend/hmr-client.d.ts.map +1 -0
  186. package/dist/frontend/hmr.d.ts +185 -0
  187. package/dist/frontend/hmr.d.ts.map +1 -0
  188. package/dist/frontend/index.d.ts +34 -0
  189. package/dist/frontend/index.d.ts.map +1 -0
  190. package/dist/frontend/islands.d.ts +135 -0
  191. package/dist/frontend/islands.d.ts.map +1 -0
  192. package/dist/frontend/isr.d.ts +143 -0
  193. package/dist/frontend/isr.d.ts.map +1 -0
  194. package/dist/frontend/layout.d.ts +140 -0
  195. package/dist/frontend/layout.d.ts.map +1 -0
  196. package/dist/frontend/ssr/react.d.ts +118 -0
  197. package/dist/frontend/ssr/react.d.ts.map +1 -0
  198. package/dist/frontend/ssr/solid.d.ts +141 -0
  199. package/dist/frontend/ssr/solid.d.ts.map +1 -0
  200. package/dist/frontend/ssr/svelte.d.ts +158 -0
  201. package/dist/frontend/ssr/svelte.d.ts.map +1 -0
  202. package/dist/frontend/ssr/vue.d.ts +161 -0
  203. package/dist/frontend/ssr/vue.d.ts.map +1 -0
  204. package/dist/frontend/ssr.d.ts +147 -0
  205. package/dist/frontend/ssr.d.ts.map +1 -0
  206. package/dist/frontend/types.d.ts +1902 -0
  207. package/dist/frontend/types.d.ts.map +1 -0
  208. package/dist/graphql/built-in-engine.d.ts +36 -0
  209. package/dist/graphql/built-in-engine.d.ts.map +1 -0
  210. package/dist/graphql/context-builder.d.ts +44 -0
  211. package/dist/graphql/context-builder.d.ts.map +1 -0
  212. package/dist/graphql/decorators.d.ts +162 -0
  213. package/dist/graphql/decorators.d.ts.map +1 -0
  214. package/dist/graphql/execution-pipeline.d.ts +67 -0
  215. package/dist/graphql/execution-pipeline.d.ts.map +1 -0
  216. package/dist/graphql/graphql-module.d.ts +70 -0
  217. package/dist/graphql/graphql-module.d.ts.map +1 -0
  218. package/dist/graphql/index.d.ts +48 -0
  219. package/dist/graphql/index.d.ts.map +1 -0
  220. package/dist/graphql/metadata.d.ts +37 -0
  221. package/dist/graphql/metadata.d.ts.map +1 -0
  222. package/dist/graphql/schema-builder.d.ts +34 -0
  223. package/dist/graphql/schema-builder.d.ts.map +1 -0
  224. package/dist/graphql/subscription-handler.d.ts +47 -0
  225. package/dist/graphql/subscription-handler.d.ts.map +1 -0
  226. package/dist/graphql/types.d.ts +252 -0
  227. package/dist/graphql/types.d.ts.map +1 -0
  228. package/dist/health/index.d.ts +176 -0
  229. package/dist/health/index.d.ts.map +1 -0
  230. package/dist/i18n/engine.d.ts +105 -0
  231. package/dist/i18n/engine.d.ts.map +1 -0
  232. package/dist/i18n/index.d.ts +13 -0
  233. package/dist/i18n/index.d.ts.map +1 -0
  234. package/dist/i18n/loader.d.ts +79 -0
  235. package/dist/i18n/loader.d.ts.map +1 -0
  236. package/dist/i18n/middleware.d.ts +96 -0
  237. package/dist/i18n/middleware.d.ts.map +1 -0
  238. package/dist/i18n/negotiator.d.ts +84 -0
  239. package/dist/i18n/negotiator.d.ts.map +1 -0
  240. package/dist/i18n/types.d.ts +129 -0
  241. package/dist/i18n/types.d.ts.map +1 -0
  242. package/dist/index.d.ts +48 -0
  243. package/dist/index.d.ts.map +1 -0
  244. package/dist/jobs/drivers/memory.d.ts +38 -0
  245. package/dist/jobs/drivers/memory.d.ts.map +1 -0
  246. package/dist/jobs/drivers/redis.d.ts +34 -0
  247. package/dist/jobs/drivers/redis.d.ts.map +1 -0
  248. package/dist/jobs/index.d.ts +12 -0
  249. package/dist/jobs/index.d.ts.map +1 -0
  250. package/dist/jobs/queue.d.ts +93 -0
  251. package/dist/jobs/queue.d.ts.map +1 -0
  252. package/dist/jobs/types.d.ts +193 -0
  253. package/dist/jobs/types.d.ts.map +1 -0
  254. package/dist/jobs/worker.d.ts +91 -0
  255. package/dist/jobs/worker.d.ts.map +1 -0
  256. package/dist/lock/index.d.ts +141 -0
  257. package/dist/lock/index.d.ts.map +1 -0
  258. package/dist/logger/index.d.ts +156 -0
  259. package/dist/logger/index.d.ts.map +1 -0
  260. package/dist/logger/transports/index.d.ts +371 -0
  261. package/dist/logger/transports/index.d.ts.map +1 -0
  262. package/dist/metrics/index.d.ts +163 -0
  263. package/dist/metrics/index.d.ts.map +1 -0
  264. package/dist/middleware/built-in.d.ts +50 -0
  265. package/dist/middleware/built-in.d.ts.map +1 -0
  266. package/dist/middleware/index.d.ts +40 -0
  267. package/dist/middleware/index.d.ts.map +1 -0
  268. package/dist/migrations/index.d.ts +10 -0
  269. package/dist/migrations/index.d.ts.map +1 -0
  270. package/dist/modules/filters.d.ts +150 -0
  271. package/dist/modules/filters.d.ts.map +1 -0
  272. package/dist/modules/guards.d.ts +188 -0
  273. package/dist/modules/guards.d.ts.map +1 -0
  274. package/dist/modules/index.d.ts +266 -0
  275. package/dist/modules/index.d.ts.map +1 -0
  276. package/dist/modules/interceptors.d.ts +242 -0
  277. package/dist/modules/interceptors.d.ts.map +1 -0
  278. package/dist/modules/lazy.d.ts +187 -0
  279. package/dist/modules/lazy.d.ts.map +1 -0
  280. package/dist/modules/lifecycle.d.ts +221 -0
  281. package/dist/modules/lifecycle.d.ts.map +1 -0
  282. package/dist/modules/metadata.d.ts +32 -0
  283. package/dist/modules/metadata.d.ts.map +1 -0
  284. package/dist/modules/pipes.d.ts +287 -0
  285. package/dist/modules/pipes.d.ts.map +1 -0
  286. package/dist/notification/channels/base.d.ts +32 -0
  287. package/dist/notification/channels/base.d.ts.map +1 -0
  288. package/dist/notification/channels/email.d.ts +37 -0
  289. package/dist/notification/channels/email.d.ts.map +1 -0
  290. package/dist/notification/channels/push.d.ts +37 -0
  291. package/dist/notification/channels/push.d.ts.map +1 -0
  292. package/dist/notification/channels/sms.d.ts +37 -0
  293. package/dist/notification/channels/sms.d.ts.map +1 -0
  294. package/dist/notification/channels/whatsapp.d.ts +37 -0
  295. package/dist/notification/channels/whatsapp.d.ts.map +1 -0
  296. package/dist/notification/index.d.ts +15 -0
  297. package/dist/notification/index.d.ts.map +1 -0
  298. package/dist/notification/service.d.ts +100 -0
  299. package/dist/notification/service.d.ts.map +1 -0
  300. package/dist/notification/types.d.ts +253 -0
  301. package/dist/notification/types.d.ts.map +1 -0
  302. package/dist/observability/__tests__/observability.test.d.ts +2 -0
  303. package/dist/observability/__tests__/observability.test.d.ts.map +1 -0
  304. package/dist/observability/breadcrumbs.d.ts +48 -0
  305. package/dist/observability/breadcrumbs.d.ts.map +1 -0
  306. package/dist/observability/index.d.ts +95 -0
  307. package/dist/observability/index.d.ts.map +1 -0
  308. package/dist/observability/interceptor.d.ts +19 -0
  309. package/dist/observability/interceptor.d.ts.map +1 -0
  310. package/dist/observability/service.d.ts +101 -0
  311. package/dist/observability/service.d.ts.map +1 -0
  312. package/dist/observability/trace.d.ts +21 -0
  313. package/dist/observability/trace.d.ts.map +1 -0
  314. package/dist/observability/types.d.ts +172 -0
  315. package/dist/observability/types.d.ts.map +1 -0
  316. package/dist/openapi/__tests__/decorators.test.d.ts +2 -0
  317. package/dist/openapi/__tests__/decorators.test.d.ts.map +1 -0
  318. package/dist/openapi/__tests__/document-builder.test.d.ts +2 -0
  319. package/dist/openapi/__tests__/document-builder.test.d.ts.map +1 -0
  320. package/dist/openapi/__tests__/route-scanner.test.d.ts +2 -0
  321. package/dist/openapi/__tests__/route-scanner.test.d.ts.map +1 -0
  322. package/dist/openapi/__tests__/schema-generator.test.d.ts +2 -0
  323. package/dist/openapi/__tests__/schema-generator.test.d.ts.map +1 -0
  324. package/dist/openapi/decorators.d.ts +173 -0
  325. package/dist/openapi/decorators.d.ts.map +1 -0
  326. package/dist/openapi/document-builder.d.ts +82 -0
  327. package/dist/openapi/document-builder.d.ts.map +1 -0
  328. package/dist/openapi/index.d.ts +48 -0
  329. package/dist/openapi/index.d.ts.map +1 -0
  330. package/dist/openapi/metadata.d.ts +36 -0
  331. package/dist/openapi/metadata.d.ts.map +1 -0
  332. package/dist/openapi/route-scanner.d.ts +34 -0
  333. package/dist/openapi/route-scanner.d.ts.map +1 -0
  334. package/dist/openapi/schema-generator.d.ts +53 -0
  335. package/dist/openapi/schema-generator.d.ts.map +1 -0
  336. package/dist/openapi/swagger-module.d.ts +57 -0
  337. package/dist/openapi/swagger-module.d.ts.map +1 -0
  338. package/dist/openapi/types.d.ts +344 -0
  339. package/dist/openapi/types.d.ts.map +1 -0
  340. package/dist/orm/index.d.ts +10 -0
  341. package/dist/orm/index.d.ts.map +1 -0
  342. package/dist/router/index.d.ts +73 -0
  343. package/dist/router/index.d.ts.map +1 -0
  344. package/dist/router/linear.d.ts +54 -0
  345. package/dist/router/linear.d.ts.map +1 -0
  346. package/dist/router/regex.d.ts +49 -0
  347. package/dist/router/regex.d.ts.map +1 -0
  348. package/dist/router/tree.d.ts +112 -0
  349. package/dist/router/tree.d.ts.map +1 -0
  350. package/dist/rpc/index.d.ts +321 -0
  351. package/dist/rpc/index.d.ts.map +1 -0
  352. package/dist/schema/index.d.ts +10 -0
  353. package/dist/schema/index.d.ts.map +1 -0
  354. package/dist/security/index.d.ts +126 -0
  355. package/dist/security/index.d.ts.map +1 -0
  356. package/dist/ssg/index.d.ts +73 -0
  357. package/dist/ssg/index.d.ts.map +1 -0
  358. package/dist/storage/index.d.ts +99 -0
  359. package/dist/storage/index.d.ts.map +1 -0
  360. package/dist/telemetry/index.d.ts +376 -0
  361. package/dist/telemetry/index.d.ts.map +1 -0
  362. package/dist/template/index.d.ts +7 -0
  363. package/dist/template/index.d.ts.map +1 -0
  364. package/dist/templates/engine.d.ts +60 -0
  365. package/dist/templates/engine.d.ts.map +1 -0
  366. package/dist/templates/index.d.ts +9 -0
  367. package/dist/templates/index.d.ts.map +1 -0
  368. package/dist/templates/loader.d.ts +45 -0
  369. package/dist/templates/loader.d.ts.map +1 -0
  370. package/dist/templates/renderers/markdown.d.ts +46 -0
  371. package/dist/templates/renderers/markdown.d.ts.map +1 -0
  372. package/dist/templates/renderers/simple.d.ts +35 -0
  373. package/dist/templates/renderers/simple.d.ts.map +1 -0
  374. package/dist/templates/types.d.ts +138 -0
  375. package/dist/templates/types.d.ts.map +1 -0
  376. package/dist/testing/index.d.ts +539 -0
  377. package/dist/testing/index.d.ts.map +1 -0
  378. package/dist/types/index.d.ts +116 -0
  379. package/dist/types/index.d.ts.map +1 -0
  380. package/dist/validation/index.d.ts +89 -0
  381. package/dist/validation/index.d.ts.map +1 -0
  382. package/dist/validation/schemas.d.ts +243 -0
  383. package/dist/validation/schemas.d.ts.map +1 -0
  384. package/dist/websocket/index.d.ts +252 -0
  385. package/dist/websocket/index.d.ts.map +1 -0
  386. package/package.json +2 -2
  387. package/src/cli/commands/add-frontend.ts +444 -0
  388. package/src/cli/commands/new.ts +23 -0
  389. package/src/cli/index.ts +1 -0
  390. package/src/cli/templates/frontend/react.ts +2 -1
  391. package/src/cli/templates/frontend/solid.ts +2 -1
  392. package/src/cli/templates/frontend/svelte.ts +2 -1
  393. package/src/cli/templates/frontend/vue.ts +2 -1
  394. package/src/cli/templates/project/api.ts +1 -1
  395. package/src/cli/templates/project/default.ts +1 -1
  396. package/src/cli/templates/project/fullstack.ts +14 -104
  397. package/src/cli/templates/project/website.ts +62 -11
  398. package/tsconfig.declaration.json +14 -0
@@ -0,0 +1,8 @@
1
+ /**
2
+ * No Database Template
3
+ *
4
+ * Template for projects that don't need a database
5
+ */
6
+ import type { DatabaseTemplateResult } from "../project/types";
7
+ export declare function noneTemplate(): DatabaseTemplateResult;
8
+ //# sourceMappingURL=none.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"none.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/database/none.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE/D,wBAAgB,YAAY,IAAI,sBAAsB,CAOrD"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * PostgreSQL Database Template
3
+ */
4
+ import type { DatabaseTemplateResult } from "../project/types";
5
+ export declare function postgresqlTemplate(): DatabaseTemplateResult;
6
+ //# sourceMappingURL=postgresql.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postgresql.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/database/postgresql.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE/D,wBAAgB,kBAAkB,IAAI,sBAAsB,CAO3D"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * SQLite Database Template
3
+ */
4
+ import type { DatabaseTemplateResult } from "../project/types";
5
+ export declare function sqliteTemplate(): DatabaseTemplateResult;
6
+ //# sourceMappingURL=sqlite.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/database/sqlite.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE/D,wBAAgB,cAAc,IAAI,sBAAsB,CAOvD"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Cloud Platform Deployment Templates
3
+ *
4
+ * Template functions for generating deployment configuration files
5
+ * for various cloud platforms (Render, Fly.io, Railway)
6
+ */
7
+ /**
8
+ * Valid deployment platforms
9
+ */
10
+ export type DeployPlatform = "render" | "fly" | "railway";
11
+ /**
12
+ * Get Render.com deployment configuration (render.yaml)
13
+ *
14
+ * Blueprint format for Render.com with web service and optional database
15
+ */
16
+ export declare function getRenderYamlTemplate(projectName: string, database?: string): string;
17
+ /**
18
+ * Get Fly.io deployment configuration (fly.toml)
19
+ *
20
+ * Fly.io app configuration with HTTP service and auto-scaling
21
+ */
22
+ export declare function getFlyTomlTemplate(projectName: string): string;
23
+ /**
24
+ * Get Railway deployment configuration (railway.toml)
25
+ *
26
+ * Railway configuration with builder settings and health checks
27
+ */
28
+ export declare function getRailwayTomlTemplate(projectName: string): string;
29
+ /**
30
+ * Get deployment template for a specific platform
31
+ */
32
+ export declare function getDeployTemplate(platform: DeployPlatform, projectName: string, database?: string): string;
33
+ /**
34
+ * Get the filename for a deployment configuration
35
+ */
36
+ export declare function getDeployFilename(platform: DeployPlatform): string;
37
+ /**
38
+ * Get deployment platform display name
39
+ */
40
+ export declare function getDeployPlatformName(platform: DeployPlatform): string;
41
+ //# sourceMappingURL=deploy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../../src/cli/templates/deploy.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;AAE1D;;;;GAIG;AACH,wBAAgB,qBAAqB,CACpC,WAAW,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,MAAM,GACf,MAAM,CAyGR;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CA0D9D;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAgDlE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAChC,QAAQ,EAAE,cAAc,EACxB,WAAW,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,MAAM,GACf,MAAM,CAWR;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,CAWlE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,CAWtE"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Docker Templates
3
+ *
4
+ * Template functions for generating Docker-related files
5
+ */
6
+ /**
7
+ * Get Dockerfile template
8
+ *
9
+ * Multi-stage build using oven/bun image for production
10
+ */
11
+ export declare function getDockerfileTemplate(projectName: string, database?: string): string;
12
+ /**
13
+ * Get .dockerignore template
14
+ *
15
+ * Patterns to exclude from Docker build context
16
+ */
17
+ export declare function getDockerignoreTemplate(): string;
18
+ /**
19
+ * Get docker-compose.yml template
20
+ *
21
+ * Local development setup with optional database services
22
+ */
23
+ export declare function getDockerComposeTemplate(projectName: string, database?: string): string;
24
+ /**
25
+ * Get Docker environment variables template
26
+ *
27
+ * Environment variables for Docker Compose
28
+ */
29
+ export declare function getDockerEnvTemplate(projectName: string, database?: string): string;
30
+ //# sourceMappingURL=docker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docker.d.ts","sourceRoot":"","sources":["../../../src/cli/templates/docker.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;GAIG;AACH,wBAAgB,qBAAqB,CACpC,WAAW,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,MAAM,GACf,MAAM,CAqER;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAwDhD;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACvC,WAAW,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,MAAM,GACf,MAAM,CAsHR;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CACnC,WAAW,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,MAAM,GACf,MAAM,CAiCR"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Frontend Templates
3
+ *
4
+ * Frontend framework-specific configuration templates
5
+ */
6
+ import type { FrontendFramework, FrontendTemplateResult } from "../project/types";
7
+ import { noneTemplate } from "./none";
8
+ import { reactTemplate } from "./react";
9
+ import { solidTemplate } from "./solid";
10
+ import { svelteTemplate } from "./svelte";
11
+ import { vueTemplate } from "./vue";
12
+ /**
13
+ * Get frontend template based on framework
14
+ */
15
+ export declare function getFrontendTemplate(framework: FrontendFramework): FrontendTemplateResult;
16
+ /**
17
+ * Get frontend selection options for prompts
18
+ */
19
+ export declare function getFrontendOptions(): {
20
+ value: FrontendFramework;
21
+ name: string;
22
+ description: string;
23
+ }[];
24
+ export { reactTemplate, vueTemplate, svelteTemplate, solidTemplate, noneTemplate, };
25
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/frontend/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACX,iBAAiB,EACjB,sBAAsB,EACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAgBpC;;GAEG;AACH,wBAAgB,mBAAmB,CAClC,SAAS,EAAE,iBAAiB,GAC1B,sBAAsB,CAExB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI;IACrC,KAAK,EAAE,iBAAiB,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACpB,EAAE,CAQF;AAED,OAAO,EACN,aAAa,EACb,WAAW,EACX,cAAc,EACd,aAAa,EACb,YAAY,GACZ,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * No Frontend Template
3
+ *
4
+ * Template for API-only or static website projects
5
+ */
6
+ import type { FrontendTemplateResult } from "../project/types";
7
+ export declare function noneTemplate(): FrontendTemplateResult;
8
+ //# sourceMappingURL=none.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"none.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/frontend/none.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE/D,wBAAgB,YAAY,IAAI,sBAAsB,CAQrD"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * React Frontend Template
3
+ */
4
+ import type { FrontendTemplateResult } from "../project/types";
5
+ export declare function reactTemplate(): FrontendTemplateResult;
6
+ //# sourceMappingURL=react.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/frontend/react.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE/D,wBAAgB,aAAa,IAAI,sBAAsB,CAsItD"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * SolidJS Frontend Template
3
+ */
4
+ import type { FrontendTemplateResult } from "../project/types";
5
+ export declare function solidTemplate(): FrontendTemplateResult;
6
+ //# sourceMappingURL=solid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solid.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/frontend/solid.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE/D,wBAAgB,aAAa,IAAI,sBAAsB,CAgItD"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Svelte Frontend Template
3
+ */
4
+ import type { FrontendTemplateResult } from "../project/types";
5
+ export declare function svelteTemplate(): FrontendTemplateResult;
6
+ //# sourceMappingURL=svelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"svelte.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/frontend/svelte.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE/D,wBAAgB,cAAc,IAAI,sBAAsB,CA6HvD"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Vue Frontend Template
3
+ */
4
+ import type { FrontendTemplateResult } from "../project/types";
5
+ export declare function vueTemplate(): FrontendTemplateResult;
6
+ //# sourceMappingURL=vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vue.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/frontend/vue.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE/D,wBAAgB,WAAW,IAAI,sBAAsB,CA4HpD"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Generators Templates
3
+ *
4
+ * Code generator templates registry
5
+ */
6
+ export type { GeneratorType, GeneratorConfig, GeneratorResult, } from "./types";
7
+ export { GENERATOR_ALIASES } from "./types";
8
+ import type { GeneratorConfig, GeneratorType } from "./types";
9
+ /**
10
+ * Generator template function type
11
+ */
12
+ type GeneratorTemplate = (config: GeneratorConfig) => string;
13
+ /**
14
+ * Get generator template
15
+ */
16
+ export declare function getGeneratorTemplate(type: GeneratorType): GeneratorTemplate;
17
+ /**
18
+ * Get all available generator types
19
+ */
20
+ export declare function getGeneratorTypes(): GeneratorType[];
21
+ /**
22
+ * Get default directory for generator type
23
+ */
24
+ export declare function getDefaultDirectory(type: GeneratorType): string;
25
+ /**
26
+ * Get file extension for generator type
27
+ */
28
+ export declare function getFileExtension(type: GeneratorType): string;
29
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/generators/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EACX,aAAa,EACb,eAAe,EACf,eAAe,GACf,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,KAAK,EAAE,eAAe,EAAmB,aAAa,EAAE,MAAM,SAAS,CAAC;AAE/E;;GAEG;AACH,KAAK,iBAAiB,GAAG,CAAC,MAAM,EAAE,eAAe,KAAK,MAAM,CAAC;AAkB7D;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,aAAa,GAAG,iBAAiB,CAE3E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,aAAa,EAAE,CAEnD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,CAsB/D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,CAE5D"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Generator Types
3
+ *
4
+ * Type definitions for code generators
5
+ */
6
+ /**
7
+ * Generator types available
8
+ */
9
+ export type GeneratorType = "controller" | "service" | "module" | "guard" | "interceptor" | "pipe" | "filter" | "dto" | "middleware" | "migration";
10
+ /**
11
+ * Generator aliases
12
+ */
13
+ export declare const GENERATOR_ALIASES: Record<string, GeneratorType>;
14
+ /**
15
+ * Generator configuration
16
+ */
17
+ export interface GeneratorConfig {
18
+ type: GeneratorType;
19
+ name: string;
20
+ module?: string;
21
+ path?: string;
22
+ dryRun: boolean;
23
+ force: boolean;
24
+ }
25
+ /**
26
+ * Generator result
27
+ */
28
+ export interface GeneratorResult {
29
+ filePath: string;
30
+ content: string;
31
+ }
32
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/generators/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,MAAM,aAAa,GACtB,YAAY,GACZ,SAAS,GACT,QAAQ,GACR,OAAO,GACP,aAAa,GACb,MAAM,GACN,QAAQ,GACR,KAAK,GACL,YAAY,GACZ,WAAW,CAAC;AAEf;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAW3D,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CAChB"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * CLI Templates
3
+ *
4
+ * Export all template functions for project scaffolding
5
+ */
6
+ export { getDockerfileTemplate, getDockerignoreTemplate, getDockerComposeTemplate, getDockerEnvTemplate, } from "./docker";
7
+ export { type DeployPlatform, getRenderYamlTemplate, getFlyTomlTemplate, getRailwayTomlTemplate, getDeployTemplate, getDeployFilename, getDeployPlatformName, } from "./deploy";
8
+ export { type ProjectTemplate, type ProjectConfig, type FrontendFramework, type DatabaseDriver, getProjectTemplate, getTemplateOptions, } from "./project";
9
+ export { getDatabaseTemplate, getDatabaseOptions, } from "./database";
10
+ export { getFrontendTemplate, getFrontendOptions, } from "./frontend";
11
+ export { type GeneratorType, type GeneratorConfig, GENERATOR_ALIASES, getGeneratorTemplate, getGeneratorTypes, getDefaultDirectory, getFileExtension, } from "./generators";
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/templates/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACN,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EACxB,oBAAoB,GACpB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACN,KAAK,cAAc,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,GACrB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,kBAAkB,EAClB,kBAAkB,GAClB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACN,mBAAmB,EACnB,kBAAkB,GAClB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACN,mBAAmB,EACnB,kBAAkB,GAClB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACN,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,GAChB,MAAM,cAAc,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * API Project Template
3
+ */
4
+ import type { ProjectConfig, ProjectTemplateResult } from "./types";
5
+ export declare function apiTemplate(config: ProjectConfig): ProjectTemplateResult;
6
+ //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/project/api.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEpE,wBAAgB,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,qBAAqB,CAyExE"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Default Project Template
3
+ */
4
+ import type { ProjectConfig, ProjectTemplateResult } from "./types";
5
+ export declare function defaultTemplate(config: ProjectConfig): ProjectTemplateResult;
6
+ //# sourceMappingURL=default.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/project/default.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEpE,wBAAgB,eAAe,CAAC,MAAM,EAAE,aAAa,GAAG,qBAAqB,CAgI5E"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Fullstack Project Template
3
+ *
4
+ * Two-stage fullstack creation:
5
+ * Stage 1: Creates API template (backend)
6
+ * Stage 2: Runs add:frontend command (frontend)
7
+ *
8
+ * This template is actually just the API template.
9
+ * The frontend is added via the add:frontend command,
10
+ * making fullstack setup transparent and reusable.
11
+ */
12
+ import type { ProjectConfig, ProjectTemplateResult } from "./types";
13
+ export declare function fullstackTemplate(config: ProjectConfig): ProjectTemplateResult;
14
+ //# sourceMappingURL=fullstack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fullstack.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/project/fullstack.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEpE,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,aAAa,GAAG,qBAAqB,CAK9E"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Project Templates
3
+ *
4
+ * Project template registry and exports
5
+ */
6
+ export type { ProjectTemplate, ProjectConfig, ProjectTemplateResult, FrontendFramework, DatabaseDriver, TemplateFile, SelectOption, } from "./types";
7
+ import { apiTemplate } from "./api";
8
+ import { defaultTemplate } from "./default";
9
+ import { fullstackTemplate } from "./fullstack";
10
+ import { minimalTemplate } from "./minimal";
11
+ import type { ProjectConfig, ProjectTemplate, ProjectTemplateResult } from "./types";
12
+ import { websiteTemplate } from "./website";
13
+ /**
14
+ * Get project template based on template type
15
+ */
16
+ export declare function getProjectTemplate(template: ProjectTemplate): (config: ProjectConfig) => ProjectTemplateResult;
17
+ /**
18
+ * Get template selection options for prompts
19
+ */
20
+ export declare function getTemplateOptions(): {
21
+ value: ProjectTemplate;
22
+ name: string;
23
+ description: string;
24
+ }[];
25
+ export { defaultTemplate, minimalTemplate, fullstackTemplate, apiTemplate, websiteTemplate, };
26
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/project/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EACX,eAAe,EACf,aAAa,EACb,qBAAqB,EACrB,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,YAAY,GACZ,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,KAAK,EACX,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAgB5C;;GAEG;AACH,wBAAgB,kBAAkB,CACjC,QAAQ,EAAE,eAAe,GACvB,CAAC,MAAM,EAAE,aAAa,KAAK,qBAAqB,CAElD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI;IACrC,KAAK,EAAE,eAAe,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACpB,EAAE,CA4BF;AAED,OAAO,EACN,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,WAAW,EACX,eAAe,GACf,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Minimal Project Template
3
+ */
4
+ import type { ProjectConfig, ProjectTemplateResult } from "./types";
5
+ export declare function minimalTemplate(config: ProjectConfig): ProjectTemplateResult;
6
+ //# sourceMappingURL=minimal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minimal.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/project/minimal.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEpE,wBAAgB,eAAe,CAAC,MAAM,EAAE,aAAa,GAAG,qBAAqB,CAqC5E"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Project Template Types
3
+ *
4
+ * Type definitions for project scaffolding
5
+ */
6
+ /**
7
+ * Project templates
8
+ */
9
+ export type ProjectTemplate = "default" | "minimal" | "fullstack" | "api" | "website";
10
+ /**
11
+ * Frontend frameworks
12
+ */
13
+ export type FrontendFramework = "react" | "vue" | "svelte" | "solid" | "none";
14
+ /**
15
+ * Database drivers
16
+ */
17
+ export type DatabaseDriver = "sqlite" | "postgresql" | "mysql" | "none";
18
+ /**
19
+ * Deploy platforms
20
+ */
21
+ export type DeployPlatform = "render" | "fly" | "railway";
22
+ /**
23
+ * Project configuration interface
24
+ */
25
+ export interface ProjectConfig {
26
+ name: string;
27
+ template: ProjectTemplate;
28
+ framework: FrontendFramework;
29
+ database: DatabaseDriver;
30
+ skipInstall: boolean;
31
+ skipGit: boolean;
32
+ docker: boolean;
33
+ deploy: DeployPlatform[];
34
+ link: boolean;
35
+ }
36
+ /**
37
+ * Template file representation
38
+ */
39
+ export interface TemplateFile {
40
+ path: string;
41
+ content: string;
42
+ }
43
+ /**
44
+ * Project template result
45
+ */
46
+ export interface ProjectTemplateResult {
47
+ files: TemplateFile[];
48
+ directories: string[];
49
+ dependencies?: Record<string, string>;
50
+ devDependencies?: Record<string, string>;
51
+ scripts?: Record<string, string>;
52
+ }
53
+ /**
54
+ * Database template result
55
+ */
56
+ export interface DatabaseTemplateResult {
57
+ files: TemplateFile[];
58
+ directories: string[];
59
+ envConfig?: string;
60
+ configCode?: string;
61
+ }
62
+ /**
63
+ * Frontend template result
64
+ */
65
+ export interface FrontendTemplateResult {
66
+ files: TemplateFile[];
67
+ directories: string[];
68
+ dependencies: Record<string, string>;
69
+ devDependencies: Record<string, string>;
70
+ scripts: Record<string, string>;
71
+ }
72
+ /**
73
+ * Option for interactive selection
74
+ */
75
+ export interface SelectOption<T> {
76
+ value: T;
77
+ name: string;
78
+ description?: string;
79
+ }
80
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/project/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,MAAM,eAAe,GACxB,SAAS,GACT,SAAS,GACT,WAAW,GACX,KAAK,GACL,SAAS,CAAC;AAEb;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;AAE9E;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC;AAExE;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,aAAa;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,eAAe,CAAC;IAC1B,SAAS,EAAE,iBAAiB,CAAC;IAC7B,QAAQ,EAAE,cAAc,CAAC;IACzB,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,IAAI,EAAE,OAAO,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC9B,KAAK,EAAE,CAAC,CAAC;IACT,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Website Project Template
3
+ *
4
+ * Static website template using SSG (Static Site Generation)
5
+ */
6
+ import type { ProjectConfig, ProjectTemplateResult } from "./types";
7
+ export declare function websiteTemplate(config: ProjectConfig): ProjectTemplateResult;
8
+ //# sourceMappingURL=website.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"website.d.ts","sourceRoot":"","sources":["../../../../src/cli/templates/project/website.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEpE,wBAAgB,eAAe,CAAC,MAAM,EAAE,aAAa,GAAG,qBAAqB,CAgT5E"}
@@ -0,0 +1,137 @@
1
+ /**
2
+ * File System Utilities for Bueno CLI
3
+ *
4
+ * Provides file system operations using Bun's native APIs
5
+ */
6
+ /**
7
+ * Check if a file exists
8
+ */
9
+ export declare function fileExists(filePath: string): Promise<boolean>;
10
+ /**
11
+ * Check if a file exists (sync)
12
+ */
13
+ export declare function fileExistsSync(filePath: string): boolean;
14
+ /**
15
+ * Check if a path is a directory
16
+ */
17
+ export declare function isDirectory(dirPath: string): Promise<boolean>;
18
+ /**
19
+ * Check if a path is a directory (sync)
20
+ */
21
+ export declare function isDirectorySync(dirPath: string): boolean;
22
+ /**
23
+ * Create a directory recursively
24
+ */
25
+ export declare function createDirectory(dirPath: string): Promise<void>;
26
+ /**
27
+ * Create a directory recursively (sync)
28
+ */
29
+ export declare function createDirectorySync(dirPath: string): void;
30
+ /**
31
+ * Read a file as string
32
+ */
33
+ export declare function readFile(filePath: string): Promise<string>;
34
+ /**
35
+ * Read a file as string (sync)
36
+ */
37
+ export declare function readFileSync(filePath: string): string;
38
+ /**
39
+ * Write a file
40
+ */
41
+ export declare function writeFile(filePath: string, content: string): Promise<void>;
42
+ /**
43
+ * Write a file (sync)
44
+ */
45
+ export declare function writeFileSync(filePath: string, content: string): void;
46
+ /**
47
+ * Delete a file
48
+ */
49
+ export declare function deleteFile(filePath: string): Promise<void>;
50
+ /**
51
+ * Delete a file (sync)
52
+ */
53
+ export declare function deleteFileSync(filePath: string): void;
54
+ /**
55
+ * Delete a directory recursively
56
+ */
57
+ export declare function deleteDirectory(dirPath: string): Promise<void>;
58
+ /**
59
+ * Delete a directory recursively (sync)
60
+ */
61
+ export declare function deleteDirectorySync(dirPath: string): void;
62
+ /**
63
+ * Copy a file
64
+ */
65
+ export declare function copyFile(src: string, dest: string): Promise<void>;
66
+ /**
67
+ * Copy a directory recursively
68
+ */
69
+ export declare function copyDirectory(src: string, dest: string, options?: {
70
+ exclude?: string[];
71
+ }): Promise<void>;
72
+ /**
73
+ * List files in a directory
74
+ */
75
+ export declare function listFiles(dirPath: string, options?: {
76
+ recursive?: boolean;
77
+ pattern?: RegExp;
78
+ }): Promise<string[]>;
79
+ /**
80
+ * Find a file by name in parent directories
81
+ */
82
+ export declare function findFileUp(startDir: string, fileName: string, options?: {
83
+ stopAt?: string;
84
+ }): Promise<string | null>;
85
+ /**
86
+ * Get the project root directory
87
+ */
88
+ export declare function getProjectRoot(startDir?: string): Promise<string | null>;
89
+ /**
90
+ * Check if path is inside a Bueno project
91
+ */
92
+ export declare function isBuenoProject(dir?: string): Promise<boolean>;
93
+ /**
94
+ * Read JSON file
95
+ */
96
+ export declare function readJson<T = unknown>(filePath: string): Promise<T>;
97
+ /**
98
+ * Write JSON file
99
+ */
100
+ export declare function writeJson(filePath: string, data: unknown, options?: {
101
+ pretty?: boolean;
102
+ }): Promise<void>;
103
+ /**
104
+ * Get relative path
105
+ */
106
+ export declare function relativePath(from: string, to: string): string;
107
+ /**
108
+ * Join paths
109
+ */
110
+ export declare function joinPaths(...paths: string[]): string;
111
+ /**
112
+ * Get file name without extension
113
+ */
114
+ export declare function getFileName(filePath: string): string;
115
+ /**
116
+ * Get directory name
117
+ */
118
+ export declare function getDirName(filePath: string): string;
119
+ /**
120
+ * Get file extension
121
+ */
122
+ export declare function getExtName(filePath: string): string;
123
+ /**
124
+ * Normalize path separators
125
+ */
126
+ export declare function normalizePath(filePath: string): string;
127
+ /**
128
+ * Template file processing
129
+ */
130
+ export interface TemplateData {
131
+ [key: string]: string | number | boolean | TemplateData | TemplateData[];
132
+ }
133
+ /**
134
+ * Process a template string
135
+ */
136
+ export declare function processTemplate(template: string, data: TemplateData): string;
137
+ //# sourceMappingURL=fs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/fs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * CLI Utilities
3
+ *
4
+ * Re-exports all utility functions
5
+ */
6
+ export * from "./strings";
7
+ export * from "./fs";
8
+ export * from "./version";
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,WAAW,CAAC;AAC1B,cAAc,MAAM,CAAC;AACrB,cAAc,WAAW,CAAC"}