semola 0.5.3 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (367) hide show
  1. package/README.md +18 -45
  2. package/dist/chunk-CKQMccvm.cjs +28 -0
  3. package/dist/lib/api/index.cjs +536 -4
  4. package/dist/lib/api/index.d.cts +270 -4
  5. package/dist/lib/api/index.d.mts +270 -4
  6. package/dist/lib/api/index.mjs +534 -2
  7. package/dist/lib/cache/index.cjs +47 -22
  8. package/dist/lib/cache/index.d.cts +14 -23
  9. package/dist/lib/cache/index.d.mts +14 -23
  10. package/dist/lib/cache/index.mjs +48 -25
  11. package/dist/lib/cron/index.cjs +734 -12
  12. package/dist/lib/cron/index.d.cts +145 -3
  13. package/dist/lib/cron/index.d.mts +145 -3
  14. package/dist/lib/cron/index.mjs +725 -3
  15. package/dist/lib/errors/index.d.cts +4 -4
  16. package/dist/lib/errors/index.d.mts +4 -4
  17. package/dist/lib/errors/index.mjs +0 -2
  18. package/dist/lib/i18n/index.d.cts +12 -4
  19. package/dist/lib/i18n/index.d.mts +12 -4
  20. package/dist/lib/i18n/index.mjs +0 -2
  21. package/dist/lib/logging/index.cjs +387 -17
  22. package/dist/lib/logging/index.d.cts +107 -6
  23. package/dist/lib/logging/index.d.mts +107 -6
  24. package/dist/lib/logging/index.mjs +373 -4
  25. package/dist/lib/orm/index.cjs +1641 -19
  26. package/dist/lib/orm/index.d.cts +402 -7
  27. package/dist/lib/orm/index.d.mts +402 -7
  28. package/dist/lib/orm/index.mjs +1630 -6
  29. package/dist/lib/policy/index.cjs +206 -20
  30. package/dist/lib/policy/index.d.cts +61 -5
  31. package/dist/lib/policy/index.d.mts +61 -5
  32. package/dist/lib/policy/index.mjs +187 -3
  33. package/dist/lib/prompts/index.cjs +374 -14
  34. package/dist/lib/prompts/index.d.cts +73 -29
  35. package/dist/lib/prompts/index.d.mts +73 -29
  36. package/dist/lib/prompts/index.mjs +361 -4
  37. package/dist/lib/pubsub/index.cjs +43 -19
  38. package/dist/lib/pubsub/index.d.cts +12 -22
  39. package/dist/lib/pubsub/index.d.mts +12 -22
  40. package/dist/lib/pubsub/index.mjs +44 -22
  41. package/dist/lib/queue/index.cjs +40 -10
  42. package/dist/lib/queue/index.d.cts +57 -8
  43. package/dist/lib/queue/index.d.mts +57 -8
  44. package/dist/lib/queue/index.mjs +39 -13
  45. package/dist/lib/workflow/index.cjs +285 -282
  46. package/dist/lib/workflow/index.d.cts +147 -4
  47. package/dist/lib/workflow/index.d.mts +147 -4
  48. package/dist/lib/workflow/index.mjs +278 -286
  49. package/package.json +11 -1
  50. package/dist/api/core/index.cjs +0 -206
  51. package/dist/api/core/index.d.cts +0 -21
  52. package/dist/api/core/index.d.cts.map +0 -1
  53. package/dist/api/core/index.d.mts +0 -21
  54. package/dist/api/core/index.d.mts.map +0 -1
  55. package/dist/api/core/index.mjs +0 -208
  56. package/dist/api/core/index.mjs.map +0 -1
  57. package/dist/api/core/types.d.cts +0 -107
  58. package/dist/api/core/types.d.cts.map +0 -1
  59. package/dist/api/core/types.d.mts +0 -107
  60. package/dist/api/core/types.d.mts.map +0 -1
  61. package/dist/api/middleware/index.cjs +0 -8
  62. package/dist/api/middleware/index.d.cts +0 -11
  63. package/dist/api/middleware/index.d.cts.map +0 -1
  64. package/dist/api/middleware/index.d.mts +0 -11
  65. package/dist/api/middleware/index.d.mts.map +0 -1
  66. package/dist/api/middleware/index.mjs +0 -10
  67. package/dist/api/middleware/index.mjs.map +0 -1
  68. package/dist/api/middleware/types.d.cts +0 -16
  69. package/dist/api/middleware/types.d.cts.map +0 -1
  70. package/dist/api/middleware/types.d.mts +0 -16
  71. package/dist/api/middleware/types.d.mts.map +0 -1
  72. package/dist/api/openapi/index.cjs +0 -254
  73. package/dist/api/openapi/index.mjs +0 -256
  74. package/dist/api/openapi/index.mjs.map +0 -1
  75. package/dist/api/openapi/types.d.cts +0 -60
  76. package/dist/api/openapi/types.d.cts.map +0 -1
  77. package/dist/api/openapi/types.d.mts +0 -60
  78. package/dist/api/openapi/types.d.mts.map +0 -1
  79. package/dist/api/validation/index.cjs +0 -64
  80. package/dist/api/validation/index.mjs +0 -61
  81. package/dist/api/validation/index.mjs.map +0 -1
  82. package/dist/cache/types.d.cts +0 -17
  83. package/dist/cache/types.d.cts.map +0 -1
  84. package/dist/cache/types.d.mts +0 -17
  85. package/dist/cache/types.d.mts.map +0 -1
  86. package/dist/cron/builder/index.cjs +0 -166
  87. package/dist/cron/builder/index.d.cts +0 -28
  88. package/dist/cron/builder/index.d.cts.map +0 -1
  89. package/dist/cron/builder/index.d.mts +0 -28
  90. package/dist/cron/builder/index.d.mts.map +0 -1
  91. package/dist/cron/builder/index.mjs +0 -163
  92. package/dist/cron/builder/index.mjs.map +0 -1
  93. package/dist/cron/builder/types.cjs +0 -27
  94. package/dist/cron/builder/types.d.cts +0 -79
  95. package/dist/cron/builder/types.d.cts.map +0 -1
  96. package/dist/cron/builder/types.d.mts +0 -79
  97. package/dist/cron/builder/types.d.mts.map +0 -1
  98. package/dist/cron/builder/types.mjs +0 -28
  99. package/dist/cron/builder/types.mjs.map +0 -1
  100. package/dist/cron/core/index.cjs +0 -308
  101. package/dist/cron/core/index.d.cts +0 -39
  102. package/dist/cron/core/index.d.cts.map +0 -1
  103. package/dist/cron/core/index.d.mts +0 -39
  104. package/dist/cron/core/index.d.mts.map +0 -1
  105. package/dist/cron/core/index.mjs +0 -310
  106. package/dist/cron/core/index.mjs.map +0 -1
  107. package/dist/cron/core/scanner.cjs +0 -237
  108. package/dist/cron/core/scanner.mjs +0 -238
  109. package/dist/cron/core/scanner.mjs.map +0 -1
  110. package/dist/cron/core/types.d.cts +0 -11
  111. package/dist/cron/core/types.d.cts.map +0 -1
  112. package/dist/cron/core/types.d.mts +0 -11
  113. package/dist/cron/core/types.d.mts.map +0 -1
  114. package/dist/errors/types.d.cts +0 -5
  115. package/dist/errors/types.d.cts.map +0 -1
  116. package/dist/errors/types.d.mts +0 -5
  117. package/dist/errors/types.d.mts.map +0 -1
  118. package/dist/i18n/types.d.cts +0 -13
  119. package/dist/i18n/types.d.cts.map +0 -1
  120. package/dist/i18n/types.d.mts +0 -13
  121. package/dist/i18n/types.d.mts.map +0 -1
  122. package/dist/lib/cache/index.d.cts.map +0 -1
  123. package/dist/lib/cache/index.d.mts.map +0 -1
  124. package/dist/lib/cache/index.mjs.map +0 -1
  125. package/dist/lib/errors/index.d.cts.map +0 -1
  126. package/dist/lib/errors/index.d.mts.map +0 -1
  127. package/dist/lib/errors/index.mjs.map +0 -1
  128. package/dist/lib/i18n/index.d.cts.map +0 -1
  129. package/dist/lib/i18n/index.d.mts.map +0 -1
  130. package/dist/lib/i18n/index.mjs.map +0 -1
  131. package/dist/lib/policy/index.d.cts.map +0 -1
  132. package/dist/lib/policy/index.d.mts.map +0 -1
  133. package/dist/lib/policy/index.mjs.map +0 -1
  134. package/dist/lib/prompts/index.d.cts.map +0 -1
  135. package/dist/lib/prompts/index.d.mts.map +0 -1
  136. package/dist/lib/prompts/index.mjs.map +0 -1
  137. package/dist/lib/pubsub/index.d.cts.map +0 -1
  138. package/dist/lib/pubsub/index.d.mts.map +0 -1
  139. package/dist/lib/pubsub/index.mjs.map +0 -1
  140. package/dist/lib/queue/index.d.cts.map +0 -1
  141. package/dist/lib/queue/index.d.mts.map +0 -1
  142. package/dist/lib/queue/index.mjs.map +0 -1
  143. package/dist/lib/workflow/index.d.cts.map +0 -1
  144. package/dist/lib/workflow/index.d.mts.map +0 -1
  145. package/dist/lib/workflow/index.mjs.map +0 -1
  146. package/dist/logging/core/index.cjs +0 -99
  147. package/dist/logging/core/index.d.cts +0 -26
  148. package/dist/logging/core/index.d.cts.map +0 -1
  149. package/dist/logging/core/index.d.mts +0 -26
  150. package/dist/logging/core/index.d.mts.map +0 -1
  151. package/dist/logging/core/index.mjs +0 -99
  152. package/dist/logging/core/index.mjs.map +0 -1
  153. package/dist/logging/core/types.cjs +0 -10
  154. package/dist/logging/core/types.d.cts +0 -22
  155. package/dist/logging/core/types.d.cts.map +0 -1
  156. package/dist/logging/core/types.d.mts +0 -22
  157. package/dist/logging/core/types.d.mts.map +0 -1
  158. package/dist/logging/core/types.mjs +0 -12
  159. package/dist/logging/core/types.mjs.map +0 -1
  160. package/dist/logging/formatter/index.cjs +0 -119
  161. package/dist/logging/formatter/index.d.cts +0 -27
  162. package/dist/logging/formatter/index.d.cts.map +0 -1
  163. package/dist/logging/formatter/index.d.mts +0 -27
  164. package/dist/logging/formatter/index.d.mts.map +0 -1
  165. package/dist/logging/formatter/index.mjs +0 -115
  166. package/dist/logging/formatter/index.mjs.map +0 -1
  167. package/dist/logging/formatter/types.d.cts +0 -5
  168. package/dist/logging/formatter/types.d.cts.map +0 -1
  169. package/dist/logging/formatter/types.d.mts +0 -5
  170. package/dist/logging/formatter/types.d.mts.map +0 -1
  171. package/dist/logging/provider/index.cjs +0 -165
  172. package/dist/logging/provider/index.d.cts +0 -28
  173. package/dist/logging/provider/index.d.cts.map +0 -1
  174. package/dist/logging/provider/index.d.mts +0 -28
  175. package/dist/logging/provider/index.d.mts.map +0 -1
  176. package/dist/logging/provider/index.mjs +0 -165
  177. package/dist/logging/provider/index.mjs.map +0 -1
  178. package/dist/logging/provider/types.d.cts +0 -23
  179. package/dist/logging/provider/types.d.cts.map +0 -1
  180. package/dist/logging/provider/types.d.mts +0 -23
  181. package/dist/logging/provider/types.d.mts.map +0 -1
  182. package/dist/node_modules/@standard-schema/spec/dist/index.d.cts +0 -80
  183. package/dist/node_modules/@standard-schema/spec/dist/index.d.cts.map +0 -1
  184. package/dist/node_modules/@standard-schema/spec/dist/index.d.mts +0 -80
  185. package/dist/node_modules/@standard-schema/spec/dist/index.d.mts.map +0 -1
  186. package/dist/orm/column.cjs +0 -137
  187. package/dist/orm/column.d.cts +0 -121
  188. package/dist/orm/column.d.cts.map +0 -1
  189. package/dist/orm/column.d.mts +0 -121
  190. package/dist/orm/column.d.mts.map +0 -1
  191. package/dist/orm/column.mjs +0 -132
  192. package/dist/orm/column.mjs.map +0 -1
  193. package/dist/orm/dialect/index.cjs +0 -14
  194. package/dist/orm/dialect/index.mjs +0 -16
  195. package/dist/orm/dialect/index.mjs.map +0 -1
  196. package/dist/orm/dialect/mysql.cjs +0 -31
  197. package/dist/orm/dialect/mysql.mjs +0 -33
  198. package/dist/orm/dialect/mysql.mjs.map +0 -1
  199. package/dist/orm/dialect/postgres.cjs +0 -23
  200. package/dist/orm/dialect/postgres.mjs +0 -25
  201. package/dist/orm/dialect/postgres.mjs.map +0 -1
  202. package/dist/orm/dialect/sqlite.cjs +0 -31
  203. package/dist/orm/dialect/sqlite.mjs +0 -33
  204. package/dist/orm/dialect/sqlite.mjs.map +0 -1
  205. package/dist/orm/dialect/utils.cjs +0 -8
  206. package/dist/orm/dialect/utils.mjs +0 -10
  207. package/dist/orm/dialect/utils.mjs.map +0 -1
  208. package/dist/orm/internal/table-columns.cjs +0 -31
  209. package/dist/orm/internal/table-columns.mjs +0 -32
  210. package/dist/orm/internal/table-columns.mjs.map +0 -1
  211. package/dist/orm/internal/table-lookup.cjs +0 -35
  212. package/dist/orm/internal/table-lookup.mjs +0 -35
  213. package/dist/orm/internal/table-lookup.mjs.map +0 -1
  214. package/dist/orm/internal/table-relations.cjs +0 -28
  215. package/dist/orm/internal/table-relations.mjs +0 -29
  216. package/dist/orm/internal/table-relations.mjs.map +0 -1
  217. package/dist/orm/migration/config.cjs +0 -7
  218. package/dist/orm/migration/config.d.cts +0 -7
  219. package/dist/orm/migration/config.d.cts.map +0 -1
  220. package/dist/orm/migration/config.d.mts +0 -7
  221. package/dist/orm/migration/config.d.mts.map +0 -1
  222. package/dist/orm/migration/config.mjs +0 -8
  223. package/dist/orm/migration/config.mjs.map +0 -1
  224. package/dist/orm/migration/types.d.cts +0 -20
  225. package/dist/orm/migration/types.d.cts.map +0 -1
  226. package/dist/orm/migration/types.d.mts +0 -20
  227. package/dist/orm/migration/types.d.mts.map +0 -1
  228. package/dist/orm/orm.cjs +0 -41
  229. package/dist/orm/orm.d.cts +0 -18
  230. package/dist/orm/orm.d.cts.map +0 -1
  231. package/dist/orm/orm.d.mts +0 -18
  232. package/dist/orm/orm.d.mts.map +0 -1
  233. package/dist/orm/orm.mjs +0 -43
  234. package/dist/orm/orm.mjs.map +0 -1
  235. package/dist/orm/relation.cjs +0 -18
  236. package/dist/orm/relation.d.cts +0 -8
  237. package/dist/orm/relation.d.cts.map +0 -1
  238. package/dist/orm/relation.d.mts +0 -8
  239. package/dist/orm/relation.d.mts.map +0 -1
  240. package/dist/orm/relation.mjs +0 -19
  241. package/dist/orm/relation.mjs.map +0 -1
  242. package/dist/orm/runtime/builders/mutations.cjs +0 -29
  243. package/dist/orm/runtime/builders/mutations.mjs +0 -28
  244. package/dist/orm/runtime/builders/mutations.mjs.map +0 -1
  245. package/dist/orm/runtime/builders/select.cjs +0 -18
  246. package/dist/orm/runtime/builders/select.mjs +0 -19
  247. package/dist/orm/runtime/builders/select.mjs.map +0 -1
  248. package/dist/orm/runtime/client.cjs +0 -90
  249. package/dist/orm/runtime/client.mjs +0 -92
  250. package/dist/orm/runtime/client.mjs.map +0 -1
  251. package/dist/orm/runtime/context.cjs +0 -49
  252. package/dist/orm/runtime/context.mjs +0 -51
  253. package/dist/orm/runtime/context.mjs.map +0 -1
  254. package/dist/orm/runtime/dialect/index.cjs +0 -11
  255. package/dist/orm/runtime/dialect/index.mjs +0 -13
  256. package/dist/orm/runtime/dialect/index.mjs.map +0 -1
  257. package/dist/orm/runtime/dialect/mysql.cjs +0 -95
  258. package/dist/orm/runtime/dialect/mysql.mjs +0 -97
  259. package/dist/orm/runtime/dialect/mysql.mjs.map +0 -1
  260. package/dist/orm/runtime/dialect/postgres.cjs +0 -51
  261. package/dist/orm/runtime/dialect/postgres.mjs +0 -53
  262. package/dist/orm/runtime/dialect/postgres.mjs.map +0 -1
  263. package/dist/orm/runtime/dialect/sqlite.cjs +0 -4
  264. package/dist/orm/runtime/dialect/sqlite.mjs +0 -7
  265. package/dist/orm/runtime/dialect/sqlite.mjs.map +0 -1
  266. package/dist/orm/runtime/errors.cjs +0 -19
  267. package/dist/orm/runtime/errors.mjs +0 -21
  268. package/dist/orm/runtime/errors.mjs.map +0 -1
  269. package/dist/orm/runtime/hydrate/many.cjs +0 -46
  270. package/dist/orm/runtime/hydrate/many.mjs +0 -48
  271. package/dist/orm/runtime/hydrate/many.mjs.map +0 -1
  272. package/dist/orm/runtime/hydrate/one.cjs +0 -38
  273. package/dist/orm/runtime/hydrate/one.mjs +0 -40
  274. package/dist/orm/runtime/hydrate/one.mjs.map +0 -1
  275. package/dist/orm/runtime/hydrate.cjs +0 -49
  276. package/dist/orm/runtime/hydrate.mjs +0 -51
  277. package/dist/orm/runtime/hydrate.mjs.map +0 -1
  278. package/dist/orm/runtime/rows.cjs +0 -30
  279. package/dist/orm/runtime/rows.mjs +0 -31
  280. package/dist/orm/runtime/rows.mjs.map +0 -1
  281. package/dist/orm/runtime/utils.cjs +0 -27
  282. package/dist/orm/runtime/utils.mjs +0 -27
  283. package/dist/orm/runtime/utils.mjs.map +0 -1
  284. package/dist/orm/sql/parse-array.cjs +0 -64
  285. package/dist/orm/sql/parse-array.mjs +0 -66
  286. package/dist/orm/sql/parse-array.mjs.map +0 -1
  287. package/dist/orm/sql/plan/select.cjs +0 -36
  288. package/dist/orm/sql/plan/select.mjs +0 -38
  289. package/dist/orm/sql/plan/select.mjs.map +0 -1
  290. package/dist/orm/sql/plan/where/operators.cjs +0 -95
  291. package/dist/orm/sql/plan/where/operators.mjs +0 -97
  292. package/dist/orm/sql/plan/where/operators.mjs.map +0 -1
  293. package/dist/orm/sql/plan/where.cjs +0 -59
  294. package/dist/orm/sql/plan/where.mjs +0 -61
  295. package/dist/orm/sql/plan/where.mjs.map +0 -1
  296. package/dist/orm/sql/serialize/clauses.cjs +0 -36
  297. package/dist/orm/sql/serialize/clauses.mjs +0 -37
  298. package/dist/orm/sql/serialize/clauses.mjs.map +0 -1
  299. package/dist/orm/sql/serialize/joins.cjs +0 -31
  300. package/dist/orm/sql/serialize/joins.mjs +0 -33
  301. package/dist/orm/sql/serialize/joins.mjs.map +0 -1
  302. package/dist/orm/sql/serialize/values.cjs +0 -30
  303. package/dist/orm/sql/serialize/values.mjs +0 -32
  304. package/dist/orm/sql/serialize/values.mjs.map +0 -1
  305. package/dist/orm/sql/serialize/where/predicate.cjs +0 -73
  306. package/dist/orm/sql/serialize/where/predicate.mjs +0 -75
  307. package/dist/orm/sql/serialize/where/predicate.mjs.map +0 -1
  308. package/dist/orm/sql/serialize/where/tree.cjs +0 -26
  309. package/dist/orm/sql/serialize/where/tree.mjs +0 -28
  310. package/dist/orm/sql/serialize/where/tree.mjs.map +0 -1
  311. package/dist/orm/sql/serialize/where.cjs +0 -10
  312. package/dist/orm/sql/serialize/where.mjs +0 -12
  313. package/dist/orm/sql/serialize/where.mjs.map +0 -1
  314. package/dist/orm/sql/serialize.cjs +0 -24
  315. package/dist/orm/sql/serialize.mjs +0 -25
  316. package/dist/orm/sql/serialize.mjs.map +0 -1
  317. package/dist/orm/table.cjs +0 -12
  318. package/dist/orm/table.d.cts +0 -12
  319. package/dist/orm/table.d.cts.map +0 -1
  320. package/dist/orm/table.d.mts +0 -12
  321. package/dist/orm/table.d.mts.map +0 -1
  322. package/dist/orm/table.mjs +0 -14
  323. package/dist/orm/table.mjs.map +0 -1
  324. package/dist/orm/types.d.cts +0 -183
  325. package/dist/orm/types.d.cts.map +0 -1
  326. package/dist/orm/types.d.mts +0 -183
  327. package/dist/orm/types.d.mts.map +0 -1
  328. package/dist/policy/helpers.cjs +0 -206
  329. package/dist/policy/helpers.d.cts +0 -50
  330. package/dist/policy/helpers.d.cts.map +0 -1
  331. package/dist/policy/helpers.d.mts +0 -50
  332. package/dist/policy/helpers.d.mts.map +0 -1
  333. package/dist/policy/helpers.mjs +0 -190
  334. package/dist/policy/helpers.mjs.map +0 -1
  335. package/dist/policy/types.d.cts +0 -16
  336. package/dist/policy/types.d.cts.map +0 -1
  337. package/dist/policy/types.d.mts +0 -16
  338. package/dist/policy/types.d.mts.map +0 -1
  339. package/dist/prompts/core/keys.cjs +0 -165
  340. package/dist/prompts/core/keys.mjs +0 -167
  341. package/dist/prompts/core/keys.mjs.map +0 -1
  342. package/dist/prompts/core/runtime.cjs +0 -104
  343. package/dist/prompts/core/runtime.mjs +0 -106
  344. package/dist/prompts/core/runtime.mjs.map +0 -1
  345. package/dist/prompts/core/session.cjs +0 -98
  346. package/dist/prompts/core/session.mjs +0 -100
  347. package/dist/prompts/core/session.mjs.map +0 -1
  348. package/dist/prompts/core/types.d.cts +0 -21
  349. package/dist/prompts/core/types.d.cts.map +0 -1
  350. package/dist/prompts/core/types.d.mts +0 -21
  351. package/dist/prompts/core/types.d.mts.map +0 -1
  352. package/dist/prompts/types.d.cts +0 -52
  353. package/dist/prompts/types.d.cts.map +0 -1
  354. package/dist/prompts/types.d.mts +0 -52
  355. package/dist/prompts/types.d.mts.map +0 -1
  356. package/dist/pubsub/types.d.cts +0 -10
  357. package/dist/pubsub/types.d.cts.map +0 -1
  358. package/dist/pubsub/types.d.mts +0 -10
  359. package/dist/pubsub/types.d.mts.map +0 -1
  360. package/dist/queue/types.d.cts +0 -47
  361. package/dist/queue/types.d.cts.map +0 -1
  362. package/dist/queue/types.d.mts +0 -47
  363. package/dist/queue/types.d.mts.map +0 -1
  364. package/dist/workflow/types.d.cts +0 -83
  365. package/dist/workflow/types.d.cts.map +0 -1
  366. package/dist/workflow/types.d.mts +0 -83
  367. package/dist/workflow/types.d.mts.map +0 -1
