@tinqerjs/tinqer 0.0.21

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 (405) hide show
  1. package/dist/expressions/expression.d.ts +313 -0
  2. package/dist/expressions/expression.d.ts.map +1 -0
  3. package/dist/expressions/expression.js +56 -0
  4. package/dist/expressions/expression.js.map +1 -0
  5. package/dist/index.d.ts +34 -0
  6. package/dist/index.d.ts.map +1 -0
  7. package/dist/index.js +34 -0
  8. package/dist/index.js.map +1 -0
  9. package/dist/linq/database-context.d.ts +18 -0
  10. package/dist/linq/database-context.d.ts.map +1 -0
  11. package/dist/linq/database-context.js +23 -0
  12. package/dist/linq/database-context.js.map +1 -0
  13. package/dist/linq/database-schema.d.ts +18 -0
  14. package/dist/linq/database-schema.d.ts.map +1 -0
  15. package/dist/linq/database-schema.js +23 -0
  16. package/dist/linq/database-schema.js.map +1 -0
  17. package/dist/linq/deletable.d.ts +30 -0
  18. package/dist/linq/deletable.d.ts.map +1 -0
  19. package/dist/linq/deletable.js +46 -0
  20. package/dist/linq/deletable.js.map +1 -0
  21. package/dist/linq/delete-from.d.ts +19 -0
  22. package/dist/linq/delete-from.d.ts.map +1 -0
  23. package/dist/linq/delete-from.js +11 -0
  24. package/dist/linq/delete-from.js.map +1 -0
  25. package/dist/linq/from.d.ts +19 -0
  26. package/dist/linq/from.d.ts.map +1 -0
  27. package/dist/linq/from.js +11 -0
  28. package/dist/linq/from.js.map +1 -0
  29. package/dist/linq/functions.d.ts +96 -0
  30. package/dist/linq/functions.d.ts.map +1 -0
  31. package/dist/linq/functions.js +136 -0
  32. package/dist/linq/functions.js.map +1 -0
  33. package/dist/linq/grouping.d.ts +26 -0
  34. package/dist/linq/grouping.d.ts.map +1 -0
  35. package/dist/linq/grouping.js +47 -0
  36. package/dist/linq/grouping.js.map +1 -0
  37. package/dist/linq/insert-into.d.ts +19 -0
  38. package/dist/linq/insert-into.d.ts.map +1 -0
  39. package/dist/linq/insert-into.js +11 -0
  40. package/dist/linq/insert-into.js.map +1 -0
  41. package/dist/linq/insertable.d.ts +30 -0
  42. package/dist/linq/insertable.d.ts.map +1 -0
  43. package/dist/linq/insertable.js +37 -0
  44. package/dist/linq/insertable.js.map +1 -0
  45. package/dist/linq/query-builder.d.ts +24 -0
  46. package/dist/linq/query-builder.d.ts.map +1 -0
  47. package/dist/linq/query-builder.js +21 -0
  48. package/dist/linq/query-builder.js.map +1 -0
  49. package/dist/linq/queryable.d.ts +61 -0
  50. package/dist/linq/queryable.d.ts.map +1 -0
  51. package/dist/linq/queryable.js +148 -0
  52. package/dist/linq/queryable.js.map +1 -0
  53. package/dist/linq/terminal-query.d.ts +10 -0
  54. package/dist/linq/terminal-query.d.ts.map +1 -0
  55. package/dist/linq/terminal-query.js +12 -0
  56. package/dist/linq/terminal-query.js.map +1 -0
  57. package/dist/linq/updatable.d.ts +57 -0
  58. package/dist/linq/updatable.d.ts.map +1 -0
  59. package/dist/linq/updatable.js +84 -0
  60. package/dist/linq/updatable.js.map +1 -0
  61. package/dist/linq/update.d.ts +19 -0
  62. package/dist/linq/update.d.ts.map +1 -0
  63. package/dist/linq/update.js +11 -0
  64. package/dist/linq/update.js.map +1 -0
  65. package/dist/parser/ast-types.d.ts +114 -0
  66. package/dist/parser/ast-types.d.ts.map +1 -0
  67. package/dist/parser/ast-types.js +6 -0
  68. package/dist/parser/ast-types.js.map +1 -0
  69. package/dist/parser/ast-visitor.d.ts +32 -0
  70. package/dist/parser/ast-visitor.d.ts.map +1 -0
  71. package/dist/parser/ast-visitor.js +666 -0
  72. package/dist/parser/ast-visitor.js.map +1 -0
  73. package/dist/parser/normalize-joins.d.ts +3 -0
  74. package/dist/parser/normalize-joins.d.ts.map +1 -0
  75. package/dist/parser/normalize-joins.js +109 -0
  76. package/dist/parser/normalize-joins.js.map +1 -0
  77. package/dist/parser/normalize-window-filters.d.ts +13 -0
  78. package/dist/parser/normalize-window-filters.d.ts.map +1 -0
  79. package/dist/parser/normalize-window-filters.js +212 -0
  80. package/dist/parser/normalize-window-filters.js.map +1 -0
  81. package/dist/parser/oxc-parser.d.ts +11 -0
  82. package/dist/parser/oxc-parser.d.ts.map +1 -0
  83. package/dist/parser/oxc-parser.js +27 -0
  84. package/dist/parser/oxc-parser.js.map +1 -0
  85. package/dist/parser/parse-cache-config.d.ts +31 -0
  86. package/dist/parser/parse-cache-config.d.ts.map +1 -0
  87. package/dist/parser/parse-cache-config.js +33 -0
  88. package/dist/parser/parse-cache-config.js.map +1 -0
  89. package/dist/parser/parse-cache.d.ts +65 -0
  90. package/dist/parser/parse-cache.d.ts.map +1 -0
  91. package/dist/parser/parse-cache.js +146 -0
  92. package/dist/parser/parse-cache.js.map +1 -0
  93. package/dist/parser/parse-query.d.ts +24 -0
  94. package/dist/parser/parse-query.d.ts.map +1 -0
  95. package/dist/parser/parse-query.js +118 -0
  96. package/dist/parser/parse-query.js.map +1 -0
  97. package/dist/parser/types.d.ts +11 -0
  98. package/dist/parser/types.d.ts.map +1 -0
  99. package/dist/parser/types.js +2 -0
  100. package/dist/parser/types.js.map +1 -0
  101. package/dist/plans/delete-plan.d.ts +44 -0
  102. package/dist/plans/delete-plan.d.ts.map +1 -0
  103. package/dist/plans/delete-plan.js +209 -0
  104. package/dist/plans/delete-plan.js.map +1 -0
  105. package/dist/plans/insert-plan.d.ts +50 -0
  106. package/dist/plans/insert-plan.d.ts.map +1 -0
  107. package/dist/plans/insert-plan.js +240 -0
  108. package/dist/plans/insert-plan.js.map +1 -0
  109. package/dist/plans/plan-execution.d.ts +39 -0
  110. package/dist/plans/plan-execution.d.ts.map +1 -0
  111. package/dist/plans/plan-execution.js +32 -0
  112. package/dist/plans/plan-execution.js.map +1 -0
  113. package/dist/plans/select-plan.d.ts +74 -0
  114. package/dist/plans/select-plan.d.ts.map +1 -0
  115. package/dist/plans/select-plan.js +551 -0
  116. package/dist/plans/select-plan.js.map +1 -0
  117. package/dist/plans/update-plan.d.ts +61 -0
  118. package/dist/plans/update-plan.d.ts.map +1 -0
  119. package/dist/plans/update-plan.js +297 -0
  120. package/dist/plans/update-plan.js.map +1 -0
  121. package/dist/query-tree/operations.d.ts +430 -0
  122. package/dist/query-tree/operations.d.ts.map +1 -0
  123. package/dist/query-tree/operations.js +8 -0
  124. package/dist/query-tree/operations.js.map +1 -0
  125. package/dist/visitors/aggregates/average.d.ts +11 -0
  126. package/dist/visitors/aggregates/average.d.ts.map +1 -0
  127. package/dist/visitors/aggregates/average.js +56 -0
  128. package/dist/visitors/aggregates/average.js.map +1 -0
  129. package/dist/visitors/aggregates/max.d.ts +11 -0
  130. package/dist/visitors/aggregates/max.d.ts.map +1 -0
  131. package/dist/visitors/aggregates/max.js +56 -0
  132. package/dist/visitors/aggregates/max.js.map +1 -0
  133. package/dist/visitors/aggregates/min.d.ts +11 -0
  134. package/dist/visitors/aggregates/min.d.ts.map +1 -0
  135. package/dist/visitors/aggregates/min.js +56 -0
  136. package/dist/visitors/aggregates/min.js.map +1 -0
  137. package/dist/visitors/aggregates/sum.d.ts +11 -0
  138. package/dist/visitors/aggregates/sum.d.ts.map +1 -0
  139. package/dist/visitors/aggregates/sum.js +56 -0
  140. package/dist/visitors/aggregates/sum.js.map +1 -0
  141. package/dist/visitors/ast-visitor.d.ts +15 -0
  142. package/dist/visitors/ast-visitor.d.ts.map +1 -0
  143. package/dist/visitors/ast-visitor.js +20 -0
  144. package/dist/visitors/ast-visitor.js.map +1 -0
  145. package/dist/visitors/boolean/comparison.d.ts +12 -0
  146. package/dist/visitors/boolean/comparison.d.ts.map +1 -0
  147. package/dist/visitors/boolean/comparison.js +128 -0
  148. package/dist/visitors/boolean/comparison.js.map +1 -0
  149. package/dist/visitors/boolean/logical.d.ts +12 -0
  150. package/dist/visitors/boolean/logical.d.ts.map +1 -0
  151. package/dist/visitors/boolean/logical.js +68 -0
  152. package/dist/visitors/boolean/logical.js.map +1 -0
  153. package/dist/visitors/boolean-predicates/all.d.ts +11 -0
  154. package/dist/visitors/boolean-predicates/all.d.ts.map +1 -0
  155. package/dist/visitors/boolean-predicates/all.js +49 -0
  156. package/dist/visitors/boolean-predicates/all.js.map +1 -0
  157. package/dist/visitors/boolean-predicates/any.d.ts +11 -0
  158. package/dist/visitors/boolean-predicates/any.d.ts.map +1 -0
  159. package/dist/visitors/boolean-predicates/any.js +48 -0
  160. package/dist/visitors/boolean-predicates/any.js.map +1 -0
  161. package/dist/visitors/common/identifier.d.ts +13 -0
  162. package/dist/visitors/common/identifier.d.ts.map +1 -0
  163. package/dist/visitors/common/identifier.js +46 -0
  164. package/dist/visitors/common/identifier.js.map +1 -0
  165. package/dist/visitors/common/literal.d.ts +13 -0
  166. package/dist/visitors/common/literal.d.ts.map +1 -0
  167. package/dist/visitors/common/literal.js +45 -0
  168. package/dist/visitors/common/literal.js.map +1 -0
  169. package/dist/visitors/common/member-access.d.ts +15 -0
  170. package/dist/visitors/common/member-access.d.ts.map +1 -0
  171. package/dist/visitors/common/member-access.js +192 -0
  172. package/dist/visitors/common/member-access.js.map +1 -0
  173. package/dist/visitors/contains/index.d.ts +11 -0
  174. package/dist/visitors/contains/index.d.ts.map +1 -0
  175. package/dist/visitors/contains/index.js +26 -0
  176. package/dist/visitors/contains/index.js.map +1 -0
  177. package/dist/visitors/count/index.d.ts +11 -0
  178. package/dist/visitors/count/index.d.ts.map +1 -0
  179. package/dist/visitors/count/index.js +47 -0
  180. package/dist/visitors/count/index.js.map +1 -0
  181. package/dist/visitors/delete/allow-full-delete.d.ts +14 -0
  182. package/dist/visitors/delete/allow-full-delete.d.ts.map +1 -0
  183. package/dist/visitors/delete/allow-full-delete.js +26 -0
  184. package/dist/visitors/delete/allow-full-delete.js.map +1 -0
  185. package/dist/visitors/delete/index.d.ts +10 -0
  186. package/dist/visitors/delete/index.d.ts.map +1 -0
  187. package/dist/visitors/delete/index.js +53 -0
  188. package/dist/visitors/delete/index.js.map +1 -0
  189. package/dist/visitors/delete/where-delete.d.ts +15 -0
  190. package/dist/visitors/delete/where-delete.d.ts.map +1 -0
  191. package/dist/visitors/delete/where-delete.js +59 -0
  192. package/dist/visitors/delete/where-delete.js.map +1 -0
  193. package/dist/visitors/distinct/index.d.ts +16 -0
  194. package/dist/visitors/distinct/index.d.ts.map +1 -0
  195. package/dist/visitors/distinct/index.js +20 -0
  196. package/dist/visitors/distinct/index.js.map +1 -0
  197. package/dist/visitors/from/index.d.ts +12 -0
  198. package/dist/visitors/from/index.d.ts.map +1 -0
  199. package/dist/visitors/from/index.js +58 -0
  200. package/dist/visitors/from/index.js.map +1 -0
  201. package/dist/visitors/groupby/index.d.ts +11 -0
  202. package/dist/visitors/groupby/index.d.ts.map +1 -0
  203. package/dist/visitors/groupby/index.js +51 -0
  204. package/dist/visitors/groupby/index.js.map +1 -0
  205. package/dist/visitors/groupjoin/index.d.ts +8 -0
  206. package/dist/visitors/groupjoin/index.d.ts.map +1 -0
  207. package/dist/visitors/groupjoin/index.js +184 -0
  208. package/dist/visitors/groupjoin/index.js.map +1 -0
  209. package/dist/visitors/index.d.ts +13 -0
  210. package/dist/visitors/index.d.ts.map +1 -0
  211. package/dist/visitors/index.js +266 -0
  212. package/dist/visitors/index.js.map +1 -0
  213. package/dist/visitors/insert/index.d.ts +10 -0
  214. package/dist/visitors/insert/index.d.ts.map +1 -0
  215. package/dist/visitors/insert/index.js +54 -0
  216. package/dist/visitors/insert/index.js.map +1 -0
  217. package/dist/visitors/insert/returning.d.ts +15 -0
  218. package/dist/visitors/insert/returning.d.ts.map +1 -0
  219. package/dist/visitors/insert/returning.js +60 -0
  220. package/dist/visitors/insert/returning.js.map +1 -0
  221. package/dist/visitors/insert/values.d.ts +15 -0
  222. package/dist/visitors/insert/values.d.ts.map +1 -0
  223. package/dist/visitors/insert/values.js +37 -0
  224. package/dist/visitors/insert/values.js.map +1 -0
  225. package/dist/visitors/join/context.d.ts +16 -0
  226. package/dist/visitors/join/context.d.ts.map +1 -0
  227. package/dist/visitors/join/context.js +6 -0
  228. package/dist/visitors/join/context.js.map +1 -0
  229. package/dist/visitors/join/expression.d.ts +16 -0
  230. package/dist/visitors/join/expression.d.ts.map +1 -0
  231. package/dist/visitors/join/expression.js +162 -0
  232. package/dist/visitors/join/expression.js.map +1 -0
  233. package/dist/visitors/join/index.d.ts +10 -0
  234. package/dist/visitors/join/index.d.ts.map +1 -0
  235. package/dist/visitors/join/index.js +9 -0
  236. package/dist/visitors/join/index.js.map +1 -0
  237. package/dist/visitors/join/join.d.ts +12 -0
  238. package/dist/visitors/join/join.d.ts.map +1 -0
  239. package/dist/visitors/join/join.js +348 -0
  240. package/dist/visitors/join/join.js.map +1 -0
  241. package/dist/visitors/join/result-selector.d.ts +16 -0
  242. package/dist/visitors/join/result-selector.d.ts.map +1 -0
  243. package/dist/visitors/join/result-selector.js +121 -0
  244. package/dist/visitors/join/result-selector.js.map +1 -0
  245. package/dist/visitors/join/shape.d.ts +16 -0
  246. package/dist/visitors/join/shape.d.ts.map +1 -0
  247. package/dist/visitors/join/shape.js +157 -0
  248. package/dist/visitors/join/shape.js.map +1 -0
  249. package/dist/visitors/orderby/context.d.ts +20 -0
  250. package/dist/visitors/orderby/context.d.ts.map +1 -0
  251. package/dist/visitors/orderby/context.js +25 -0
  252. package/dist/visitors/orderby/context.js.map +1 -0
  253. package/dist/visitors/orderby/index.d.ts +7 -0
  254. package/dist/visitors/orderby/index.d.ts.map +1 -0
  255. package/dist/visitors/orderby/index.js +7 -0
  256. package/dist/visitors/orderby/index.js.map +1 -0
  257. package/dist/visitors/orderby/key-selector.d.ts +13 -0
  258. package/dist/visitors/orderby/key-selector.d.ts.map +1 -0
  259. package/dist/visitors/orderby/key-selector.js +236 -0
  260. package/dist/visitors/orderby/key-selector.js.map +1 -0
  261. package/dist/visitors/orderby/orderby.d.ts +20 -0
  262. package/dist/visitors/orderby/orderby.d.ts.map +1 -0
  263. package/dist/visitors/orderby/orderby.js +83 -0
  264. package/dist/visitors/orderby/orderby.js.map +1 -0
  265. package/dist/visitors/orderby/thenby.d.ts +20 -0
  266. package/dist/visitors/orderby/thenby.d.ts.map +1 -0
  267. package/dist/visitors/orderby/thenby.js +76 -0
  268. package/dist/visitors/orderby/thenby.js.map +1 -0
  269. package/dist/visitors/predicates/first.d.ts +11 -0
  270. package/dist/visitors/predicates/first.d.ts.map +1 -0
  271. package/dist/visitors/predicates/first.js +47 -0
  272. package/dist/visitors/predicates/first.js.map +1 -0
  273. package/dist/visitors/predicates/last.d.ts +11 -0
  274. package/dist/visitors/predicates/last.d.ts.map +1 -0
  275. package/dist/visitors/predicates/last.js +48 -0
  276. package/dist/visitors/predicates/last.js.map +1 -0
  277. package/dist/visitors/predicates/single.d.ts +11 -0
  278. package/dist/visitors/predicates/single.d.ts.map +1 -0
  279. package/dist/visitors/predicates/single.js +48 -0
  280. package/dist/visitors/predicates/single.js.map +1 -0
  281. package/dist/visitors/reverse/index.d.ts +11 -0
  282. package/dist/visitors/reverse/index.d.ts.map +1 -0
  283. package/dist/visitors/reverse/index.js +14 -0
  284. package/dist/visitors/reverse/index.js.map +1 -0
  285. package/dist/visitors/select/context.d.ts +30 -0
  286. package/dist/visitors/select/context.d.ts.map +1 -0
  287. package/dist/visitors/select/context.js +30 -0
  288. package/dist/visitors/select/context.js.map +1 -0
  289. package/dist/visitors/select/index.d.ts +16 -0
  290. package/dist/visitors/select/index.d.ts.map +1 -0
  291. package/dist/visitors/select/index.js +180 -0
  292. package/dist/visitors/select/index.js.map +1 -0
  293. package/dist/visitors/select/projection.d.ts +13 -0
  294. package/dist/visitors/select/projection.d.ts.map +1 -0
  295. package/dist/visitors/select/projection.js +642 -0
  296. package/dist/visitors/select/projection.js.map +1 -0
  297. package/dist/visitors/select-many/index.d.ts +8 -0
  298. package/dist/visitors/select-many/index.d.ts.map +1 -0
  299. package/dist/visitors/select-many/index.js +244 -0
  300. package/dist/visitors/select-many/index.js.map +1 -0
  301. package/dist/visitors/shared/generic-visitor.d.ts +21 -0
  302. package/dist/visitors/shared/generic-visitor.d.ts.map +1 -0
  303. package/dist/visitors/shared/generic-visitor.js +32 -0
  304. package/dist/visitors/shared/generic-visitor.js.map +1 -0
  305. package/dist/visitors/shared/predicate-visitor.d.ts +21 -0
  306. package/dist/visitors/shared/predicate-visitor.d.ts.map +1 -0
  307. package/dist/visitors/shared/predicate-visitor.js +49 -0
  308. package/dist/visitors/shared/predicate-visitor.js.map +1 -0
  309. package/dist/visitors/shared/value-visitor.d.ts +21 -0
  310. package/dist/visitors/shared/value-visitor.d.ts.map +1 -0
  311. package/dist/visitors/shared/value-visitor.js +38 -0
  312. package/dist/visitors/shared/value-visitor.js.map +1 -0
  313. package/dist/visitors/take-skip/skip.d.ts +15 -0
  314. package/dist/visitors/take-skip/skip.d.ts.map +1 -0
  315. package/dist/visitors/take-skip/skip.js +209 -0
  316. package/dist/visitors/take-skip/skip.js.map +1 -0
  317. package/dist/visitors/take-skip/take.d.ts +15 -0
  318. package/dist/visitors/take-skip/take.d.ts.map +1 -0
  319. package/dist/visitors/take-skip/take.js +76 -0
  320. package/dist/visitors/take-skip/take.js.map +1 -0
  321. package/dist/visitors/types.d.ts +170 -0
  322. package/dist/visitors/types.d.ts.map +1 -0
  323. package/dist/visitors/types.js +184 -0
  324. package/dist/visitors/types.js.map +1 -0
  325. package/dist/visitors/update/allow-full-update.d.ts +14 -0
  326. package/dist/visitors/update/allow-full-update.d.ts.map +1 -0
  327. package/dist/visitors/update/allow-full-update.js +26 -0
  328. package/dist/visitors/update/allow-full-update.js.map +1 -0
  329. package/dist/visitors/update/index.d.ts +10 -0
  330. package/dist/visitors/update/index.d.ts.map +1 -0
  331. package/dist/visitors/update/index.js +54 -0
  332. package/dist/visitors/update/index.js.map +1 -0
  333. package/dist/visitors/update/returning-update.d.ts +15 -0
  334. package/dist/visitors/update/returning-update.d.ts.map +1 -0
  335. package/dist/visitors/update/returning-update.js +60 -0
  336. package/dist/visitors/update/returning-update.js.map +1 -0
  337. package/dist/visitors/update/set.d.ts +15 -0
  338. package/dist/visitors/update/set.d.ts.map +1 -0
  339. package/dist/visitors/update/set.js +46 -0
  340. package/dist/visitors/update/set.js.map +1 -0
  341. package/dist/visitors/update/where-update.d.ts +15 -0
  342. package/dist/visitors/update/where-update.d.ts.map +1 -0
  343. package/dist/visitors/update/where-update.js +59 -0
  344. package/dist/visitors/update/where-update.js.map +1 -0
  345. package/dist/visitors/utils.d.ts +36 -0
  346. package/dist/visitors/utils.d.ts.map +1 -0
  347. package/dist/visitors/utils.js +104 -0
  348. package/dist/visitors/utils.js.map +1 -0
  349. package/dist/visitors/value/array-literal.d.ts +12 -0
  350. package/dist/visitors/value/array-literal.d.ts.map +1 -0
  351. package/dist/visitors/value/array-literal.js +23 -0
  352. package/dist/visitors/value/array-literal.js.map +1 -0
  353. package/dist/visitors/value/call-expression.d.ts +12 -0
  354. package/dist/visitors/value/call-expression.d.ts.map +1 -0
  355. package/dist/visitors/value/call-expression.js +165 -0
  356. package/dist/visitors/value/call-expression.js.map +1 -0
  357. package/dist/visitors/value/object-literal.d.ts +12 -0
  358. package/dist/visitors/value/object-literal.d.ts.map +1 -0
  359. package/dist/visitors/value/object-literal.js +98 -0
  360. package/dist/visitors/value/object-literal.js.map +1 -0
  361. package/dist/visitors/visitor-utils.d.ts +22 -0
  362. package/dist/visitors/visitor-utils.d.ts.map +1 -0
  363. package/dist/visitors/visitor-utils.js +64 -0
  364. package/dist/visitors/visitor-utils.js.map +1 -0
  365. package/dist/visitors/where/boolean-method.d.ts +12 -0
  366. package/dist/visitors/where/boolean-method.d.ts.map +1 -0
  367. package/dist/visitors/where/boolean-method.js +150 -0
  368. package/dist/visitors/where/boolean-method.js.map +1 -0
  369. package/dist/visitors/where/case-insensitive-functions.d.ts +13 -0
  370. package/dist/visitors/where/case-insensitive-functions.d.ts.map +1 -0
  371. package/dist/visitors/where/case-insensitive-functions.js +72 -0
  372. package/dist/visitors/where/case-insensitive-functions.js.map +1 -0
  373. package/dist/visitors/where/column.d.ts +14 -0
  374. package/dist/visitors/where/column.d.ts.map +1 -0
  375. package/dist/visitors/where/column.js +57 -0
  376. package/dist/visitors/where/column.js.map +1 -0
  377. package/dist/visitors/where/comparison.d.ts +12 -0
  378. package/dist/visitors/where/comparison.d.ts.map +1 -0
  379. package/dist/visitors/where/comparison.js +141 -0
  380. package/dist/visitors/where/comparison.js.map +1 -0
  381. package/dist/visitors/where/context.d.ts +32 -0
  382. package/dist/visitors/where/context.d.ts.map +1 -0
  383. package/dist/visitors/where/context.js +18 -0
  384. package/dist/visitors/where/context.js.map +1 -0
  385. package/dist/visitors/where/index.d.ts +16 -0
  386. package/dist/visitors/where/index.d.ts.map +1 -0
  387. package/dist/visitors/where/index.js +82 -0
  388. package/dist/visitors/where/index.js.map +1 -0
  389. package/dist/visitors/where/logical.d.ts +12 -0
  390. package/dist/visitors/where/logical.d.ts.map +1 -0
  391. package/dist/visitors/where/logical.js +43 -0
  392. package/dist/visitors/where/logical.js.map +1 -0
  393. package/dist/visitors/where/predicate.d.ts +13 -0
  394. package/dist/visitors/where/predicate.d.ts.map +1 -0
  395. package/dist/visitors/where/predicate.js +131 -0
  396. package/dist/visitors/where/predicate.js.map +1 -0
  397. package/dist/visitors/where/value.d.ts +13 -0
  398. package/dist/visitors/where/value.d.ts.map +1 -0
  399. package/dist/visitors/where/value.js +356 -0
  400. package/dist/visitors/where/value.js.map +1 -0
  401. package/dist/visitors/window/index.d.ts +18 -0
  402. package/dist/visitors/window/index.d.ts.map +1 -0
  403. package/dist/visitors/window/index.js +156 -0
  404. package/dist/visitors/window/index.js.map +1 -0
  405. package/package.json +50 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queryable.d.ts","sourceRoot":"","sources":["../../src/linq/queryable.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD;;;GAGG;AACH,qBAAa,SAAS,CAAC,CAAC;;IAOtB,KAAK,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC;IAMtD,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;IAMrE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EACxB,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,EACzB,iBAAiB,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,EACtC,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,EAC3C,eAAe,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,GACtD,SAAS,CAAC,OAAO,CAAC;IAIrB,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAC7B,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,EACzB,iBAAiB,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,EACtC,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,EAC3C,eAAe,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,OAAO,GAC3E,SAAS,CAAC,OAAO,CAAC;IAIrB,UAAU,CAAC,WAAW,EACpB,mBAAmB,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,SAAS,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,GAChF,SAAS,CAAC,WAAW,CAAC;IAEzB,UAAU,CAAC,WAAW,EAAE,OAAO,EAC7B,mBAAmB,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,SAAS,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,EACjF,eAAe,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,eAAe,EAAE,WAAW,KAAK,OAAO,GACnE,SAAS,CAAC,OAAO,CAAC;IAWrB,OAAO,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAM7E,OAAO,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAIpE,iBAAiB,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAM9E,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;IAIlC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;IAMlC,QAAQ,IAAI,SAAS,CAAC,CAAC,CAAC;IAIxB,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;IAI1C,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;IAI3C,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;IAI9C,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;IAI3C,OAAO,IAAI,SAAS,CAAC,CAAC,CAAC;IAIvB,cAAc,CAAC,aAAa,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;IAM/C,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC;IAI3D,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,aAAa,CAAC,CAAC,GAAG,SAAS,CAAC;IAIhF,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC;IAI5D,eAAe,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,aAAa,CAAC,CAAC,GAAG,SAAS,CAAC;IAIjF,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC;IAI1D,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,aAAa,CAAC,CAAC,GAAG,SAAS,CAAC;IAI/E,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC;IAM3C,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;IAI5D,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;IAIhE,GAAG,IAAI,aAAa,CAAC,CAAC,CAAC;IACvB,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;IAKtE,GAAG,IAAI,aAAa,CAAC,CAAC,CAAC;IACvB,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;IAOtE,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;IAI/D,GAAG,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;IAM9D,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC;CAGjE;AAED;;;GAGG;AACH,qBAAa,gBAAgB,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,CAAC,CAAC;;IAM1C,KAAK,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAI7D,QAAQ,IAAI,gBAAgB,CAAC,CAAC,CAAC;IAI/B,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAIzC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAKlD,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAInE,gBAAgB,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,gBAAgB,CAAC,CAAC,CAAC;CAG9E"}
