drizzle-orm 0.39.3 → 0.40.0-53e792e

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 (1015) hide show
  1. package/_relations.cjs +328 -0
  2. package/_relations.cjs.map +1 -0
  3. package/_relations.d.cts +215 -0
  4. package/_relations.d.ts +215 -0
  5. package/_relations.js +316 -0
  6. package/_relations.js.map +1 -0
  7. package/alias.cjs.map +1 -1
  8. package/alias.d.cts +3 -3
  9. package/alias.d.ts +3 -3
  10. package/alias.js.map +1 -1
  11. package/aws-data-api/pg/driver.cjs +19 -5
  12. package/aws-data-api/pg/driver.cjs.map +1 -1
  13. package/aws-data-api/pg/driver.d.cts +9 -8
  14. package/aws-data-api/pg/driver.d.ts +9 -8
  15. package/aws-data-api/pg/driver.js +9 -8
  16. package/aws-data-api/pg/driver.js.map +1 -1
  17. package/aws-data-api/pg/migrator.cjs.map +1 -1
  18. package/aws-data-api/pg/migrator.d.cts +2 -1
  19. package/aws-data-api/pg/migrator.d.ts +2 -1
  20. package/aws-data-api/pg/migrator.js.map +1 -1
  21. package/aws-data-api/pg/session.cjs +67 -4
  22. package/aws-data-api/pg/session.cjs.map +1 -1
  23. package/aws-data-api/pg/session.d.cts +13 -8
  24. package/aws-data-api/pg/session.d.ts +13 -8
  25. package/aws-data-api/pg/session.js +67 -4
  26. package/aws-data-api/pg/session.js.map +1 -1
  27. package/better-sqlite3/driver.cjs +12 -5
  28. package/better-sqlite3/driver.cjs.map +1 -1
  29. package/better-sqlite3/driver.d.cts +7 -6
  30. package/better-sqlite3/driver.d.ts +7 -6
  31. package/better-sqlite3/driver.js +12 -8
  32. package/better-sqlite3/driver.js.map +1 -1
  33. package/better-sqlite3/migrator.cjs.map +1 -1
  34. package/better-sqlite3/migrator.d.cts +2 -1
  35. package/better-sqlite3/migrator.d.ts +2 -1
  36. package/better-sqlite3/migrator.js.map +1 -1
  37. package/better-sqlite3/session.cjs +49 -4
  38. package/better-sqlite3/session.cjs.map +1 -1
  39. package/better-sqlite3/session.d.cts +14 -8
  40. package/better-sqlite3/session.d.ts +14 -8
  41. package/better-sqlite3/session.js +49 -4
  42. package/better-sqlite3/session.js.map +1 -1
  43. package/bun-sql/driver.cjs +16 -5
  44. package/bun-sql/driver.cjs.map +1 -1
  45. package/bun-sql/driver.d.cts +7 -6
  46. package/bun-sql/driver.d.ts +7 -6
  47. package/bun-sql/driver.js +6 -8
  48. package/bun-sql/driver.js.map +1 -1
  49. package/bun-sql/migrator.cjs.map +1 -1
  50. package/bun-sql/migrator.d.cts +2 -1
  51. package/bun-sql/migrator.d.ts +2 -1
  52. package/bun-sql/migrator.js.map +1 -1
  53. package/bun-sql/session.cjs +50 -6
  54. package/bun-sql/session.cjs.map +1 -1
  55. package/bun-sql/session.d.cts +14 -9
  56. package/bun-sql/session.d.ts +14 -9
  57. package/bun-sql/session.js +50 -6
  58. package/bun-sql/session.js.map +1 -1
  59. package/bun-sqlite/driver.cjs +22 -5
  60. package/bun-sqlite/driver.cjs.map +1 -1
  61. package/bun-sqlite/driver.d.cts +7 -6
  62. package/bun-sqlite/driver.d.ts +7 -6
  63. package/bun-sqlite/driver.js +12 -8
  64. package/bun-sqlite/driver.js.map +1 -1
  65. package/bun-sqlite/migrator.cjs.map +1 -1
  66. package/bun-sqlite/migrator.d.cts +2 -1
  67. package/bun-sqlite/migrator.d.ts +2 -1
  68. package/bun-sqlite/migrator.js.map +1 -1
  69. package/bun-sqlite/session.cjs +49 -4
  70. package/bun-sqlite/session.cjs.map +1 -1
  71. package/bun-sqlite/session.d.cts +14 -8
  72. package/bun-sqlite/session.d.ts +14 -8
  73. package/bun-sqlite/session.js +49 -4
  74. package/bun-sqlite/session.js.map +1 -1
  75. package/casing.cjs +3 -0
  76. package/casing.cjs.map +1 -1
  77. package/casing.d.cts +1 -1
  78. package/casing.d.ts +1 -1
  79. package/casing.js +4 -1
  80. package/casing.js.map +1 -1
  81. package/column-builder.cjs.map +1 -1
  82. package/column-builder.d.cts +6 -5
  83. package/column-builder.d.ts +6 -5
  84. package/column-builder.js.map +1 -1
  85. package/d1/driver.cjs +22 -5
  86. package/d1/driver.cjs.map +1 -1
  87. package/d1/driver.d.cts +3 -2
  88. package/d1/driver.d.ts +3 -2
  89. package/d1/driver.js +12 -8
  90. package/d1/driver.js.map +1 -1
  91. package/d1/migrator.cjs.map +1 -1
  92. package/d1/migrator.d.cts +2 -1
  93. package/d1/migrator.d.ts +2 -1
  94. package/d1/migrator.js.map +1 -1
  95. package/d1/session.cjs +50 -8
  96. package/d1/session.cjs.map +1 -1
  97. package/d1/session.d.cts +15 -8
  98. package/d1/session.d.ts +15 -8
  99. package/d1/session.js +50 -8
  100. package/d1/session.js.map +1 -1
  101. package/durable-sqlite/driver.cjs +16 -5
  102. package/durable-sqlite/driver.cjs.map +1 -1
  103. package/durable-sqlite/driver.d.cts +3 -2
  104. package/durable-sqlite/driver.d.ts +3 -2
  105. package/durable-sqlite/driver.js +6 -8
  106. package/durable-sqlite/driver.js.map +1 -1
  107. package/durable-sqlite/migrator.cjs.map +1 -1
  108. package/durable-sqlite/migrator.d.cts +2 -1
  109. package/durable-sqlite/migrator.d.ts +2 -1
  110. package/durable-sqlite/migrator.js.map +1 -1
  111. package/durable-sqlite/session.cjs +46 -4
  112. package/durable-sqlite/session.cjs.map +1 -1
  113. package/durable-sqlite/session.d.cts +14 -8
  114. package/durable-sqlite/session.d.ts +14 -8
  115. package/durable-sqlite/session.js +46 -4
  116. package/durable-sqlite/session.js.map +1 -1
  117. package/expo-sqlite/driver.cjs +22 -5
  118. package/expo-sqlite/driver.cjs.map +1 -1
  119. package/expo-sqlite/driver.d.cts +3 -2
  120. package/expo-sqlite/driver.d.ts +3 -2
  121. package/expo-sqlite/driver.js +12 -8
  122. package/expo-sqlite/driver.js.map +1 -1
  123. package/expo-sqlite/migrator.cjs.map +1 -1
  124. package/expo-sqlite/migrator.d.cts +3 -2
  125. package/expo-sqlite/migrator.d.ts +3 -2
  126. package/expo-sqlite/migrator.js.map +1 -1
  127. package/expo-sqlite/query.cjs +13 -2
  128. package/expo-sqlite/query.cjs.map +1 -1
  129. package/expo-sqlite/query.d.cts +2 -1
  130. package/expo-sqlite/query.d.ts +2 -1
  131. package/expo-sqlite/query.js +3 -2
  132. package/expo-sqlite/query.js.map +1 -1
  133. package/expo-sqlite/session.cjs +47 -4
  134. package/expo-sqlite/session.cjs.map +1 -1
  135. package/expo-sqlite/session.d.cts +14 -8
  136. package/expo-sqlite/session.d.ts +14 -8
  137. package/expo-sqlite/session.js +47 -4
  138. package/expo-sqlite/session.js.map +1 -1
  139. package/gel/driver.cjs +108 -0
  140. package/gel/driver.cjs.map +1 -0
  141. package/gel/driver.d.cts +39 -0
  142. package/gel/driver.d.ts +39 -0
  143. package/gel/driver.js +72 -0
  144. package/gel/driver.js.map +1 -0
  145. package/gel/index.cjs +25 -0
  146. package/gel/index.cjs.map +1 -0
  147. package/gel/index.d.cts +2 -0
  148. package/gel/index.d.ts +2 -0
  149. package/gel/index.js +3 -0
  150. package/gel/index.js.map +1 -0
  151. package/gel/migrator.cjs +5 -0
  152. package/gel/migrator.cjs.map +1 -0
  153. package/gel/migrator.d.cts +1 -0
  154. package/gel/migrator.d.ts +1 -0
  155. package/gel/migrator.js +4 -0
  156. package/gel/migrator.js.map +1 -0
  157. package/gel/session.cjs +181 -0
  158. package/gel/session.cjs.map +1 -0
  159. package/gel/session.d.cts +52 -0
  160. package/gel/session.d.ts +52 -0
  161. package/gel/session.js +155 -0
  162. package/gel/session.js.map +1 -0
  163. package/gel-core/alias.cjs +32 -0
  164. package/gel-core/alias.cjs.map +1 -0
  165. package/gel-core/alias.d.cts +4 -0
  166. package/gel-core/alias.d.ts +4 -0
  167. package/gel-core/alias.js +8 -0
  168. package/gel-core/alias.js.map +1 -0
  169. package/gel-core/checks.cjs +58 -0
  170. package/gel-core/checks.cjs.map +1 -0
  171. package/gel-core/checks.d.cts +18 -0
  172. package/gel-core/checks.d.ts +18 -0
  173. package/gel-core/checks.js +32 -0
  174. package/gel-core/checks.js.map +1 -0
  175. package/gel-core/columns/all.cjs +72 -0
  176. package/gel-core/columns/all.cjs.map +1 -0
  177. package/gel-core/columns/all.d.cts +43 -0
  178. package/gel-core/columns/all.d.ts +43 -0
  179. package/gel-core/columns/all.js +48 -0
  180. package/gel-core/columns/all.js.map +1 -0
  181. package/gel-core/columns/bigint.cjs +54 -0
  182. package/gel-core/columns/bigint.cjs.map +1 -0
  183. package/gel-core/columns/bigint.d.cts +23 -0
  184. package/gel-core/columns/bigint.d.ts +23 -0
  185. package/gel-core/columns/bigint.js +28 -0
  186. package/gel-core/columns/bigint.js.map +1 -0
  187. package/gel-core/columns/bigintT.cjs +60 -0
  188. package/gel-core/columns/bigintT.cjs.map +1 -0
  189. package/gel-core/columns/bigintT.d.cts +24 -0
  190. package/gel-core/columns/bigintT.d.ts +24 -0
  191. package/gel-core/columns/bigintT.js +34 -0
  192. package/gel-core/columns/bigintT.js.map +1 -0
  193. package/gel-core/columns/boolean.cjs +53 -0
  194. package/gel-core/columns/boolean.cjs.map +1 -0
  195. package/gel-core/columns/boolean.d.cts +22 -0
  196. package/gel-core/columns/boolean.d.ts +22 -0
  197. package/gel-core/columns/boolean.js +27 -0
  198. package/gel-core/columns/boolean.js.map +1 -0
  199. package/gel-core/columns/bytes.cjs +56 -0
  200. package/gel-core/columns/bytes.cjs.map +1 -0
  201. package/gel-core/columns/bytes.d.cts +22 -0
  202. package/gel-core/columns/bytes.d.ts +22 -0
  203. package/gel-core/columns/bytes.js +30 -0
  204. package/gel-core/columns/bytes.js.map +1 -0
  205. package/gel-core/columns/common.cjs +213 -0
  206. package/gel-core/columns/common.cjs.map +1 -0
  207. package/gel-core/columns/common.d.cts +147 -0
  208. package/gel-core/columns/common.d.ts +147 -0
  209. package/gel-core/columns/common.js +184 -0
  210. package/gel-core/columns/common.js.map +1 -0
  211. package/gel-core/columns/custom.cjs +77 -0
  212. package/gel-core/columns/custom.cjs.map +1 -0
  213. package/gel-core/columns/custom.d.cts +155 -0
  214. package/gel-core/columns/custom.d.ts +155 -0
  215. package/gel-core/columns/custom.js +51 -0
  216. package/gel-core/columns/custom.js.map +1 -0
  217. package/gel-core/columns/date-duration.cjs +56 -0
  218. package/gel-core/columns/date-duration.cjs.map +1 -0
  219. package/gel-core/columns/date-duration.d.cts +23 -0
  220. package/gel-core/columns/date-duration.d.ts +23 -0
  221. package/gel-core/columns/date-duration.js +30 -0
  222. package/gel-core/columns/date-duration.js.map +1 -0
  223. package/gel-core/columns/date.common.cjs +37 -0
  224. package/gel-core/columns/date.common.cjs.map +1 -0
  225. package/gel-core/columns/date.common.d.cts +7 -0
  226. package/gel-core/columns/date.common.d.ts +7 -0
  227. package/gel-core/columns/date.common.js +13 -0
  228. package/gel-core/columns/date.common.js.map +1 -0
  229. package/gel-core/columns/decimal.cjs +56 -0
  230. package/gel-core/columns/decimal.cjs.map +1 -0
  231. package/gel-core/columns/decimal.d.cts +26 -0
  232. package/gel-core/columns/decimal.d.ts +26 -0
  233. package/gel-core/columns/decimal.js +30 -0
  234. package/gel-core/columns/decimal.js.map +1 -0
  235. package/gel-core/columns/double-precision.cjs +62 -0
  236. package/gel-core/columns/double-precision.cjs.map +1 -0
  237. package/gel-core/columns/double-precision.d.cts +23 -0
  238. package/gel-core/columns/double-precision.d.ts +23 -0
  239. package/gel-core/columns/double-precision.js +36 -0
  240. package/gel-core/columns/double-precision.js.map +1 -0
  241. package/gel-core/columns/duration.cjs +53 -0
  242. package/gel-core/columns/duration.cjs.map +1 -0
  243. package/gel-core/columns/duration.d.cts +23 -0
  244. package/gel-core/columns/duration.d.ts +23 -0
  245. package/gel-core/columns/duration.js +27 -0
  246. package/gel-core/columns/duration.js.map +1 -0
  247. package/gel-core/columns/index.cjs +65 -0
  248. package/gel-core/columns/index.cjs.map +1 -0
  249. package/gel-core/columns/index.d.cts +22 -0
  250. package/gel-core/columns/index.d.ts +22 -0
  251. package/gel-core/columns/index.js +23 -0
  252. package/gel-core/columns/index.js.map +1 -0
  253. package/gel-core/columns/int.common.cjs +67 -0
  254. package/gel-core/columns/int.common.cjs.map +1 -0
  255. package/gel-core/columns/int.common.d.cts +15 -0
  256. package/gel-core/columns/int.common.d.ts +15 -0
  257. package/gel-core/columns/int.common.js +43 -0
  258. package/gel-core/columns/int.common.js.map +1 -0
  259. package/gel-core/columns/integer.cjs +54 -0
  260. package/gel-core/columns/integer.cjs.map +1 -0
  261. package/gel-core/columns/integer.d.cts +23 -0
  262. package/gel-core/columns/integer.d.ts +23 -0
  263. package/gel-core/columns/integer.js +28 -0
  264. package/gel-core/columns/integer.js.map +1 -0
  265. package/gel-core/columns/json.cjs +56 -0
  266. package/gel-core/columns/json.cjs.map +1 -0
  267. package/gel-core/columns/json.d.cts +26 -0
  268. package/gel-core/columns/json.d.ts +26 -0
  269. package/gel-core/columns/json.js +30 -0
  270. package/gel-core/columns/json.js.map +1 -0
  271. package/gel-core/columns/localdate.cjs +57 -0
  272. package/gel-core/columns/localdate.cjs.map +1 -0
  273. package/gel-core/columns/localdate.d.cts +24 -0
  274. package/gel-core/columns/localdate.d.ts +24 -0
  275. package/gel-core/columns/localdate.js +31 -0
  276. package/gel-core/columns/localdate.js.map +1 -0
  277. package/gel-core/columns/localtime.cjs +57 -0
  278. package/gel-core/columns/localtime.cjs.map +1 -0
  279. package/gel-core/columns/localtime.d.cts +24 -0
  280. package/gel-core/columns/localtime.d.ts +24 -0
  281. package/gel-core/columns/localtime.js +31 -0
  282. package/gel-core/columns/localtime.js.map +1 -0
  283. package/gel-core/columns/real.cjs +57 -0
  284. package/gel-core/columns/real.cjs.map +1 -0
  285. package/gel-core/columns/real.d.cts +28 -0
  286. package/gel-core/columns/real.d.ts +28 -0
  287. package/gel-core/columns/real.js +31 -0
  288. package/gel-core/columns/real.js.map +1 -0
  289. package/gel-core/columns/relative-duration.cjs +56 -0
  290. package/gel-core/columns/relative-duration.cjs.map +1 -0
  291. package/gel-core/columns/relative-duration.d.cts +23 -0
  292. package/gel-core/columns/relative-duration.d.ts +23 -0
  293. package/gel-core/columns/relative-duration.js +30 -0
  294. package/gel-core/columns/relative-duration.js.map +1 -0
  295. package/gel-core/columns/smallint.cjs +54 -0
  296. package/gel-core/columns/smallint.cjs.map +1 -0
  297. package/gel-core/columns/smallint.d.cts +23 -0
  298. package/gel-core/columns/smallint.d.ts +23 -0
  299. package/gel-core/columns/smallint.js +28 -0
  300. package/gel-core/columns/smallint.js.map +1 -0
  301. package/gel-core/columns/text.cjs +54 -0
  302. package/gel-core/columns/text.cjs.map +1 -0
  303. package/gel-core/columns/text.d.cts +26 -0
  304. package/gel-core/columns/text.d.ts +26 -0
  305. package/gel-core/columns/text.js +28 -0
  306. package/gel-core/columns/text.js.map +1 -0
  307. package/gel-core/columns/timestamp.cjs +60 -0
  308. package/gel-core/columns/timestamp.cjs.map +1 -0
  309. package/gel-core/columns/timestamp.d.cts +28 -0
  310. package/gel-core/columns/timestamp.d.ts +28 -0
  311. package/gel-core/columns/timestamp.js +34 -0
  312. package/gel-core/columns/timestamp.js.map +1 -0
  313. package/gel-core/columns/timestamptz.cjs +65 -0
  314. package/gel-core/columns/timestamptz.cjs.map +1 -0
  315. package/gel-core/columns/timestamptz.d.cts +28 -0
  316. package/gel-core/columns/timestamptz.d.ts +28 -0
  317. package/gel-core/columns/timestamptz.js +39 -0
  318. package/gel-core/columns/timestamptz.js.map +1 -0
  319. package/gel-core/columns/uuid.cjs +53 -0
  320. package/gel-core/columns/uuid.cjs.map +1 -0
  321. package/gel-core/columns/uuid.d.cts +22 -0
  322. package/gel-core/columns/uuid.d.ts +22 -0
  323. package/gel-core/columns/uuid.js +27 -0
  324. package/gel-core/columns/uuid.js.map +1 -0
  325. package/gel-core/db.cjs +362 -0
  326. package/gel-core/db.cjs.map +1 -0
  327. package/gel-core/db.d.cts +288 -0
  328. package/gel-core/db.d.ts +288 -0
  329. package/gel-core/db.js +343 -0
  330. package/gel-core/db.js.map +1 -0
  331. package/gel-core/dialect.cjs +826 -0
  332. package/gel-core/dialect.cjs.map +1 -0
  333. package/gel-core/dialect.d.cts +80 -0
  334. package/gel-core/dialect.d.ts +80 -0
  335. package/gel-core/dialect.js +803 -0
  336. package/gel-core/dialect.js.map +1 -0
  337. package/gel-core/expressions.cjs +49 -0
  338. package/gel-core/expressions.cjs.map +1 -0
  339. package/gel-core/expressions.d.cts +8 -0
  340. package/gel-core/expressions.d.ts +8 -0
  341. package/gel-core/expressions.js +22 -0
  342. package/gel-core/expressions.js.map +1 -0
  343. package/gel-core/foreign-keys.cjs +100 -0
  344. package/gel-core/foreign-keys.cjs.map +1 -0
  345. package/gel-core/foreign-keys.d.cts +48 -0
  346. package/gel-core/foreign-keys.d.ts +48 -0
  347. package/gel-core/foreign-keys.js +74 -0
  348. package/gel-core/foreign-keys.js.map +1 -0
  349. package/gel-core/index.cjs +61 -0
  350. package/gel-core/index.cjs.map +1 -0
  351. package/gel-core/index.d.cts +20 -0
  352. package/gel-core/index.d.ts +20 -0
  353. package/gel-core/index.js +21 -0
  354. package/gel-core/index.js.map +1 -0
  355. package/gel-core/indexes.cjs +149 -0
  356. package/gel-core/indexes.cjs.map +1 -0
  357. package/gel-core/indexes.d.cts +79 -0
  358. package/gel-core/indexes.d.ts +79 -0
  359. package/gel-core/indexes.js +121 -0
  360. package/gel-core/indexes.js.map +1 -0
  361. package/gel-core/policies.cjs +58 -0
  362. package/gel-core/policies.cjs.map +1 -0
  363. package/gel-core/policies.d.cts +24 -0
  364. package/gel-core/policies.d.ts +24 -0
  365. package/gel-core/policies.js +33 -0
  366. package/gel-core/policies.js.map +1 -0
  367. package/gel-core/primary-keys.cjs +68 -0
  368. package/gel-core/primary-keys.cjs.map +1 -0
  369. package/gel-core/primary-keys.d.cts +30 -0
  370. package/gel-core/primary-keys.d.ts +30 -0
  371. package/gel-core/primary-keys.js +42 -0
  372. package/gel-core/primary-keys.js.map +1 -0
  373. package/gel-core/query-builders/_query.cjs +149 -0
  374. package/gel-core/query-builders/_query.cjs.map +1 -0
  375. package/gel-core/query-builders/_query.d.cts +46 -0
  376. package/gel-core/query-builders/_query.d.ts +46 -0
  377. package/gel-core/query-builders/_query.js +114 -0
  378. package/gel-core/query-builders/_query.js.map +1 -0
  379. package/gel-core/query-builders/count.cjs +73 -0
  380. package/gel-core/query-builders/count.cjs.map +1 -0
  381. package/gel-core/query-builders/count.d.cts +25 -0
  382. package/gel-core/query-builders/count.d.ts +25 -0
  383. package/gel-core/query-builders/count.js +49 -0
  384. package/gel-core/query-builders/count.js.map +1 -0
  385. package/gel-core/query-builders/delete.cjs +105 -0
  386. package/gel-core/query-builders/delete.cjs.map +1 -0
  387. package/gel-core/query-builders/delete.d.cts +99 -0
  388. package/gel-core/query-builders/delete.d.ts +99 -0
  389. package/gel-core/query-builders/delete.js +81 -0
  390. package/gel-core/query-builders/delete.js.map +1 -0
  391. package/gel-core/query-builders/index.cjs +35 -0
  392. package/gel-core/query-builders/index.cjs.map +1 -0
  393. package/gel-core/query-builders/index.d.cts +7 -0
  394. package/gel-core/query-builders/index.d.ts +7 -0
  395. package/gel-core/query-builders/index.js +8 -0
  396. package/gel-core/query-builders/index.js.map +1 -0
  397. package/gel-core/query-builders/insert.cjs +218 -0
  398. package/gel-core/query-builders/insert.cjs.map +1 -0
  399. package/gel-core/query-builders/insert.d.cts +116 -0
  400. package/gel-core/query-builders/insert.d.ts +116 -0
  401. package/gel-core/query-builders/insert.js +193 -0
  402. package/gel-core/query-builders/insert.js.map +1 -0
  403. package/gel-core/query-builders/query-builder.cjs +114 -0
  404. package/gel-core/query-builders/query-builder.cjs.map +1 -0
  405. package/gel-core/query-builders/query-builder.d.cts +40 -0
  406. package/gel-core/query-builders/query-builder.d.ts +40 -0
  407. package/gel-core/query-builders/query-builder.js +90 -0
  408. package/gel-core/query-builders/query-builder.js.map +1 -0
  409. package/gel-core/query-builders/query.cjs +142 -0
  410. package/gel-core/query-builders/query.cjs.map +1 -0
  411. package/gel-core/query-builders/query.d.cts +47 -0
  412. package/gel-core/query-builders/query.d.ts +47 -0
  413. package/gel-core/query-builders/query.js +119 -0
  414. package/gel-core/query-builders/query.js.map +1 -0
  415. package/gel-core/query-builders/raw.cjs +57 -0
  416. package/gel-core/query-builders/raw.cjs.map +1 -0
  417. package/gel-core/query-builders/raw.d.cts +22 -0
  418. package/gel-core/query-builders/raw.d.ts +22 -0
  419. package/gel-core/query-builders/raw.js +33 -0
  420. package/gel-core/query-builders/raw.js.map +1 -0
  421. package/gel-core/query-builders/refresh-materialized-view.cjs +77 -0
  422. package/gel-core/query-builders/refresh-materialized-view.cjs.map +1 -0
  423. package/gel-core/query-builders/refresh-materialized-view.d.cts +27 -0
  424. package/gel-core/query-builders/refresh-materialized-view.d.ts +27 -0
  425. package/gel-core/query-builders/refresh-materialized-view.js +53 -0
  426. package/gel-core/query-builders/refresh-materialized-view.js.map +1 -0
  427. package/gel-core/query-builders/select.cjs +775 -0
  428. package/gel-core/query-builders/select.cjs.map +1 -0
  429. package/gel-core/query-builders/select.d.cts +721 -0
  430. package/gel-core/query-builders/select.d.ts +721 -0
  431. package/gel-core/query-builders/select.js +748 -0
  432. package/gel-core/query-builders/select.js.map +1 -0
  433. package/gel-core/query-builders/select.types.cjs +17 -0
  434. package/gel-core/query-builders/select.types.cjs.map +1 -0
  435. package/gel-core/query-builders/select.types.d.cts +138 -0
  436. package/gel-core/query-builders/select.types.d.ts +138 -0
  437. package/gel-core/query-builders/select.types.js +1 -0
  438. package/gel-core/query-builders/select.types.js.map +1 -0
  439. package/gel-core/query-builders/update.cjs +226 -0
  440. package/gel-core/query-builders/update.cjs.map +1 -0
  441. package/gel-core/query-builders/update.d.cts +166 -0
  442. package/gel-core/query-builders/update.d.ts +166 -0
  443. package/gel-core/query-builders/update.js +205 -0
  444. package/gel-core/query-builders/update.js.map +1 -0
  445. package/gel-core/roles.cjs +57 -0
  446. package/gel-core/roles.cjs.map +1 -0
  447. package/gel-core/roles.d.cts +13 -0
  448. package/gel-core/roles.d.ts +13 -0
  449. package/gel-core/roles.js +32 -0
  450. package/gel-core/roles.js.map +1 -0
  451. package/gel-core/schema.cjs +74 -0
  452. package/gel-core/schema.cjs.map +1 -0
  453. package/gel-core/schema.d.cts +15 -0
  454. package/gel-core/schema.d.ts +15 -0
  455. package/gel-core/schema.js +48 -0
  456. package/gel-core/schema.js.map +1 -0
  457. package/gel-core/sequence.cjs +52 -0
  458. package/gel-core/sequence.cjs.map +1 -0
  459. package/gel-core/sequence.d.cts +18 -0
  460. package/gel-core/sequence.d.ts +18 -0
  461. package/gel-core/sequence.js +25 -0
  462. package/gel-core/sequence.js.map +1 -0
  463. package/gel-core/session.cjs +95 -0
  464. package/gel-core/session.cjs.map +1 -0
  465. package/gel-core/session.d.cts +59 -0
  466. package/gel-core/session.d.ts +59 -0
  467. package/gel-core/session.js +69 -0
  468. package/gel-core/session.js.map +1 -0
  469. package/gel-core/subquery.cjs +17 -0
  470. package/gel-core/subquery.cjs.map +1 -0
  471. package/gel-core/subquery.d.cts +5 -0
  472. package/gel-core/subquery.d.ts +5 -0
  473. package/gel-core/subquery.js +1 -0
  474. package/gel-core/subquery.js.map +1 -0
  475. package/gel-core/table.cjs +100 -0
  476. package/gel-core/table.cjs.map +1 -0
  477. package/gel-core/table.d.cts +95 -0
  478. package/gel-core/table.d.ts +95 -0
  479. package/gel-core/table.js +71 -0
  480. package/gel-core/table.js.map +1 -0
  481. package/gel-core/unique-constraint.cjs +89 -0
  482. package/gel-core/unique-constraint.cjs.map +1 -0
  483. package/gel-core/unique-constraint.d.cts +25 -0
  484. package/gel-core/unique-constraint.d.ts +25 -0
  485. package/gel-core/unique-constraint.js +61 -0
  486. package/gel-core/unique-constraint.js.map +1 -0
  487. package/gel-core/utils.cjs +100 -0
  488. package/gel-core/utils.cjs.map +1 -0
  489. package/gel-core/utils.d.cts +51 -0
  490. package/gel-core/utils.d.ts +51 -0
  491. package/gel-core/utils.js +74 -0
  492. package/gel-core/utils.js.map +1 -0
  493. package/gel-core/view-base.cjs +33 -0
  494. package/gel-core/view-base.cjs.map +1 -0
  495. package/gel-core/view-base.d.cts +8 -0
  496. package/gel-core/view-base.d.ts +8 -0
  497. package/gel-core/view-base.js +9 -0
  498. package/gel-core/view-base.js.map +1 -0
  499. package/gel-core/view-common.cjs +29 -0
  500. package/gel-core/view-common.cjs.map +1 -0
  501. package/gel-core/view-common.d.cts +1 -0
  502. package/gel-core/view-common.d.ts +1 -0
  503. package/gel-core/view-common.js +5 -0
  504. package/gel-core/view-common.js.map +1 -0
  505. package/gel-core/view.cjs +302 -0
  506. package/gel-core/view.cjs.map +1 -0
  507. package/gel-core/view.d.cts +150 -0
  508. package/gel-core/view.d.ts +150 -0
  509. package/gel-core/view.js +268 -0
  510. package/gel-core/view.js.map +1 -0
  511. package/libsql/driver-core.cjs +22 -5
  512. package/libsql/driver-core.cjs.map +1 -1
  513. package/libsql/driver-core.d.cts +2 -1
  514. package/libsql/driver-core.d.ts +2 -1
  515. package/libsql/driver-core.js +12 -8
  516. package/libsql/driver-core.js.map +1 -1
  517. package/libsql/driver.cjs.map +1 -1
  518. package/libsql/driver.d.cts +6 -5
  519. package/libsql/driver.d.ts +6 -5
  520. package/libsql/driver.js.map +1 -1
  521. package/libsql/http/index.cjs.map +1 -1
  522. package/libsql/http/index.d.cts +6 -5
  523. package/libsql/http/index.d.ts +6 -5
  524. package/libsql/http/index.js.map +1 -1
  525. package/libsql/migrator.cjs.map +1 -1
  526. package/libsql/migrator.d.cts +2 -1
  527. package/libsql/migrator.d.ts +2 -1
  528. package/libsql/migrator.js.map +1 -1
  529. package/libsql/node/index.cjs.map +1 -1
  530. package/libsql/node/index.d.cts +6 -5
  531. package/libsql/node/index.d.ts +6 -5
  532. package/libsql/node/index.js.map +1 -1
  533. package/libsql/session.cjs +56 -4
  534. package/libsql/session.cjs.map +1 -1
  535. package/libsql/session.d.cts +15 -9
  536. package/libsql/session.d.ts +15 -9
  537. package/libsql/session.js +56 -4
  538. package/libsql/session.js.map +1 -1
  539. package/libsql/sqlite3/index.cjs.map +1 -1
  540. package/libsql/sqlite3/index.d.cts +6 -5
  541. package/libsql/sqlite3/index.d.ts +6 -5
  542. package/libsql/sqlite3/index.js.map +1 -1
  543. package/libsql/wasm/index.cjs.map +1 -1
  544. package/libsql/wasm/index.d.cts +6 -5
  545. package/libsql/wasm/index.d.ts +6 -5
  546. package/libsql/wasm/index.js.map +1 -1
  547. package/libsql/web/index.cjs.map +1 -1
  548. package/libsql/web/index.d.cts +6 -5
  549. package/libsql/web/index.d.ts +6 -5
  550. package/libsql/web/index.js.map +1 -1
  551. package/libsql/ws/index.cjs.map +1 -1
  552. package/libsql/ws/index.d.cts +6 -5
  553. package/libsql/ws/index.d.ts +6 -5
  554. package/libsql/ws/index.js.map +1 -1
  555. package/mysql-core/db.cjs +30 -6
  556. package/mysql-core/db.cjs.map +1 -1
  557. package/mysql-core/db.d.cts +15 -8
  558. package/mysql-core/db.d.ts +15 -8
  559. package/mysql-core/db.js +29 -5
  560. package/mysql-core/db.js.map +1 -1
  561. package/mysql-core/dialect.cjs +198 -15
  562. package/mysql-core/dialect.cjs.map +1 -1
  563. package/mysql-core/dialect.d.cts +36 -13
  564. package/mysql-core/dialect.d.ts +36 -13
  565. package/mysql-core/dialect.js +196 -22
  566. package/mysql-core/dialect.js.map +1 -1
  567. package/mysql-core/query-builders/_query.cjs +149 -0
  568. package/mysql-core/query-builders/_query.cjs.map +1 -0
  569. package/mysql-core/query-builders/_query.d.cts +44 -0
  570. package/mysql-core/query-builders/_query.d.ts +44 -0
  571. package/mysql-core/query-builders/_query.js +114 -0
  572. package/mysql-core/query-builders/_query.js.map +1 -0
  573. package/mysql-core/query-builders/count.cjs.map +1 -1
  574. package/mysql-core/query-builders/count.d.cts +1 -1
  575. package/mysql-core/query-builders/count.d.ts +1 -1
  576. package/mysql-core/query-builders/count.js.map +1 -1
  577. package/mysql-core/query-builders/query.cjs +18 -31
  578. package/mysql-core/query-builders/query.cjs.map +1 -1
  579. package/mysql-core/query-builders/query.d.cts +8 -10
  580. package/mysql-core/query-builders/query.d.ts +8 -10
  581. package/mysql-core/query-builders/query.js +18 -31
  582. package/mysql-core/query-builders/query.js.map +1 -1
  583. package/mysql-core/session.cjs +3 -2
  584. package/mysql-core/session.cjs.map +1 -1
  585. package/mysql-core/session.d.cts +10 -7
  586. package/mysql-core/session.d.ts +10 -7
  587. package/mysql-core/session.js +3 -2
  588. package/mysql-core/session.js.map +1 -1
  589. package/mysql-proxy/driver.cjs +22 -5
  590. package/mysql-proxy/driver.cjs.map +1 -1
  591. package/mysql-proxy/driver.d.cts +3 -2
  592. package/mysql-proxy/driver.d.ts +3 -2
  593. package/mysql-proxy/driver.js +12 -8
  594. package/mysql-proxy/driver.js.map +1 -1
  595. package/mysql-proxy/migrator.cjs.map +1 -1
  596. package/mysql-proxy/migrator.d.cts +2 -1
  597. package/mysql-proxy/migrator.d.ts +2 -1
  598. package/mysql-proxy/migrator.js.map +1 -1
  599. package/mysql-proxy/session.cjs +27 -2
  600. package/mysql-proxy/session.cjs.map +1 -1
  601. package/mysql-proxy/session.d.cts +13 -8
  602. package/mysql-proxy/session.d.ts +13 -8
  603. package/mysql-proxy/session.js +27 -2
  604. package/mysql-proxy/session.js.map +1 -1
  605. package/mysql2/driver.cjs +24 -7
  606. package/mysql2/driver.cjs.map +1 -1
  607. package/mysql2/driver.d.cts +10 -9
  608. package/mysql2/driver.d.ts +10 -9
  609. package/mysql2/driver.js +14 -10
  610. package/mysql2/driver.js.map +1 -1
  611. package/mysql2/migrator.cjs.map +1 -1
  612. package/mysql2/migrator.d.cts +2 -1
  613. package/mysql2/migrator.d.ts +2 -1
  614. package/mysql2/migrator.js.map +1 -1
  615. package/mysql2/session.cjs +30 -2
  616. package/mysql2/session.cjs.map +1 -1
  617. package/mysql2/session.d.cts +13 -8
  618. package/mysql2/session.d.ts +13 -8
  619. package/mysql2/session.js +30 -2
  620. package/mysql2/session.js.map +1 -1
  621. package/neon-http/driver.cjs +21 -7
  622. package/neon-http/driver.cjs.map +1 -1
  623. package/neon-http/driver.d.cts +10 -9
  624. package/neon-http/driver.d.ts +10 -9
  625. package/neon-http/driver.js +11 -7
  626. package/neon-http/driver.js.map +1 -1
  627. package/neon-http/migrator.cjs.map +1 -1
  628. package/neon-http/migrator.d.cts +2 -1
  629. package/neon-http/migrator.d.ts +2 -1
  630. package/neon-http/migrator.js.map +1 -1
  631. package/neon-http/session.cjs +32 -2
  632. package/neon-http/session.cjs.map +1 -1
  633. package/neon-http/session.d.cts +13 -8
  634. package/neon-http/session.d.ts +13 -8
  635. package/neon-http/session.js +32 -2
  636. package/neon-http/session.js.map +1 -1
  637. package/neon-serverless/driver.cjs +18 -7
  638. package/neon-serverless/driver.cjs.map +1 -1
  639. package/neon-serverless/driver.d.cts +9 -8
  640. package/neon-serverless/driver.d.ts +9 -8
  641. package/neon-serverless/driver.js +8 -10
  642. package/neon-serverless/driver.js.map +1 -1
  643. package/neon-serverless/migrator.cjs.map +1 -1
  644. package/neon-serverless/migrator.d.cts +2 -1
  645. package/neon-serverless/migrator.d.ts +2 -1
  646. package/neon-serverless/migrator.js.map +1 -1
  647. package/neon-serverless/session.cjs +40 -5
  648. package/neon-serverless/session.cjs.map +1 -1
  649. package/neon-serverless/session.d.cts +13 -8
  650. package/neon-serverless/session.d.ts +13 -8
  651. package/neon-serverless/session.js +40 -5
  652. package/neon-serverless/session.js.map +1 -1
  653. package/node-postgres/driver.cjs +13 -7
  654. package/node-postgres/driver.cjs.map +1 -1
  655. package/node-postgres/driver.d.cts +9 -8
  656. package/node-postgres/driver.d.ts +9 -8
  657. package/node-postgres/driver.js +13 -10
  658. package/node-postgres/driver.js.map +1 -1
  659. package/node-postgres/migrator.cjs.map +1 -1
  660. package/node-postgres/migrator.d.cts +2 -1
  661. package/node-postgres/migrator.d.ts +2 -1
  662. package/node-postgres/migrator.js.map +1 -1
  663. package/node-postgres/session.cjs +45 -4
  664. package/node-postgres/session.cjs.map +1 -1
  665. package/node-postgres/session.d.cts +13 -8
  666. package/node-postgres/session.d.ts +13 -8
  667. package/node-postgres/session.js +45 -4
  668. package/node-postgres/session.js.map +1 -1
  669. package/op-sqlite/driver.cjs +22 -5
  670. package/op-sqlite/driver.cjs.map +1 -1
  671. package/op-sqlite/driver.d.cts +3 -2
  672. package/op-sqlite/driver.d.ts +3 -2
  673. package/op-sqlite/driver.js +12 -8
  674. package/op-sqlite/driver.js.map +1 -1
  675. package/op-sqlite/migrator.cjs.map +1 -1
  676. package/op-sqlite/migrator.d.cts +3 -2
  677. package/op-sqlite/migrator.d.ts +3 -2
  678. package/op-sqlite/migrator.js.map +1 -1
  679. package/op-sqlite/session.cjs +47 -4
  680. package/op-sqlite/session.cjs.map +1 -1
  681. package/op-sqlite/session.d.cts +14 -8
  682. package/op-sqlite/session.d.ts +14 -8
  683. package/op-sqlite/session.js +47 -4
  684. package/op-sqlite/session.js.map +1 -1
  685. package/package.json +801 -4
  686. package/pg-core/db.cjs +32 -5
  687. package/pg-core/db.cjs.map +1 -1
  688. package/pg-core/db.d.cts +16 -9
  689. package/pg-core/db.d.ts +16 -9
  690. package/pg-core/db.js +31 -4
  691. package/pg-core/db.js.map +1 -1
  692. package/pg-core/dialect.cjs +176 -488
  693. package/pg-core/dialect.cjs.map +1 -1
  694. package/pg-core/dialect.d.cts +27 -8
  695. package/pg-core/dialect.d.ts +27 -8
  696. package/pg-core/dialect.js +174 -495
  697. package/pg-core/dialect.js.map +1 -1
  698. package/pg-core/query-builders/_query.cjs +155 -0
  699. package/pg-core/query-builders/_query.cjs.map +1 -0
  700. package/pg-core/query-builders/_query.d.cts +47 -0
  701. package/pg-core/query-builders/_query.d.ts +47 -0
  702. package/pg-core/query-builders/_query.js +120 -0
  703. package/pg-core/query-builders/_query.js.map +1 -0
  704. package/pg-core/query-builders/count.cjs.map +1 -1
  705. package/pg-core/query-builders/count.d.cts +1 -1
  706. package/pg-core/query-builders/count.d.ts +1 -1
  707. package/pg-core/query-builders/count.js.map +1 -1
  708. package/pg-core/query-builders/query.cjs +15 -18
  709. package/pg-core/query-builders/query.cjs.map +1 -1
  710. package/pg-core/query-builders/query.d.cts +6 -6
  711. package/pg-core/query-builders/query.d.ts +6 -6
  712. package/pg-core/query-builders/query.js +15 -18
  713. package/pg-core/query-builders/query.js.map +1 -1
  714. package/pg-core/session.cjs +3 -2
  715. package/pg-core/session.cjs.map +1 -1
  716. package/pg-core/session.d.cts +9 -6
  717. package/pg-core/session.d.ts +9 -6
  718. package/pg-core/session.js +3 -2
  719. package/pg-core/session.js.map +1 -1
  720. package/pg-core/table.cjs +2 -0
  721. package/pg-core/table.cjs.map +1 -1
  722. package/pg-core/table.js +2 -0
  723. package/pg-core/table.js.map +1 -1
  724. package/pg-proxy/driver.cjs +21 -5
  725. package/pg-proxy/driver.cjs.map +1 -1
  726. package/pg-proxy/driver.d.cts +3 -2
  727. package/pg-proxy/driver.d.ts +3 -2
  728. package/pg-proxy/driver.js +11 -8
  729. package/pg-proxy/driver.js.map +1 -1
  730. package/pg-proxy/migrator.cjs.map +1 -1
  731. package/pg-proxy/migrator.d.cts +2 -1
  732. package/pg-proxy/migrator.d.ts +2 -1
  733. package/pg-proxy/migrator.js.map +1 -1
  734. package/pg-proxy/session.cjs +37 -2
  735. package/pg-proxy/session.cjs.map +1 -1
  736. package/pg-proxy/session.d.cts +13 -8
  737. package/pg-proxy/session.d.ts +13 -8
  738. package/pg-proxy/session.js +37 -2
  739. package/pg-proxy/session.js.map +1 -1
  740. package/pglite/driver.cjs +23 -7
  741. package/pglite/driver.cjs.map +1 -1
  742. package/pglite/driver.d.cts +9 -8
  743. package/pglite/driver.d.ts +9 -8
  744. package/pglite/driver.js +13 -10
  745. package/pglite/driver.js.map +1 -1
  746. package/pglite/migrator.cjs.map +1 -1
  747. package/pglite/migrator.d.cts +2 -1
  748. package/pglite/migrator.d.ts +2 -1
  749. package/pglite/migrator.js.map +1 -1
  750. package/pglite/session.cjs +34 -3
  751. package/pglite/session.cjs.map +1 -1
  752. package/pglite/session.d.cts +13 -8
  753. package/pglite/session.d.ts +13 -8
  754. package/pglite/session.js +34 -3
  755. package/pglite/session.js.map +1 -1
  756. package/planetscale-serverless/driver.cjs +22 -5
  757. package/planetscale-serverless/driver.cjs.map +1 -1
  758. package/planetscale-serverless/driver.d.cts +7 -6
  759. package/planetscale-serverless/driver.d.ts +7 -6
  760. package/planetscale-serverless/driver.js +12 -8
  761. package/planetscale-serverless/driver.js.map +1 -1
  762. package/planetscale-serverless/migrator.cjs.map +1 -1
  763. package/planetscale-serverless/migrator.d.cts +2 -1
  764. package/planetscale-serverless/migrator.d.ts +2 -1
  765. package/planetscale-serverless/migrator.js.map +1 -1
  766. package/planetscale-serverless/session.cjs +45 -5
  767. package/planetscale-serverless/session.cjs.map +1 -1
  768. package/planetscale-serverless/session.d.cts +14 -9
  769. package/planetscale-serverless/session.d.ts +14 -9
  770. package/planetscale-serverless/session.js +45 -5
  771. package/planetscale-serverless/session.js.map +1 -1
  772. package/postgres-js/driver.cjs +6 -5
  773. package/postgres-js/driver.cjs.map +1 -1
  774. package/postgres-js/driver.d.cts +7 -6
  775. package/postgres-js/driver.d.ts +7 -6
  776. package/postgres-js/driver.js +6 -8
  777. package/postgres-js/driver.js.map +1 -1
  778. package/postgres-js/migrator.cjs.map +1 -1
  779. package/postgres-js/migrator.d.cts +2 -1
  780. package/postgres-js/migrator.d.ts +2 -1
  781. package/postgres-js/migrator.js.map +1 -1
  782. package/postgres-js/session.cjs +51 -6
  783. package/postgres-js/session.cjs.map +1 -1
  784. package/postgres-js/session.d.cts +15 -9
  785. package/postgres-js/session.d.ts +15 -9
  786. package/postgres-js/session.js +51 -6
  787. package/postgres-js/session.js.map +1 -1
  788. package/prisma/mysql/driver.cjs +1 -1
  789. package/prisma/mysql/driver.cjs.map +1 -1
  790. package/prisma/mysql/driver.js +1 -1
  791. package/prisma/mysql/driver.js.map +1 -1
  792. package/prisma/mysql/session.cjs +3 -0
  793. package/prisma/mysql/session.cjs.map +1 -1
  794. package/prisma/mysql/session.d.cts +3 -1
  795. package/prisma/mysql/session.d.ts +3 -1
  796. package/prisma/mysql/session.js +3 -0
  797. package/prisma/mysql/session.js.map +1 -1
  798. package/prisma/pg/driver.cjs +1 -1
  799. package/prisma/pg/driver.cjs.map +1 -1
  800. package/prisma/pg/driver.js +1 -1
  801. package/prisma/pg/driver.js.map +1 -1
  802. package/prisma/pg/session.cjs +3 -0
  803. package/prisma/pg/session.cjs.map +1 -1
  804. package/prisma/pg/session.d.cts +3 -1
  805. package/prisma/pg/session.d.ts +3 -1
  806. package/prisma/pg/session.js +3 -0
  807. package/prisma/pg/session.js.map +1 -1
  808. package/prisma/sqlite/driver.cjs +1 -1
  809. package/prisma/sqlite/driver.cjs.map +1 -1
  810. package/prisma/sqlite/driver.js +1 -1
  811. package/prisma/sqlite/driver.js.map +1 -1
  812. package/prisma/sqlite/session.cjs +3 -0
  813. package/prisma/sqlite/session.cjs.map +1 -1
  814. package/prisma/sqlite/session.d.cts +4 -2
  815. package/prisma/sqlite/session.d.ts +4 -2
  816. package/prisma/sqlite/session.js +3 -0
  817. package/prisma/sqlite/session.js.map +1 -1
  818. package/relations.cjs +657 -245
  819. package/relations.cjs.map +1 -1
  820. package/relations.d.cts +339 -140
  821. package/relations.d.ts +339 -140
  822. package/relations.js +643 -240
  823. package/relations.js.map +1 -1
  824. package/singlestore/driver.cjs +1 -1
  825. package/singlestore/driver.cjs.map +1 -1
  826. package/singlestore/driver.d.cts +1 -1
  827. package/singlestore/driver.d.ts +1 -1
  828. package/singlestore/driver.js +3 -3
  829. package/singlestore/driver.js.map +1 -1
  830. package/singlestore/session.cjs.map +1 -1
  831. package/singlestore/session.d.cts +4 -4
  832. package/singlestore/session.d.ts +4 -4
  833. package/singlestore/session.js.map +1 -1
  834. package/singlestore-core/db.cjs.map +1 -1
  835. package/singlestore-core/db.d.cts +3 -3
  836. package/singlestore-core/db.d.ts +3 -3
  837. package/singlestore-core/db.js.map +1 -1
  838. package/singlestore-core/dialect.cjs +16 -6
  839. package/singlestore-core/dialect.cjs.map +1 -1
  840. package/singlestore-core/dialect.d.cts +6 -6
  841. package/singlestore-core/dialect.d.ts +6 -6
  842. package/singlestore-core/dialect.js +6 -12
  843. package/singlestore-core/dialect.js.map +1 -1
  844. package/singlestore-core/query-builders/query.cjs +12 -2
  845. package/singlestore-core/query-builders/query.cjs.map +1 -1
  846. package/singlestore-core/query-builders/query.d.cts +6 -6
  847. package/singlestore-core/query-builders/query.d.ts +6 -6
  848. package/singlestore-core/query-builders/query.js +2 -4
  849. package/singlestore-core/query-builders/query.js.map +1 -1
  850. package/singlestore-core/session.cjs.map +1 -1
  851. package/singlestore-core/session.d.cts +5 -5
  852. package/singlestore-core/session.d.ts +5 -5
  853. package/singlestore-core/session.js.map +1 -1
  854. package/singlestore-proxy/driver.cjs +1 -1
  855. package/singlestore-proxy/driver.cjs.map +1 -1
  856. package/singlestore-proxy/driver.js +3 -3
  857. package/singlestore-proxy/driver.js.map +1 -1
  858. package/singlestore-proxy/session.cjs.map +1 -1
  859. package/singlestore-proxy/session.d.cts +4 -4
  860. package/singlestore-proxy/session.d.ts +4 -4
  861. package/singlestore-proxy/session.js.map +1 -1
  862. package/sql/expressions/conditions.cjs.map +1 -1
  863. package/sql/expressions/conditions.d.cts +4 -4
  864. package/sql/expressions/conditions.d.ts +4 -4
  865. package/sql/expressions/conditions.js.map +1 -1
  866. package/sql/sql.cjs +21 -0
  867. package/sql/sql.cjs.map +1 -1
  868. package/sql/sql.d.cts +8 -8
  869. package/sql/sql.d.ts +8 -8
  870. package/sql/sql.js +22 -1
  871. package/sql/sql.js.map +1 -1
  872. package/sql-js/driver.cjs +16 -5
  873. package/sql-js/driver.cjs.map +1 -1
  874. package/sql-js/driver.d.cts +3 -2
  875. package/sql-js/driver.d.ts +3 -2
  876. package/sql-js/driver.js +6 -8
  877. package/sql-js/driver.js.map +1 -1
  878. package/sql-js/migrator.cjs.map +1 -1
  879. package/sql-js/migrator.d.cts +2 -1
  880. package/sql-js/migrator.d.ts +2 -1
  881. package/sql-js/migrator.js.map +1 -1
  882. package/sql-js/session.cjs +71 -36
  883. package/sql-js/session.cjs.map +1 -1
  884. package/sql-js/session.d.cts +16 -13
  885. package/sql-js/session.d.ts +16 -13
  886. package/sql-js/session.js +71 -36
  887. package/sql-js/session.js.map +1 -1
  888. package/sqlite-core/db.cjs +39 -12
  889. package/sqlite-core/db.cjs.map +1 -1
  890. package/sqlite-core/db.d.cts +16 -8
  891. package/sqlite-core/db.d.ts +16 -8
  892. package/sqlite-core/db.js +38 -11
  893. package/sqlite-core/db.js.map +1 -1
  894. package/sqlite-core/dialect.cjs +187 -7
  895. package/sqlite-core/dialect.cjs.map +1 -1
  896. package/sqlite-core/dialect.d.cts +31 -9
  897. package/sqlite-core/dialect.d.ts +31 -9
  898. package/sqlite-core/dialect.js +185 -14
  899. package/sqlite-core/dialect.js.map +1 -1
  900. package/sqlite-core/query-builders/_query.cjs +187 -0
  901. package/sqlite-core/query-builders/_query.cjs.map +1 -0
  902. package/sqlite-core/query-builders/_query.d.cts +55 -0
  903. package/sqlite-core/query-builders/_query.d.ts +55 -0
  904. package/sqlite-core/query-builders/_query.js +151 -0
  905. package/sqlite-core/query-builders/_query.js.map +1 -0
  906. package/sqlite-core/query-builders/count.cjs.map +1 -1
  907. package/sqlite-core/query-builders/count.d.cts +1 -1
  908. package/sqlite-core/query-builders/count.d.ts +1 -1
  909. package/sqlite-core/query-builders/count.js.map +1 -1
  910. package/sqlite-core/query-builders/delete.cjs.map +1 -1
  911. package/sqlite-core/query-builders/delete.d.cts +1 -1
  912. package/sqlite-core/query-builders/delete.d.ts +1 -1
  913. package/sqlite-core/query-builders/delete.js.map +1 -1
  914. package/sqlite-core/query-builders/insert.cjs.map +1 -1
  915. package/sqlite-core/query-builders/insert.d.cts +3 -3
  916. package/sqlite-core/query-builders/insert.d.ts +3 -3
  917. package/sqlite-core/query-builders/insert.js.map +1 -1
  918. package/sqlite-core/query-builders/query.cjs +56 -35
  919. package/sqlite-core/query-builders/query.cjs.map +1 -1
  920. package/sqlite-core/query-builders/query.d.cts +18 -17
  921. package/sqlite-core/query-builders/query.d.ts +18 -17
  922. package/sqlite-core/query-builders/query.js +56 -35
  923. package/sqlite-core/query-builders/query.js.map +1 -1
  924. package/sqlite-core/query-builders/select.cjs.map +1 -1
  925. package/sqlite-core/query-builders/select.d.cts +3 -3
  926. package/sqlite-core/query-builders/select.d.ts +3 -3
  927. package/sqlite-core/query-builders/select.js.map +1 -1
  928. package/sqlite-core/query-builders/update.cjs.map +1 -1
  929. package/sqlite-core/query-builders/update.d.cts +3 -3
  930. package/sqlite-core/query-builders/update.d.ts +3 -3
  931. package/sqlite-core/query-builders/update.js.map +1 -1
  932. package/sqlite-core/session.cjs +6 -2
  933. package/sqlite-core/session.cjs.map +1 -1
  934. package/sqlite-core/session.d.cts +15 -7
  935. package/sqlite-core/session.d.ts +15 -7
  936. package/sqlite-core/session.js +6 -2
  937. package/sqlite-core/session.js.map +1 -1
  938. package/sqlite-proxy/driver.cjs +23 -5
  939. package/sqlite-proxy/driver.cjs.map +1 -1
  940. package/sqlite-proxy/driver.d.cts +4 -3
  941. package/sqlite-proxy/driver.d.ts +4 -3
  942. package/sqlite-proxy/driver.js +13 -5
  943. package/sqlite-proxy/driver.js.map +1 -1
  944. package/sqlite-proxy/migrator.cjs.map +1 -1
  945. package/sqlite-proxy/migrator.d.cts +2 -1
  946. package/sqlite-proxy/migrator.d.ts +2 -1
  947. package/sqlite-proxy/migrator.js.map +1 -1
  948. package/sqlite-proxy/session.cjs +50 -6
  949. package/sqlite-proxy/session.cjs.map +1 -1
  950. package/sqlite-proxy/session.d.cts +14 -8
  951. package/sqlite-proxy/session.d.ts +14 -8
  952. package/sqlite-proxy/session.js +50 -6
  953. package/sqlite-proxy/session.js.map +1 -1
  954. package/table.cjs.map +1 -1
  955. package/table.d.cts +2 -2
  956. package/table.d.ts +2 -2
  957. package/table.js.map +1 -1
  958. package/tidb-serverless/driver.cjs +22 -5
  959. package/tidb-serverless/driver.cjs.map +1 -1
  960. package/tidb-serverless/driver.d.cts +7 -6
  961. package/tidb-serverless/driver.d.ts +7 -6
  962. package/tidb-serverless/driver.js +12 -8
  963. package/tidb-serverless/driver.js.map +1 -1
  964. package/tidb-serverless/migrator.cjs.map +1 -1
  965. package/tidb-serverless/migrator.d.cts +2 -1
  966. package/tidb-serverless/migrator.d.ts +2 -1
  967. package/tidb-serverless/migrator.js.map +1 -1
  968. package/tidb-serverless/session.cjs +62 -5
  969. package/tidb-serverless/session.cjs.map +1 -1
  970. package/tidb-serverless/session.d.cts +14 -9
  971. package/tidb-serverless/session.d.ts +14 -9
  972. package/tidb-serverless/session.js +62 -5
  973. package/tidb-serverless/session.js.map +1 -1
  974. package/utils.cjs +2 -2
  975. package/utils.cjs.map +1 -1
  976. package/utils.d.cts +3 -1
  977. package/utils.d.ts +3 -1
  978. package/utils.js +2 -2
  979. package/utils.js.map +1 -1
  980. package/vercel-postgres/driver.cjs +23 -7
  981. package/vercel-postgres/driver.cjs.map +1 -1
  982. package/vercel-postgres/driver.d.cts +9 -8
  983. package/vercel-postgres/driver.d.ts +9 -8
  984. package/vercel-postgres/driver.js +13 -10
  985. package/vercel-postgres/driver.js.map +1 -1
  986. package/vercel-postgres/migrator.cjs.map +1 -1
  987. package/vercel-postgres/migrator.d.cts +2 -1
  988. package/vercel-postgres/migrator.d.ts +2 -1
  989. package/vercel-postgres/migrator.js.map +1 -1
  990. package/vercel-postgres/session.cjs +34 -4
  991. package/vercel-postgres/session.cjs.map +1 -1
  992. package/vercel-postgres/session.d.cts +13 -8
  993. package/vercel-postgres/session.d.ts +13 -8
  994. package/vercel-postgres/session.js +34 -4
  995. package/vercel-postgres/session.js.map +1 -1
  996. package/version.cjs +1 -1
  997. package/version.d.cts +1 -1
  998. package/version.d.ts +1 -1
  999. package/version.js +1 -1
  1000. package/xata-http/driver.cjs +17 -5
  1001. package/xata-http/driver.cjs.map +1 -1
  1002. package/xata-http/driver.d.cts +5 -4
  1003. package/xata-http/driver.d.ts +5 -4
  1004. package/xata-http/driver.js +7 -5
  1005. package/xata-http/driver.js.map +1 -1
  1006. package/xata-http/migrator.cjs.map +1 -1
  1007. package/xata-http/migrator.d.cts +2 -1
  1008. package/xata-http/migrator.d.ts +2 -1
  1009. package/xata-http/migrator.js.map +1 -1
  1010. package/xata-http/session.cjs +30 -2
  1011. package/xata-http/session.cjs.map +1 -1
  1012. package/xata-http/session.d.cts +13 -8
  1013. package/xata-http/session.d.ts +13 -8
  1014. package/xata-http/session.js +30 -2
  1015. package/xata-http/session.js.map +1 -1