@@ -1,7 +1,150 @@
1
- import { StepHandler, Workflow, WorkflowError, WorkflowExecution, WorkflowHandlerContext, WorkflowMeta, WorkflowMetaField, WorkflowOptions, WorkflowStartOptions, WorkflowStartResult, WorkflowStatus } from "../../workflow/types.cjs";
2
-
1
+ //#region src/lib/workflow/types.d.ts
2
+ type WorkflowStatus = "pending" | "running" | "completed" | "failed" | "cancelled";
3
+ type StepSnapshot = {
4
+ name: string;
5
+ completedAt: number;
6
+ };
7
+ type WorkflowExecution<TInput, TResult> = {
8
+ id: string;
9
+ name: string;
10
+ status: WorkflowStatus;
11
+ input: TInput;
12
+ result: TResult | null;
13
+ error: string | null;
14
+ createdAt: number;
15
+ updatedAt: number;
16
+ completedAt: number | null;
17
+ failedAt: number | null;
18
+ cancelledAt: number | null;
19
+ steps: StepSnapshot[];
20
+ };
21
+ type StepHandler<TInput, TStep> = (input: TInput, signal: AbortSignal) => TStep | Promise<TStep>;
22
+ type WorkflowHandlerContext<TInput> = {
23
+ input: TInput;
24
+ executionId: string;
25
+ signal: AbortSignal;
26
+ step: <TStep>(name: string, handler: StepHandler<TInput, TStep>) => Promise<TStep>;
27
+ };
28
+ type SerializeValue<T> = (value: T) => string;
29
+ type DeserializeValue<T> = (raw: string) => T;
30
+ type WorkflowStepErrorRecord = {
31
+ attempt: number;
32
+ error: string;
33
+ timestamp: number;
34
+ };
35
+ type WorkflowStepRetryContext<TInput> = {
36
+ executionId: string;
37
+ input: TInput;
38
+ stepName: string;
39
+ error: string;
40
+ attempt: number;
41
+ nextRetryDelayMs: number;
42
+ retriesRemaining: number;
43
+ };
44
+ type WorkflowStepErrorContext<TInput> = {
45
+ executionId: string;
46
+ input: TInput;
47
+ stepName: string;
48
+ error: string;
49
+ totalAttempts: number;
50
+ errorHistory: WorkflowStepErrorRecord[];
51
+ };
52
+ type WorkflowHooks<TInput, TResult> = {
53
+ onStart?: (context: {
54
+ executionId: string;
55
+ input: TInput;
56
+ }) => void | Promise<void>;
57
+ onRetry?: (context: WorkflowStepRetryContext<TInput>) => void | Promise<void>;
58
+ onError?: (context: WorkflowStepErrorContext<TInput>) => void | Promise<void>;
59
+ onComplete?: (context: {
60
+ executionId: string;
61
+ input: TInput;
62
+ result: TResult;
63
+ }) => void | Promise<void>;
64
+ onCancel?: (context: {
65
+ executionId: string;
66
+ input: TInput;
67
+ }) => void | Promise<void>;
68
+ };
69
+ type WorkflowRetryBackoff = {
70
+ baseDelay?: number;
71
+ multiplier?: number;
72
+ maxDelay?: number;
73
+ };
74
+ type WorkflowOptions<TInput, TResult> = {
75
+ name: string;
76
+ redis: Bun.RedisClient;
77
+ handler: (context: WorkflowHandlerContext<TInput>) => TResult | Promise<TResult>;
78
+ retries?: number;
79
+ retryBackoff?: WorkflowRetryBackoff;
80
+ hooks?: WorkflowHooks<TInput, TResult>;
81
+ lockTTL?: number;
82
+ serializeInput?: SerializeValue<TInput>;
83
+ deserializeInput?: DeserializeValue<TInput>;
84
+ serializeResult?: SerializeValue<TResult>;
85
+ deserializeResult?: DeserializeValue<TResult>;
86
+ serializeStepOutput?: SerializeValue<unknown>;
87
+ deserializeStepOutput?: DeserializeValue<unknown>;
88
+ };
89
+ type WorkflowStartOptions = {
90
+ executionId?: string;
91
+ };
92
+ type WorkflowStartResult = {
93
+ executionId: string;
94
+ status: WorkflowStatus;
95
+ };
96
+ type WorkflowCancelResult = {
97
+ status: WorkflowStatus;
98
+ executionId: string;
99
+ updatedAt: number;
100
+ cancelledAt: number;
101
+ createdAt: number;
102
+ };
103
+ type WorkflowMeta = {
104
+ status: string;
105
+ input: string;
106
+ result: string;
107
+ error: string;
108
+ createdAt: string;
109
+ updatedAt: string;
110
+ completedAt: string;
111
+ failedAt: string;
112
+ cancelledAt: string;
113
+ steps: string;
114
+ };
115
+ type WorkflowMetaField = keyof WorkflowMeta;
116
+ type Workflow<TInput, TResult> = {
117
+ start: (input: TInput, options?: WorkflowStartOptions) => Promise<WorkflowStartResult>;
118
+ run: (input: TInput, options?: WorkflowStartOptions) => Promise<TResult | null>;
119
+ resume: (executionId: string) => Promise<WorkflowStartResult>;
120
+ get: (executionId: string) => Promise<WorkflowExecution<TInput, TResult>>;
121
+ cancel: (executionId: string) => Promise<WorkflowCancelResult>;
122
+ };
123
+ //#endregion
124
+ //#region src/lib/workflow/errors.d.ts
125
+ declare class WorkflowError extends Error {
126
+ constructor(message: string);
127
+ }
128
+ declare class NotFoundError extends Error {
129
+ constructor(message: string);
130
+ }
131
+ declare class StateError extends Error {
132
+ constructor(message: string);
133
+ }
134
+ declare class SerializationError extends Error {
135
+ constructor(message: string);
136
+ }
137
+ declare class ExecutionError extends Error {
138
+ constructor(message: string);
139
+ }
140
+ declare class LockError extends Error {
141
+ constructor(message: string);
142
+ }
143
+ declare class CancelledError extends Error {
144
+ constructor(message: string);
145
+ }
146
+ //#endregion
3
147
  //#region src/lib/workflow/index.d.ts