@@ -0,0 +1,148 @@
1
+ /**
2
+ * Queryable and OrderedQueryable classes for compile-time type safety
3
+ * ONLY BASIC SQL OPERATIONS + single, last, contains, union, reverse
4
+ */
5
+ import { TerminalQuery } from "./terminal-query.js";
6
+ /**
7
+ * Queryable provides a fluent API for building queries with type safety.
8
+ * This class is never actually executed - it's parsed from its string representation.
9
+ */
10
+ export class Queryable {
11
+ constructor() {
12
+ // Never actually instantiated in practice
13
+ }
14
+ // ==================== Filtering ====================
15
+ where(_predicate) {
16
+ return this;
17
+ }
18
+ // ==================== Projection ====================
19
+ select(_selector) {
20
+ return new Queryable();
21
+ }
22
+ // ==================== Joining ====================
23
+ join(_inner, _outerKeySelector, _innerKeySelector, _resultSelector) {
24
+ return new Queryable();
25
+ }
26
+ groupJoin(_inner, _outerKeySelector, _innerKeySelector, _resultSelector) {
27
+ return new Queryable();
28
+ }
29
+ selectMany(_collectionSelector, _resultSelector) {
30
+ return new Queryable();
31
+ }
32
+ // ==================== Grouping ====================
33
+ groupBy(_keySelector) {
34
+ return new Queryable();
35
+ }
36
+ // ==================== Ordering ====================
37
+ orderBy(_keySelector) {
38
+ return new OrderedQueryable();
39
+ }
40
+ orderByDescending(_keySelector) {
41
+ return new OrderedQueryable();
42
+ }
43
+ // ==================== Partitioning ====================
44
+ take(_count) {
45
+ return this;
46
+ }
47
+ skip(_count) {
48
+ return this;
49
+ }
50
+ // ==================== Set Operations ====================
51
+ distinct() {
52
+ return this;
53
+ }
54
+ union(_second) {
55
+ return this;
56
+ }
57
+ concat(_second) {
58
+ return this;
59
+ }
60
+ intersect(_second) {
61
+ return this;
62
+ }
63
+ except(_second) {
64
+ return this;
65
+ }
66
+ reverse() {
67
+ return this;
68
+ }
69
+ defaultIfEmpty(_defaultValue) {
70
+ return new Queryable();
71
+ }
72
+ // ==================== Terminal Operations ====================
73
+ first(_predicate) {
74
+ return new TerminalQuery();
75
+ }
76
+ firstOrDefault(_predicate) {
77
+ return new TerminalQuery();
78
+ }
79
+ single(_predicate) {
80
+ return new TerminalQuery();
81
+ }
82
+ singleOrDefault(_predicate) {
83
+ return new TerminalQuery();
84
+ }
85
+ last(_predicate) {
86
+ return new TerminalQuery();
87
+ }
88
+ lastOrDefault(_predicate) {
89
+ return new TerminalQuery();
90
+ }
91
+ contains(_value) {
92
+ return new TerminalQuery();
93
+ }
94
+ // ==================== Aggregates ====================
95
+ sum(_selector) {
96
+ return new TerminalQuery();
97
+ }
98
+ average(_selector) {
99
+ return new TerminalQuery();
100
+ }
101
+ min(_selector) {
102
+ return new TerminalQuery();
103
+ }
104
+ max(_selector) {
105
+ return new TerminalQuery();
106
+ }
107
+ // ==================== Boolean Tests ====================
108
+ any(_predicate) {
109
+ return new TerminalQuery();
110
+ }
111
+ all(_predicate) {
112
+ return new TerminalQuery();
113
+ }
114
+ // ==================== Counting ====================
115
+ count(_predicate) {
116
+ return new TerminalQuery();
117
+ }
118
+ }
119
+ /**
120
+ * OrderedQueryable extends Queryable with thenBy operations
121
+ * Matches .NET's IOrderedQueryable<T> : IQueryable<T> inheritance
122
+ */
123
+ export class OrderedQueryable extends Queryable {
124
+ constructor() {
125
+ super();
126
+ }
127
+ // Override methods that need to return OrderedQueryable instead of Queryable
128
+ where(_predicate) {
129
+ return this;
130
+ }
131
+ distinct() {
132
+ return this;
133
+ }
134
+ take(_count) {
135
+ return this;
136
+ }
137
+ skip(_count) {
138
+ return this;
139
+ }
140
+ // Secondary ordering methods (unique to OrderedQueryable)
141
+ thenBy(_keySelector) {
142
+ return this;
143
+ }
144
+ thenByDescending(_keySelector) {
145
+ return this;
146
+ }
147
+ }
148
+ //# sourceMappingURL=queryable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queryable.js","sourceRoot":"","sources":["../../src/linq/queryable.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * TerminalQuery represents a terminated query that returns a specific type.
3
+ * This is a marker class - no actual implementation needed.
4
+ * The generic T is used solely for compile-time type safety.
5
+ */
6
+ export declare class TerminalQuery<T = unknown> {
7
+ readonly __phantom: T;
8
+ constructor();
9
+ }
10
+ //# sourceMappingURL=terminal-query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal-query.d.ts","sourceRoot":"","sources":["../../src/linq/terminal-query.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,aAAa,CAAC,CAAC,GAAG,OAAO;IAEpC,QAAQ,CAAC,SAAS,EAAG,CAAC,CAAC;;CAMxB"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * TerminalQuery represents a terminated query that returns a specific type.
3
+ * This is a marker class - no actual implementation needed.
4
+ * The generic T is used solely for compile-time type safety.
5
+ */
6
+ export class TerminalQuery {
7
+ constructor() {
8
+ // Marker class - never actually instantiated
9
+ // T parameter used for compile-time type checking only
10
+ }
11
+ }
12
+ //# sourceMappingURL=terminal-query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal-query.js","sourceRoot":"","sources":["../../src/linq/terminal-query.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,OAAO,aAAa;IAIxB;QACE,6CAA6C;QAC7C,uDAAuD;IACzD,CAAC;CACF"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Updatable class for UPDATE operations with type safety
3
+ */
4
+ /**
5
+ * Updatable provides type-safe UPDATE query building
6
+ */
7
+ export declare class Updatable<T> {
8
+ private __hasSet;
9
+ constructor();
10
+ /**
11
+ * Specifies the columns to update and their new values
12
+ * Can only be called once per query
13
+ * @param setSelector Object mapping columns to new values
14
+ * @returns UpdatableWithSet for further chaining
15
+ */
16
+ set(_setSelector: Partial<T>): UpdatableWithSet<T>;
17
+ }
18
+ /**
19
+ * UpdatableWithSet represents an UPDATE with SET clause
20
+ */
21
+ export declare class UpdatableWithSet<T> {
22
+ private __hasWhereOrAllow;
23
+ constructor();
24
+ /**
25
+ * Specifies the WHERE condition for the update
26
+ * @param predicate Function that returns a boolean condition
27
+ * @returns UpdatableComplete for optional chaining
28
+ */
29
+ where(_predicate: (_item: T) => boolean): UpdatableComplete<T>;
30
+ /**
31
+ * Explicitly allows a full table update without WHERE clause
32
+ * DANGEROUS: This will update ALL rows in the table
33
+ * @returns UpdatableComplete for optional chaining
34
+ */
35
+ allowFullTableUpdate(): UpdatableComplete<T>;
36
+ }
37
+ /**
38
+ * UpdatableComplete represents a complete UPDATE query
39
+ */
40
+ export declare class UpdatableComplete<T> {
41
+ constructor();
42
+ /**
43
+ * Specifies columns to return after update (PostgreSQL only)
44
+ * @param selector Function that returns the columns to return
45
+ * @returns UpdatableWithReturning for type inference
46
+ */
47
+ returning<TResult>(_selector: (_item: T) => TResult): UpdatableWithReturning<T, TResult>;
48
+ }
49
+ /**
50
+ * UpdatableWithReturning represents an UPDATE with RETURNING clause
51
+ */
52
+ export declare class UpdatableWithReturning<TTable, TResult> {
53
+ constructor();
54
+ _table?: (_: TTable) => void;
55
+ _result?: (_: TResult) => void;
56
+ }
57
+ //# sourceMappingURL=updatable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updatable.d.ts","sourceRoot":"","sources":["../../src/linq/updatable.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,qBAAa,SAAS,CAAC,CAAC;IACtB,OAAO,CAAC,QAAQ,CAAS;;IAMzB;;;;;OAKG;IACH,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC;CAOnD;AAED;;GAEG;AACH,qBAAa,gBAAgB,CAAC,CAAC;IAC7B,OAAO,CAAC,iBAAiB,CAAS;;IAMlC;;;;OAIG;IACH,KAAK,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,iBAAiB,CAAC,CAAC,CAAC;IAQ9D;;;;OAIG;IACH,oBAAoB,IAAI,iBAAiB,CAAC,CAAC,CAAC;CAO7C;AAED;;GAEG;AACH,qBAAa,iBAAiB,CAAC,CAAC;;IAK9B;;;;OAIG;IACH,SAAS,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,sBAAsB,CAAC,CAAC,EAAE,OAAO,CAAC;CAGzF;AAED;;GAEG;AACH,qBAAa,sBAAsB,CAAC,MAAM,EAAE,OAAO;;IAOjD,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CAChC"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Updatable class for UPDATE operations with type safety
3
+ */
4
+ /**
5
+ * Updatable provides type-safe UPDATE query building
6
+ */
7
+ export class Updatable {
8
+ constructor() {
9
+ this.__hasSet = false;
10
+ // Never actually instantiated - used only for type inference
11
+ }
12
+ /**
13
+ * Specifies the columns to update and their new values
14
+ * Can only be called once per query
15
+ * @param setSelector Object mapping columns to new values
16
+ * @returns UpdatableWithSet for further chaining
17
+ */
18
+ set(_setSelector) {
19
+ if (this.__hasSet) {
20
+ throw new Error("set() can only be called once per UPDATE query");
21
+ }
22
+ this.__hasSet = true;
23
+ return new UpdatableWithSet();
24
+ }
25
+ }
26
+ /**
27
+ * UpdatableWithSet represents an UPDATE with SET clause
28
+ */
29
+ export class UpdatableWithSet {
30
+ constructor() {
31
+ this.__hasWhereOrAllow = false;
32
+ // Never actually instantiated - used only for type inference
33
+ }
34
+ /**
35
+ * Specifies the WHERE condition for the update
36
+ * @param predicate Function that returns a boolean condition
37
+ * @returns UpdatableComplete for optional chaining
38
+ */
39
+ where(_predicate) {
40
+ if (this.__hasWhereOrAllow) {
41
+ throw new Error("Cannot call where() after allowFullTableUpdate()");
42
+ }
43
+ this.__hasWhereOrAllow = true;
44
+ return new UpdatableComplete();
45
+ }
46
+ /**
47
+ * Explicitly allows a full table update without WHERE clause
48
+ * DANGEROUS: This will update ALL rows in the table
49
+ * @returns UpdatableComplete for optional chaining
50
+ */
51
+ allowFullTableUpdate() {
52
+ if (this.__hasWhereOrAllow) {
53
+ throw new Error("Cannot call allowFullTableUpdate() after where()");
54
+ }
55
+ this.__hasWhereOrAllow = true;
56
+ return new UpdatableComplete();
57
+ }
58
+ }
59
+ /**
60
+ * UpdatableComplete represents a complete UPDATE query
61
+ */
62
+ export class UpdatableComplete {
63
+ constructor() {
64
+ // Never actually instantiated - used only for type inference
65
+ }
66
+ /**
67
+ * Specifies columns to return after update (PostgreSQL only)
68
+ * @param selector Function that returns the columns to return
69
+ * @returns UpdatableWithReturning for type inference
70
+ */
71
+ returning(_selector) {
72
+ return new UpdatableWithReturning();
73
+ }
74
+ }
75
+ /**
76
+ * UpdatableWithReturning represents an UPDATE with RETURNING clause
77
+ */
78
+ export class UpdatableWithReturning {
79
+ constructor() {
80
+ // Never actually instantiated - used only for type inference
81
+ // Type parameters TTable and TResult are preserved for external type inference
82
+ }
83
+ }
84
+ //# sourceMappingURL=updatable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updatable.js","sourceRoot":"","sources":["../../src/linq/updatable.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,OAAO,SAAS;IAGpB;QAFQ,aAAQ,GAAG,KAAK,CAAC;QAGvB,6DAA6D;IAC/D,CAAC;IAED;;;;;OAKG;IACH,GAAG,CAAC,YAAwB;QAC1B,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,OAAO,IAAI,gBAAgB,EAAK,CAAC;IACnC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,gBAAgB;IAG3B;QAFQ,sBAAiB,GAAG,KAAK,CAAC;QAGhC,6DAA6D;IAC/D,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAiC;QACrC,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QACD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,OAAO,IAAI,iBAAiB,EAAK,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACH,oBAAoB;QAClB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QACD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,OAAO,IAAI,iBAAiB,EAAK,CAAC;IACpC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,iBAAiB;IAC5B;QACE,6DAA6D;IAC/D,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAU,SAAgC;QACjD,OAAO,IAAI,sBAAsB,EAAc,CAAC;IAClD,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,sBAAsB;IACjC;QACE,6DAA6D;QAC7D,+EAA+E;IACjF,CAAC;CAKF"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Entry point for creating UPDATE queries
3
+ */
4
+ import { Updatable } from "./updatable.js";
5
+ import type { DatabaseSchema } from "./database-context.js";
6
+ /**
7
+ * Creates a new Updatable from a table name with explicit type
8
+ * @param tableName The name of the table to update
9
+ * @returns A new Updatable instance
10
+ */
11
+ export declare function update<T>(tableName: string): Updatable<T>;
12
+ /**
13
+ * Creates a new Updatable from a typed database context
14
+ * @param context The database context with schema information
15
+ * @param tableName The name of the table to update (type-safe)
16
+ * @returns A new Updatable instance with inferred types
17
+ */
18
+ export declare function update<TSchema, K extends keyof TSchema & string>(context: DatabaseSchema<TSchema>, tableName: K): Updatable<TSchema[K]>;
19
+ //# sourceMappingURL=update.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/linq/update.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAE3D;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE,CAAC,SAAS,MAAM,OAAO,GAAG,MAAM,EAC9D,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,EAChC,SAAS,EAAE,CAAC,GACX,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Entry point for creating UPDATE queries
3
+ */
4
+ import { Updatable } from "./updatable.js";
5
+ // Implementation
6
+ export function update(_contextOrTable, _tableName) {
7
+ // Runtime doesn't need to differentiate - just return an Updatable
8
+ // Types are enforced at compile time through the overloads
9
+ return new Updatable();
10
+ }
11
+ //# sourceMappingURL=update.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/linq/update.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAqB3C,iBAAiB;AACjB,MAAM,UAAU,MAAM,CAAC,eAAwB,EAAE,UAAoB;IACnE,mEAAmE;IACnE,2DAA2D;IAC3D,OAAO,IAAI,SAAS,EAAE,CAAC;AACzB,CAAC"}
@@ -0,0 +1,114 @@
1
+ /**
2
+ * AST type definitions for OXC parser output
3
+ * These types represent the JavaScript AST nodes returned by the OXC parser
4
+ */
5
+ export interface ASTNode {
6
+ type: string;
7
+ }
8
+ export interface Program extends ASTNode {
9
+ type: "Program";
10
+ body: Statement[];
11
+ sourceType: "module" | "script";
12
+ }
13
+ export interface ExpressionStatement extends ASTNode {
14
+ type: "ExpressionStatement";
15
+ expression: Expression;
16
+ }
17
+ export interface Identifier extends ASTNode {
18
+ type: "Identifier";
19
+ name: string;
20
+ }
21
+ export interface MemberExpression extends ASTNode {
22
+ type: "MemberExpression";
23
+ object: Expression;
24
+ property: Expression | Identifier;
25
+ computed: boolean;
26
+ }
27
+ export interface CallExpression extends ASTNode {
28
+ type: "CallExpression";
29
+ callee: Expression | MemberExpression | Identifier;
30
+ arguments: Expression[];
31
+ }
32
+ export interface ArrowFunctionExpression extends ASTNode {
33
+ type: "ArrowFunctionExpression";
34
+ params: Identifier[];
35
+ body: Expression | BlockStatement;
36
+ }
37
+ export interface BinaryExpression extends ASTNode {
38
+ type: "BinaryExpression";
39
+ operator: string;
40
+ left: Expression;
41
+ right: Expression;
42
+ }
43
+ export interface LogicalExpression extends ASTNode {
44
+ type: "LogicalExpression";
45
+ operator: "&&" | "||" | "??";
46
+ left: Expression;
47
+ right: Expression;
48
+ }
49
+ export interface UnaryExpression extends ASTNode {
50
+ type: "UnaryExpression";
51
+ operator: string;
52
+ argument: Expression;
53
+ }
54
+ export interface ConditionalExpression extends ASTNode {
55
+ type: "ConditionalExpression";
56
+ test: Expression;
57
+ consequent: Expression;
58
+ alternate: Expression;
59
+ }
60
+ export interface ObjectExpression extends ASTNode {
61
+ type: "ObjectExpression";
62
+ properties: Property[];
63
+ }
64
+ export interface Property extends ASTNode {
65
+ type: "Property";
66
+ key: Identifier | Literal;
67
+ value: Expression;
68
+ kind: "init" | "get" | "set";
69
+ }
70
+ export interface ArrayExpression extends ASTNode {
71
+ type: "ArrayExpression";
72
+ elements: (Expression | null)[];
73
+ }
74
+ export interface ParenthesizedExpression extends ASTNode {
75
+ type: "ParenthesizedExpression";
76
+ expression: Expression;
77
+ }
78
+ export interface ChainExpression extends ASTNode {
79
+ type: "ChainExpression";
80
+ expression: Expression;
81
+ }
82
+ export interface Literal extends ASTNode {
83
+ type: "Literal" | "NumericLiteral" | "StringLiteral" | "BooleanLiteral" | "NullLiteral";
84
+ value: string | number | boolean | null;
85
+ raw?: string;
86
+ }
87
+ export interface NumericLiteral extends ASTNode {
88
+ type: "NumericLiteral";
89
+ value: number;
90
+ }
91
+ export interface StringLiteral extends ASTNode {
92
+ type: "StringLiteral";
93
+ value: string;
94
+ }
95
+ export interface BooleanLiteral extends ASTNode {
96
+ type: "BooleanLiteral";
97
+ value: boolean;
98
+ }
99
+ export interface NullLiteral extends ASTNode {
100
+ type: "NullLiteral";
101
+ value: null;
102
+ }
103
+ export interface BlockStatement extends ASTNode {
104
+ type: "BlockStatement";
105
+ body: Statement[];
106
+ }
107
+ export interface ReturnStatement extends ASTNode {
108
+ type: "ReturnStatement";
109
+ argument: Expression | null;
110
+ }
111
+ export type Expression = Identifier | MemberExpression | CallExpression | ArrowFunctionExpression | BinaryExpression | LogicalExpression | UnaryExpression | ConditionalExpression | ObjectExpression | ArrayExpression | ParenthesizedExpression | ChainExpression | Literal | NumericLiteral | StringLiteral | BooleanLiteral | NullLiteral;
112
+ export type Statement = BlockStatement | ReturnStatement | ExpressionStatement;
113
+ export type ASTNodeType = Expression | Statement;
114
+ //# sourceMappingURL=ast-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ast-types.d.ts","sourceRoot":"","sources":["../../src/parser/ast-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * AST type definitions for OXC parser output
3
+ * These types represent the JavaScript AST nodes returned by the OXC parser
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=ast-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ast-types.js","sourceRoot":"","sources":["../../src/parser/ast-types.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * AST to QueryOperation visitor
3
+ * Main entry point for the visitor-based parsing system
4
+ */
5
+ import type { QueryOperation } from "../query-tree/operations.js";
6
+ import type { Expression as ASTExpression } from "./ast-types.js";
7
+ import type { VisitorContext } from "../visitors/types.js";
8
+ /**
9
+ * Parse result with operation and auto-params
10
+ */
11
+ export interface VisitorParseResult {
12
+ operation: QueryOperation | null;
13
+ autoParams: Record<string, unknown>;
14
+ tableParams: Set<string>;
15
+ queryParams: Set<string>;
16
+ ast: ASTExpression;
17
+ }
18
+ /**
19
+ * Convert AST to QueryOperation using visitor pattern
20
+ */
21
+ export declare function convertAstToQueryOperationWithParams(ast: ASTExpression, startCounter?: number, existingAutoParams?: Map<string, unknown>, maybeQueryBuilderParam?: string): {
22
+ operation: QueryOperation | null;
23
+ autoParams: Record<string, unknown>;
24
+ autoParamInfos?: Record<string, {
25
+ value: unknown;
26
+ fieldName?: string;
27
+ tableName?: string;
28
+ sourceTable?: number;
29
+ }>;
30
+ visitorContext: VisitorContext;
31
+ };
32
+ //# sourceMappingURL=ast-visitor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ast-visitor.d.ts","sourceRoot":"","sources":["../../src/parser/ast-visitor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,cAAc,EAMf,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EACV,UAAU,IAAI,aAAa,EAK5B,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAwC3D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,cAAc,GAAG,IAAI,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzB,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzB,GAAG,EAAE,aAAa,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,oCAAoC,CAClD,GAAG,EAAE,aAAa,EAClB,YAAY,CAAC,EAAE,MAAM,EACrB,kBAAkB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,sBAAsB,CAAC,EAAE,MAAM,GAC9B;IACD,SAAS,EAAE,cAAc,GAAG,IAAI,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CACrB,MAAM,EACN;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CACjF,CAAC;IACF,cAAc,EAAE,cAAc,CAAC;CAChC,CAqCA"}