@@ -0,0 +1,226 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var update_exports = {};
20
+ __export(update_exports, {
21
+ GelUpdateBase: () => GelUpdateBase,
22
+ GelUpdateBuilder: () => GelUpdateBuilder
23
+ });
24
+ module.exports = __toCommonJS(update_exports);
25
+ var import_entity = require("../../entity.cjs");
26
+ var import_table = require("../table.cjs");
27
+ var import_query_promise = require("../../query-promise.cjs");
28
+ var import_selection_proxy = require("../../selection-proxy.cjs");
29
+ var import_sql = require("../../sql/sql.cjs");
30
+ var import_subquery = require("../../subquery.cjs");
31
+ var import_table2 = require("../../table.cjs");
32
+ var import_utils = require("../../utils.cjs");
33
+ var import_view_common = require("../../view-common.cjs");
34
+ class GelUpdateBuilder {
35
+ constructor(table, session, dialect, withList) {
36
+ this.table = table;
37
+ this.session = session;
38
+ this.dialect = dialect;
39
+ this.withList = withList;
40
+ }
41
+ static [import_entity.entityKind] = "GelUpdateBuilder";
42
+ authToken;
43
+ setToken(token) {
44
+ this.authToken = token;
45
+ return this;
46
+ }
47
+ set(values) {
48
+ return new GelUpdateBase(
49
+ this.table,
50
+ (0, import_utils.mapUpdateSet)(this.table, values),
51
+ this.session,
52
+ this.dialect,
53
+ this.withList
54
+ );
55
+ }
56
+ }
57
+ class GelUpdateBase extends import_query_promise.QueryPromise {
58
+ constructor(table, set, session, dialect, withList) {
59
+ super();
60
+ this.session = session;
61
+ this.dialect = dialect;
62
+ this.config = { set, table, withList, joins: [] };
63
+ this.tableName = (0, import_utils.getTableLikeName)(table);
64
+ this.joinsNotNullableMap = typeof this.tableName === "string" ? { [this.tableName]: true } : {};
65
+ }
66
+ static [import_entity.entityKind] = "GelUpdate";
67
+ config;
68
+ tableName;
69
+ joinsNotNullableMap;
70
+ from(source) {
71
+ const tableName = (0, import_utils.getTableLikeName)(source);
72
+ if (typeof tableName === "string") {
73
+ this.joinsNotNullableMap[tableName] = true;
74
+ }
75
+ this.config.from = source;
76
+ return this;
77
+ }
78
+ getTableLikeFields(table) {
79
+ if ((0, import_entity.is)(table, import_table.GelTable)) {
80
+ return table[import_table2.Table.Symbol.Columns];
81
+ } else if ((0, import_entity.is)(table, import_subquery.Subquery)) {
82
+ return table._.selectedFields;
83
+ }
84
+ return table[import_view_common.ViewBaseConfig].selectedFields;
85
+ }
86
+ createJoin(joinType) {
87
+ return (table, on) => {
88
+ const tableName = (0, import_utils.getTableLikeName)(table);
89
+ if (typeof tableName === "string" && this.config.joins.some((join) => join.alias === tableName)) {
90
+ throw new Error(`Alias "${tableName}" is already used in this query`);
91
+ }
92
+ if (typeof on === "function") {
93
+ const from = this.config.from && !(0, import_entity.is)(this.config.from, import_sql.SQL) ? this.getTableLikeFields(this.config.from) : void 0;
94
+ on = on(
95
+ new Proxy(
96
+ this.config.table[import_table2.Table.Symbol.Columns],
97
+ new import_selection_proxy.SelectionProxyHandler({ sqlAliasedBehavior: "sql", sqlBehavior: "sql" })
98
+ ),
99
+ from && new Proxy(
100
+ from,
101
+ new import_selection_proxy.SelectionProxyHandler({ sqlAliasedBehavior: "sql", sqlBehavior: "sql" })
102
+ )
103
+ );
104
+ }
105
+ this.config.joins.push({ on, table, joinType, alias: tableName });
106
+ if (typeof tableName === "string") {
107
+ switch (joinType) {
108
+ case "left": {
109
+ this.joinsNotNullableMap[tableName] = false;
110
+ break;
111
+ }
112
+ case "right": {
113
+ this.joinsNotNullableMap = Object.fromEntries(
114
+ Object.entries(this.joinsNotNullableMap).map(([key]) => [key, false])
115
+ );
116
+ this.joinsNotNullableMap[tableName] = true;
117
+ break;
118
+ }
119
+ case "inner": {
120
+ this.joinsNotNullableMap[tableName] = true;
121
+ break;
122
+ }
123
+ case "full": {
124
+ this.joinsNotNullableMap = Object.fromEntries(
125
+ Object.entries(this.joinsNotNullableMap).map(([key]) => [key, false])
126
+ );
127
+ this.joinsNotNullableMap[tableName] = false;
128
+ break;
129
+ }
130
+ }
131
+ }
132
+ return this;
133
+ };
134
+ }
135
+ leftJoin = this.createJoin("left");
136
+ rightJoin = this.createJoin("right");
137
+ innerJoin = this.createJoin("inner");
138
+ fullJoin = this.createJoin("full");
139
+ /**
140
+ * Adds a 'where' clause to the query.
141
+ *
142
+ * Calling this method will update only those rows that fulfill a specified condition.
143
+ *
144
+ * See docs: {@link https://orm.drizzle.team/docs/update}
145
+ *
146
+ * @param where the 'where' clause.
147
+ *
148
+ * @example
149
+ * You can use conditional operators and `sql function` to filter the rows to be updated.
150
+ *
151
+ * ```ts
152
+ * // Update all cars with green color
153
+ * await db.update(cars).set({ color: 'red' })
154
+ * .where(eq(cars.color, 'green'));
155
+ * // or
156
+ * await db.update(cars).set({ color: 'red' })
157
+ * .where(sql`${cars.color} = 'green'`)
158
+ * ```
159
+ *
160
+ * You can logically combine conditional operators with `and()` and `or()` operators:
161
+ *
162
+ * ```ts
163
+ * // Update all BMW cars with a green color
164
+ * await db.update(cars).set({ color: 'red' })
165
+ * .where(and(eq(cars.color, 'green'), eq(cars.brand, 'BMW')));
166
+ *
167
+ * // Update all cars with the green or blue color
168
+ * await db.update(cars).set({ color: 'red' })
169
+ * .where(or(eq(cars.color, 'green'), eq(cars.color, 'blue')));
170
+ * ```
171
+ */
172
+ where(where) {
173
+ this.config.where = where;
174
+ return this;
175
+ }
176
+ returning(fields) {
177
+ if (!fields) {
178
+ fields = Object.assign({}, this.config.table[import_table2.Table.Symbol.Columns]);
179
+ if (this.config.from) {
180
+ const tableName = (0, import_utils.getTableLikeName)(this.config.from);
181
+ if (typeof tableName === "string" && this.config.from && !(0, import_entity.is)(this.config.from, import_sql.SQL)) {
182
+ const fromFields = this.getTableLikeFields(this.config.from);
183
+ fields[tableName] = fromFields;
184
+ }
185
+ for (const join of this.config.joins) {
186
+ const tableName2 = (0, import_utils.getTableLikeName)(join.table);
187
+ if (typeof tableName2 === "string" && !(0, import_entity.is)(join.table, import_sql.SQL)) {
188
+ const fromFields = this.getTableLikeFields(join.table);
189
+ fields[tableName2] = fromFields;
190
+ }
191
+ }
192
+ }
193
+ }
194
+ this.config.returning = (0, import_utils.orderSelectedFields)(fields);
195
+ return this;
196
+ }
197
+ /** @internal */
198
+ getSQL() {
199
+ return this.dialect.buildUpdateQuery(this.config);
200
+ }
201
+ toSQL() {
202
+ const { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());
203
+ return rest;
204
+ }
205
+ /** @internal */
206
+ _prepare(name) {
207
+ const query = this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true);
208
+ query.joinsNotNullableMap = this.joinsNotNullableMap;
209
+ return query;
210
+ }
211
+ prepare(name) {
212
+ return this._prepare(name);
213
+ }
214
+ execute = (placeholderValues) => {
215
+ return this._prepare().execute(placeholderValues);
216
+ };
217
+ $dynamic() {
218
+ return this;
219
+ }
220
+ }
221
+ // Annotate the CommonJS export names for ESM import in node:
222
+ 0 && (module.exports = {
223
+ GelUpdateBase,
224
+ GelUpdateBuilder
225
+ });
226
+ //# sourceMappingURL=update.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/gel-core/query-builders/update.ts"],"sourcesContent":["import type { GetColumnData } from '~/column.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { GelDialect } from '~/gel-core/dialect.ts';\nimport type {\n\tGelPreparedQuery,\n\tGelQueryResultHKT,\n\tGelQueryResultKind,\n\tGelSession,\n\tPreparedQueryConfig,\n} from '~/gel-core/session.ts';\nimport { GelTable } from '~/gel-core/table.ts';\nimport type {\n\tAppendToNullabilityMap,\n\tAppendToResult,\n\tGetSelectTableName,\n\tGetSelectTableSelection,\n\tJoinNullability,\n\tJoinType,\n\tSelectMode,\n\tSelectResult,\n} from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport { SelectionProxyHandler } from '~/selection-proxy.ts';\nimport { type ColumnsSelection, type Query, SQL, type SQLWrapper } from '~/sql/sql.ts';\nimport { Subquery } from '~/subquery.ts';\nimport { Table } from '~/table.ts';\nimport {\n\ttype Assume,\n\tgetTableLikeName,\n\tmapUpdateSet,\n\ttype NeonAuthToken,\n\torderSelectedFields,\n\ttype UpdateSet,\n} from '~/utils.ts';\nimport { ViewBaseConfig } from '~/view-common.ts';\nimport type { GelColumn } from '../columns/common.ts';\nimport type { GelViewBase } from '../view-base.ts';\nimport type { GelSelectJoinConfig, SelectedFields, SelectedFieldsOrdered } from './select.types.ts';\n\nexport interface GelUpdateConfig {\n\twhere?: SQL | undefined;\n\tset: UpdateSet;\n\ttable: GelTable;\n\tfrom?: GelTable | Subquery | GelViewBase | SQL;\n\tjoins: GelSelectJoinConfig[];\n\treturning?: SelectedFieldsOrdered;\n\twithList?: Subquery[];\n}\n\nexport type GelUpdateSetSource<TTable extends GelTable> =\n\t& {\n\t\t[Key in keyof TTable['$inferInsert']]?:\n\t\t\t| GetColumnData<TTable['_']['columns'][Key]>\n\t\t\t| SQL\n\t\t\t| GelColumn;\n\t}\n\t& {};\n\nexport class GelUpdateBuilder<TTable extends GelTable, TQueryResult extends GelQueryResultHKT> {\n\tstatic readonly [entityKind]: string = 'GelUpdateBuilder';\n\n\tdeclare readonly _: {\n\t\treadonly table: TTable;\n\t};\n\n\tconstructor(\n\t\tprivate table: TTable,\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\tprivate withList?: Subquery[],\n\t) {}\n\n\tprivate authToken?: NeonAuthToken;\n\tsetToken(token: NeonAuthToken) {\n\t\tthis.authToken = token;\n\t\treturn this;\n\t}\n\n\tset(\n\t\tvalues: GelUpdateSetSource<TTable>,\n\t): GelUpdateWithout<GelUpdateBase<TTable, TQueryResult>, false, 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'> {\n\t\treturn new GelUpdateBase<TTable, TQueryResult>(\n\t\t\tthis.table,\n\t\t\tmapUpdateSet(this.table, values),\n\t\t\tthis.session,\n\t\t\tthis.dialect,\n\t\t\tthis.withList,\n\t\t);\n\t}\n}\n\nexport type GelUpdateWithout<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tK extends keyof T & string,\n> = TDynamic extends true ? T : Omit<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tT['_']['returning'],\n\t\tT['_']['nullabilityMap'],\n\t\tT['_']['joins'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods'] | K\n\t>,\n\tT['_']['excludedMethods'] | K\n>;\n\nexport type GelUpdateWithJoins<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL,\n> = TDynamic extends true ? T : Omit<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tTFrom,\n\t\tT['_']['returning'],\n\t\tAppendToNullabilityMap<T['_']['nullabilityMap'], GetSelectTableName<TFrom>, 'inner'>,\n\t\t[...T['_']['joins'], {\n\t\t\tname: GetSelectTableName<TFrom>;\n\t\t\tjoinType: 'inner';\n\t\t\ttable: TFrom;\n\t\t}],\n\t\tTDynamic,\n\t\tExclude<T['_']['excludedMethods'] | 'from', 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'>\n\t>,\n\tExclude<T['_']['excludedMethods'] | 'from', 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'>\n>;\n\nexport type GelUpdateJoinFn<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTJoinType extends JoinType,\n> = <\n\tTJoinedTable extends GelTable | Subquery | GelViewBase | SQL,\n>(\n\ttable: TJoinedTable,\n\ton:\n\t\t| (\n\t\t\t(\n\t\t\t\tupdateTable: T['_']['table']['_']['columns'],\n\t\t\t\tfrom: T['_']['from'] extends GelTable ? T['_']['from']['_']['columns']\n\t\t\t\t\t: T['_']['from'] extends Subquery | GelViewBase ? T['_']['from']['_']['selectedFields']\n\t\t\t\t\t: never,\n\t\t\t) => SQL | undefined\n\t\t)\n\t\t| SQL\n\t\t| undefined,\n) => GelUpdateJoin<T, TDynamic, TJoinType, TJoinedTable>;\n\nexport type GelUpdateJoin<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTJoinType extends JoinType,\n\tTJoinedTable extends GelTable | Subquery | GelViewBase | SQL,\n> = TDynamic extends true ? T : GelUpdateBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['from'],\n\tT['_']['returning'],\n\tAppendToNullabilityMap<T['_']['nullabilityMap'], GetSelectTableName<TJoinedTable>, TJoinType>,\n\t[...T['_']['joins'], {\n\t\tname: GetSelectTableName<TJoinedTable>;\n\t\tjoinType: TJoinType;\n\t\ttable: TJoinedTable;\n\t}],\n\tTDynamic,\n\tT['_']['excludedMethods']\n>;\n\ntype Join = {\n\tname: string | undefined;\n\tjoinType: JoinType;\n\ttable: GelTable | Subquery | GelViewBase | SQL;\n};\n\ntype AccumulateToResult<\n\tT extends AnyGelUpdate,\n\tTSelectMode extends SelectMode,\n\tTJoins extends Join[],\n\tTSelectedFields extends ColumnsSelection,\n> = TJoins extends [infer TJoin extends Join, ...infer TRest extends Join[]] ? AccumulateToResult<\n\t\tT,\n\t\tTSelectMode extends 'partial' ? TSelectMode : 'multiple',\n\t\tTRest,\n\t\tAppendToResult<\n\t\t\tT['_']['table']['_']['name'],\n\t\t\tTSelectedFields,\n\t\t\tTJoin['name'],\n\t\t\tTJoin['table'] extends Table ? TJoin['table']['_']['columns']\n\t\t\t\t: TJoin['table'] extends Subquery ? Assume<TJoin['table']['_']['selectedFields'], SelectedFields>\n\t\t\t\t: never,\n\t\t\tTSelectMode extends 'partial' ? TSelectMode : 'multiple'\n\t\t>\n\t>\n\t: TSelectedFields;\n\nexport type GelUpdateReturningAll<T extends AnyGelUpdate, TDynamic extends boolean> = GelUpdateWithout<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tSelectResult<\n\t\t\tAccumulateToResult<\n\t\t\t\tT,\n\t\t\t\t'single',\n\t\t\t\tT['_']['joins'],\n\t\t\t\tGetSelectTableSelection<T['_']['table']>\n\t\t\t>,\n\t\t\t'partial',\n\t\t\tT['_']['nullabilityMap']\n\t\t>,\n\t\tT['_']['nullabilityMap'],\n\t\tT['_']['joins'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type GelUpdateReturning<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTSelectedFields extends SelectedFields,\n> = GelUpdateWithout<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tSelectResult<\n\t\t\tAccumulateToResult<\n\t\t\t\tT,\n\t\t\t\t'partial',\n\t\t\t\tT['_']['joins'],\n\t\t\t\tTSelectedFields\n\t\t\t>,\n\t\t\t'partial',\n\t\t\tT['_']['nullabilityMap']\n\t\t>,\n\t\tT['_']['nullabilityMap'],\n\t\tT['_']['joins'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type GelUpdatePrepare<T extends AnyGelUpdate> = GelPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? GelQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type GelUpdateDynamic<T extends AnyGelUpdate> = GelUpdate<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['from'],\n\tT['_']['returning'],\n\tT['_']['nullabilityMap']\n>;\n\nexport type GelUpdate<\n\tTTable extends GelTable = GelTable,\n\tTQueryResult extends GelQueryResultHKT = GelQueryResultHKT,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n> = GelUpdateBase<TTable, TQueryResult, TFrom, TReturning, TNullabilityMap, TJoins, true, never>;\n\nexport type AnyGelUpdate = GelUpdateBase<any, any, any, any, any, any, any, any>;\n\nexport interface GelUpdateBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends\n\tQueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\tSQLWrapper\n{\n\treadonly _: {\n\t\treadonly dialect: 'gel';\n\t\treadonly table: TTable;\n\t\treadonly joins: TJoins;\n\t\treadonly nullabilityMap: TNullabilityMap;\n\t\treadonly queryResult: TQueryResult;\n\t\treadonly from: TFrom;\n\t\treadonly returning: TReturning;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly result: TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[];\n\t};\n}\n\nexport class GelUpdateBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTJoins extends Join[] = [],\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>\n\timplements\n\t\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\t\tSQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'GelUpdate';\n\n\tprivate config: GelUpdateConfig;\n\tprivate tableName: string | undefined;\n\tprivate joinsNotNullableMap: Record<string, boolean>;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tset: UpdateSet,\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\twithList?: Subquery[],\n\t) {\n\t\tsuper();\n\t\tthis.config = { set, table, withList, joins: [] };\n\t\tthis.tableName = getTableLikeName(table);\n\t\tthis.joinsNotNullableMap = typeof this.tableName === 'string' ? { [this.tableName]: true } : {};\n\t}\n\n\tfrom<TFrom extends GelTable | Subquery | GelViewBase | SQL>(\n\t\tsource: TFrom,\n\t): GelUpdateWithJoins<this, TDynamic, TFrom> {\n\t\tconst tableName = getTableLikeName(source);\n\t\tif (typeof tableName === 'string') {\n\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t}\n\t\tthis.config.from = source;\n\t\treturn this as any;\n\t}\n\n\tprivate getTableLikeFields(table: GelTable | Subquery | GelViewBase): Record<string, unknown> {\n\t\tif (is(table, GelTable)) {\n\t\t\treturn table[Table.Symbol.Columns];\n\t\t} else if (is(table, Subquery)) {\n\t\t\treturn table._.selectedFields;\n\t\t}\n\t\treturn table[ViewBaseConfig].selectedFields;\n\t}\n\n\tprivate createJoin<TJoinType extends JoinType>(\n\t\tjoinType: TJoinType,\n\t): GelUpdateJoinFn<this, TDynamic, TJoinType> {\n\t\treturn ((\n\t\t\ttable: GelTable | Subquery | GelViewBase | SQL,\n\t\t\ton: ((updateTable: TTable, from: TFrom) => SQL | undefined) | SQL | undefined,\n\t\t) => {\n\t\t\tconst tableName = getTableLikeName(table);\n\n\t\t\tif (typeof tableName === 'string' && this.config.joins.some((join) => join.alias === tableName)) {\n\t\t\t\tthrow new Error(`Alias \"${tableName}\" is already used in this query`);\n\t\t\t}\n\n\t\t\tif (typeof on === 'function') {\n\t\t\t\tconst from = this.config.from && !is(this.config.from, SQL)\n\t\t\t\t\t? this.getTableLikeFields(this.config.from)\n\t\t\t\t\t: undefined;\n\t\t\t\ton = on(\n\t\t\t\t\tnew Proxy(\n\t\t\t\t\t\tthis.config.table[Table.Symbol.Columns],\n\t\t\t\t\t\tnew SelectionProxyHandler({ sqlAliasedBehavior: 'sql', sqlBehavior: 'sql' }),\n\t\t\t\t\t) as any,\n\t\t\t\t\tfrom && new Proxy(\n\t\t\t\t\t\tfrom,\n\t\t\t\t\t\tnew SelectionProxyHandler({ sqlAliasedBehavior: 'sql', sqlBehavior: 'sql' }),\n\t\t\t\t\t) as any,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthis.config.joins.push({ on, table, joinType, alias: tableName });\n\n\t\t\tif (typeof tableName === 'string') {\n\t\t\t\tswitch (joinType) {\n\t\t\t\t\tcase 'left': {\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = false;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'right': {\n\t\t\t\t\t\tthis.joinsNotNullableMap = Object.fromEntries(\n\t\t\t\t\t\t\tObject.entries(this.joinsNotNullableMap).map(([key]) => [key, false]),\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'inner': {\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'full': {\n\t\t\t\t\t\tthis.joinsNotNullableMap = Object.fromEntries(\n\t\t\t\t\t\t\tObject.entries(this.joinsNotNullableMap).map(([key]) => [key, false]),\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = false;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn this as any;\n\t\t}) as any;\n\t}\n\n\tleftJoin = this.createJoin('left');\n\n\trightJoin = this.createJoin('right');\n\n\tinnerJoin = this.createJoin('inner');\n\n\tfullJoin = this.createJoin('full');\n\n\t/**\n\t * Adds a 'where' clause to the query.\n\t *\n\t * Calling this method will update only those rows that fulfill a specified condition.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/update}\n\t *\n\t * @param where the 'where' clause.\n\t *\n\t * @example\n\t * You can use conditional operators and `sql function` to filter the rows to be updated.\n\t *\n\t * ```ts\n\t * // Update all cars with green color\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(eq(cars.color, 'green'));\n\t * // or\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(sql`${cars.color} = 'green'`)\n\t * ```\n\t *\n\t * You can logically combine conditional operators with `and()` and `or()` operators:\n\t *\n\t * ```ts\n\t * // Update all BMW cars with a green color\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(and(eq(cars.color, 'green'), eq(cars.brand, 'BMW')));\n\t *\n\t * // Update all cars with the green or blue color\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(or(eq(cars.color, 'green'), eq(cars.color, 'blue')));\n\t * ```\n\t */\n\twhere(where: SQL | undefined): GelUpdateWithout<this, TDynamic, 'where'> {\n\t\tthis.config.where = where;\n\t\treturn this as any;\n\t}\n\n\t/**\n\t * Adds a `returning` clause to the query.\n\t *\n\t * Calling this method will return the specified fields of the updated rows. If no fields are specified, all fields will be returned.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/update#update-with-returning}\n\t *\n\t * @example\n\t * ```ts\n\t * // Update all cars with the green color and return all fields\n\t * const updatedCars: Car[] = await db.update(cars)\n\t * .set({ color: 'red' })\n\t * .where(eq(cars.color, 'green'))\n\t * .returning();\n\t *\n\t * // Update all cars with the green color and return only their id and brand fields\n\t * const updatedCarsIdsAndBrands: { id: number, brand: string }[] = await db.update(cars)\n\t * .set({ color: 'red' })\n\t * .where(eq(cars.color, 'green'))\n\t * .returning({ id: cars.id, brand: cars.brand });\n\t * ```\n\t */\n\treturning(): GelUpdateReturningAll<this, TDynamic>;\n\treturning<TSelectedFields extends SelectedFields>(\n\t\tfields: TSelectedFields,\n\t): GelUpdateReturning<this, TDynamic, TSelectedFields>;\n\treturning(\n\t\tfields?: SelectedFields,\n\t): GelUpdateWithout<AnyGelUpdate, TDynamic, 'returning'> {\n\t\tif (!fields) {\n\t\t\tfields = Object.assign({}, this.config.table[Table.Symbol.Columns]);\n\n\t\t\tif (this.config.from) {\n\t\t\t\tconst tableName = getTableLikeName(this.config.from);\n\n\t\t\t\tif (typeof tableName === 'string' && this.config.from && !is(this.config.from, SQL)) {\n\t\t\t\t\tconst fromFields = this.getTableLikeFields(this.config.from);\n\t\t\t\t\tfields[tableName] = fromFields as any;\n\t\t\t\t}\n\n\t\t\t\tfor (const join of this.config.joins) {\n\t\t\t\t\tconst tableName = getTableLikeName(join.table);\n\n\t\t\t\t\tif (typeof tableName === 'string' && !is(join.table, SQL)) {\n\t\t\t\t\t\tconst fromFields = this.getTableLikeFields(join.table);\n\t\t\t\t\t\tfields[tableName] = fromFields as any;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tthis.config.returning = orderSelectedFields<GelColumn>(fields);\n\t\treturn this as any;\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this.dialect.buildUpdateQuery(this.config);\n\t}\n\n\ttoSQL(): Query {\n\t\tconst { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());\n\t\treturn rest;\n\t}\n\n\t/** @internal */\n\t_prepare(name?: string): GelUpdatePrepare<this> {\n\t\tconst query = this.session.prepareQuery<\n\t\t\tPreparedQueryConfig & { execute: TReturning[] }\n\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true);\n\t\tquery.joinsNotNullableMap = this.joinsNotNullableMap;\n\t\treturn query;\n\t}\n\n\tprepare(name: string): GelUpdatePrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\toverride execute: ReturnType<this['prepare']>['execute'] = (placeholderValues) => {\n\t\treturn this._prepare().execute(placeholderValues);\n\t};\n\n\t$dynamic(): GelUpdateDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA+B;AAS/B,mBAAyB;AAWzB,2BAA6B;AAE7B,6BAAsC;AACtC,iBAAwE;AACxE,sBAAyB;AACzB,IAAAA,gBAAsB;AACtB,mBAOO;AACP,yBAA+B;AAwBxB,MAAM,iBAAkF;AAAA,EAO9F,YACS,OACA,SACA,SACA,UACP;AAJO;AACA;AACA;AACA;AAAA,EACN;AAAA,EAXH,QAAiB,wBAAU,IAAY;AAAA,EAa/B;AAAA,EACR,SAAS,OAAsB;AAC9B,SAAK,YAAY;AACjB,WAAO;AAAA,EACR;AAAA,EAEA,IACC,QACoH;AACpH,WAAO,IAAI;AAAA,MACV,KAAK;AAAA,UACL,2BAAa,KAAK,OAAO,MAAM;AAAA,MAC/B,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAwNO,MAAM,sBAaH,kCAIV;AAAA,EAOC,YACC,OACA,KACQ,SACA,SACR,UACC;AACD,UAAM;AAJE;AACA;AAIR,SAAK,SAAS,EAAE,KAAK,OAAO,UAAU,OAAO,CAAC,EAAE;AAChD,SAAK,gBAAY,+BAAiB,KAAK;AACvC,SAAK,sBAAsB,OAAO,KAAK,cAAc,WAAW,EAAE,CAAC,KAAK,SAAS,GAAG,KAAK,IAAI,CAAC;AAAA,EAC/F;AAAA,EAjBA,QAA0B,wBAAU,IAAY;AAAA,EAExC;AAAA,EACA;AAAA,EACA;AAAA,EAeR,KACC,QAC4C;AAC5C,UAAM,gBAAY,+BAAiB,MAAM;AACzC,QAAI,OAAO,cAAc,UAAU;AAClC,WAAK,oBAAoB,SAAS,IAAI;AAAA,IACvC;AACA,SAAK,OAAO,OAAO;AACnB,WAAO;AAAA,EACR;AAAA,EAEQ,mBAAmB,OAAmE;AAC7F,YAAI,kBAAG,OAAO,qBAAQ,GAAG;AACxB,aAAO,MAAM,oBAAM,OAAO,OAAO;AAAA,IAClC,eAAW,kBAAG,OAAO,wBAAQ,GAAG;AAC/B,aAAO,MAAM,EAAE;AAAA,IAChB;AACA,WAAO,MAAM,iCAAc,EAAE;AAAA,EAC9B;AAAA,EAEQ,WACP,UAC6C;AAC7C,WAAQ,CACP,OACA,OACI;AACJ,YAAM,gBAAY,+BAAiB,KAAK;AAExC,UAAI,OAAO,cAAc,YAAY,KAAK,OAAO,MAAM,KAAK,CAAC,SAAS,KAAK,UAAU,SAAS,GAAG;AAChG,cAAM,IAAI,MAAM,UAAU,SAAS,iCAAiC;AAAA,MACrE;AAEA,UAAI,OAAO,OAAO,YAAY;AAC7B,cAAM,OAAO,KAAK,OAAO,QAAQ,KAAC,kBAAG,KAAK,OAAO,MAAM,cAAG,IACvD,KAAK,mBAAmB,KAAK,OAAO,IAAI,IACxC;AACH,aAAK;AAAA,UACJ,IAAI;AAAA,YACH,KAAK,OAAO,MAAM,oBAAM,OAAO,OAAO;AAAA,YACtC,IAAI,6CAAsB,EAAE,oBAAoB,OAAO,aAAa,MAAM,CAAC;AAAA,UAC5E;AAAA,UACA,QAAQ,IAAI;AAAA,YACX;AAAA,YACA,IAAI,6CAAsB,EAAE,oBAAoB,OAAO,aAAa,MAAM,CAAC;AAAA,UAC5E;AAAA,QACD;AAAA,MACD;AAEA,WAAK,OAAO,MAAM,KAAK,EAAE,IAAI,OAAO,UAAU,OAAO,UAAU,CAAC;AAEhE,UAAI,OAAO,cAAc,UAAU;AAClC,gBAAQ,UAAU;AAAA,UACjB,KAAK,QAAQ;AACZ,iBAAK,oBAAoB,SAAS,IAAI;AACtC;AAAA,UACD;AAAA,UACA,KAAK,SAAS;AACb,iBAAK,sBAAsB,OAAO;AAAA,cACjC,OAAO,QAAQ,KAAK,mBAAmB,EAAE,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,KAAK,CAAC;AAAA,YACrE;AACA,iBAAK,oBAAoB,SAAS,IAAI;AACtC;AAAA,UACD;AAAA,UACA,KAAK,SAAS;AACb,iBAAK,oBAAoB,SAAS,IAAI;AACtC;AAAA,UACD;AAAA,UACA,KAAK,QAAQ;AACZ,iBAAK,sBAAsB,OAAO;AAAA,cACjC,OAAO,QAAQ,KAAK,mBAAmB,EAAE,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,KAAK,CAAC;AAAA,YACrE;AACA,iBAAK,oBAAoB,SAAS,IAAI;AACtC;AAAA,UACD;AAAA,QACD;AAAA,MACD;AAEA,aAAO;AAAA,IACR;AAAA,EACD;AAAA,EAEA,WAAW,KAAK,WAAW,MAAM;AAAA,EAEjC,YAAY,KAAK,WAAW,OAAO;AAAA,EAEnC,YAAY,KAAK,WAAW,OAAO;AAAA,EAEnC,WAAW,KAAK,WAAW,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAmCjC,MAAM,OAAmE;AACxE,SAAK,OAAO,QAAQ;AACpB,WAAO;AAAA,EACR;AAAA,EA4BA,UACC,QACwD;AACxD,QAAI,CAAC,QAAQ;AACZ,eAAS,OAAO,OAAO,CAAC,GAAG,KAAK,OAAO,MAAM,oBAAM,OAAO,OAAO,CAAC;AAElE,UAAI,KAAK,OAAO,MAAM;AACrB,cAAM,gBAAY,+BAAiB,KAAK,OAAO,IAAI;AAEnD,YAAI,OAAO,cAAc,YAAY,KAAK,OAAO,QAAQ,KAAC,kBAAG,KAAK,OAAO,MAAM,cAAG,GAAG;AACpF,gBAAM,aAAa,KAAK,mBAAmB,KAAK,OAAO,IAAI;AAC3D,iBAAO,SAAS,IAAI;AAAA,QACrB;AAEA,mBAAW,QAAQ,KAAK,OAAO,OAAO;AACrC,gBAAMC,iBAAY,+BAAiB,KAAK,KAAK;AAE7C,cAAI,OAAOA,eAAc,YAAY,KAAC,kBAAG,KAAK,OAAO,cAAG,GAAG;AAC1D,kBAAM,aAAa,KAAK,mBAAmB,KAAK,KAAK;AACrD,mBAAOA,UAAS,IAAI;AAAA,UACrB;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAEA,SAAK,OAAO,gBAAY,kCAA+B,MAAM;AAC7D,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,SAAc;AACb,WAAO,KAAK,QAAQ,iBAAiB,KAAK,MAAM;AAAA,EACjD;AAAA,EAEA,QAAe;AACd,UAAM,EAAE,SAAS,UAAU,GAAG,KAAK,IAAI,KAAK,QAAQ,WAAW,KAAK,OAAO,CAAC;AAC5E,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,SAAS,MAAuC;AAC/C,UAAM,QAAQ,KAAK,QAAQ,aAEzB,KAAK,QAAQ,WAAW,KAAK,OAAO,CAAC,GAAG,KAAK,OAAO,WAAW,MAAM,IAAI;AAC3E,UAAM,sBAAsB,KAAK;AACjC,WAAO;AAAA,EACR;AAAA,EAEA,QAAQ,MAAsC;AAC7C,WAAO,KAAK,SAAS,IAAI;AAAA,EAC1B;AAAA,EAES,UAAkD,CAAC,sBAAsB;AACjF,WAAO,KAAK,SAAS,EAAE,QAAQ,iBAAiB;AAAA,EACjD;AAAA,EAEA,WAAmC;AAClC,WAAO;AAAA,EACR;AACD;","names":["import_table","tableName"]}
@@ -0,0 +1,166 @@
1
+ import type { GetColumnData } from "../../column.cjs";
2
+ import { entityKind } from "../../entity.cjs";
3
+ import type { GelDialect } from "../dialect.cjs";
4
+ import type { GelPreparedQuery, GelQueryResultHKT, GelQueryResultKind, GelSession, PreparedQueryConfig } from "../session.cjs";
5
+ import { GelTable } from "../table.cjs";
6
+ import type { AppendToNullabilityMap, AppendToResult, GetSelectTableName, GetSelectTableSelection, JoinNullability, JoinType, SelectMode, SelectResult } from "../../query-builders/select.types.cjs";
7
+ import { QueryPromise } from "../../query-promise.cjs";
8
+ import type { RunnableQuery } from "../../runnable-query.cjs";
9
+ import { type ColumnsSelection, type Query, SQL, type SQLWrapper } from "../../sql/sql.cjs";
10
+ import { Subquery } from "../../subquery.cjs";
11
+ import { Table } from "../../table.cjs";
12
+ import { type Assume, type NeonAuthToken, type UpdateSet } from "../../utils.cjs";
13
+ import type { GelColumn } from "../columns/common.cjs";
14
+ import type { GelViewBase } from "../view-base.cjs";
15
+ import type { GelSelectJoinConfig, SelectedFields, SelectedFieldsOrdered } from "./select.types.cjs";
16
+ export interface GelUpdateConfig {
17
+ where?: SQL | undefined;
18
+ set: UpdateSet;
19
+ table: GelTable;
20
+ from?: GelTable | Subquery | GelViewBase | SQL;
21
+ joins: GelSelectJoinConfig[];
22
+ returning?: SelectedFieldsOrdered;
23
+ withList?: Subquery[];
24
+ }
25
+ export type GelUpdateSetSource<TTable extends GelTable> = {
26
+ [Key in keyof TTable['$inferInsert']]?: GetColumnData<TTable['_']['columns'][Key]> | SQL | GelColumn;
27
+ } & {};
28
+ export declare class GelUpdateBuilder<TTable extends GelTable, TQueryResult extends GelQueryResultHKT> {
29
+ private table;
30
+ private session;
31
+ private dialect;
32
+ private withList?;
33
+ static readonly [entityKind]: string;
34
+ readonly _: {
35
+ readonly table: TTable;
36
+ };
37
+ constructor(table: TTable, session: GelSession, dialect: GelDialect, withList?: Subquery[] | undefined);
38
+ private authToken?;
39
+ setToken(token: NeonAuthToken): this;
40
+ set(values: GelUpdateSetSource<TTable>): GelUpdateWithout<GelUpdateBase<TTable, TQueryResult>, false, 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'>;
41
+ }
42
+ export type GelUpdateWithout<T extends AnyGelUpdate, TDynamic extends boolean, K extends keyof T & string> = TDynamic extends true ? T : Omit<GelUpdateBase<T['_']['table'], T['_']['queryResult'], T['_']['from'], T['_']['returning'], T['_']['nullabilityMap'], T['_']['joins'], TDynamic, T['_']['excludedMethods'] | K>, T['_']['excludedMethods'] | K>;
43
+ export type GelUpdateWithJoins<T extends AnyGelUpdate, TDynamic extends boolean, TFrom extends GelTable | Subquery | GelViewBase | SQL> = TDynamic extends true ? T : Omit<GelUpdateBase<T['_']['table'], T['_']['queryResult'], TFrom, T['_']['returning'], AppendToNullabilityMap<T['_']['nullabilityMap'], GetSelectTableName<TFrom>, 'inner'>, [
44
+ ...T['_']['joins'],
45
+ {
46
+ name: GetSelectTableName<TFrom>;
47
+ joinType: 'inner';
48
+ table: TFrom;
49
+ }
50
+ ], TDynamic, Exclude<T['_']['excludedMethods'] | 'from', 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'>>, Exclude<T['_']['excludedMethods'] | 'from', 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'>>;
51
+ export type GelUpdateJoinFn<T extends AnyGelUpdate, TDynamic extends boolean, TJoinType extends JoinType> = <TJoinedTable extends GelTable | Subquery | GelViewBase | SQL>(table: TJoinedTable, on: ((updateTable: T['_']['table']['_']['columns'], from: T['_']['from'] extends GelTable ? T['_']['from']['_']['columns'] : T['_']['from'] extends Subquery | GelViewBase ? T['_']['from']['_']['selectedFields'] : never) => SQL | undefined) | SQL | undefined) => GelUpdateJoin<T, TDynamic, TJoinType, TJoinedTable>;
52
+ export type GelUpdateJoin<T extends AnyGelUpdate, TDynamic extends boolean, TJoinType extends JoinType, TJoinedTable extends GelTable | Subquery | GelViewBase | SQL> = TDynamic extends true ? T : GelUpdateBase<T['_']['table'], T['_']['queryResult'], T['_']['from'], T['_']['returning'], AppendToNullabilityMap<T['_']['nullabilityMap'], GetSelectTableName<TJoinedTable>, TJoinType>, [
53
+ ...T['_']['joins'],
54
+ {
55
+ name: GetSelectTableName<TJoinedTable>;
56
+ joinType: TJoinType;
57
+ table: TJoinedTable;
58
+ }
59
+ ], TDynamic, T['_']['excludedMethods']>;
60
+ type Join = {
61
+ name: string | undefined;
62
+ joinType: JoinType;
63
+ table: GelTable | Subquery | GelViewBase | SQL;
64
+ };
65
+ type AccumulateToResult<T extends AnyGelUpdate, TSelectMode extends SelectMode, TJoins extends Join[], TSelectedFields extends ColumnsSelection> = TJoins extends [infer TJoin extends Join, ...infer TRest extends Join[]] ? AccumulateToResult<T, TSelectMode extends 'partial' ? TSelectMode : 'multiple', TRest, AppendToResult<T['_']['table']['_']['name'], TSelectedFields, TJoin['name'], TJoin['table'] extends Table ? TJoin['table']['_']['columns'] : TJoin['table'] extends Subquery ? Assume<TJoin['table']['_']['selectedFields'], SelectedFields> : never, TSelectMode extends 'partial' ? TSelectMode : 'multiple'>> : TSelectedFields;
66
+ export type GelUpdateReturningAll<T extends AnyGelUpdate, TDynamic extends boolean> = GelUpdateWithout<GelUpdateBase<T['_']['table'], T['_']['queryResult'], T['_']['from'], SelectResult<AccumulateToResult<T, 'single', T['_']['joins'], GetSelectTableSelection<T['_']['table']>>, 'partial', T['_']['nullabilityMap']>, T['_']['nullabilityMap'], T['_']['joins'], TDynamic, T['_']['excludedMethods']>, TDynamic, 'returning'>;
67
+ export type GelUpdateReturning<T extends AnyGelUpdate, TDynamic extends boolean, TSelectedFields extends SelectedFields> = GelUpdateWithout<GelUpdateBase<T['_']['table'], T['_']['queryResult'], T['_']['from'], SelectResult<AccumulateToResult<T, 'partial', T['_']['joins'], TSelectedFields>, 'partial', T['_']['nullabilityMap']>, T['_']['nullabilityMap'], T['_']['joins'], TDynamic, T['_']['excludedMethods']>, TDynamic, 'returning'>;
68
+ export type GelUpdatePrepare<T extends AnyGelUpdate> = GelPreparedQuery<PreparedQueryConfig & {
69
+ execute: T['_']['returning'] extends undefined ? GelQueryResultKind<T['_']['queryResult'], never> : T['_']['returning'][];
70
+ }>;
71
+ export type GelUpdateDynamic<T extends AnyGelUpdate> = GelUpdate<T['_']['table'], T['_']['queryResult'], T['_']['from'], T['_']['returning'], T['_']['nullabilityMap']>;
72
+ export type GelUpdate<TTable extends GelTable = GelTable, TQueryResult extends GelQueryResultHKT = GelQueryResultHKT, TFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined, TReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined, TNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>, TJoins extends Join[] = []> = GelUpdateBase<TTable, TQueryResult, TFrom, TReturning, TNullabilityMap, TJoins, true, never>;
73
+ export type AnyGelUpdate = GelUpdateBase<any, any, any, any, any, any, any, any>;
74
+ export interface GelUpdateBase<TTable extends GelTable, TQueryResult extends GelQueryResultHKT, TFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined, TReturning extends Record<string, unknown> | undefined = undefined, TNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>, TJoins extends Join[] = [], TDynamic extends boolean = false, TExcludedMethods extends string = never> extends QueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>, RunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>, SQLWrapper {
75
+ readonly _: {
76
+ readonly dialect: 'gel';
77
+ readonly table: TTable;
78
+ readonly joins: TJoins;
79
+ readonly nullabilityMap: TNullabilityMap;
80
+ readonly queryResult: TQueryResult;
81
+ readonly from: TFrom;
82
+ readonly returning: TReturning;
83
+ readonly dynamic: TDynamic;
84
+ readonly excludedMethods: TExcludedMethods;
85
+ readonly result: TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[];
86
+ };
87
+ }
88
+ export declare class GelUpdateBase<TTable extends GelTable, TQueryResult extends GelQueryResultHKT, TFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined, TReturning extends Record<string, unknown> | undefined = undefined, TNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>, TJoins extends Join[] = [], TDynamic extends boolean = false, TExcludedMethods extends string = never> extends QueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]> implements RunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>, SQLWrapper {
89
+ private session;
90
+ private dialect;
91
+ static readonly [entityKind]: string;
92
+ private config;
93
+ private tableName;
94
+ private joinsNotNullableMap;
95
+ constructor(table: TTable, set: UpdateSet, session: GelSession, dialect: GelDialect, withList?: Subquery[]);
96
+ from<TFrom extends GelTable | Subquery | GelViewBase | SQL>(source: TFrom): GelUpdateWithJoins<this, TDynamic, TFrom>;
97
+ private getTableLikeFields;
98
+ private createJoin;
99
+ leftJoin: GelUpdateJoinFn<this, TDynamic, "left">;
100
+ rightJoin: GelUpdateJoinFn<this, TDynamic, "right">;
101
+ innerJoin: GelUpdateJoinFn<this, TDynamic, "inner">;
102
+ fullJoin: GelUpdateJoinFn<this, TDynamic, "full">;
103
+ /**
104
+ * Adds a 'where' clause to the query.
105
+ *
106
+ * Calling this method will update only those rows that fulfill a specified condition.
107
+ *
108
+ * See docs: {@link https://orm.drizzle.team/docs/update}
109
+ *
110
+ * @param where the 'where' clause.
111
+ *
112
+ * @example
113
+ * You can use conditional operators and `sql function` to filter the rows to be updated.
114
+ *
115
+ * ```ts
116
+ * // Update all cars with green color
117
+ * await db.update(cars).set({ color: 'red' })
118
+ * .where(eq(cars.color, 'green'));
119
+ * // or
120
+ * await db.update(cars).set({ color: 'red' })
121
+ * .where(sql`${cars.color} = 'green'`)
122
+ * ```
123
+ *
124
+ * You can logically combine conditional operators with `and()` and `or()` operators:
125
+ *
126
+ * ```ts
127
+ * // Update all BMW cars with a green color
128
+ * await db.update(cars).set({ color: 'red' })
129
+ * .where(and(eq(cars.color, 'green'), eq(cars.brand, 'BMW')));
130
+ *
131
+ * // Update all cars with the green or blue color
132
+ * await db.update(cars).set({ color: 'red' })
133
+ * .where(or(eq(cars.color, 'green'), eq(cars.color, 'blue')));
134
+ * ```
135
+ */
136
+ where(where: SQL | undefined): GelUpdateWithout<this, TDynamic, 'where'>;
137
+ /**
138
+ * Adds a `returning` clause to the query.
139
+ *
140
+ * Calling this method will return the specified fields of the updated rows. If no fields are specified, all fields will be returned.
141
+ *
142
+ * See docs: {@link https://orm.drizzle.team/docs/update#update-with-returning}
143
+ *
144
+ * @example
145
+ * ```ts
146
+ * // Update all cars with the green color and return all fields
147
+ * const updatedCars: Car[] = await db.update(cars)
148
+ * .set({ color: 'red' })
149
+ * .where(eq(cars.color, 'green'))
150
+ * .returning();
151
+ *
152
+ * // Update all cars with the green color and return only their id and brand fields
153
+ * const updatedCarsIdsAndBrands: { id: number, brand: string }[] = await db.update(cars)
154
+ * .set({ color: 'red' })
155
+ * .where(eq(cars.color, 'green'))
156
+ * .returning({ id: cars.id, brand: cars.brand });
157
+ * ```
158
+ */
159
+ returning(): GelUpdateReturningAll<this, TDynamic>;
160
+ returning<TSelectedFields extends SelectedFields>(fields: TSelectedFields): GelUpdateReturning<this, TDynamic, TSelectedFields>;
161
+ toSQL(): Query;
162
+ prepare(name: string): GelUpdatePrepare<this>;
163
+ execute: ReturnType<this['prepare']>['execute'];
164
+ $dynamic(): GelUpdateDynamic<this>;
165
+ }
166
+ export {};
@@ -0,0 +1,166 @@
1
+ import type { GetColumnData } from "../../column.js";
2
+ import { entityKind } from "../../entity.js";
3
+ import type { GelDialect } from "../dialect.js";
4
+ import type { GelPreparedQuery, GelQueryResultHKT, GelQueryResultKind, GelSession, PreparedQueryConfig } from "../session.js";
5
+ import { GelTable } from "../table.js";
6
+ import type { AppendToNullabilityMap, AppendToResult, GetSelectTableName, GetSelectTableSelection, JoinNullability, JoinType, SelectMode, SelectResult } from "../../query-builders/select.types.js";
7
+ import { QueryPromise } from "../../query-promise.js";
8
+ import type { RunnableQuery } from "../../runnable-query.js";
9
+ import { type ColumnsSelection, type Query, SQL, type SQLWrapper } from "../../sql/sql.js";
10
+ import { Subquery } from "../../subquery.js";
11
+ import { Table } from "../../table.js";
12
+ import { type Assume, type NeonAuthToken, type UpdateSet } from "../../utils.js";
13
+ import type { GelColumn } from "../columns/common.js";
14
+ import type { GelViewBase } from "../view-base.js";
15
+ import type { GelSelectJoinConfig, SelectedFields, SelectedFieldsOrdered } from "./select.types.js";
16
+ export interface GelUpdateConfig {
17
+ where?: SQL | undefined;
18
+ set: UpdateSet;
19
+ table: GelTable;
20
+ from?: GelTable | Subquery | GelViewBase | SQL;
21
+ joins: GelSelectJoinConfig[];
22
+ returning?: SelectedFieldsOrdered;
23
+ withList?: Subquery[];
24
+ }
25
+ export type GelUpdateSetSource<TTable extends GelTable> = {
26
+ [Key in keyof TTable['$inferInsert']]?: GetColumnData<TTable['_']['columns'][Key]> | SQL | GelColumn;
27
+ } & {};
28
+ export declare class GelUpdateBuilder<TTable extends GelTable, TQueryResult extends GelQueryResultHKT> {
29
+ private table;
30
+ private session;
31
+ private dialect;
32
+ private withList?;
33
+ static readonly [entityKind]: string;
34
+ readonly _: {
35
+ readonly table: TTable;
36
+ };
37
+ constructor(table: TTable, session: GelSession, dialect: GelDialect, withList?: Subquery[] | undefined);
38
+ private authToken?;
39
+ setToken(token: NeonAuthToken): this;
40
+ set(values: GelUpdateSetSource<TTable>): GelUpdateWithout<GelUpdateBase<TTable, TQueryResult>, false, 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'>;
41
+ }
42
+ export type GelUpdateWithout<T extends AnyGelUpdate, TDynamic extends boolean, K extends keyof T & string> = TDynamic extends true ? T : Omit<GelUpdateBase<T['_']['table'], T['_']['queryResult'], T['_']['from'], T['_']['returning'], T['_']['nullabilityMap'], T['_']['joins'], TDynamic, T['_']['excludedMethods'] | K>, T['_']['excludedMethods'] | K>;
43
+ export type GelUpdateWithJoins<T extends AnyGelUpdate, TDynamic extends boolean, TFrom extends GelTable | Subquery | GelViewBase | SQL> = TDynamic extends true ? T : Omit<GelUpdateBase<T['_']['table'], T['_']['queryResult'], TFrom, T['_']['returning'], AppendToNullabilityMap<T['_']['nullabilityMap'], GetSelectTableName<TFrom>, 'inner'>, [
44
+ ...T['_']['joins'],
45
+ {
46
+ name: GetSelectTableName<TFrom>;
47
+ joinType: 'inner';
48
+ table: TFrom;
49
+ }
50
+ ], TDynamic, Exclude<T['_']['excludedMethods'] | 'from', 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'>>, Exclude<T['_']['excludedMethods'] | 'from', 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'>>;
51
+ export type GelUpdateJoinFn<T extends AnyGelUpdate, TDynamic extends boolean, TJoinType extends JoinType> = <TJoinedTable extends GelTable | Subquery | GelViewBase | SQL>(table: TJoinedTable, on: ((updateTable: T['_']['table']['_']['columns'], from: T['_']['from'] extends GelTable ? T['_']['from']['_']['columns'] : T['_']['from'] extends Subquery | GelViewBase ? T['_']['from']['_']['selectedFields'] : never) => SQL | undefined) | SQL | undefined) => GelUpdateJoin<T, TDynamic, TJoinType, TJoinedTable>;
52
+ export type GelUpdateJoin<T extends AnyGelUpdate, TDynamic extends boolean, TJoinType extends JoinType, TJoinedTable extends GelTable | Subquery | GelViewBase | SQL> = TDynamic extends true ? T : GelUpdateBase<T['_']['table'], T['_']['queryResult'], T['_']['from'], T['_']['returning'], AppendToNullabilityMap<T['_']['nullabilityMap'], GetSelectTableName<TJoinedTable>, TJoinType>, [
53
+ ...T['_']['joins'],
54
+ {
55
+ name: GetSelectTableName<TJoinedTable>;
56
+ joinType: TJoinType;
57
+ table: TJoinedTable;
58
+ }
59
+ ], TDynamic, T['_']['excludedMethods']>;
60
+ type Join = {
61
+ name: string | undefined;
62
+ joinType: JoinType;
63
+ table: GelTable | Subquery | GelViewBase | SQL;
64
+ };
65
+ type AccumulateToResult<T extends AnyGelUpdate, TSelectMode extends SelectMode, TJoins extends Join[], TSelectedFields extends ColumnsSelection> = TJoins extends [infer TJoin extends Join, ...infer TRest extends Join[]] ? AccumulateToResult<T, TSelectMode extends 'partial' ? TSelectMode : 'multiple', TRest, AppendToResult<T['_']['table']['_']['name'], TSelectedFields, TJoin['name'], TJoin['table'] extends Table ? TJoin['table']['_']['columns'] : TJoin['table'] extends Subquery ? Assume<TJoin['table']['_']['selectedFields'], SelectedFields> : never, TSelectMode extends 'partial' ? TSelectMode : 'multiple'>> : TSelectedFields;
66
+ export type GelUpdateReturningAll<T extends AnyGelUpdate, TDynamic extends boolean> = GelUpdateWithout<GelUpdateBase<T['_']['table'], T['_']['queryResult'], T['_']['from'], SelectResult<AccumulateToResult<T, 'single', T['_']['joins'], GetSelectTableSelection<T['_']['table']>>, 'partial', T['_']['nullabilityMap']>, T['_']['nullabilityMap'], T['_']['joins'], TDynamic, T['_']['excludedMethods']>, TDynamic, 'returning'>;
67
+ export type GelUpdateReturning<T extends AnyGelUpdate, TDynamic extends boolean, TSelectedFields extends SelectedFields> = GelUpdateWithout<GelUpdateBase<T['_']['table'], T['_']['queryResult'], T['_']['from'], SelectResult<AccumulateToResult<T, 'partial', T['_']['joins'], TSelectedFields>, 'partial', T['_']['nullabilityMap']>, T['_']['nullabilityMap'], T['_']['joins'], TDynamic, T['_']['excludedMethods']>, TDynamic, 'returning'>;
68
+ export type GelUpdatePrepare<T extends AnyGelUpdate> = GelPreparedQuery<PreparedQueryConfig & {
69
+ execute: T['_']['returning'] extends undefined ? GelQueryResultKind<T['_']['queryResult'], never> : T['_']['returning'][];
70
+ }>;
71
+ export type GelUpdateDynamic<T extends AnyGelUpdate> = GelUpdate<T['_']['table'], T['_']['queryResult'], T['_']['from'], T['_']['returning'], T['_']['nullabilityMap']>;
72
+ export type GelUpdate<TTable extends GelTable = GelTable, TQueryResult extends GelQueryResultHKT = GelQueryResultHKT, TFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined, TReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined, TNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>, TJoins extends Join[] = []> = GelUpdateBase<TTable, TQueryResult, TFrom, TReturning, TNullabilityMap, TJoins, true, never>;
73
+ export type AnyGelUpdate = GelUpdateBase<any, any, any, any, any, any, any, any>;
74
+ export interface GelUpdateBase<TTable extends GelTable, TQueryResult extends GelQueryResultHKT, TFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined, TReturning extends Record<string, unknown> | undefined = undefined, TNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>, TJoins extends Join[] = [], TDynamic extends boolean = false, TExcludedMethods extends string = never> extends QueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>, RunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>, SQLWrapper {
75
+ readonly _: {
76
+ readonly dialect: 'gel';
77
+ readonly table: TTable;
78
+ readonly joins: TJoins;
79
+ readonly nullabilityMap: TNullabilityMap;
80
+ readonly queryResult: TQueryResult;
81
+ readonly from: TFrom;
82
+ readonly returning: TReturning;
83
+ readonly dynamic: TDynamic;
84
+ readonly excludedMethods: TExcludedMethods;
85
+ readonly result: TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[];
86
+ };
87
+ }
88
+ export declare class GelUpdateBase<TTable extends GelTable, TQueryResult extends GelQueryResultHKT, TFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined, TReturning extends Record<string, unknown> | undefined = undefined, TNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>, TJoins extends Join[] = [], TDynamic extends boolean = false, TExcludedMethods extends string = never> extends QueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]> implements RunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>, SQLWrapper {
89
+ private session;
90
+ private dialect;
91
+ static readonly [entityKind]: string;
92
+ private config;
93
+ private tableName;
94
+ private joinsNotNullableMap;
95
+ constructor(table: TTable, set: UpdateSet, session: GelSession, dialect: GelDialect, withList?: Subquery[]);
96
+ from<TFrom extends GelTable | Subquery | GelViewBase | SQL>(source: TFrom): GelUpdateWithJoins<this, TDynamic, TFrom>;
97
+ private getTableLikeFields;
98
+ private createJoin;
99
+ leftJoin: GelUpdateJoinFn<this, TDynamic, "left">;
100
+ rightJoin: GelUpdateJoinFn<this, TDynamic, "right">;
101
+ innerJoin: GelUpdateJoinFn<this, TDynamic, "inner">;
102
+ fullJoin: GelUpdateJoinFn<this, TDynamic, "full">;
103
+ /**
104
+ * Adds a 'where' clause to the query.
105
+ *
106
+ * Calling this method will update only those rows that fulfill a specified condition.
107
+ *
108
+ * See docs: {@link https://orm.drizzle.team/docs/update}
109
+ *
110
+ * @param where the 'where' clause.
111
+ *
112
+ * @example
113
+ * You can use conditional operators and `sql function` to filter the rows to be updated.
114
+ *
115
+ * ```ts
116
+ * // Update all cars with green color
117
+ * await db.update(cars).set({ color: 'red' })
118
+ * .where(eq(cars.color, 'green'));
119
+ * // or
120
+ * await db.update(cars).set({ color: 'red' })
121
+ * .where(sql`${cars.color} = 'green'`)
122
+ * ```
123
+ *
124
+ * You can logically combine conditional operators with `and()` and `or()` operators:
125
+ *
126
+ * ```ts
127
+ * // Update all BMW cars with a green color
128
+ * await db.update(cars).set({ color: 'red' })
129
+ * .where(and(eq(cars.color, 'green'), eq(cars.brand, 'BMW')));
130
+ *
131
+ * // Update all cars with the green or blue color
132
+ * await db.update(cars).set({ color: 'red' })
133
+ * .where(or(eq(cars.color, 'green'), eq(cars.color, 'blue')));
134
+ * ```
135
+ */
136
+ where(where: SQL | undefined): GelUpdateWithout<this, TDynamic, 'where'>;
137
+ /**
138
+ * Adds a `returning` clause to the query.
139
+ *
140
+ * Calling this method will return the specified fields of the updated rows. If no fields are specified, all fields will be returned.
141
+ *
142
+ * See docs: {@link https://orm.drizzle.team/docs/update#update-with-returning}
143
+ *
144
+ * @example
145
+ * ```ts
146
+ * // Update all cars with the green color and return all fields
147
+ * const updatedCars: Car[] = await db.update(cars)
148
+ * .set({ color: 'red' })
149
+ * .where(eq(cars.color, 'green'))
150
+ * .returning();
151
+ *
152
+ * // Update all cars with the green color and return only their id and brand fields
153
+ * const updatedCarsIdsAndBrands: { id: number, brand: string }[] = await db.update(cars)
154
+ * .set({ color: 'red' })
155
+ * .where(eq(cars.color, 'green'))
156
+ * .returning({ id: cars.id, brand: cars.brand });
157
+ * ```
158
+ */
159
+ returning(): GelUpdateReturningAll<this, TDynamic>;
160
+ returning<TSelectedFields extends SelectedFields>(fields: TSelectedFields): GelUpdateReturning<this, TDynamic, TSelectedFields>;
161
+ toSQL(): Query;
162
+ prepare(name: string): GelUpdatePrepare<this>;
163
+ execute: ReturnType<this['prepare']>['execute'];
164
+ $dynamic(): GelUpdateDynamic<this>;
165
+ }
166
+ export {};