4
148
  declare const defineWorkflow: <TInput, TResult = void>(options: WorkflowOptions<TInput, TResult>) => Workflow<TInput, TResult>;
5
149
  //#endregion
6
- export { type StepHandler, type Workflow, type WorkflowError, type WorkflowExecution, type WorkflowHandlerContext, type WorkflowMeta, type WorkflowMetaField, type WorkflowOptions, type WorkflowStartOptions, type WorkflowStartResult, type WorkflowStatus, defineWorkflow };
7
- //# sourceMappingURL=index.d.cts.map
150
+ export { CancelledError, ExecutionError, LockError, NotFoundError, SerializationError, StateError, type StepHandler, type Workflow, WorkflowError, type WorkflowExecution, type WorkflowHandlerContext, type WorkflowHooks, type WorkflowMeta, type WorkflowMetaField, type WorkflowOptions, type WorkflowRetryBackoff, type WorkflowStartOptions, type WorkflowStartResult, type WorkflowStatus, type WorkflowStepErrorContext, type WorkflowStepErrorRecord, type WorkflowStepRetryContext, defineWorkflow };
@@ -1,7 +1,150 @@
1
- import { StepHandler, Workflow, WorkflowError, WorkflowExecution, WorkflowHandlerContext, WorkflowMeta, WorkflowMetaField, WorkflowOptions, WorkflowStartOptions, WorkflowStartResult, WorkflowStatus } from "../../workflow/types.mjs";
2
-
1
+ //#region src/lib/workflow/types.d.ts
2
+ type WorkflowStatus = "pending" | "running" | "completed" | "failed" | "cancelled";
3
+ type StepSnapshot = {
4
+ name: string;
5
+ completedAt: number;
6
+ };
7
+ type WorkflowExecution<TInput, TResult> = {
8
+ id: string;
9
+ name: string;
10
+ status: WorkflowStatus;
11
+ input: TInput;
12
+ result: TResult | null;
13
+ error: string | null;
14
+ createdAt: number;
15
+ updatedAt: number;
16
+ completedAt: number | null;
17
+ failedAt: number | null;
18
+ cancelledAt: number | null;
19
+ steps: StepSnapshot[];
20
+ };
21
+ type StepHandler<TInput, TStep> = (input: TInput, signal: AbortSignal) => TStep | Promise<TStep>;
22
+ type WorkflowHandlerContext<TInput> = {
23
+ input: TInput;
24
+ executionId: string;
25
+ signal: AbortSignal;
26
+ step: <TStep>(name: string, handler: StepHandler<TInput, TStep>) => Promise<TStep>;
27
+ };
28
+ type SerializeValue<T> = (value: T) => string;
29
+ type DeserializeValue<T> = (raw: string) => T;
30
+ type WorkflowStepErrorRecord = {
31
+ attempt: number;
32
+ error: string;
33
+ timestamp: number;
34
+ };
35
+ type WorkflowStepRetryContext<TInput> = {
36
+ executionId: string;
37
+ input: TInput;
38
+ stepName: string;
39
+ error: string;
40
+ attempt: number;
41
+ nextRetryDelayMs: number;
42
+ retriesRemaining: number;
43
+ };
44
+ type WorkflowStepErrorContext<TInput> = {
45
+ executionId: string;
46
+ input: TInput;
47
+ stepName: string;
48
+ error: string;
49
+ totalAttempts: number;
50
+ errorHistory: WorkflowStepErrorRecord[];
51
+ };
52
+ type WorkflowHooks<TInput, TResult> = {
53
+ onStart?: (context: {
54
+ executionId: string;
55
+ input: TInput;
56
+ }) => void | Promise<void>;
57
+ onRetry?: (context: WorkflowStepRetryContext<TInput>) => void | Promise<void>;
58
+ onError?: (context: WorkflowStepErrorContext<TInput>) => void | Promise<void>;
59
+ onComplete?: (context: {
60
+ executionId: string;
61
+ input: TInput;
62
+ result: TResult;
63
+ }) => void | Promise<void>;
64
+ onCancel?: (context: {
65
+ executionId: string;
66
+ input: TInput;
67
+ }) => void | Promise<void>;
68
+ };
69
+ type WorkflowRetryBackoff = {
70
+ baseDelay?: number;
71
+ multiplier?: number;
72
+ maxDelay?: number;
73
+ };
74
+ type WorkflowOptions<TInput, TResult> = {
75
+ name: string;
76
+ redis: Bun.RedisClient;
77
+ handler: (context: WorkflowHandlerContext<TInput>) => TResult | Promise<TResult>;
78
+ retries?: number;
79
+ retryBackoff?: WorkflowRetryBackoff;
80
+ hooks?: WorkflowHooks<TInput, TResult>;
81
+ lockTTL?: number;
82
+ serializeInput?: SerializeValue<TInput>;
83
+ deserializeInput?: DeserializeValue<TInput>;
84
+ serializeResult?: SerializeValue<TResult>;
85
+ deserializeResult?: DeserializeValue<TResult>;
86
+ serializeStepOutput?: SerializeValue<unknown>;
87
+ deserializeStepOutput?: DeserializeValue<unknown>;
88
+ };
89
+ type WorkflowStartOptions = {
90
+ executionId?: string;
91
+ };
92
+ type WorkflowStartResult = {
93
+ executionId: string;
94
+ status: WorkflowStatus;
95
+ };
96
+ type WorkflowCancelResult = {
97
+ status: WorkflowStatus;
98
+ executionId: string;
99
+ updatedAt: number;
100
+ cancelledAt: number;
101
+ createdAt: number;
102
+ };
103
+ type WorkflowMeta = {
104
+ status: string;
105
+ input: string;
106
+ result: string;
107
+ error: string;
108
+ createdAt: string;
109
+ updatedAt: string;
110
+ completedAt: string;
111
+ failedAt: string;
112
+ cancelledAt: string;
113
+ steps: string;
114
+ };
115
+ type WorkflowMetaField = keyof WorkflowMeta;
116
+ type Workflow<TInput, TResult> = {
117
+ start: (input: TInput, options?: WorkflowStartOptions) => Promise<WorkflowStartResult>;
118
+ run: (input: TInput, options?: WorkflowStartOptions) => Promise<TResult | null>;
119
+ resume: (executionId: string) => Promise<WorkflowStartResult>;
120
+ get: (executionId: string) => Promise<WorkflowExecution<TInput, TResult>>;
121
+ cancel: (executionId: string) => Promise<WorkflowCancelResult>;
122
+ };
123
+ //#endregion
124
+ //#region src/lib/workflow/errors.d.ts
125
+ declare class WorkflowError extends Error {
126
+ constructor(message: string);
127
+ }
128
+ declare class NotFoundError extends Error {
129
+ constructor(message: string);
130
+ }
131
+ declare class StateError extends Error {
132
+ constructor(message: string);
133
+ }
134
+ declare class SerializationError extends Error {
135
+ constructor(message: string);
136
+ }
137
+ declare class ExecutionError extends Error {
138
+ constructor(message: string);
139
+ }
140
+ declare class LockError extends Error {
141
+ constructor(message: string);
142
+ }
143
+ declare class CancelledError extends Error {
144
+ constructor(message: string);
145
+ }
146
+ //#endregion
3
147
  //#region src/lib/workflow/index.d.ts
4
148
  declare const defineWorkflow: <TInput, TResult = void>(options: WorkflowOptions<TInput, TResult>) => Workflow<TInput, TResult>;
5
149
  //#endregion
6
- export { type StepHandler, type Workflow, type WorkflowError, type WorkflowExecution, type WorkflowHandlerContext, type WorkflowMeta, type WorkflowMetaField, type WorkflowOptions, type WorkflowStartOptions, type WorkflowStartResult, type WorkflowStatus, defineWorkflow };
7
- //# sourceMappingURL=index.d.mts.map
150
+ export { CancelledError, ExecutionError, LockError, NotFoundError, SerializationError, StateError, type StepHandler, type Workflow, WorkflowError, type WorkflowExecution, type WorkflowHandlerContext, type WorkflowHooks, type WorkflowMeta, type WorkflowMetaField, type WorkflowOptions, type WorkflowRetryBackoff, type WorkflowStartOptions, type WorkflowStartResult, type WorkflowStatus, type WorkflowStepErrorContext, type WorkflowStepErrorRecord, type WorkflowStepRetryContext, defineWorkflow };