@depup/kysely 0.28.11-depup.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1130) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +25 -0
  3. package/dist/cjs/dialect/database-introspector.d.ts +62 -0
  4. package/dist/cjs/dialect/database-introspector.js +2 -0
  5. package/dist/cjs/dialect/dialect-adapter-base.d.ts +94 -0
  6. package/dist/cjs/dialect/dialect-adapter-base.js +24 -0
  7. package/dist/cjs/dialect/dialect-adapter.d.ts +115 -0
  8. package/dist/cjs/dialect/dialect-adapter.js +2 -0
  9. package/dist/cjs/dialect/dialect.d.ts +34 -0
  10. package/dist/cjs/dialect/dialect.js +2 -0
  11. package/dist/cjs/dialect/mssql/mssql-adapter.d.ts +83 -0
  12. package/dist/cjs/dialect/mssql/mssql-adapter.js +28 -0
  13. package/dist/cjs/dialect/mssql/mssql-dialect-config.d.ts +181 -0
  14. package/dist/cjs/dialect/mssql/mssql-dialect-config.js +2 -0
  15. package/dist/cjs/dialect/mssql/mssql-dialect.d.ts +70 -0
  16. package/dist/cjs/dialect/mssql/mssql-dialect.js +65 -0
  17. package/dist/cjs/dialect/mssql/mssql-driver.d.ts +59 -0
  18. package/dist/cjs/dialect/mssql/mssql-driver.js +359 -0
  19. package/dist/cjs/dialect/mssql/mssql-introspector.d.ts +20 -0
  20. package/dist/cjs/dialect/mssql/mssql-introspector.js +110 -0
  21. package/dist/cjs/dialect/mssql/mssql-query-compiler.d.ts +17 -0
  22. package/dist/cjs/dialect/mssql/mssql-query-compiler.js +83 -0
  23. package/dist/cjs/dialect/mysql/mysql-adapter.d.ts +80 -0
  24. package/dist/cjs/dialect/mysql/mysql-adapter.js +28 -0
  25. package/dist/cjs/dialect/mysql/mysql-dialect-config.d.ts +56 -0
  26. package/dist/cjs/dialect/mysql/mysql-dialect-config.js +2 -0
  27. package/dist/cjs/dialect/mysql/mysql-dialect.d.ts +61 -0
  28. package/dist/cjs/dialect/mysql/mysql-dialect.js +56 -0
  29. package/dist/cjs/dialect/mysql/mysql-driver.d.ts +52 -0
  30. package/dist/cjs/dialect/mysql/mysql-driver.js +180 -0
  31. package/dist/cjs/dialect/mysql/mysql-introspector.d.ts +20 -0
  32. package/dist/cjs/dialect/mysql/mysql-introspector.js +79 -0
  33. package/dist/cjs/dialect/mysql/mysql-query-compiler.d.ts +13 -0
  34. package/dist/cjs/dialect/mysql/mysql-query-compiler.js +60 -0
  35. package/dist/cjs/dialect/postgres/postgres-adapter.d.ts +80 -0
  36. package/dist/cjs/dialect/postgres/postgres-adapter.js +25 -0
  37. package/dist/cjs/dialect/postgres/postgres-dialect-config.d.ts +68 -0
  38. package/dist/cjs/dialect/postgres/postgres-dialect-config.js +2 -0
  39. package/dist/cjs/dialect/postgres/postgres-dialect.d.ts +61 -0
  40. package/dist/cjs/dialect/postgres/postgres-dialect.js +56 -0
  41. package/dist/cjs/dialect/postgres/postgres-driver.d.ts +55 -0
  42. package/dist/cjs/dialect/postgres/postgres-driver.js +134 -0
  43. package/dist/cjs/dialect/postgres/postgres-introspector.d.ts +20 -0
  44. package/dist/cjs/dialect/postgres/postgres-introspector.js +100 -0
  45. package/dist/cjs/dialect/postgres/postgres-query-compiler.d.ts +4 -0
  46. package/dist/cjs/dialect/postgres/postgres-query-compiler.js +11 -0
  47. package/dist/cjs/dialect/sqlite/sqlite-adapter.d.ts +80 -0
  48. package/dist/cjs/dialect/sqlite/sqlite-adapter.js +23 -0
  49. package/dist/cjs/dialect/sqlite/sqlite-dialect-config.d.ts +41 -0
  50. package/dist/cjs/dialect/sqlite/sqlite-dialect-config.js +2 -0
  51. package/dist/cjs/dialect/sqlite/sqlite-dialect.d.ts +55 -0
  52. package/dist/cjs/dialect/sqlite/sqlite-dialect.js +51 -0
  53. package/dist/cjs/dialect/sqlite/sqlite-driver.d.ts +42 -0
  54. package/dist/cjs/dialect/sqlite/sqlite-driver.js +113 -0
  55. package/dist/cjs/dialect/sqlite/sqlite-introspector.d.ts +20 -0
  56. package/dist/cjs/dialect/sqlite/sqlite-introspector.js +94 -0
  57. package/dist/cjs/dialect/sqlite/sqlite-query-compiler.d.ts +14 -0
  58. package/dist/cjs/dialect/sqlite/sqlite-query-compiler.js +37 -0
  59. package/dist/cjs/driver/connection-provider.d.ts +8 -0
  60. package/dist/cjs/driver/connection-provider.js +2 -0
  61. package/dist/cjs/driver/database-connection.d.ts +35 -0
  62. package/dist/cjs/driver/database-connection.js +2 -0
  63. package/dist/cjs/driver/default-connection-provider.d.ts +12 -0
  64. package/dist/cjs/driver/default-connection-provider.js +19 -0
  65. package/dist/cjs/driver/driver.d.ts +61 -0
  66. package/dist/cjs/driver/driver.js +22 -0
  67. package/dist/cjs/driver/dummy-driver.d.ts +75 -0
  68. package/dist/cjs/driver/dummy-driver.js +83 -0
  69. package/dist/cjs/driver/runtime-driver.d.ts +47 -0
  70. package/dist/cjs/driver/runtime-driver.js +165 -0
  71. package/dist/cjs/driver/single-connection-provider.d.ts +11 -0
  72. package/dist/cjs/driver/single-connection-provider.js +29 -0
  73. package/dist/cjs/dynamic/dynamic-reference-builder.d.ts +18 -0
  74. package/dist/cjs/dynamic/dynamic-reference-builder.js +36 -0
  75. package/dist/cjs/dynamic/dynamic-table-builder.d.ts +16 -0
  76. package/dist/cjs/dynamic/dynamic-table-builder.js +46 -0
  77. package/dist/cjs/dynamic/dynamic.d.ts +124 -0
  78. package/dist/cjs/dynamic/dynamic.js +132 -0
  79. package/dist/cjs/expression/expression-builder.d.ts +920 -0
  80. package/dist/cjs/expression/expression-builder.js +128 -0
  81. package/dist/cjs/expression/expression-wrapper.d.ts +631 -0
  82. package/dist/cjs/expression/expression-wrapper.js +134 -0
  83. package/dist/cjs/expression/expression.d.ts +198 -0
  84. package/dist/cjs/expression/expression.js +15 -0
  85. package/dist/cjs/helpers/mssql.d.ts +212 -0
  86. package/dist/cjs/helpers/mssql.js +219 -0
  87. package/dist/cjs/helpers/mysql.d.ts +147 -0
  88. package/dist/cjs/helpers/mysql.js +162 -0
  89. package/dist/cjs/helpers/postgres.d.ts +199 -0
  90. package/dist/cjs/helpers/postgres.js +208 -0
  91. package/dist/cjs/helpers/sqlite.d.ts +189 -0
  92. package/dist/cjs/helpers/sqlite.js +204 -0
  93. package/dist/cjs/index.d.ts +226 -0
  94. package/dist/cjs/index.js +231 -0
  95. package/dist/cjs/kysely.d.ts +848 -0
  96. package/dist/cjs/kysely.js +927 -0
  97. package/dist/cjs/migration/file-migration-provider.d.ts +48 -0
  98. package/dist/cjs/migration/file-migration-provider.js +52 -0
  99. package/dist/cjs/migration/migrator.d.ts +395 -0
  100. package/dist/cjs/migration/migrator.js +611 -0
  101. package/dist/cjs/operation-node/add-column-node.d.ts +15 -0
  102. package/dist/cjs/operation-node/add-column-node.js +18 -0
  103. package/dist/cjs/operation-node/add-constraint-node.d.ts +15 -0
  104. package/dist/cjs/operation-node/add-constraint-node.js +18 -0
  105. package/dist/cjs/operation-node/add-index-node.d.ts +23 -0
  106. package/dist/cjs/operation-node/add-index-node.js +31 -0
  107. package/dist/cjs/operation-node/aggregate-function-node.d.ts +29 -0
  108. package/dist/cjs/operation-node/aggregate-function-node.js +58 -0
  109. package/dist/cjs/operation-node/alias-node.d.ts +15 -0
  110. package/dist/cjs/operation-node/alias-node.js +19 -0
  111. package/dist/cjs/operation-node/alter-column-node.d.ts +23 -0
  112. package/dist/cjs/operation-node/alter-column-node.js +20 -0
  113. package/dist/cjs/operation-node/alter-table-node.d.ts +38 -0
  114. package/dist/cjs/operation-node/alter-table-node.js +32 -0
  115. package/dist/cjs/operation-node/and-node.d.ts +15 -0
  116. package/dist/cjs/operation-node/and-node.js +19 -0
  117. package/dist/cjs/operation-node/binary-operation-node.d.ts +16 -0
  118. package/dist/cjs/operation-node/binary-operation-node.js +20 -0
  119. package/dist/cjs/operation-node/case-node.d.ts +21 -0
  120. package/dist/cjs/operation-node/case-node.js +42 -0
  121. package/dist/cjs/operation-node/cast-node.d.ts +15 -0
  122. package/dist/cjs/operation-node/cast-node.js +19 -0
  123. package/dist/cjs/operation-node/check-constraint-node.d.ts +16 -0
  124. package/dist/cjs/operation-node/check-constraint-node.js +22 -0
  125. package/dist/cjs/operation-node/collate-node.d.ts +15 -0
  126. package/dist/cjs/operation-node/collate-node.js +19 -0
  127. package/dist/cjs/operation-node/column-definition-node.d.ts +38 -0
  128. package/dist/cjs/operation-node/column-definition-node.js +42 -0
  129. package/dist/cjs/operation-node/column-node.d.ts +15 -0
  130. package/dist/cjs/operation-node/column-node.js +19 -0
  131. package/dist/cjs/operation-node/column-update-node.d.ts +15 -0
  132. package/dist/cjs/operation-node/column-update-node.js +19 -0
  133. package/dist/cjs/operation-node/common-table-expression-name-node.d.ts +17 -0
  134. package/dist/cjs/operation-node/common-table-expression-name-node.js +23 -0
  135. package/dist/cjs/operation-node/common-table-expression-node.d.ts +19 -0
  136. package/dist/cjs/operation-node/common-table-expression-node.js +25 -0
  137. package/dist/cjs/operation-node/constraint-node.d.ts +5 -0
  138. package/dist/cjs/operation-node/constraint-node.js +2 -0
  139. package/dist/cjs/operation-node/create-index-node.d.ts +29 -0
  140. package/dist/cjs/operation-node/create-index-node.js +31 -0
  141. package/dist/cjs/operation-node/create-schema-node.d.ts +18 -0
  142. package/dist/cjs/operation-node/create-schema-node.js +26 -0
  143. package/dist/cjs/operation-node/create-table-node.d.ts +34 -0
  144. package/dist/cjs/operation-node/create-table-node.js +56 -0
  145. package/dist/cjs/operation-node/create-type-node.d.ts +19 -0
  146. package/dist/cjs/operation-node/create-type-node.js +26 -0
  147. package/dist/cjs/operation-node/create-view-node.d.ts +26 -0
  148. package/dist/cjs/operation-node/create-view-node.js +25 -0
  149. package/dist/cjs/operation-node/data-type-node.d.ts +19 -0
  150. package/dist/cjs/operation-node/data-type-node.js +86 -0
  151. package/dist/cjs/operation-node/default-insert-value-node.d.ts +13 -0
  152. package/dist/cjs/operation-node/default-insert-value-node.js +17 -0
  153. package/dist/cjs/operation-node/default-value-node.d.ts +14 -0
  154. package/dist/cjs/operation-node/default-value-node.js +18 -0
  155. package/dist/cjs/operation-node/delete-query-node.d.ts +42 -0
  156. package/dist/cjs/operation-node/delete-query-node.js +52 -0
  157. package/dist/cjs/operation-node/drop-column-node.d.ts +15 -0
  158. package/dist/cjs/operation-node/drop-column-node.js +19 -0
  159. package/dist/cjs/operation-node/drop-constraint-node.d.ts +19 -0
  160. package/dist/cjs/operation-node/drop-constraint-node.js +25 -0
  161. package/dist/cjs/operation-node/drop-index-node.d.ts +21 -0
  162. package/dist/cjs/operation-node/drop-index-node.js +26 -0
  163. package/dist/cjs/operation-node/drop-schema-node.d.ts +19 -0
  164. package/dist/cjs/operation-node/drop-schema-node.js +26 -0
  165. package/dist/cjs/operation-node/drop-table-node.d.ts +19 -0
  166. package/dist/cjs/operation-node/drop-table-node.js +25 -0
  167. package/dist/cjs/operation-node/drop-type-node.d.ts +18 -0
  168. package/dist/cjs/operation-node/drop-type-node.js +24 -0
  169. package/dist/cjs/operation-node/drop-view-node.d.ts +20 -0
  170. package/dist/cjs/operation-node/drop-view-node.js +25 -0
  171. package/dist/cjs/operation-node/explain-node.d.ts +16 -0
  172. package/dist/cjs/operation-node/explain-node.js +19 -0
  173. package/dist/cjs/operation-node/fetch-node.d.ts +17 -0
  174. package/dist/cjs/operation-node/fetch-node.js +20 -0
  175. package/dist/cjs/operation-node/foreign-key-constraint-node.d.ts +26 -0
  176. package/dist/cjs/operation-node/foreign-key-constraint-node.js +30 -0
  177. package/dist/cjs/operation-node/from-node.d.ts +15 -0
  178. package/dist/cjs/operation-node/from-node.js +24 -0
  179. package/dist/cjs/operation-node/function-node.d.ts +15 -0
  180. package/dist/cjs/operation-node/function-node.js +19 -0
  181. package/dist/cjs/operation-node/generated-node.d.ts +21 -0
  182. package/dist/cjs/operation-node/generated-node.js +31 -0
  183. package/dist/cjs/operation-node/group-by-item-node.d.ts +14 -0
  184. package/dist/cjs/operation-node/group-by-item-node.js +18 -0
  185. package/dist/cjs/operation-node/group-by-node.d.ts +16 -0
  186. package/dist/cjs/operation-node/group-by-node.js +24 -0
  187. package/dist/cjs/operation-node/having-node.d.ts +15 -0
  188. package/dist/cjs/operation-node/having-node.js +28 -0
  189. package/dist/cjs/operation-node/identifier-node.d.ts +14 -0
  190. package/dist/cjs/operation-node/identifier-node.js +18 -0
  191. package/dist/cjs/operation-node/insert-query-node.d.ts +42 -0
  192. package/dist/cjs/operation-node/insert-query-node.js +31 -0
  193. package/dist/cjs/operation-node/join-node.d.ts +20 -0
  194. package/dist/cjs/operation-node/join-node.js +37 -0
  195. package/dist/cjs/operation-node/json-operator-chain-node.d.ts +18 -0
  196. package/dist/cjs/operation-node/json-operator-chain-node.js +25 -0
  197. package/dist/cjs/operation-node/json-path-leg-node.d.ts +16 -0
  198. package/dist/cjs/operation-node/json-path-leg-node.js +19 -0
  199. package/dist/cjs/operation-node/json-path-node.d.ts +18 -0
  200. package/dist/cjs/operation-node/json-path-node.js +25 -0
  201. package/dist/cjs/operation-node/json-reference-node.d.ts +19 -0
  202. package/dist/cjs/operation-node/json-reference-node.js +25 -0
  203. package/dist/cjs/operation-node/limit-node.d.ts +14 -0
  204. package/dist/cjs/operation-node/limit-node.js +18 -0
  205. package/dist/cjs/operation-node/list-node.d.ts +14 -0
  206. package/dist/cjs/operation-node/list-node.js +18 -0
  207. package/dist/cjs/operation-node/matched-node.d.ts +15 -0
  208. package/dist/cjs/operation-node/matched-node.js +19 -0
  209. package/dist/cjs/operation-node/merge-query-node.d.ts +32 -0
  210. package/dist/cjs/operation-node/merge-query-node.js +45 -0
  211. package/dist/cjs/operation-node/modify-column-node.d.ts +15 -0
  212. package/dist/cjs/operation-node/modify-column-node.js +18 -0
  213. package/dist/cjs/operation-node/offset-node.d.ts +14 -0
  214. package/dist/cjs/operation-node/offset-node.js +18 -0
  215. package/dist/cjs/operation-node/on-conflict-node.d.ts +32 -0
  216. package/dist/cjs/operation-node/on-conflict-node.js +68 -0
  217. package/dist/cjs/operation-node/on-duplicate-key-node.d.ts +16 -0
  218. package/dist/cjs/operation-node/on-duplicate-key-node.js +18 -0
  219. package/dist/cjs/operation-node/on-node.d.ts +15 -0
  220. package/dist/cjs/operation-node/on-node.js +28 -0
  221. package/dist/cjs/operation-node/operation-node-source.d.ts +5 -0
  222. package/dist/cjs/operation-node/operation-node-source.js +7 -0
  223. package/dist/cjs/operation-node/operation-node-transformer.d.ts +238 -0
  224. package/dist/cjs/operation-node/operation-node-transformer.js +929 -0
  225. package/dist/cjs/operation-node/operation-node-visitor.d.ts +201 -0
  226. package/dist/cjs/operation-node/operation-node-visitor.js +115 -0
  227. package/dist/cjs/operation-node/operation-node.d.ts +4 -0
  228. package/dist/cjs/operation-node/operation-node.js +2 -0
  229. package/dist/cjs/operation-node/operator-node.d.ts +34 -0
  230. package/dist/cjs/operation-node/operator-node.js +107 -0
  231. package/dist/cjs/operation-node/or-action-node.d.ts +14 -0
  232. package/dist/cjs/operation-node/or-action-node.js +18 -0
  233. package/dist/cjs/operation-node/or-node.d.ts +15 -0
  234. package/dist/cjs/operation-node/or-node.js +19 -0
  235. package/dist/cjs/operation-node/order-by-item-node.d.ts +20 -0
  236. package/dist/cjs/operation-node/order-by-item-node.js +25 -0
  237. package/dist/cjs/operation-node/order-by-node.d.ts +16 -0
  238. package/dist/cjs/operation-node/order-by-node.js +24 -0
  239. package/dist/cjs/operation-node/output-node.d.ts +15 -0
  240. package/dist/cjs/operation-node/output-node.js +26 -0
  241. package/dist/cjs/operation-node/over-node.d.ts +21 -0
  242. package/dist/cjs/operation-node/over-node.js +35 -0
  243. package/dist/cjs/operation-node/parens-node.d.ts +14 -0
  244. package/dist/cjs/operation-node/parens-node.js +18 -0
  245. package/dist/cjs/operation-node/partition-by-item-node.d.ts +15 -0
  246. package/dist/cjs/operation-node/partition-by-item-node.js +18 -0
  247. package/dist/cjs/operation-node/partition-by-node.d.ts +16 -0
  248. package/dist/cjs/operation-node/partition-by-node.js +24 -0
  249. package/dist/cjs/operation-node/primary-key-constraint-node.d.ts +31 -0
  250. package/dist/cjs/operation-node/primary-key-constraint-node.js +32 -0
  251. package/dist/cjs/operation-node/primitive-value-list-node.d.ts +19 -0
  252. package/dist/cjs/operation-node/primitive-value-list-node.js +18 -0
  253. package/dist/cjs/operation-node/query-node.d.ts +61 -0
  254. package/dist/cjs/operation-node/query-node.js +102 -0
  255. package/dist/cjs/operation-node/raw-node.d.ts +18 -0
  256. package/dist/cjs/operation-node/raw-node.js +28 -0
  257. package/dist/cjs/operation-node/reference-node.d.ts +19 -0
  258. package/dist/cjs/operation-node/reference-node.js +27 -0
  259. package/dist/cjs/operation-node/references-node.d.ts +24 -0
  260. package/dist/cjs/operation-node/references-node.js +38 -0
  261. package/dist/cjs/operation-node/refresh-materialized-view-node.d.ts +19 -0
  262. package/dist/cjs/operation-node/refresh-materialized-view-node.js +25 -0
  263. package/dist/cjs/operation-node/rename-column-node.d.ts +16 -0
  264. package/dist/cjs/operation-node/rename-column-node.js +20 -0
  265. package/dist/cjs/operation-node/rename-constraint-node.d.ts +16 -0
  266. package/dist/cjs/operation-node/rename-constraint-node.js +20 -0
  267. package/dist/cjs/operation-node/returning-node.d.ts +16 -0
  268. package/dist/cjs/operation-node/returning-node.js +26 -0
  269. package/dist/cjs/operation-node/schemable-identifier-node.d.ts +17 -0
  270. package/dist/cjs/operation-node/schemable-identifier-node.js +26 -0
  271. package/dist/cjs/operation-node/select-all-node.d.ts +13 -0
  272. package/dist/cjs/operation-node/select-all-node.js +17 -0
  273. package/dist/cjs/operation-node/select-modifier-node.d.ts +18 -0
  274. package/dist/cjs/operation-node/select-modifier-node.js +25 -0
  275. package/dist/cjs/operation-node/select-query-node.d.ts +63 -0
  276. package/dist/cjs/operation-node/select-query-node.js +129 -0
  277. package/dist/cjs/operation-node/selection-node.d.ts +21 -0
  278. package/dist/cjs/operation-node/selection-node.js +32 -0
  279. package/dist/cjs/operation-node/set-operation-node.d.ts +17 -0
  280. package/dist/cjs/operation-node/set-operation-node.js +20 -0
  281. package/dist/cjs/operation-node/simple-reference-expression-node.d.ts +3 -0
  282. package/dist/cjs/operation-node/simple-reference-expression-node.js +2 -0
  283. package/dist/cjs/operation-node/table-node.d.ts +16 -0
  284. package/dist/cjs/operation-node/table-node.js +25 -0
  285. package/dist/cjs/operation-node/top-node.d.ts +16 -0
  286. package/dist/cjs/operation-node/top-node.js +19 -0
  287. package/dist/cjs/operation-node/tuple-node.d.ts +14 -0
  288. package/dist/cjs/operation-node/tuple-node.js +18 -0
  289. package/dist/cjs/operation-node/unary-operation-node.d.ts +15 -0
  290. package/dist/cjs/operation-node/unary-operation-node.js +19 -0
  291. package/dist/cjs/operation-node/unique-constraint-node.d.ts +22 -0
  292. package/dist/cjs/operation-node/unique-constraint-node.js +30 -0
  293. package/dist/cjs/operation-node/update-query-node.d.ts +41 -0
  294. package/dist/cjs/operation-node/update-query-node.js +50 -0
  295. package/dist/cjs/operation-node/using-node.d.ts +15 -0
  296. package/dist/cjs/operation-node/using-node.js +24 -0
  297. package/dist/cjs/operation-node/value-list-node.d.ts +14 -0
  298. package/dist/cjs/operation-node/value-list-node.js +18 -0
  299. package/dist/cjs/operation-node/value-node.d.ts +16 -0
  300. package/dist/cjs/operation-node/value-node.js +25 -0
  301. package/dist/cjs/operation-node/values-node.d.ts +17 -0
  302. package/dist/cjs/operation-node/values-node.js +18 -0
  303. package/dist/cjs/operation-node/when-node.d.ts +16 -0
  304. package/dist/cjs/operation-node/when-node.js +24 -0
  305. package/dist/cjs/operation-node/where-node.d.ts +15 -0
  306. package/dist/cjs/operation-node/where-node.js +28 -0
  307. package/dist/cjs/operation-node/with-node.d.ts +18 -0
  308. package/dist/cjs/operation-node/with-node.js +25 -0
  309. package/dist/cjs/package.json +1 -0
  310. package/dist/cjs/parser/binary-operation-parser.d.ts +21 -0
  311. package/dist/cjs/parser/binary-operation-parser.js +74 -0
  312. package/dist/cjs/parser/coalesce-parser.d.ts +12 -0
  313. package/dist/cjs/parser/coalesce-parser.js +2 -0
  314. package/dist/cjs/parser/collate-parser.d.ts +1 -0
  315. package/dist/cjs/parser/collate-parser.js +2 -0
  316. package/dist/cjs/parser/data-type-parser.d.ts +5 -0
  317. package/dist/cjs/parser/data-type-parser.js +14 -0
  318. package/dist/cjs/parser/default-value-parser.d.ts +4 -0
  319. package/dist/cjs/parser/default-value-parser.js +10 -0
  320. package/dist/cjs/parser/delete-from-parser.d.ts +9 -0
  321. package/dist/cjs/parser/delete-from-parser.js +2 -0
  322. package/dist/cjs/parser/expression-parser.d.ts +20 -0
  323. package/dist/cjs/parser/expression-parser.js +30 -0
  324. package/dist/cjs/parser/fetch-parser.d.ts +2 -0
  325. package/dist/cjs/parser/fetch-parser.js +17 -0
  326. package/dist/cjs/parser/group-by-parser.d.ts +6 -0
  327. package/dist/cjs/parser/group-by-parser.js +11 -0
  328. package/dist/cjs/parser/identifier-parser.d.ts +2 -0
  329. package/dist/cjs/parser/identifier-parser.js +22 -0
  330. package/dist/cjs/parser/insert-values-parser.d.ts +14 -0
  331. package/dist/cjs/parser/insert-values-parser.js +64 -0
  332. package/dist/cjs/parser/join-parser.d.ts +10 -0
  333. package/dist/cjs/parser/join-parser.js +30 -0
  334. package/dist/cjs/parser/merge-into-parser.d.ts +7 -0
  335. package/dist/cjs/parser/merge-into-parser.js +2 -0
  336. package/dist/cjs/parser/merge-parser.d.ts +9 -0
  337. package/dist/cjs/parser/merge-parser.js +31 -0
  338. package/dist/cjs/parser/on-commit-action-parse.d.ts +2 -0
  339. package/dist/cjs/parser/on-commit-action-parse.js +10 -0
  340. package/dist/cjs/parser/on-modify-action-parser.d.ts +2 -0
  341. package/dist/cjs/parser/on-modify-action-parser.js +10 -0
  342. package/dist/cjs/parser/order-by-parser.d.ts +25 -0
  343. package/dist/cjs/parser/order-by-parser.js +71 -0
  344. package/dist/cjs/parser/parse-utils.d.ts +10 -0
  345. package/dist/cjs/parser/parse-utils.js +38 -0
  346. package/dist/cjs/parser/partition-by-parser.d.ts +6 -0
  347. package/dist/cjs/parser/partition-by-parser.js +8 -0
  348. package/dist/cjs/parser/reference-parser.d.ts +31 -0
  349. package/dist/cjs/parser/reference-parser.js +104 -0
  350. package/dist/cjs/parser/returning-parser.d.ts +8 -0
  351. package/dist/cjs/parser/returning-parser.js +2 -0
  352. package/dist/cjs/parser/savepoint-parser.d.ts +4 -0
  353. package/dist/cjs/parser/savepoint-parser.js +11 -0
  354. package/dist/cjs/parser/select-from-parser.d.ts +6 -0
  355. package/dist/cjs/parser/select-from-parser.js +2 -0
  356. package/dist/cjs/parser/select-parser.d.ts +36 -0
  357. package/dist/cjs/parser/select-parser.js +50 -0
  358. package/dist/cjs/parser/set-operation-parser.d.ts +5 -0
  359. package/dist/cjs/parser/set-operation-parser.js +16 -0
  360. package/dist/cjs/parser/table-parser.d.ts +24 -0
  361. package/dist/cjs/parser/table-parser.js +54 -0
  362. package/dist/cjs/parser/top-parser.d.ts +2 -0
  363. package/dist/cjs/parser/top-parser.js +19 -0
  364. package/dist/cjs/parser/tuple-parser.d.ts +47 -0
  365. package/dist/cjs/parser/tuple-parser.js +2 -0
  366. package/dist/cjs/parser/unary-operation-parser.d.ts +8 -0
  367. package/dist/cjs/parser/unary-operation-parser.js +17 -0
  368. package/dist/cjs/parser/update-parser.d.ts +9 -0
  369. package/dist/cjs/parser/update-parser.js +2 -0
  370. package/dist/cjs/parser/update-set-parser.d.ts +16 -0
  371. package/dist/cjs/parser/update-set-parser.js +26 -0
  372. package/dist/cjs/parser/value-parser.d.ts +13 -0
  373. package/dist/cjs/parser/value-parser.js +38 -0
  374. package/dist/cjs/parser/with-parser.d.ts +45 -0
  375. package/dist/cjs/parser/with-parser.js +33 -0
  376. package/dist/cjs/plugin/camel-case/camel-case-plugin.d.ts +170 -0
  377. package/dist/cjs/plugin/camel-case/camel-case-plugin.js +122 -0
  378. package/dist/cjs/plugin/camel-case/camel-case-transformer.d.ts +9 -0
  379. package/dist/cjs/plugin/camel-case/camel-case-transformer.js +19 -0
  380. package/dist/cjs/plugin/camel-case/camel-case.d.ts +15 -0
  381. package/dist/cjs/plugin/camel-case/camel-case.js +111 -0
  382. package/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-plugin.d.ts +70 -0
  383. package/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-plugin.js +19 -0
  384. package/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-transformer.d.ts +11 -0
  385. package/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-transformer.js +42 -0
  386. package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists-plugin.d.ts +211 -0
  387. package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists-plugin.js +162 -0
  388. package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists-transformer.d.ts +8 -0
  389. package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists-transformer.js +29 -0
  390. package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists.d.ts +44 -0
  391. package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists.js +66 -0
  392. package/dist/cjs/plugin/immediate-value/immediate-value-plugin.d.ts +73 -0
  393. package/dist/cjs/plugin/immediate-value/immediate-value-plugin.js +22 -0
  394. package/dist/cjs/plugin/immediate-value/immediate-value-transformer.d.ts +15 -0
  395. package/dist/cjs/plugin/immediate-value/immediate-value-transformer.js +23 -0
  396. package/dist/cjs/plugin/kysely-plugin.d.ts +72 -0
  397. package/dist/cjs/plugin/kysely-plugin.js +2 -0
  398. package/dist/cjs/plugin/noop-plugin.d.ts +64 -0
  399. package/dist/cjs/plugin/noop-plugin.js +12 -0
  400. package/dist/cjs/plugin/parse-json-results/parse-json-results-plugin.d.ts +126 -0
  401. package/dist/cjs/plugin/parse-json-results/parse-json-results-plugin.js +107 -0
  402. package/dist/cjs/plugin/with-schema/with-schema-plugin.d.ts +66 -0
  403. package/dist/cjs/plugin/with-schema/with-schema-plugin.js +17 -0
  404. package/dist/cjs/plugin/with-schema/with-schema-transformer.d.ts +18 -0
  405. package/dist/cjs/plugin/with-schema/with-schema-transformer.js +200 -0
  406. package/dist/cjs/query-builder/aggregate-function-builder.d.ts +379 -0
  407. package/dist/cjs/query-builder/aggregate-function-builder.js +242 -0
  408. package/dist/cjs/query-builder/case-builder.d.ts +112 -0
  409. package/dist/cjs/query-builder/case-builder.js +79 -0
  410. package/dist/cjs/query-builder/cte-builder.d.ts +20 -0
  411. package/dist/cjs/query-builder/cte-builder.js +37 -0
  412. package/dist/cjs/query-builder/delete-query-builder.d.ts +1348 -0
  413. package/dist/cjs/query-builder/delete-query-builder.js +504 -0
  414. package/dist/cjs/query-builder/delete-result.d.ts +4 -0
  415. package/dist/cjs/query-builder/delete-result.js +10 -0
  416. package/dist/cjs/query-builder/function-module.d.ts +592 -0
  417. package/dist/cjs/query-builder/function-module.js +62 -0
  418. package/dist/cjs/query-builder/having-interface.d.ts +15 -0
  419. package/dist/cjs/query-builder/having-interface.js +2 -0
  420. package/dist/cjs/query-builder/insert-query-builder.d.ts +1235 -0
  421. package/dist/cjs/query-builder/insert-query-builder.js +1160 -0
  422. package/dist/cjs/query-builder/insert-result.d.ts +46 -0
  423. package/dist/cjs/query-builder/insert-result.js +53 -0
  424. package/dist/cjs/query-builder/join-builder.d.ts +38 -0
  425. package/dist/cjs/query-builder/join-builder.js +51 -0
  426. package/dist/cjs/query-builder/json-path-builder.d.ts +294 -0
  427. package/dist/cjs/query-builder/json-path-builder.js +200 -0
  428. package/dist/cjs/query-builder/merge-query-builder.d.ts +1001 -0
  429. package/dist/cjs/query-builder/merge-query-builder.js +630 -0
  430. package/dist/cjs/query-builder/merge-result.d.ts +4 -0
  431. package/dist/cjs/query-builder/merge-result.js +10 -0
  432. package/dist/cjs/query-builder/no-result-error.d.ts +10 -0
  433. package/dist/cjs/query-builder/no-result-error.js +18 -0
  434. package/dist/cjs/query-builder/on-conflict-builder.d.ts +872 -0
  435. package/dist/cjs/query-builder/on-conflict-builder.js +259 -0
  436. package/dist/cjs/query-builder/order-by-interface.d.ts +158 -0
  437. package/dist/cjs/query-builder/order-by-interface.js +2 -0
  438. package/dist/cjs/query-builder/order-by-item-builder.d.ts +43 -0
  439. package/dist/cjs/query-builder/order-by-item-builder.js +75 -0
  440. package/dist/cjs/query-builder/output-interface.d.ts +138 -0
  441. package/dist/cjs/query-builder/output-interface.js +2 -0
  442. package/dist/cjs/query-builder/over-builder.d.ts +101 -0
  443. package/dist/cjs/query-builder/over-builder.js +40 -0
  444. package/dist/cjs/query-builder/returning-interface.d.ts +91 -0
  445. package/dist/cjs/query-builder/returning-interface.js +2 -0
  446. package/dist/cjs/query-builder/select-query-builder-expression.d.ts +28 -0
  447. package/dist/cjs/query-builder/select-query-builder-expression.js +2 -0
  448. package/dist/cjs/query-builder/select-query-builder.d.ts +2391 -0
  449. package/dist/cjs/query-builder/select-query-builder.js +376 -0
  450. package/dist/cjs/query-builder/update-query-builder.d.ts +1392 -0
  451. package/dist/cjs/query-builder/update-query-builder.js +513 -0
  452. package/dist/cjs/query-builder/update-result.d.ts +14 -0
  453. package/dist/cjs/query-builder/update-result.js +21 -0
  454. package/dist/cjs/query-builder/where-interface.d.ts +382 -0
  455. package/dist/cjs/query-builder/where-interface.js +2 -0
  456. package/dist/cjs/query-compiler/compiled-query.d.ts +13 -0
  457. package/dist/cjs/query-compiler/compiled-query.js +16 -0
  458. package/dist/cjs/query-compiler/default-query-compiler.d.ts +235 -0
  459. package/dist/cjs/query-compiler/default-query-compiler.js +1396 -0
  460. package/dist/cjs/query-compiler/query-compiler.d.ts +24 -0
  461. package/dist/cjs/query-compiler/query-compiler.js +2 -0
  462. package/dist/cjs/query-creator.d.ts +592 -0
  463. package/dist/cjs/query-creator.js +622 -0
  464. package/dist/cjs/query-executor/default-query-executor.d.ts +50 -0
  465. package/dist/cjs/query-executor/default-query-executor.js +40 -0
  466. package/dist/cjs/query-executor/noop-query-executor.d.ts +50 -0
  467. package/dist/cjs/query-executor/noop-query-executor.js +37 -0
  468. package/dist/cjs/query-executor/query-executor-base.d.ts +68 -0
  469. package/dist/cjs/query-executor/query-executor-base.js +62 -0
  470. package/dist/cjs/query-executor/query-executor-provider.d.ts +8 -0
  471. package/dist/cjs/query-executor/query-executor-provider.js +2 -0
  472. package/dist/cjs/query-executor/query-executor.d.ts +74 -0
  473. package/dist/cjs/query-executor/query-executor.js +2 -0
  474. package/dist/cjs/raw-builder/raw-builder.d.ts +218 -0
  475. package/dist/cjs/raw-builder/raw-builder.js +86 -0
  476. package/dist/cjs/raw-builder/sql.d.ts +366 -0
  477. package/dist/cjs/raw-builder/sql.js +84 -0
  478. package/dist/cjs/schema/alter-column-builder.d.ts +53 -0
  479. package/dist/cjs/schema/alter-column-builder.js +74 -0
  480. package/dist/cjs/schema/alter-table-add-foreign-key-constraint-builder.d.ts +32 -0
  481. package/dist/cjs/schema/alter-table-add-foreign-key-constraint-builder.js +67 -0
  482. package/dist/cjs/schema/alter-table-add-index-builder.d.ts +138 -0
  483. package/dist/cjs/schema/alter-table-add-index-builder.js +165 -0
  484. package/dist/cjs/schema/alter-table-builder.d.ts +148 -0
  485. package/dist/cjs/schema/alter-table-builder.js +267 -0
  486. package/dist/cjs/schema/alter-table-drop-constraint-builder.d.ts +26 -0
  487. package/dist/cjs/schema/alter-table-drop-constraint-builder.js +59 -0
  488. package/dist/cjs/schema/alter-table-executor.d.ts +18 -0
  489. package/dist/cjs/schema/alter-table-executor.js +20 -0
  490. package/dist/cjs/schema/check-constraint-builder.d.ts +13 -0
  491. package/dist/cjs/schema/check-constraint-builder.js +20 -0
  492. package/dist/cjs/schema/column-definition-builder.d.ts +514 -0
  493. package/dist/cjs/schema/column-definition-builder.js +600 -0
  494. package/dist/cjs/schema/create-index-builder.d.ts +173 -0
  495. package/dist/cjs/schema/create-index-builder.js +202 -0
  496. package/dist/cjs/schema/create-schema-builder.d.ts +24 -0
  497. package/dist/cjs/schema/create-schema-builder.js +34 -0
  498. package/dist/cjs/schema/create-table-builder.d.ts +331 -0
  499. package/dist/cjs/schema/create-table-builder.js +411 -0
  500. package/dist/cjs/schema/create-type-builder.d.ts +33 -0
  501. package/dist/cjs/schema/create-type-builder.js +43 -0
  502. package/dist/cjs/schema/create-view-builder.d.ts +48 -0
  503. package/dist/cjs/schema/create-view-builder.js +98 -0
  504. package/dist/cjs/schema/drop-index-builder.d.ts +30 -0
  505. package/dist/cjs/schema/drop-index-builder.js +57 -0
  506. package/dist/cjs/schema/drop-schema-builder.d.ts +25 -0
  507. package/dist/cjs/schema/drop-schema-builder.js +44 -0
  508. package/dist/cjs/schema/drop-table-builder.d.ts +25 -0
  509. package/dist/cjs/schema/drop-table-builder.js +44 -0
  510. package/dist/cjs/schema/drop-type-builder.d.ts +24 -0
  511. package/dist/cjs/schema/drop-type-builder.js +36 -0
  512. package/dist/cjs/schema/drop-view-builder.d.ts +26 -0
  513. package/dist/cjs/schema/drop-view-builder.js +52 -0
  514. package/dist/cjs/schema/foreign-key-constraint-builder.d.ts +28 -0
  515. package/dist/cjs/schema/foreign-key-constraint-builder.js +48 -0
  516. package/dist/cjs/schema/primary-key-constraint-builder.d.ts +17 -0
  517. package/dist/cjs/schema/primary-key-constraint-builder.js +37 -0
  518. package/dist/cjs/schema/refresh-materialized-view-builder.d.ts +47 -0
  519. package/dist/cjs/schema/refresh-materialized-view-builder.js +75 -0
  520. package/dist/cjs/schema/schema.d.ts +230 -0
  521. package/dist/cjs/schema/schema.js +328 -0
  522. package/dist/cjs/schema/unique-constraint-builder.d.ts +23 -0
  523. package/dist/cjs/schema/unique-constraint-builder.js +45 -0
  524. package/dist/cjs/util/assert.d.ts +2 -0
  525. package/dist/cjs/util/assert.js +14 -0
  526. package/dist/cjs/util/column-type.d.ts +175 -0
  527. package/dist/cjs/util/column-type.js +2 -0
  528. package/dist/cjs/util/compilable.d.ts +5 -0
  529. package/dist/cjs/util/compilable.js +7 -0
  530. package/dist/cjs/util/deferred.d.ts +7 -0
  531. package/dist/cjs/util/deferred.js +28 -0
  532. package/dist/cjs/util/explainable.d.ts +40 -0
  533. package/dist/cjs/util/explainable.js +2 -0
  534. package/dist/cjs/util/infer-result.d.ts +48 -0
  535. package/dist/cjs/util/infer-result.js +2 -0
  536. package/dist/cjs/util/json-object-args.d.ts +3 -0
  537. package/dist/cjs/util/json-object-args.js +34 -0
  538. package/dist/cjs/util/log-once.d.ts +5 -0
  539. package/dist/cjs/util/log-once.js +15 -0
  540. package/dist/cjs/util/log.d.ts +28 -0
  541. package/dist/cjs/util/log.js +59 -0
  542. package/dist/cjs/util/object-utils.d.ts +23 -0
  543. package/dist/cjs/util/object-utils.js +162 -0
  544. package/dist/cjs/util/performance-now.d.ts +1 -0
  545. package/dist/cjs/util/performance-now.js +12 -0
  546. package/dist/cjs/util/provide-controlled-connection.d.ts +7 -0
  547. package/dist/cjs/util/provide-controlled-connection.js +24 -0
  548. package/dist/cjs/util/query-id.d.ts +4 -0
  549. package/dist/cjs/util/query-id.js +16 -0
  550. package/dist/cjs/util/random-string.d.ts +1 -0
  551. package/dist/cjs/util/random-string.js +77 -0
  552. package/dist/cjs/util/require-all-props.d.ts +45 -0
  553. package/dist/cjs/util/require-all-props.js +41 -0
  554. package/dist/cjs/util/stack-trace-utils.d.ts +1 -0
  555. package/dist/cjs/util/stack-trace-utils.js +16 -0
  556. package/dist/cjs/util/streamable.d.ts +29 -0
  557. package/dist/cjs/util/streamable.js +2 -0
  558. package/dist/cjs/util/type-error.d.ts +3 -0
  559. package/dist/cjs/util/type-error.js +2 -0
  560. package/dist/cjs/util/type-utils.d.ts +189 -0
  561. package/dist/cjs/util/type-utils.js +2 -0
  562. package/dist/esm/dialect/database-introspector.d.ts +62 -0
  563. package/dist/esm/dialect/database-introspector.js +2 -0
  564. package/dist/esm/dialect/dialect-adapter-base.d.ts +94 -0
  565. package/dist/esm/dialect/dialect-adapter-base.js +21 -0
  566. package/dist/esm/dialect/dialect-adapter.d.ts +115 -0
  567. package/dist/esm/dialect/dialect-adapter.js +2 -0
  568. package/dist/esm/dialect/dialect.d.ts +34 -0
  569. package/dist/esm/dialect/dialect.js +2 -0
  570. package/dist/esm/dialect/mssql/mssql-adapter.d.ts +83 -0
  571. package/dist/esm/dialect/mssql/mssql-adapter.js +25 -0
  572. package/dist/esm/dialect/mssql/mssql-dialect-config.d.ts +181 -0
  573. package/dist/esm/dialect/mssql/mssql-dialect-config.js +2 -0
  574. package/dist/esm/dialect/mssql/mssql-dialect.d.ts +70 -0
  575. package/dist/esm/dialect/mssql/mssql-dialect.js +62 -0
  576. package/dist/esm/dialect/mssql/mssql-driver.d.ts +59 -0
  577. package/dist/esm/dialect/mssql/mssql-driver.js +356 -0
  578. package/dist/esm/dialect/mssql/mssql-introspector.d.ts +20 -0
  579. package/dist/esm/dialect/mssql/mssql-introspector.js +107 -0
  580. package/dist/esm/dialect/mssql/mssql-query-compiler.d.ts +17 -0
  581. package/dist/esm/dialect/mssql/mssql-query-compiler.js +80 -0
  582. package/dist/esm/dialect/mysql/mysql-adapter.d.ts +80 -0
  583. package/dist/esm/dialect/mysql/mysql-adapter.js +25 -0
  584. package/dist/esm/dialect/mysql/mysql-dialect-config.d.ts +56 -0
  585. package/dist/esm/dialect/mysql/mysql-dialect-config.js +2 -0
  586. package/dist/esm/dialect/mysql/mysql-dialect.d.ts +61 -0
  587. package/dist/esm/dialect/mysql/mysql-dialect.js +53 -0
  588. package/dist/esm/dialect/mysql/mysql-driver.d.ts +52 -0
  589. package/dist/esm/dialect/mysql/mysql-driver.js +177 -0
  590. package/dist/esm/dialect/mysql/mysql-introspector.d.ts +20 -0
  591. package/dist/esm/dialect/mysql/mysql-introspector.js +76 -0
  592. package/dist/esm/dialect/mysql/mysql-query-compiler.d.ts +13 -0
  593. package/dist/esm/dialect/mysql/mysql-query-compiler.js +57 -0
  594. package/dist/esm/dialect/postgres/postgres-adapter.d.ts +80 -0
  595. package/dist/esm/dialect/postgres/postgres-adapter.js +22 -0
  596. package/dist/esm/dialect/postgres/postgres-dialect-config.d.ts +68 -0
  597. package/dist/esm/dialect/postgres/postgres-dialect-config.js +2 -0
  598. package/dist/esm/dialect/postgres/postgres-dialect.d.ts +61 -0
  599. package/dist/esm/dialect/postgres/postgres-dialect.js +53 -0
  600. package/dist/esm/dialect/postgres/postgres-driver.d.ts +55 -0
  601. package/dist/esm/dialect/postgres/postgres-driver.js +131 -0
  602. package/dist/esm/dialect/postgres/postgres-introspector.d.ts +20 -0
  603. package/dist/esm/dialect/postgres/postgres-introspector.js +97 -0
  604. package/dist/esm/dialect/postgres/postgres-query-compiler.d.ts +4 -0
  605. package/dist/esm/dialect/postgres/postgres-query-compiler.js +8 -0
  606. package/dist/esm/dialect/sqlite/sqlite-adapter.d.ts +80 -0
  607. package/dist/esm/dialect/sqlite/sqlite-adapter.js +20 -0
  608. package/dist/esm/dialect/sqlite/sqlite-dialect-config.d.ts +41 -0
  609. package/dist/esm/dialect/sqlite/sqlite-dialect-config.js +2 -0
  610. package/dist/esm/dialect/sqlite/sqlite-dialect.d.ts +55 -0
  611. package/dist/esm/dialect/sqlite/sqlite-dialect.js +48 -0
  612. package/dist/esm/dialect/sqlite/sqlite-driver.d.ts +42 -0
  613. package/dist/esm/dialect/sqlite/sqlite-driver.js +110 -0
  614. package/dist/esm/dialect/sqlite/sqlite-introspector.d.ts +20 -0
  615. package/dist/esm/dialect/sqlite/sqlite-introspector.js +91 -0
  616. package/dist/esm/dialect/sqlite/sqlite-query-compiler.d.ts +14 -0
  617. package/dist/esm/dialect/sqlite/sqlite-query-compiler.js +34 -0
  618. package/dist/esm/driver/connection-provider.d.ts +8 -0
  619. package/dist/esm/driver/connection-provider.js +2 -0
  620. package/dist/esm/driver/database-connection.d.ts +35 -0
  621. package/dist/esm/driver/database-connection.js +2 -0
  622. package/dist/esm/driver/default-connection-provider.d.ts +12 -0
  623. package/dist/esm/driver/default-connection-provider.js +16 -0
  624. package/dist/esm/driver/driver.d.ts +61 -0
  625. package/dist/esm/driver/driver.js +19 -0
  626. package/dist/esm/driver/dummy-driver.d.ts +75 -0
  627. package/dist/esm/driver/dummy-driver.js +80 -0
  628. package/dist/esm/driver/runtime-driver.d.ts +47 -0
  629. package/dist/esm/driver/runtime-driver.js +162 -0
  630. package/dist/esm/driver/single-connection-provider.d.ts +11 -0
  631. package/dist/esm/driver/single-connection-provider.js +26 -0
  632. package/dist/esm/dynamic/dynamic-reference-builder.d.ts +18 -0
  633. package/dist/esm/dynamic/dynamic-reference-builder.js +32 -0
  634. package/dist/esm/dynamic/dynamic-table-builder.d.ts +16 -0
  635. package/dist/esm/dynamic/dynamic-table-builder.js +41 -0
  636. package/dist/esm/dynamic/dynamic.d.ts +124 -0
  637. package/dist/esm/dynamic/dynamic.js +129 -0
  638. package/dist/esm/expression/expression-builder.d.ts +920 -0
  639. package/dist/esm/expression/expression-builder.js +125 -0
  640. package/dist/esm/expression/expression-wrapper.d.ts +631 -0
  641. package/dist/esm/expression/expression-wrapper.js +128 -0
  642. package/dist/esm/expression/expression.d.ts +198 -0
  643. package/dist/esm/expression/expression.js +12 -0
  644. package/dist/esm/helpers/mssql.d.ts +212 -0
  645. package/dist/esm/helpers/mssql.js +215 -0
  646. package/dist/esm/helpers/mysql.d.ts +147 -0
  647. package/dist/esm/helpers/mysql.js +158 -0
  648. package/dist/esm/helpers/postgres.d.ts +199 -0
  649. package/dist/esm/helpers/postgres.js +203 -0
  650. package/dist/esm/helpers/sqlite.d.ts +189 -0
  651. package/dist/esm/helpers/sqlite.js +200 -0
  652. package/dist/esm/index.d.ts +226 -0
  653. package/dist/esm/index.js +212 -0
  654. package/dist/esm/kysely.d.ts +848 -0
  655. package/dist/esm/kysely.js +917 -0
  656. package/dist/esm/migration/file-migration-provider.d.ts +48 -0
  657. package/dist/esm/migration/file-migration-provider.js +49 -0
  658. package/dist/esm/migration/migrator.d.ts +395 -0
  659. package/dist/esm/migration/migrator.js +608 -0
  660. package/dist/esm/operation-node/add-column-node.d.ts +15 -0
  661. package/dist/esm/operation-node/add-column-node.js +16 -0
  662. package/dist/esm/operation-node/add-constraint-node.d.ts +15 -0
  663. package/dist/esm/operation-node/add-constraint-node.js +16 -0
  664. package/dist/esm/operation-node/add-index-node.d.ts +23 -0
  665. package/dist/esm/operation-node/add-index-node.js +29 -0
  666. package/dist/esm/operation-node/aggregate-function-node.d.ts +29 -0
  667. package/dist/esm/operation-node/aggregate-function-node.js +56 -0
  668. package/dist/esm/operation-node/alias-node.d.ts +15 -0
  669. package/dist/esm/operation-node/alias-node.js +17 -0
  670. package/dist/esm/operation-node/alter-column-node.d.ts +23 -0
  671. package/dist/esm/operation-node/alter-column-node.js +18 -0
  672. package/dist/esm/operation-node/alter-table-node.d.ts +38 -0
  673. package/dist/esm/operation-node/alter-table-node.js +30 -0
  674. package/dist/esm/operation-node/and-node.d.ts +15 -0
  675. package/dist/esm/operation-node/and-node.js +17 -0
  676. package/dist/esm/operation-node/binary-operation-node.d.ts +16 -0
  677. package/dist/esm/operation-node/binary-operation-node.js +18 -0
  678. package/dist/esm/operation-node/case-node.d.ts +21 -0
  679. package/dist/esm/operation-node/case-node.js +40 -0
  680. package/dist/esm/operation-node/cast-node.d.ts +15 -0
  681. package/dist/esm/operation-node/cast-node.js +17 -0
  682. package/dist/esm/operation-node/check-constraint-node.d.ts +16 -0
  683. package/dist/esm/operation-node/check-constraint-node.js +20 -0
  684. package/dist/esm/operation-node/collate-node.d.ts +15 -0
  685. package/dist/esm/operation-node/collate-node.js +17 -0
  686. package/dist/esm/operation-node/column-definition-node.d.ts +38 -0
  687. package/dist/esm/operation-node/column-definition-node.js +40 -0
  688. package/dist/esm/operation-node/column-node.d.ts +15 -0
  689. package/dist/esm/operation-node/column-node.js +17 -0
  690. package/dist/esm/operation-node/column-update-node.d.ts +15 -0
  691. package/dist/esm/operation-node/column-update-node.js +17 -0
  692. package/dist/esm/operation-node/common-table-expression-name-node.d.ts +17 -0
  693. package/dist/esm/operation-node/common-table-expression-name-node.js +21 -0
  694. package/dist/esm/operation-node/common-table-expression-node.d.ts +19 -0
  695. package/dist/esm/operation-node/common-table-expression-node.js +23 -0
  696. package/dist/esm/operation-node/constraint-node.d.ts +5 -0
  697. package/dist/esm/operation-node/constraint-node.js +2 -0
  698. package/dist/esm/operation-node/create-index-node.d.ts +29 -0
  699. package/dist/esm/operation-node/create-index-node.js +29 -0
  700. package/dist/esm/operation-node/create-schema-node.d.ts +18 -0
  701. package/dist/esm/operation-node/create-schema-node.js +24 -0
  702. package/dist/esm/operation-node/create-table-node.d.ts +34 -0
  703. package/dist/esm/operation-node/create-table-node.js +54 -0
  704. package/dist/esm/operation-node/create-type-node.d.ts +19 -0
  705. package/dist/esm/operation-node/create-type-node.js +24 -0
  706. package/dist/esm/operation-node/create-view-node.d.ts +26 -0
  707. package/dist/esm/operation-node/create-view-node.js +23 -0
  708. package/dist/esm/operation-node/data-type-node.d.ts +19 -0
  709. package/dist/esm/operation-node/data-type-node.js +83 -0
  710. package/dist/esm/operation-node/default-insert-value-node.d.ts +13 -0
  711. package/dist/esm/operation-node/default-insert-value-node.js +15 -0
  712. package/dist/esm/operation-node/default-value-node.d.ts +14 -0
  713. package/dist/esm/operation-node/default-value-node.js +16 -0
  714. package/dist/esm/operation-node/delete-query-node.d.ts +42 -0
  715. package/dist/esm/operation-node/delete-query-node.js +50 -0
  716. package/dist/esm/operation-node/drop-column-node.d.ts +15 -0
  717. package/dist/esm/operation-node/drop-column-node.js +17 -0
  718. package/dist/esm/operation-node/drop-constraint-node.d.ts +19 -0
  719. package/dist/esm/operation-node/drop-constraint-node.js +23 -0
  720. package/dist/esm/operation-node/drop-index-node.d.ts +21 -0
  721. package/dist/esm/operation-node/drop-index-node.js +24 -0
  722. package/dist/esm/operation-node/drop-schema-node.d.ts +19 -0
  723. package/dist/esm/operation-node/drop-schema-node.js +24 -0
  724. package/dist/esm/operation-node/drop-table-node.d.ts +19 -0
  725. package/dist/esm/operation-node/drop-table-node.js +23 -0
  726. package/dist/esm/operation-node/drop-type-node.d.ts +18 -0
  727. package/dist/esm/operation-node/drop-type-node.js +22 -0
  728. package/dist/esm/operation-node/drop-view-node.d.ts +20 -0
  729. package/dist/esm/operation-node/drop-view-node.js +23 -0
  730. package/dist/esm/operation-node/explain-node.d.ts +16 -0
  731. package/dist/esm/operation-node/explain-node.js +17 -0
  732. package/dist/esm/operation-node/fetch-node.d.ts +17 -0
  733. package/dist/esm/operation-node/fetch-node.js +18 -0
  734. package/dist/esm/operation-node/foreign-key-constraint-node.d.ts +26 -0
  735. package/dist/esm/operation-node/foreign-key-constraint-node.js +28 -0
  736. package/dist/esm/operation-node/from-node.d.ts +15 -0
  737. package/dist/esm/operation-node/from-node.js +22 -0
  738. package/dist/esm/operation-node/function-node.d.ts +15 -0
  739. package/dist/esm/operation-node/function-node.js +17 -0
  740. package/dist/esm/operation-node/generated-node.d.ts +21 -0
  741. package/dist/esm/operation-node/generated-node.js +29 -0
  742. package/dist/esm/operation-node/group-by-item-node.d.ts +14 -0
  743. package/dist/esm/operation-node/group-by-item-node.js +16 -0
  744. package/dist/esm/operation-node/group-by-node.d.ts +16 -0
  745. package/dist/esm/operation-node/group-by-node.js +22 -0
  746. package/dist/esm/operation-node/having-node.d.ts +15 -0
  747. package/dist/esm/operation-node/having-node.js +26 -0
  748. package/dist/esm/operation-node/identifier-node.d.ts +14 -0
  749. package/dist/esm/operation-node/identifier-node.js +16 -0
  750. package/dist/esm/operation-node/insert-query-node.d.ts +42 -0
  751. package/dist/esm/operation-node/insert-query-node.js +29 -0
  752. package/dist/esm/operation-node/join-node.d.ts +20 -0
  753. package/dist/esm/operation-node/join-node.js +35 -0
  754. package/dist/esm/operation-node/json-operator-chain-node.d.ts +18 -0
  755. package/dist/esm/operation-node/json-operator-chain-node.js +23 -0
  756. package/dist/esm/operation-node/json-path-leg-node.d.ts +16 -0
  757. package/dist/esm/operation-node/json-path-leg-node.js +17 -0
  758. package/dist/esm/operation-node/json-path-node.d.ts +18 -0
  759. package/dist/esm/operation-node/json-path-node.js +23 -0
  760. package/dist/esm/operation-node/json-reference-node.d.ts +19 -0
  761. package/dist/esm/operation-node/json-reference-node.js +23 -0
  762. package/dist/esm/operation-node/limit-node.d.ts +14 -0
  763. package/dist/esm/operation-node/limit-node.js +16 -0
  764. package/dist/esm/operation-node/list-node.d.ts +14 -0
  765. package/dist/esm/operation-node/list-node.js +16 -0
  766. package/dist/esm/operation-node/matched-node.d.ts +15 -0
  767. package/dist/esm/operation-node/matched-node.js +17 -0
  768. package/dist/esm/operation-node/merge-query-node.d.ts +32 -0
  769. package/dist/esm/operation-node/merge-query-node.js +43 -0
  770. package/dist/esm/operation-node/modify-column-node.d.ts +15 -0
  771. package/dist/esm/operation-node/modify-column-node.js +16 -0
  772. package/dist/esm/operation-node/offset-node.d.ts +14 -0
  773. package/dist/esm/operation-node/offset-node.js +16 -0
  774. package/dist/esm/operation-node/on-conflict-node.d.ts +32 -0
  775. package/dist/esm/operation-node/on-conflict-node.js +66 -0
  776. package/dist/esm/operation-node/on-duplicate-key-node.d.ts +16 -0
  777. package/dist/esm/operation-node/on-duplicate-key-node.js +16 -0
  778. package/dist/esm/operation-node/on-node.d.ts +15 -0
  779. package/dist/esm/operation-node/on-node.js +26 -0
  780. package/dist/esm/operation-node/operation-node-source.d.ts +5 -0
  781. package/dist/esm/operation-node/operation-node-source.js +5 -0
  782. package/dist/esm/operation-node/operation-node-transformer.d.ts +238 -0
  783. package/dist/esm/operation-node/operation-node-transformer.js +926 -0
  784. package/dist/esm/operation-node/operation-node-visitor.d.ts +201 -0
  785. package/dist/esm/operation-node/operation-node-visitor.js +112 -0
  786. package/dist/esm/operation-node/operation-node.d.ts +4 -0
  787. package/dist/esm/operation-node/operation-node.js +2 -0
  788. package/dist/esm/operation-node/operator-node.d.ts +34 -0
  789. package/dist/esm/operation-node/operator-node.js +100 -0
  790. package/dist/esm/operation-node/or-action-node.d.ts +14 -0
  791. package/dist/esm/operation-node/or-action-node.js +16 -0
  792. package/dist/esm/operation-node/or-node.d.ts +15 -0
  793. package/dist/esm/operation-node/or-node.js +17 -0
  794. package/dist/esm/operation-node/order-by-item-node.d.ts +20 -0
  795. package/dist/esm/operation-node/order-by-item-node.js +23 -0
  796. package/dist/esm/operation-node/order-by-node.d.ts +16 -0
  797. package/dist/esm/operation-node/order-by-node.js +22 -0
  798. package/dist/esm/operation-node/output-node.d.ts +15 -0
  799. package/dist/esm/operation-node/output-node.js +24 -0
  800. package/dist/esm/operation-node/over-node.d.ts +21 -0
  801. package/dist/esm/operation-node/over-node.js +33 -0
  802. package/dist/esm/operation-node/parens-node.d.ts +14 -0
  803. package/dist/esm/operation-node/parens-node.js +16 -0
  804. package/dist/esm/operation-node/partition-by-item-node.d.ts +15 -0
  805. package/dist/esm/operation-node/partition-by-item-node.js +16 -0
  806. package/dist/esm/operation-node/partition-by-node.d.ts +16 -0
  807. package/dist/esm/operation-node/partition-by-node.js +22 -0
  808. package/dist/esm/operation-node/primary-key-constraint-node.d.ts +31 -0
  809. package/dist/esm/operation-node/primary-key-constraint-node.js +30 -0
  810. package/dist/esm/operation-node/primitive-value-list-node.d.ts +19 -0
  811. package/dist/esm/operation-node/primitive-value-list-node.js +16 -0
  812. package/dist/esm/operation-node/query-node.d.ts +61 -0
  813. package/dist/esm/operation-node/query-node.js +100 -0
  814. package/dist/esm/operation-node/raw-node.d.ts +18 -0
  815. package/dist/esm/operation-node/raw-node.js +26 -0
  816. package/dist/esm/operation-node/reference-node.d.ts +19 -0
  817. package/dist/esm/operation-node/reference-node.js +25 -0
  818. package/dist/esm/operation-node/references-node.d.ts +24 -0
  819. package/dist/esm/operation-node/references-node.js +36 -0
  820. package/dist/esm/operation-node/refresh-materialized-view-node.d.ts +19 -0
  821. package/dist/esm/operation-node/refresh-materialized-view-node.js +23 -0
  822. package/dist/esm/operation-node/rename-column-node.d.ts +16 -0
  823. package/dist/esm/operation-node/rename-column-node.js +18 -0
  824. package/dist/esm/operation-node/rename-constraint-node.d.ts +16 -0
  825. package/dist/esm/operation-node/rename-constraint-node.js +18 -0
  826. package/dist/esm/operation-node/returning-node.d.ts +16 -0
  827. package/dist/esm/operation-node/returning-node.js +24 -0
  828. package/dist/esm/operation-node/schemable-identifier-node.d.ts +17 -0
  829. package/dist/esm/operation-node/schemable-identifier-node.js +24 -0
  830. package/dist/esm/operation-node/select-all-node.d.ts +13 -0
  831. package/dist/esm/operation-node/select-all-node.js +15 -0
  832. package/dist/esm/operation-node/select-modifier-node.d.ts +18 -0
  833. package/dist/esm/operation-node/select-modifier-node.js +23 -0
  834. package/dist/esm/operation-node/select-query-node.d.ts +63 -0
  835. package/dist/esm/operation-node/select-query-node.js +127 -0
  836. package/dist/esm/operation-node/selection-node.d.ts +21 -0
  837. package/dist/esm/operation-node/selection-node.js +30 -0
  838. package/dist/esm/operation-node/set-operation-node.d.ts +17 -0
  839. package/dist/esm/operation-node/set-operation-node.js +18 -0
  840. package/dist/esm/operation-node/simple-reference-expression-node.d.ts +3 -0
  841. package/dist/esm/operation-node/simple-reference-expression-node.js +2 -0
  842. package/dist/esm/operation-node/table-node.d.ts +16 -0
  843. package/dist/esm/operation-node/table-node.js +23 -0
  844. package/dist/esm/operation-node/top-node.d.ts +16 -0
  845. package/dist/esm/operation-node/top-node.js +17 -0
  846. package/dist/esm/operation-node/tuple-node.d.ts +14 -0
  847. package/dist/esm/operation-node/tuple-node.js +16 -0
  848. package/dist/esm/operation-node/unary-operation-node.d.ts +15 -0
  849. package/dist/esm/operation-node/unary-operation-node.js +17 -0
  850. package/dist/esm/operation-node/unique-constraint-node.d.ts +22 -0
  851. package/dist/esm/operation-node/unique-constraint-node.js +28 -0
  852. package/dist/esm/operation-node/update-query-node.d.ts +41 -0
  853. package/dist/esm/operation-node/update-query-node.js +48 -0
  854. package/dist/esm/operation-node/using-node.d.ts +15 -0
  855. package/dist/esm/operation-node/using-node.js +22 -0
  856. package/dist/esm/operation-node/value-list-node.d.ts +14 -0
  857. package/dist/esm/operation-node/value-list-node.js +16 -0
  858. package/dist/esm/operation-node/value-node.d.ts +16 -0
  859. package/dist/esm/operation-node/value-node.js +23 -0
  860. package/dist/esm/operation-node/values-node.d.ts +17 -0
  861. package/dist/esm/operation-node/values-node.js +16 -0
  862. package/dist/esm/operation-node/when-node.d.ts +16 -0
  863. package/dist/esm/operation-node/when-node.js +22 -0
  864. package/dist/esm/operation-node/where-node.d.ts +15 -0
  865. package/dist/esm/operation-node/where-node.js +26 -0
  866. package/dist/esm/operation-node/with-node.d.ts +18 -0
  867. package/dist/esm/operation-node/with-node.js +23 -0
  868. package/dist/esm/package.json +1 -0
  869. package/dist/esm/parser/binary-operation-parser.d.ts +21 -0
  870. package/dist/esm/parser/binary-operation-parser.js +68 -0
  871. package/dist/esm/parser/coalesce-parser.d.ts +12 -0
  872. package/dist/esm/parser/coalesce-parser.js +2 -0
  873. package/dist/esm/parser/collate-parser.d.ts +1 -0
  874. package/dist/esm/parser/collate-parser.js +2 -0
  875. package/dist/esm/parser/data-type-parser.d.ts +5 -0
  876. package/dist/esm/parser/data-type-parser.js +12 -0
  877. package/dist/esm/parser/default-value-parser.d.ts +4 -0
  878. package/dist/esm/parser/default-value-parser.js +8 -0
  879. package/dist/esm/parser/delete-from-parser.d.ts +9 -0
  880. package/dist/esm/parser/delete-from-parser.js +2 -0
  881. package/dist/esm/parser/expression-parser.d.ts +20 -0
  882. package/dist/esm/parser/expression-parser.js +26 -0
  883. package/dist/esm/parser/fetch-parser.d.ts +2 -0
  884. package/dist/esm/parser/fetch-parser.js +15 -0
  885. package/dist/esm/parser/group-by-parser.d.ts +6 -0
  886. package/dist/esm/parser/group-by-parser.js +9 -0
  887. package/dist/esm/parser/identifier-parser.d.ts +2 -0
  888. package/dist/esm/parser/identifier-parser.js +20 -0
  889. package/dist/esm/parser/insert-values-parser.d.ts +14 -0
  890. package/dist/esm/parser/insert-values-parser.js +62 -0
  891. package/dist/esm/parser/join-parser.d.ts +10 -0
  892. package/dist/esm/parser/join-parser.js +28 -0
  893. package/dist/esm/parser/merge-into-parser.d.ts +7 -0
  894. package/dist/esm/parser/merge-into-parser.js +2 -0
  895. package/dist/esm/parser/merge-parser.d.ts +9 -0
  896. package/dist/esm/parser/merge-parser.js +28 -0
  897. package/dist/esm/parser/on-commit-action-parse.d.ts +2 -0
  898. package/dist/esm/parser/on-commit-action-parse.js +8 -0
  899. package/dist/esm/parser/on-modify-action-parser.d.ts +2 -0
  900. package/dist/esm/parser/on-modify-action-parser.js +8 -0
  901. package/dist/esm/parser/order-by-parser.d.ts +25 -0
  902. package/dist/esm/parser/order-by-parser.js +67 -0
  903. package/dist/esm/parser/parse-utils.d.ts +10 -0
  904. package/dist/esm/parser/parse-utils.js +33 -0
  905. package/dist/esm/parser/partition-by-parser.d.ts +6 -0
  906. package/dist/esm/parser/partition-by-parser.js +6 -0
  907. package/dist/esm/parser/reference-parser.d.ts +31 -0
  908. package/dist/esm/parser/reference-parser.js +95 -0
  909. package/dist/esm/parser/returning-parser.d.ts +8 -0
  910. package/dist/esm/parser/returning-parser.js +2 -0
  911. package/dist/esm/parser/savepoint-parser.d.ts +4 -0
  912. package/dist/esm/parser/savepoint-parser.js +9 -0
  913. package/dist/esm/parser/select-from-parser.d.ts +6 -0
  914. package/dist/esm/parser/select-from-parser.js +2 -0
  915. package/dist/esm/parser/select-parser.d.ts +36 -0
  916. package/dist/esm/parser/select-parser.js +47 -0
  917. package/dist/esm/parser/set-operation-parser.d.ts +5 -0
  918. package/dist/esm/parser/set-operation-parser.js +14 -0
  919. package/dist/esm/parser/table-parser.d.ts +24 -0
  920. package/dist/esm/parser/table-parser.js +49 -0
  921. package/dist/esm/parser/top-parser.d.ts +2 -0
  922. package/dist/esm/parser/top-parser.js +17 -0
  923. package/dist/esm/parser/tuple-parser.d.ts +47 -0
  924. package/dist/esm/parser/tuple-parser.js +2 -0
  925. package/dist/esm/parser/unary-operation-parser.d.ts +8 -0
  926. package/dist/esm/parser/unary-operation-parser.js +13 -0
  927. package/dist/esm/parser/update-parser.d.ts +9 -0
  928. package/dist/esm/parser/update-parser.js +2 -0
  929. package/dist/esm/parser/update-set-parser.d.ts +16 -0
  930. package/dist/esm/parser/update-set-parser.js +23 -0
  931. package/dist/esm/parser/value-parser.d.ts +13 -0
  932. package/dist/esm/parser/value-parser.js +33 -0
  933. package/dist/esm/parser/with-parser.d.ts +45 -0
  934. package/dist/esm/parser/with-parser.js +31 -0
  935. package/dist/esm/plugin/camel-case/camel-case-plugin.d.ts +170 -0
  936. package/dist/esm/plugin/camel-case/camel-case-plugin.js +119 -0
  937. package/dist/esm/plugin/camel-case/camel-case-transformer.d.ts +9 -0
  938. package/dist/esm/plugin/camel-case/camel-case-transformer.js +16 -0
  939. package/dist/esm/plugin/camel-case/camel-case.d.ts +15 -0
  940. package/dist/esm/plugin/camel-case/camel-case.js +108 -0
  941. package/dist/esm/plugin/deduplicate-joins/deduplicate-joins-plugin.d.ts +70 -0
  942. package/dist/esm/plugin/deduplicate-joins/deduplicate-joins-plugin.js +16 -0
  943. package/dist/esm/plugin/deduplicate-joins/deduplicate-joins-transformer.d.ts +11 -0
  944. package/dist/esm/plugin/deduplicate-joins/deduplicate-joins-transformer.js +39 -0
  945. package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists-plugin.d.ts +211 -0
  946. package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists-plugin.js +159 -0
  947. package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists-transformer.d.ts +8 -0
  948. package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists-transformer.js +26 -0
  949. package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists.d.ts +44 -0
  950. package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists.js +63 -0
  951. package/dist/esm/plugin/immediate-value/immediate-value-plugin.d.ts +73 -0
  952. package/dist/esm/plugin/immediate-value/immediate-value-plugin.js +19 -0
  953. package/dist/esm/plugin/immediate-value/immediate-value-transformer.d.ts +15 -0
  954. package/dist/esm/plugin/immediate-value/immediate-value-transformer.js +20 -0
  955. package/dist/esm/plugin/kysely-plugin.d.ts +72 -0
  956. package/dist/esm/plugin/kysely-plugin.js +2 -0
  957. package/dist/esm/plugin/noop-plugin.d.ts +64 -0
  958. package/dist/esm/plugin/noop-plugin.js +9 -0
  959. package/dist/esm/plugin/parse-json-results/parse-json-results-plugin.d.ts +126 -0
  960. package/dist/esm/plugin/parse-json-results/parse-json-results-plugin.js +104 -0
  961. package/dist/esm/plugin/with-schema/with-schema-plugin.d.ts +66 -0
  962. package/dist/esm/plugin/with-schema/with-schema-plugin.js +14 -0
  963. package/dist/esm/plugin/with-schema/with-schema-transformer.d.ts +18 -0
  964. package/dist/esm/plugin/with-schema/with-schema-transformer.js +197 -0
  965. package/dist/esm/query-builder/aggregate-function-builder.d.ts +379 -0
  966. package/dist/esm/query-builder/aggregate-function-builder.js +238 -0
  967. package/dist/esm/query-builder/case-builder.d.ts +112 -0
  968. package/dist/esm/query-builder/case-builder.js +73 -0
  969. package/dist/esm/query-builder/cte-builder.d.ts +20 -0
  970. package/dist/esm/query-builder/cte-builder.js +34 -0
  971. package/dist/esm/query-builder/delete-query-builder.d.ts +1348 -0
  972. package/dist/esm/query-builder/delete-query-builder.js +501 -0
  973. package/dist/esm/query-builder/delete-result.d.ts +4 -0
  974. package/dist/esm/query-builder/delete-result.js +7 -0
  975. package/dist/esm/query-builder/function-module.d.ts +592 -0
  976. package/dist/esm/query-builder/function-module.js +60 -0
  977. package/dist/esm/query-builder/having-interface.d.ts +15 -0
  978. package/dist/esm/query-builder/having-interface.js +2 -0
  979. package/dist/esm/query-builder/insert-query-builder.d.ts +1235 -0
  980. package/dist/esm/query-builder/insert-query-builder.js +1157 -0
  981. package/dist/esm/query-builder/insert-result.d.ts +46 -0
  982. package/dist/esm/query-builder/insert-result.js +50 -0
  983. package/dist/esm/query-builder/join-builder.d.ts +38 -0
  984. package/dist/esm/query-builder/join-builder.js +48 -0
  985. package/dist/esm/query-builder/json-path-builder.d.ts +294 -0
  986. package/dist/esm/query-builder/json-path-builder.js +195 -0
  987. package/dist/esm/query-builder/merge-query-builder.d.ts +1001 -0
  988. package/dist/esm/query-builder/merge-query-builder.js +624 -0
  989. package/dist/esm/query-builder/merge-result.d.ts +4 -0
  990. package/dist/esm/query-builder/merge-result.js +7 -0
  991. package/dist/esm/query-builder/no-result-error.d.ts +10 -0
  992. package/dist/esm/query-builder/no-result-error.js +14 -0
  993. package/dist/esm/query-builder/on-conflict-builder.d.ts +872 -0
  994. package/dist/esm/query-builder/on-conflict-builder.js +254 -0
  995. package/dist/esm/query-builder/order-by-interface.d.ts +158 -0
  996. package/dist/esm/query-builder/order-by-interface.js +2 -0
  997. package/dist/esm/query-builder/order-by-item-builder.d.ts +43 -0
  998. package/dist/esm/query-builder/order-by-item-builder.js +72 -0
  999. package/dist/esm/query-builder/output-interface.d.ts +138 -0
  1000. package/dist/esm/query-builder/output-interface.js +2 -0
  1001. package/dist/esm/query-builder/over-builder.d.ts +101 -0
  1002. package/dist/esm/query-builder/over-builder.js +37 -0
  1003. package/dist/esm/query-builder/returning-interface.d.ts +91 -0
  1004. package/dist/esm/query-builder/returning-interface.js +2 -0
  1005. package/dist/esm/query-builder/select-query-builder-expression.d.ts +28 -0
  1006. package/dist/esm/query-builder/select-query-builder-expression.js +2 -0
  1007. package/dist/esm/query-builder/select-query-builder.d.ts +2391 -0
  1008. package/dist/esm/query-builder/select-query-builder.js +374 -0
  1009. package/dist/esm/query-builder/update-query-builder.d.ts +1392 -0
  1010. package/dist/esm/query-builder/update-query-builder.js +510 -0
  1011. package/dist/esm/query-builder/update-result.d.ts +14 -0
  1012. package/dist/esm/query-builder/update-result.js +18 -0
  1013. package/dist/esm/query-builder/where-interface.d.ts +382 -0
  1014. package/dist/esm/query-builder/where-interface.js +2 -0
  1015. package/dist/esm/query-compiler/compiled-query.d.ts +13 -0
  1016. package/dist/esm/query-compiler/compiled-query.js +14 -0
  1017. package/dist/esm/query-compiler/default-query-compiler.d.ts +235 -0
  1018. package/dist/esm/query-compiler/default-query-compiler.js +1393 -0
  1019. package/dist/esm/query-compiler/query-compiler.d.ts +24 -0
  1020. package/dist/esm/query-compiler/query-compiler.js +2 -0
  1021. package/dist/esm/query-creator.d.ts +592 -0
  1022. package/dist/esm/query-creator.js +619 -0
  1023. package/dist/esm/query-executor/default-query-executor.d.ts +50 -0
  1024. package/dist/esm/query-executor/default-query-executor.js +37 -0
  1025. package/dist/esm/query-executor/noop-query-executor.d.ts +50 -0
  1026. package/dist/esm/query-executor/noop-query-executor.js +34 -0
  1027. package/dist/esm/query-executor/query-executor-base.d.ts +68 -0
  1028. package/dist/esm/query-executor/query-executor-base.js +59 -0
  1029. package/dist/esm/query-executor/query-executor-provider.d.ts +8 -0
  1030. package/dist/esm/query-executor/query-executor-provider.js +2 -0
  1031. package/dist/esm/query-executor/query-executor.d.ts +74 -0
  1032. package/dist/esm/query-executor/query-executor.js +2 -0
  1033. package/dist/esm/raw-builder/raw-builder.d.ts +218 -0
  1034. package/dist/esm/raw-builder/raw-builder.js +84 -0
  1035. package/dist/esm/raw-builder/sql.d.ts +366 -0
  1036. package/dist/esm/raw-builder/sql.js +82 -0
  1037. package/dist/esm/schema/alter-column-builder.d.ts +53 -0
  1038. package/dist/esm/schema/alter-column-builder.js +70 -0
  1039. package/dist/esm/schema/alter-table-add-foreign-key-constraint-builder.d.ts +32 -0
  1040. package/dist/esm/schema/alter-table-add-foreign-key-constraint-builder.js +64 -0
  1041. package/dist/esm/schema/alter-table-add-index-builder.d.ts +138 -0
  1042. package/dist/esm/schema/alter-table-add-index-builder.js +162 -0
  1043. package/dist/esm/schema/alter-table-builder.d.ts +148 -0
  1044. package/dist/esm/schema/alter-table-builder.js +263 -0
  1045. package/dist/esm/schema/alter-table-drop-constraint-builder.d.ts +26 -0
  1046. package/dist/esm/schema/alter-table-drop-constraint-builder.js +56 -0
  1047. package/dist/esm/schema/alter-table-executor.d.ts +18 -0
  1048. package/dist/esm/schema/alter-table-executor.js +17 -0
  1049. package/dist/esm/schema/check-constraint-builder.d.ts +13 -0
  1050. package/dist/esm/schema/check-constraint-builder.js +17 -0
  1051. package/dist/esm/schema/column-definition-builder.d.ts +514 -0
  1052. package/dist/esm/schema/column-definition-builder.js +597 -0
  1053. package/dist/esm/schema/create-index-builder.d.ts +173 -0
  1054. package/dist/esm/schema/create-index-builder.js +199 -0
  1055. package/dist/esm/schema/create-schema-builder.d.ts +24 -0
  1056. package/dist/esm/schema/create-schema-builder.js +31 -0
  1057. package/dist/esm/schema/create-table-builder.d.ts +331 -0
  1058. package/dist/esm/schema/create-table-builder.js +408 -0
  1059. package/dist/esm/schema/create-type-builder.d.ts +33 -0
  1060. package/dist/esm/schema/create-type-builder.js +40 -0
  1061. package/dist/esm/schema/create-view-builder.d.ts +48 -0
  1062. package/dist/esm/schema/create-view-builder.js +95 -0
  1063. package/dist/esm/schema/drop-index-builder.d.ts +30 -0
  1064. package/dist/esm/schema/drop-index-builder.js +54 -0
  1065. package/dist/esm/schema/drop-schema-builder.d.ts +25 -0
  1066. package/dist/esm/schema/drop-schema-builder.js +41 -0
  1067. package/dist/esm/schema/drop-table-builder.d.ts +25 -0
  1068. package/dist/esm/schema/drop-table-builder.js +41 -0
  1069. package/dist/esm/schema/drop-type-builder.d.ts +24 -0
  1070. package/dist/esm/schema/drop-type-builder.js +33 -0
  1071. package/dist/esm/schema/drop-view-builder.d.ts +26 -0
  1072. package/dist/esm/schema/drop-view-builder.js +49 -0
  1073. package/dist/esm/schema/foreign-key-constraint-builder.d.ts +28 -0
  1074. package/dist/esm/schema/foreign-key-constraint-builder.js +45 -0
  1075. package/dist/esm/schema/primary-key-constraint-builder.d.ts +17 -0
  1076. package/dist/esm/schema/primary-key-constraint-builder.js +34 -0
  1077. package/dist/esm/schema/refresh-materialized-view-builder.d.ts +47 -0
  1078. package/dist/esm/schema/refresh-materialized-view-builder.js +72 -0
  1079. package/dist/esm/schema/schema.d.ts +230 -0
  1080. package/dist/esm/schema/schema.js +325 -0
  1081. package/dist/esm/schema/unique-constraint-builder.d.ts +23 -0
  1082. package/dist/esm/schema/unique-constraint-builder.js +42 -0
  1083. package/dist/esm/util/assert.d.ts +2 -0
  1084. package/dist/esm/util/assert.js +11 -0
  1085. package/dist/esm/util/column-type.d.ts +175 -0
  1086. package/dist/esm/util/column-type.js +2 -0
  1087. package/dist/esm/util/compilable.d.ts +5 -0
  1088. package/dist/esm/util/compilable.js +5 -0
  1089. package/dist/esm/util/deferred.d.ts +7 -0
  1090. package/dist/esm/util/deferred.js +25 -0
  1091. package/dist/esm/util/explainable.d.ts +40 -0
  1092. package/dist/esm/util/explainable.js +2 -0
  1093. package/dist/esm/util/infer-result.d.ts +48 -0
  1094. package/dist/esm/util/infer-result.js +2 -0
  1095. package/dist/esm/util/json-object-args.d.ts +3 -0
  1096. package/dist/esm/util/json-object-args.js +32 -0
  1097. package/dist/esm/util/log-once.d.ts +5 -0
  1098. package/dist/esm/util/log-once.js +13 -0
  1099. package/dist/esm/util/log.d.ts +28 -0
  1100. package/dist/esm/util/log.js +56 -0
  1101. package/dist/esm/util/object-utils.d.ts +23 -0
  1102. package/dist/esm/util/object-utils.js +141 -0
  1103. package/dist/esm/util/performance-now.d.ts +1 -0
  1104. package/dist/esm/util/performance-now.js +10 -0
  1105. package/dist/esm/util/provide-controlled-connection.d.ts +7 -0
  1106. package/dist/esm/util/provide-controlled-connection.js +22 -0
  1107. package/dist/esm/util/query-id.d.ts +4 -0
  1108. package/dist/esm/util/query-id.js +14 -0
  1109. package/dist/esm/util/random-string.d.ts +1 -0
  1110. package/dist/esm/util/random-string.js +75 -0
  1111. package/dist/esm/util/require-all-props.d.ts +45 -0
  1112. package/dist/esm/util/require-all-props.js +39 -0
  1113. package/dist/esm/util/stack-trace-utils.d.ts +1 -0
  1114. package/dist/esm/util/stack-trace-utils.js +14 -0
  1115. package/dist/esm/util/streamable.d.ts +29 -0
  1116. package/dist/esm/util/streamable.js +2 -0
  1117. package/dist/esm/util/type-error.d.ts +3 -0
  1118. package/dist/esm/util/type-error.js +2 -0
  1119. package/dist/esm/util/type-utils.d.ts +189 -0
  1120. package/dist/esm/util/type-utils.js +2 -0
  1121. package/helpers/mssql.d.ts +1 -0
  1122. package/helpers/mssql.js +1 -0
  1123. package/helpers/mysql.d.ts +1 -0
  1124. package/helpers/mysql.js +1 -0
  1125. package/helpers/postgres.d.ts +1 -0
  1126. package/helpers/postgres.js +1 -0
  1127. package/helpers/sqlite.d.ts +1 -0
  1128. package/helpers/sqlite.js +1 -0
  1129. package/outdated-typescript.d.ts +5 -0
  1130. package/package.json +155 -0
@@ -0,0 +1,1001 @@
1
+ import type { AliasedExpression, Expression } from '../expression/expression.js';
2
+ import { MergeQueryNode } from '../operation-node/merge-query-node.js';
3
+ import type { OperationNodeSource } from '../operation-node/operation-node-source.js';
4
+ import { QueryNode } from '../operation-node/query-node.js';
5
+ import type { ComparisonOperatorExpression, OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
6
+ import type { ExpressionOrFactory } from '../parser/expression-parser.js';
7
+ import { type InsertObjectOrList, type InsertObjectOrListFactory } from '../parser/insert-values-parser.js';
8
+ import { type JoinCallbackExpression, type JoinReferenceExpression } from '../parser/join-parser.js';
9
+ import type { ReferenceExpression } from '../parser/reference-parser.js';
10
+ import type { ReturningAllRow, ReturningCallbackRow, ReturningRow } from '../parser/returning-parser.js';
11
+ import { type SelectCallback, type SelectExpression } from '../parser/select-parser.js';
12
+ import type { TableExpression } from '../parser/table-parser.js';
13
+ import type { ExtractUpdateTypeFromReferenceExpression, UpdateObject, UpdateObjectFactory } from '../parser/update-set-parser.js';
14
+ import type { ValueExpression } from '../parser/value-parser.js';
15
+ import type { CompiledQuery } from '../query-compiler/compiled-query.js';
16
+ import type { QueryExecutor } from '../query-executor/query-executor.js';
17
+ import type { Compilable } from '../util/compilable.js';
18
+ import type { QueryId } from '../util/query-id.js';
19
+ import type { ShallowRecord, SimplifyResult, SimplifySingleResult, SqlBool } from '../util/type-utils.js';
20
+ import { MergeResult } from './merge-result.js';
21
+ import { type NoResultErrorConstructor } from './no-result-error.js';
22
+ import type { OutputCallback, OutputExpression, OutputInterface, OutputPrefix, SelectExpressionFromOutputCallback, SelectExpressionFromOutputExpression } from './output-interface.js';
23
+ import type { MultiTableReturningInterface } from './returning-interface.js';
24
+ import { UpdateQueryBuilder } from './update-query-builder.js';
25
+ export declare class MergeQueryBuilder<DB, TT extends keyof DB, O> implements MultiTableReturningInterface<DB, TT, O>, OutputInterface<DB, TT, O> {
26
+ #private;
27
+ constructor(props: MergeQueryBuilderProps);
28
+ /**
29
+ * This can be used to add any additional SQL to the end of the query.
30
+ *
31
+ * ### Examples
32
+ *
33
+ * ```ts
34
+ * import { sql } from 'kysely'
35
+ *
36
+ * await db
37
+ * .mergeInto('person')
38
+ * .using('pet', 'pet.owner_id', 'person.id')
39
+ * .whenMatched()
40
+ * .thenDelete()
41
+ * .modifyEnd(sql.raw('-- this is a comment'))
42
+ * .execute()
43
+ * ```
44
+ *
45
+ * The generated SQL (PostgreSQL):
46
+ *
47
+ * ```sql
48
+ * merge into "person" using "pet" on "pet"."owner_id" = "person"."id" when matched then delete -- this is a comment
49
+ * ```
50
+ */
51
+ modifyEnd(modifier: Expression<any>): MergeQueryBuilder<DB, TT, O>;
52
+ /**
53
+ * Changes a `merge into` query to an `merge top into` query.
54
+ *
55
+ * `top` clause is only supported by some dialects like MS SQL Server.
56
+ *
57
+ * ### Examples
58
+ *
59
+ * Affect 5 matched rows at most:
60
+ *
61
+ * ```ts
62
+ * await db.mergeInto('person')
63
+ * .top(5)
64
+ * .using('pet', 'person.id', 'pet.owner_id')
65
+ * .whenMatched()
66
+ * .thenDelete()
67
+ * .execute()
68
+ * ```
69
+ *
70
+ * The generated SQL (MS SQL Server):
71
+ *
72
+ * ```sql
73
+ * merge top(5) into "person"
74
+ * using "pet" on "person"."id" = "pet"."owner_id"
75
+ * when matched then
76
+ * delete
77
+ * ```
78
+ *
79
+ * Affect 50% of matched rows:
80
+ *
81
+ * ```ts
82
+ * await db.mergeInto('person')
83
+ * .top(50, 'percent')
84
+ * .using('pet', 'person.id', 'pet.owner_id')
85
+ * .whenMatched()
86
+ * .thenDelete()
87
+ * .execute()
88
+ * ```
89
+ *
90
+ * The generated SQL (MS SQL Server):
91
+ *
92
+ * ```sql
93
+ * merge top(50) percent into "person"
94
+ * using "pet" on "person"."id" = "pet"."owner_id"
95
+ * when matched then
96
+ * delete
97
+ * ```
98
+ */
99
+ top(expression: number | bigint, modifiers?: 'percent'): MergeQueryBuilder<DB, TT, O>;
100
+ /**
101
+ * Adds the `using` clause to the query.
102
+ *
103
+ * This method is similar to {@link SelectQueryBuilder.innerJoin}, so see the
104
+ * documentation for that method for more examples.
105
+ *
106
+ * ### Examples
107
+ *
108
+ * ```ts
109
+ * const result = await db.mergeInto('person')
110
+ * .using('pet', 'person.id', 'pet.owner_id')
111
+ * .whenMatched()
112
+ * .thenDelete()
113
+ * .execute()
114
+ * ```
115
+ *
116
+ * The generated SQL (PostgreSQL):
117
+ *
118
+ * ```sql
119
+ * merge into "person"
120
+ * using "pet" on "person"."id" = "pet"."owner_id"
121
+ * when matched then
122
+ * delete
123
+ * ```
124
+ */
125
+ using<TE extends TableExpression<DB, TT>, K1 extends JoinReferenceExpression<DB, TT, TE>, K2 extends JoinReferenceExpression<DB, TT, TE>>(sourceTable: TE, k1: K1, k2: K2): ExtractWheneableMergeQueryBuilder<DB, TT, TE, O>;
126
+ using<TE extends TableExpression<DB, TT>, FN extends JoinCallbackExpression<DB, TT, TE>>(sourceTable: TE, callback: FN): ExtractWheneableMergeQueryBuilder<DB, TT, TE, O>;
127
+ /**
128
+ * Allows you to return data from modified rows.
129
+ *
130
+ * On supported databases like PostgreSQL, this method can be chained to
131
+ * `insert`, `update`, `delete` and `merge` queries to return data.
132
+ *
133
+ * Note that on SQLite you need to give aliases for the expressions to avoid
134
+ * [this bug](https://sqlite.org/forum/forumpost/033daf0b32) in SQLite.
135
+ * For example `.returning('id as id')`.
136
+ *
137
+ * Also see the {@link returningAll} method.
138
+ *
139
+ * ### Examples
140
+ *
141
+ * Return one column:
142
+ *
143
+ * ```ts
144
+ * const { id } = await db
145
+ * .insertInto('person')
146
+ * .values({
147
+ * first_name: 'Jennifer',
148
+ * last_name: 'Aniston'
149
+ * })
150
+ * .returning('id')
151
+ * .executeTakeFirstOrThrow()
152
+ * ```
153
+ *
154
+ * Return multiple columns:
155
+ *
156
+ * ```ts
157
+ * const { id, last_name } = await db
158
+ * .insertInto('person')
159
+ * .values({
160
+ * first_name: 'Jennifer',
161
+ * last_name: 'Aniston'
162
+ * })
163
+ * .returning(['id', 'last_name'])
164
+ * .executeTakeFirstOrThrow()
165
+ * ```
166
+ *
167
+ * Return arbitrary expressions:
168
+ *
169
+ * ```ts
170
+ * import { sql } from 'kysely'
171
+ *
172
+ * const { id, full_name, first_pet_id } = await db
173
+ * .insertInto('person')
174
+ * .values({
175
+ * first_name: 'Jennifer',
176
+ * last_name: 'Aniston'
177
+ * })
178
+ * .returning((eb) => [
179
+ * 'id as id',
180
+ * sql<string>`concat(first_name, ' ', last_name)`.as('full_name'),
181
+ * eb.selectFrom('pet').select('pet.id').limit(1).as('first_pet_id')
182
+ * ])
183
+ * .executeTakeFirstOrThrow()
184
+ * ```
185
+ */
186
+ returning<SE extends SelectExpression<DB, TT>>(selections: ReadonlyArray<SE>): MergeQueryBuilder<DB, TT, ReturningRow<DB, TT, O, SE>>;
187
+ returning<CB extends SelectCallback<DB, TT>>(callback: CB): MergeQueryBuilder<DB, TT, ReturningCallbackRow<DB, TT, O, CB>>;
188
+ returning<SE extends SelectExpression<DB, TT>>(selection: SE): MergeQueryBuilder<DB, TT, ReturningRow<DB, TT, O, SE>>;
189
+ /**
190
+ * Adds a `returning *` or `returning table.*` to an insert/update/delete/merge
191
+ * query on databases that support `returning` such as PostgreSQL.
192
+ *
193
+ * Also see the {@link returning} method.
194
+ */
195
+ returningAll<T extends TT>(table: T): MergeQueryBuilder<DB, TT, ReturningAllRow<DB, T, O>>;
196
+ returningAll(): MergeQueryBuilder<DB, TT, ReturningAllRow<DB, TT, O>>;
197
+ /**
198
+ * Allows you to return data from modified rows.
199
+ *
200
+ * On supported databases like MS SQL Server (MSSQL), this method can be chained
201
+ * to `insert`, `update`, `delete` and `merge` queries to return data.
202
+ *
203
+ * Also see the {@link outputAll} method.
204
+ *
205
+ * ### Examples
206
+ *
207
+ * Return one column:
208
+ *
209
+ * ```ts
210
+ * const { id } = await db
211
+ * .insertInto('person')
212
+ * .output('inserted.id')
213
+ * .values({
214
+ * first_name: 'Jennifer',
215
+ * last_name: 'Aniston',
216
+ * gender: 'female',
217
+ * })
218
+ * .executeTakeFirstOrThrow()
219
+ * ```
220
+ *
221
+ * The generated SQL (MSSQL):
222
+ *
223
+ * ```sql
224
+ * insert into "person" ("first_name", "last_name", "gender")
225
+ * output "inserted"."id"
226
+ * values (@1, @2, @3)
227
+ * ```
228
+ *
229
+ * Return multiple columns:
230
+ *
231
+ * ```ts
232
+ * const { old_first_name, old_last_name, new_first_name, new_last_name } = await db
233
+ * .updateTable('person')
234
+ * .set({ first_name: 'John', last_name: 'Doe' })
235
+ * .output([
236
+ * 'deleted.first_name as old_first_name',
237
+ * 'deleted.last_name as old_last_name',
238
+ * 'inserted.first_name as new_first_name',
239
+ * 'inserted.last_name as new_last_name',
240
+ * ])
241
+ * .where('created_at', '<', new Date())
242
+ * .executeTakeFirstOrThrow()
243
+ * ```
244
+ *
245
+ * The generated SQL (MSSQL):
246
+ *
247
+ * ```sql
248
+ * update "person"
249
+ * set "first_name" = @1, "last_name" = @2
250
+ * output "deleted"."first_name" as "old_first_name",
251
+ * "deleted"."last_name" as "old_last_name",
252
+ * "inserted"."first_name" as "new_first_name",
253
+ * "inserted"."last_name" as "new_last_name"
254
+ * where "created_at" < @3
255
+ * ```
256
+ *
257
+ * Return arbitrary expressions:
258
+ *
259
+ * ```ts
260
+ * import { sql } from 'kysely'
261
+ *
262
+ * const { full_name } = await db
263
+ * .deleteFrom('person')
264
+ * .output((eb) => sql<string>`concat(${eb.ref('deleted.first_name')}, ' ', ${eb.ref('deleted.last_name')})`.as('full_name'))
265
+ * .where('created_at', '<', new Date())
266
+ * .executeTakeFirstOrThrow()
267
+ * ```
268
+ *
269
+ * The generated SQL (MSSQL):
270
+ *
271
+ * ```sql
272
+ * delete from "person"
273
+ * output concat("deleted"."first_name", ' ', "deleted"."last_name") as "full_name"
274
+ * where "created_at" < @1
275
+ * ```
276
+ *
277
+ * Return the action performed on the row:
278
+ *
279
+ * ```ts
280
+ * await db
281
+ * .mergeInto('person')
282
+ * .using('pet', 'pet.owner_id', 'person.id')
283
+ * .whenMatched()
284
+ * .thenDelete()
285
+ * .whenNotMatched()
286
+ * .thenInsertValues({
287
+ * first_name: 'John',
288
+ * last_name: 'Doe',
289
+ * gender: 'male'
290
+ * })
291
+ * .output([
292
+ * 'inserted.id as inserted_id',
293
+ * 'deleted.id as deleted_id',
294
+ * ])
295
+ * .execute()
296
+ * ```
297
+ *
298
+ * The generated SQL (MSSQL):
299
+ *
300
+ * ```sql
301
+ * merge into "person"
302
+ * using "pet" on "pet"."owner_id" = "person"."id"
303
+ * when matched then delete
304
+ * when not matched then
305
+ * insert ("first_name", "last_name", "gender")
306
+ * values (@1, @2, @3)
307
+ * output "inserted"."id" as "inserted_id", "deleted"."id" as "deleted_id"
308
+ * ```
309
+ *
310
+ */
311
+ output<OE extends OutputExpression<DB, TT>>(selections: readonly OE[]): MergeQueryBuilder<DB, TT, ReturningRow<DB, TT, O, SelectExpressionFromOutputExpression<OE>>>;
312
+ output<CB extends OutputCallback<DB, TT>>(callback: CB): MergeQueryBuilder<DB, TT, ReturningRow<DB, TT, O, SelectExpressionFromOutputCallback<CB>>>;
313
+ output<OE extends OutputExpression<DB, TT>>(selection: OE): MergeQueryBuilder<DB, TT, ReturningRow<DB, TT, O, SelectExpressionFromOutputExpression<OE>>>;
314
+ /**
315
+ * Adds an `output {prefix}.*` to an `insert`/`update`/`delete`/`merge` query on databases
316
+ * that support `output` such as MS SQL Server (MSSQL).
317
+ *
318
+ * Also see the {@link output} method.
319
+ */
320
+ outputAll(table: OutputPrefix): MergeQueryBuilder<DB, TT, ReturningAllRow<DB, TT, O>>;
321
+ }
322
+ export interface MergeQueryBuilderProps {
323
+ readonly queryId: QueryId;
324
+ readonly queryNode: MergeQueryNode;
325
+ readonly executor: QueryExecutor;
326
+ }
327
+ export declare class WheneableMergeQueryBuilder<DB, TT extends keyof DB, ST extends keyof DB, O> implements Compilable<O>, MultiTableReturningInterface<DB, TT | ST, O>, OutputInterface<DB, TT, O>, OperationNodeSource {
328
+ #private;
329
+ constructor(props: MergeQueryBuilderProps);
330
+ /**
331
+ * This can be used to add any additional SQL to the end of the query.
332
+ *
333
+ * ### Examples
334
+ *
335
+ * ```ts
336
+ * import { sql } from 'kysely'
337
+ *
338
+ * await db
339
+ * .mergeInto('person')
340
+ * .using('pet', 'pet.owner_id', 'person.id')
341
+ * .whenMatched()
342
+ * .thenDelete()
343
+ * .modifyEnd(sql.raw('-- this is a comment'))
344
+ * .execute()
345
+ * ```
346
+ *
347
+ * The generated SQL (PostgreSQL):
348
+ *
349
+ * ```sql
350
+ * merge into "person" using "pet" on "pet"."owner_id" = "person"."id" when matched then delete -- this is a comment
351
+ * ```
352
+ */
353
+ modifyEnd(modifier: Expression<any>): WheneableMergeQueryBuilder<DB, TT, ST, O>;
354
+ /**
355
+ * See {@link MergeQueryBuilder.top}.
356
+ */
357
+ top(expression: number | bigint, modifiers?: 'percent'): WheneableMergeQueryBuilder<DB, TT, ST, O>;
358
+ /**
359
+ * Adds a simple `when matched` clause to the query.
360
+ *
361
+ * For a `when matched` clause with an `and` condition, see {@link whenMatchedAnd}.
362
+ *
363
+ * For a simple `when not matched` clause, see {@link whenNotMatched}.
364
+ *
365
+ * For a `when not matched` clause with an `and` condition, see {@link whenNotMatchedAnd}.
366
+ *
367
+ * ### Examples
368
+ *
369
+ * ```ts
370
+ * const result = await db.mergeInto('person')
371
+ * .using('pet', 'person.id', 'pet.owner_id')
372
+ * .whenMatched()
373
+ * .thenDelete()
374
+ * .execute()
375
+ * ```
376
+ *
377
+ * The generated SQL (PostgreSQL):
378
+ *
379
+ * ```sql
380
+ * merge into "person"
381
+ * using "pet" on "person"."id" = "pet"."owner_id"
382
+ * when matched then
383
+ * delete
384
+ * ```
385
+ */
386
+ whenMatched(): MatchedThenableMergeQueryBuilder<DB, TT, ST, TT | ST, O>;
387
+ /**
388
+ * Adds the `when matched` clause to the query with an `and` condition.
389
+ *
390
+ * This method is similar to {@link SelectQueryBuilder.where}, so see the documentation
391
+ * for that method for more examples.
392
+ *
393
+ * For a simple `when matched` clause (without an `and` condition) see {@link whenMatched}.
394
+ *
395
+ * ### Examples
396
+ *
397
+ * ```ts
398
+ * const result = await db.mergeInto('person')
399
+ * .using('pet', 'person.id', 'pet.owner_id')
400
+ * .whenMatchedAnd('person.first_name', '=', 'John')
401
+ * .thenDelete()
402
+ * .execute()
403
+ * ```
404
+ *
405
+ * The generated SQL (PostgreSQL):
406
+ *
407
+ * ```sql
408
+ * merge into "person"
409
+ * using "pet" on "person"."id" = "pet"."owner_id"
410
+ * when matched and "person"."first_name" = $1 then
411
+ * delete
412
+ * ```
413
+ */
414
+ whenMatchedAnd<RE extends ReferenceExpression<DB, TT | ST>, VE extends OperandValueExpressionOrList<DB, TT | ST, RE>>(lhs: RE, op: ComparisonOperatorExpression, rhs: VE): MatchedThenableMergeQueryBuilder<DB, TT, ST, TT | ST, O>;
415
+ whenMatchedAnd<E extends ExpressionOrFactory<DB, TT | ST, SqlBool>>(expression: E): MatchedThenableMergeQueryBuilder<DB, TT, ST, TT | ST, O>;
416
+ /**
417
+ * Adds the `when matched` clause to the query with an `and` condition. But unlike
418
+ * {@link whenMatchedAnd}, this method accepts a column reference as the 3rd argument.
419
+ *
420
+ * This method is similar to {@link SelectQueryBuilder.whereRef}, so see the documentation
421
+ * for that method for more examples.
422
+ */
423
+ whenMatchedAndRef<LRE extends ReferenceExpression<DB, TT | ST>, RRE extends ReferenceExpression<DB, TT | ST>>(lhs: LRE, op: ComparisonOperatorExpression, rhs: RRE): MatchedThenableMergeQueryBuilder<DB, TT, ST, TT | ST, O>;
424
+ /**
425
+ * Adds a simple `when not matched` clause to the query.
426
+ *
427
+ * For a `when not matched` clause with an `and` condition, see {@link whenNotMatchedAnd}.
428
+ *
429
+ * For a simple `when matched` clause, see {@link whenMatched}.
430
+ *
431
+ * For a `when matched` clause with an `and` condition, see {@link whenMatchedAnd}.
432
+ *
433
+ * ### Examples
434
+ *
435
+ * ```ts
436
+ * const result = await db.mergeInto('person')
437
+ * .using('pet', 'person.id', 'pet.owner_id')
438
+ * .whenNotMatched()
439
+ * .thenInsertValues({
440
+ * first_name: 'John',
441
+ * last_name: 'Doe',
442
+ * })
443
+ * .execute()
444
+ * ```
445
+ *
446
+ * The generated SQL (PostgreSQL):
447
+ *
448
+ * ```sql
449
+ * merge into "person"
450
+ * using "pet" on "person"."id" = "pet"."owner_id"
451
+ * when not matched then
452
+ * insert ("first_name", "last_name") values ($1, $2)
453
+ * ```
454
+ */
455
+ whenNotMatched(): NotMatchedThenableMergeQueryBuilder<DB, TT, ST, O>;
456
+ /**
457
+ * Adds the `when not matched` clause to the query with an `and` condition.
458
+ *
459
+ * This method is similar to {@link SelectQueryBuilder.where}, so see the documentation
460
+ * for that method for more examples.
461
+ *
462
+ * For a simple `when not matched` clause (without an `and` condition) see {@link whenNotMatched}.
463
+ *
464
+ * Unlike {@link whenMatchedAnd}, you cannot reference columns from the table merged into.
465
+ *
466
+ * ### Examples
467
+ *
468
+ * ```ts
469
+ * const result = await db.mergeInto('person')
470
+ * .using('pet', 'person.id', 'pet.owner_id')
471
+ * .whenNotMatchedAnd('pet.name', '=', 'Lucky')
472
+ * .thenInsertValues({
473
+ * first_name: 'John',
474
+ * last_name: 'Doe',
475
+ * })
476
+ * .execute()
477
+ * ```
478
+ *
479
+ * The generated SQL (PostgreSQL):
480
+ *
481
+ * ```sql
482
+ * merge into "person"
483
+ * using "pet" on "person"."id" = "pet"."owner_id"
484
+ * when not matched and "pet"."name" = $1 then
485
+ * insert ("first_name", "last_name") values ($2, $3)
486
+ * ```
487
+ */
488
+ whenNotMatchedAnd<RE extends ReferenceExpression<DB, ST>, VE extends OperandValueExpressionOrList<DB, ST, RE>>(lhs: RE, op: ComparisonOperatorExpression, rhs: VE): NotMatchedThenableMergeQueryBuilder<DB, TT, ST, O>;
489
+ whenNotMatchedAnd<E extends ExpressionOrFactory<DB, ST, SqlBool>>(expression: E): NotMatchedThenableMergeQueryBuilder<DB, TT, ST, O>;
490
+ /**
491
+ * Adds the `when not matched` clause to the query with an `and` condition. But unlike
492
+ * {@link whenNotMatchedAnd}, this method accepts a column reference as the 3rd argument.
493
+ *
494
+ * Unlike {@link whenMatchedAndRef}, you cannot reference columns from the target table.
495
+ *
496
+ * This method is similar to {@link SelectQueryBuilder.whereRef}, so see the documentation
497
+ * for that method for more examples.
498
+ */
499
+ whenNotMatchedAndRef<LRE extends ReferenceExpression<DB, ST>, RRE extends ReferenceExpression<DB, ST>>(lhs: LRE, op: ComparisonOperatorExpression, rhs: RRE): NotMatchedThenableMergeQueryBuilder<DB, TT, ST, O>;
500
+ /**
501
+ * Adds a simple `when not matched by source` clause to the query.
502
+ *
503
+ * Supported in MS SQL Server.
504
+ *
505
+ * Similar to {@link whenNotMatched}, but returns a {@link MatchedThenableMergeQueryBuilder}.
506
+ */
507
+ whenNotMatchedBySource(): MatchedThenableMergeQueryBuilder<DB, TT, ST, TT, O>;
508
+ /**
509
+ * Adds the `when not matched by source` clause to the query with an `and` condition.
510
+ *
511
+ * Supported in MS SQL Server.
512
+ *
513
+ * Similar to {@link whenNotMatchedAnd}, but returns a {@link MatchedThenableMergeQueryBuilder}.
514
+ */
515
+ whenNotMatchedBySourceAnd<RE extends ReferenceExpression<DB, TT>, VE extends OperandValueExpressionOrList<DB, TT, RE>>(lhs: RE, op: ComparisonOperatorExpression, rhs: VE): MatchedThenableMergeQueryBuilder<DB, TT, ST, TT, O>;
516
+ whenNotMatchedBySourceAnd<E extends ExpressionOrFactory<DB, TT, SqlBool>>(expression: E): MatchedThenableMergeQueryBuilder<DB, TT, ST, TT, O>;
517
+ /**
518
+ * Adds the `when not matched by source` clause to the query with an `and` condition.
519
+ *
520
+ * Similar to {@link whenNotMatchedAndRef}, but you can reference columns from
521
+ * the target table, and not from source table and returns a {@link MatchedThenableMergeQueryBuilder}.
522
+ */
523
+ whenNotMatchedBySourceAndRef<LRE extends ReferenceExpression<DB, TT>, RRE extends ReferenceExpression<DB, TT>>(lhs: LRE, op: ComparisonOperatorExpression, rhs: RRE): MatchedThenableMergeQueryBuilder<DB, TT, ST, TT, O>;
524
+ /**
525
+ * Allows you to return data from modified rows.
526
+ *
527
+ * On supported databases like PostgreSQL, this method can be chained to
528
+ * `insert`, `update`, `delete` and `merge` queries to return data.
529
+ *
530
+ * Note that on SQLite you need to give aliases for the expressions to avoid
531
+ * [this bug](https://sqlite.org/forum/forumpost/033daf0b32) in SQLite.
532
+ * For example `.returning('id as id')`.
533
+ *
534
+ * Also see the {@link returningAll} method.
535
+ *
536
+ * ### Examples
537
+ *
538
+ * Return one column:
539
+ *
540
+ * ```ts
541
+ * const { id } = await db
542
+ * .insertInto('person')
543
+ * .values({
544
+ * first_name: 'Jennifer',
545
+ * last_name: 'Aniston'
546
+ * })
547
+ * .returning('id')
548
+ * .executeTakeFirstOrThrow()
549
+ * ```
550
+ *
551
+ * Return multiple columns:
552
+ *
553
+ * ```ts
554
+ * const { id, last_name } = await db
555
+ * .insertInto('person')
556
+ * .values({
557
+ * first_name: 'Jennifer',
558
+ * last_name: 'Aniston'
559
+ * })
560
+ * .returning(['id', 'last_name'])
561
+ * .executeTakeFirstOrThrow()
562
+ * ```
563
+ *
564
+ * Return arbitrary expressions:
565
+ *
566
+ * ```ts
567
+ * import { sql } from 'kysely'
568
+ *
569
+ * const { id, full_name, first_pet_id } = await db
570
+ * .insertInto('person')
571
+ * .values({
572
+ * first_name: 'Jennifer',
573
+ * last_name: 'Aniston'
574
+ * })
575
+ * .returning((eb) => [
576
+ * 'id as id',
577
+ * sql<string>`concat(first_name, ' ', last_name)`.as('full_name'),
578
+ * eb.selectFrom('pet').select('pet.id').limit(1).as('first_pet_id')
579
+ * ])
580
+ * .executeTakeFirstOrThrow()
581
+ * ```
582
+ */
583
+ returning<SE extends SelectExpression<DB, TT | ST>>(selections: ReadonlyArray<SE>): WheneableMergeQueryBuilder<DB, TT, ST, ReturningRow<DB, TT | ST, O, SE>>;
584
+ returning<CB extends SelectCallback<DB, TT | ST>>(callback: CB): WheneableMergeQueryBuilder<DB, TT, ST, ReturningCallbackRow<DB, TT | ST, O, CB>>;
585
+ returning<SE extends SelectExpression<DB, TT | ST>>(selection: SE): WheneableMergeQueryBuilder<DB, TT, ST, ReturningRow<DB, TT | ST, O, SE>>;
586
+ /**
587
+ * Adds a `returning *` or `returning table.*` to an insert/update/delete/merge
588
+ * query on databases that support `returning` such as PostgreSQL.
589
+ *
590
+ * Also see the {@link returning} method.
591
+ */
592
+ returningAll<T extends TT | ST>(table: T): WheneableMergeQueryBuilder<DB, TT, ST, ReturningAllRow<DB, T, O>>;
593
+ returningAll(): WheneableMergeQueryBuilder<DB, TT, ST, ReturningAllRow<DB, TT | ST, O>>;
594
+ /**
595
+ * Allows you to return data from modified rows.
596
+ *
597
+ * On supported databases like MS SQL Server (MSSQL), this method can be chained
598
+ * to `insert`, `update`, `delete` and `merge` queries to return data.
599
+ *
600
+ * Also see the {@link outputAll} method.
601
+ *
602
+ * ### Examples
603
+ *
604
+ * Return one column:
605
+ *
606
+ * ```ts
607
+ * const { id } = await db
608
+ * .insertInto('person')
609
+ * .output('inserted.id')
610
+ * .values({
611
+ * first_name: 'Jennifer',
612
+ * last_name: 'Aniston',
613
+ * gender: 'female',
614
+ * })
615
+ * .executeTakeFirstOrThrow()
616
+ * ```
617
+ *
618
+ * The generated SQL (MSSQL):
619
+ *
620
+ * ```sql
621
+ * insert into "person" ("first_name", "last_name", "gender")
622
+ * output "inserted"."id"
623
+ * values (@1, @2, @3)
624
+ * ```
625
+ *
626
+ * Return multiple columns:
627
+ *
628
+ * ```ts
629
+ * const { old_first_name, old_last_name, new_first_name, new_last_name } = await db
630
+ * .updateTable('person')
631
+ * .set({ first_name: 'John', last_name: 'Doe' })
632
+ * .output([
633
+ * 'deleted.first_name as old_first_name',
634
+ * 'deleted.last_name as old_last_name',
635
+ * 'inserted.first_name as new_first_name',
636
+ * 'inserted.last_name as new_last_name',
637
+ * ])
638
+ * .where('created_at', '<', new Date())
639
+ * .executeTakeFirstOrThrow()
640
+ * ```
641
+ *
642
+ * The generated SQL (MSSQL):
643
+ *
644
+ * ```sql
645
+ * update "person"
646
+ * set "first_name" = @1, "last_name" = @2
647
+ * output "deleted"."first_name" as "old_first_name",
648
+ * "deleted"."last_name" as "old_last_name",
649
+ * "inserted"."first_name" as "new_first_name",
650
+ * "inserted"."last_name" as "new_last_name"
651
+ * where "created_at" < @3
652
+ * ```
653
+ *
654
+ * Return arbitrary expressions:
655
+ *
656
+ * ```ts
657
+ * import { sql } from 'kysely'
658
+ *
659
+ * const { full_name } = await db
660
+ * .deleteFrom('person')
661
+ * .output((eb) => sql<string>`concat(${eb.ref('deleted.first_name')}, ' ', ${eb.ref('deleted.last_name')})`.as('full_name'))
662
+ * .where('created_at', '<', new Date())
663
+ * .executeTakeFirstOrThrow()
664
+ * ```
665
+ *
666
+ * The generated SQL (MSSQL):
667
+ *
668
+ * ```sql
669
+ * delete from "person"
670
+ * output concat("deleted"."first_name", ' ', "deleted"."last_name") as "full_name"
671
+ * where "created_at" < @1
672
+ * ```
673
+ *
674
+ * Return the action performed on the row:
675
+ *
676
+ * ```ts
677
+ * await db
678
+ * .mergeInto('person')
679
+ * .using('pet', 'pet.owner_id', 'person.id')
680
+ * .whenMatched()
681
+ * .thenDelete()
682
+ * .whenNotMatched()
683
+ * .thenInsertValues({
684
+ * first_name: 'John',
685
+ * last_name: 'Doe',
686
+ * gender: 'male'
687
+ * })
688
+ * .output([
689
+ * 'inserted.id as inserted_id',
690
+ * 'deleted.id as deleted_id',
691
+ * ])
692
+ * .execute()
693
+ * ```
694
+ *
695
+ * The generated SQL (MSSQL):
696
+ *
697
+ * ```sql
698
+ * merge into "person"
699
+ * using "pet" on "pet"."owner_id" = "person"."id"
700
+ * when matched then delete
701
+ * when not matched then
702
+ * insert ("first_name", "last_name", "gender")
703
+ * values (@1, @2, @3)
704
+ * output "inserted"."id" as "inserted_id", "deleted"."id" as "deleted_id"
705
+ * ```
706
+ *
707
+ */
708
+ output<OE extends OutputExpression<DB, TT>>(selections: readonly OE[]): WheneableMergeQueryBuilder<DB, TT, ST, ReturningRow<DB, TT, O, SelectExpressionFromOutputExpression<OE>>>;
709
+ output<CB extends OutputCallback<DB, TT>>(callback: CB): WheneableMergeQueryBuilder<DB, TT, ST, ReturningRow<DB, TT, O, SelectExpressionFromOutputCallback<CB>>>;
710
+ output<OE extends OutputExpression<DB, TT>>(selection: OE): WheneableMergeQueryBuilder<DB, TT, ST, ReturningRow<DB, TT, O, SelectExpressionFromOutputExpression<OE>>>;
711
+ /**
712
+ * Adds an `output {prefix}.*` to an `insert`/`update`/`delete`/`merge` query on databases
713
+ * that support `output` such as MS SQL Server (MSSQL).
714
+ *
715
+ * Also see the {@link output} method.
716
+ */
717
+ outputAll(table: OutputPrefix): WheneableMergeQueryBuilder<DB, TT, ST, ReturningAllRow<DB, TT, O>>;
718
+ /**
719
+ * Simply calls the provided function passing `this` as the only argument. `$call` returns
720
+ * what the provided function returns.
721
+ *
722
+ * If you want to conditionally call a method on `this`, see
723
+ * the {@link $if} method.
724
+ *
725
+ * ### Examples
726
+ *
727
+ * The next example uses a helper function `log` to log a query:
728
+ *
729
+ * ```ts
730
+ * import type { Compilable } from 'kysely'
731
+ *
732
+ * function log<T extends Compilable>(qb: T): T {
733
+ * console.log(qb.compile())
734
+ * return qb
735
+ * }
736
+ *
737
+ * await db.updateTable('person')
738
+ * .set({ first_name: 'John' })
739
+ * .$call(log)
740
+ * .execute()
741
+ * ```
742
+ */
743
+ $call<T>(func: (qb: this) => T): T;
744
+ /**
745
+ * Call `func(this)` if `condition` is true.
746
+ *
747
+ * This method is especially handy with optional selects. Any `returning` or `returningAll`
748
+ * method calls add columns as optional fields to the output type when called inside
749
+ * the `func` callback. This is because we can't know if those selections were actually
750
+ * made before running the code.
751
+ *
752
+ * You can also call any other methods inside the callback.
753
+ *
754
+ * ### Examples
755
+ *
756
+ * ```ts
757
+ * import type { PersonUpdate } from 'type-editor' // imaginary module
758
+ *
759
+ * async function updatePerson(id: number, updates: PersonUpdate, returnLastName: boolean) {
760
+ * return await db
761
+ * .updateTable('person')
762
+ * .set(updates)
763
+ * .where('id', '=', id)
764
+ * .returning(['id', 'first_name'])
765
+ * .$if(returnLastName, (qb) => qb.returning('last_name'))
766
+ * .executeTakeFirstOrThrow()
767
+ * }
768
+ * ```
769
+ *
770
+ * Any selections added inside the `if` callback will be added as optional fields to the
771
+ * output type since we can't know if the selections were actually made before running
772
+ * the code. In the example above the return type of the `updatePerson` function is:
773
+ *
774
+ * ```ts
775
+ * Promise<{
776
+ * id: number
777
+ * first_name: string
778
+ * last_name?: string
779
+ * }>
780
+ * ```
781
+ */
782
+ $if<O2>(condition: boolean, func: (qb: this) => WheneableMergeQueryBuilder<any, any, any, O2>): O2 extends MergeResult ? WheneableMergeQueryBuilder<DB, TT, ST, MergeResult> : O2 extends O & infer E ? WheneableMergeQueryBuilder<DB, TT, ST, O & Partial<E>> : WheneableMergeQueryBuilder<DB, TT, ST, Partial<O2>>;
783
+ toOperationNode(): MergeQueryNode;
784
+ compile(): CompiledQuery<O>;
785
+ /**
786
+ * Executes the query and returns an array of rows.
787
+ *
788
+ * Also see the {@link executeTakeFirst} and {@link executeTakeFirstOrThrow} methods.
789
+ */
790
+ execute(): Promise<SimplifyResult<O>[]>;
791
+ /**
792
+ * Executes the query and returns the first result or undefined if
793
+ * the query returned no result.
794
+ */
795
+ executeTakeFirst(): Promise<SimplifySingleResult<O>>;
796
+ /**
797
+ * Executes the query and returns the first result or throws if
798
+ * the query returned no result.
799
+ *
800
+ * By default an instance of {@link NoResultError} is thrown, but you can
801
+ * provide a custom error class, or callback as the only argument to throw a different
802
+ * error.
803
+ */
804
+ executeTakeFirstOrThrow(errorConstructor?: NoResultErrorConstructor | ((node: QueryNode) => Error)): Promise<SimplifyResult<O>>;
805
+ }
806
+ export declare class MatchedThenableMergeQueryBuilder<DB, TT extends keyof DB, ST extends keyof DB, UT extends TT | ST, O> {
807
+ #private;
808
+ constructor(props: MergeQueryBuilderProps);
809
+ /**
810
+ * Performs the `delete` action.
811
+ *
812
+ * To perform the `do nothing` action, see {@link thenDoNothing}.
813
+ *
814
+ * To perform the `update` action, see {@link thenUpdate} or {@link thenUpdateSet}.
815
+ *
816
+ * ### Examples
817
+ *
818
+ * ```ts
819
+ * const result = await db.mergeInto('person')
820
+ * .using('pet', 'person.id', 'pet.owner_id')
821
+ * .whenMatched()
822
+ * .thenDelete()
823
+ * .execute()
824
+ * ```
825
+ *
826
+ * The generated SQL (PostgreSQL):
827
+ *
828
+ * ```sql
829
+ * merge into "person"
830
+ * using "pet" on "person"."id" = "pet"."owner_id"
831
+ * when matched then
832
+ * delete
833
+ * ```
834
+ */
835
+ thenDelete(): WheneableMergeQueryBuilder<DB, TT, ST, O>;
836
+ /**
837
+ * Performs the `do nothing` action.
838
+ *
839
+ * This is supported in PostgreSQL.
840
+ *
841
+ * To perform the `delete` action, see {@link thenDelete}.
842
+ *
843
+ * To perform the `update` action, see {@link thenUpdate} or {@link thenUpdateSet}.
844
+ *
845
+ * ### Examples
846
+ *
847
+ * ```ts
848
+ * const result = await db.mergeInto('person')
849
+ * .using('pet', 'person.id', 'pet.owner_id')
850
+ * .whenMatched()
851
+ * .thenDoNothing()
852
+ * .execute()
853
+ * ```
854
+ *
855
+ * The generated SQL (PostgreSQL):
856
+ *
857
+ * ```sql
858
+ * merge into "person"
859
+ * using "pet" on "person"."id" = "pet"."owner_id"
860
+ * when matched then
861
+ * do nothing
862
+ * ```
863
+ */
864
+ thenDoNothing(): WheneableMergeQueryBuilder<DB, TT, ST, O>;
865
+ /**
866
+ * Perform an `update` operation with a full-fledged {@link UpdateQueryBuilder}.
867
+ * This is handy when multiple `set` invocations are needed.
868
+ *
869
+ * For a shorthand version of this method, see {@link thenUpdateSet}.
870
+ *
871
+ * To perform the `delete` action, see {@link thenDelete}.
872
+ *
873
+ * To perform the `do nothing` action, see {@link thenDoNothing}.
874
+ *
875
+ * ### Examples
876
+ *
877
+ * ```ts
878
+ * import { sql } from 'kysely'
879
+ *
880
+ * const result = await db.mergeInto('person')
881
+ * .using('pet', 'person.id', 'pet.owner_id')
882
+ * .whenMatched()
883
+ * .thenUpdate((ub) => ub
884
+ * .set(sql`metadata['has_pets']`, 'Y')
885
+ * .set({
886
+ * updated_at: new Date().toISOString(),
887
+ * })
888
+ * )
889
+ * .execute()
890
+ * ```
891
+ *
892
+ * The generated SQL (PostgreSQL):
893
+ *
894
+ * ```sql
895
+ * merge into "person"
896
+ * using "pet" on "person"."id" = "pet"."owner_id"
897
+ * when matched then
898
+ * update set metadata['has_pets'] = $1, "updated_at" = $2
899
+ * ```
900
+ */
901
+ thenUpdate<QB extends UpdateQueryBuilder<DB, TT, UT, never>>(set: (ub: QB) => QB): WheneableMergeQueryBuilder<DB, TT, ST, O>;
902
+ /**
903
+ * Performs an `update set` action, similar to {@link UpdateQueryBuilder.set}.
904
+ *
905
+ * For a full-fledged update query builder, see {@link thenUpdate}.
906
+ *
907
+ * To perform the `delete` action, see {@link thenDelete}.
908
+ *
909
+ * To perform the `do nothing` action, see {@link thenDoNothing}.
910
+ *
911
+ * ### Examples
912
+ *
913
+ * ```ts
914
+ * const result = await db.mergeInto('person')
915
+ * .using('pet', 'person.id', 'pet.owner_id')
916
+ * .whenMatched()
917
+ * .thenUpdateSet({
918
+ * middle_name: 'dog owner',
919
+ * })
920
+ * .execute()
921
+ * ```
922
+ *
923
+ * The generate SQL (PostgreSQL):
924
+ *
925
+ * ```sql
926
+ * merge into "person"
927
+ * using "pet" on "person"."id" = "pet"."owner_id"
928
+ * when matched then
929
+ * update set "middle_name" = $1
930
+ * ```
931
+ */
932
+ thenUpdateSet<UO extends UpdateObject<DB, UT, TT>>(update: UO): WheneableMergeQueryBuilder<DB, TT, ST, O>;
933
+ thenUpdateSet<U extends UpdateObjectFactory<DB, UT, TT>>(update: U): WheneableMergeQueryBuilder<DB, TT, ST, O>;
934
+ thenUpdateSet<RE extends ReferenceExpression<DB, TT>, VE extends ValueExpression<DB, UT, ExtractUpdateTypeFromReferenceExpression<DB, TT, RE>>>(key: RE, value: VE): WheneableMergeQueryBuilder<DB, TT, ST, O>;
935
+ }
936
+ export declare class NotMatchedThenableMergeQueryBuilder<DB, TT extends keyof DB, ST extends keyof DB, O> {
937
+ #private;
938
+ constructor(props: MergeQueryBuilderProps);
939
+ /**
940
+ * Performs the `do nothing` action.
941
+ *
942
+ * This is supported in PostgreSQL.
943
+ *
944
+ * To perform the `insert` action, see {@link thenInsertValues}.
945
+ *
946
+ * ### Examples
947
+ *
948
+ * ```ts
949
+ * const result = await db.mergeInto('person')
950
+ * .using('pet', 'person.id', 'pet.owner_id')
951
+ * .whenNotMatched()
952
+ * .thenDoNothing()
953
+ * .execute()
954
+ * ```
955
+ *
956
+ * The generated SQL (PostgreSQL):
957
+ *
958
+ * ```sql
959
+ * merge into "person"
960
+ * using "pet" on "person"."id" = "pet"."owner_id"
961
+ * when not matched then
962
+ * do nothing
963
+ * ```
964
+ */
965
+ thenDoNothing(): WheneableMergeQueryBuilder<DB, TT, ST, O>;
966
+ /**
967
+ * Performs the `insert (...) values` action.
968
+ *
969
+ * This method is similar to {@link InsertQueryBuilder.values}, so see the documentation
970
+ * for that method for more examples.
971
+ *
972
+ * To perform the `do nothing` action, see {@link thenDoNothing}.
973
+ *
974
+ * ### Examples
975
+ *
976
+ * ```ts
977
+ * const result = await db.mergeInto('person')
978
+ * .using('pet', 'person.id', 'pet.owner_id')
979
+ * .whenNotMatched()
980
+ * .thenInsertValues({
981
+ * first_name: 'John',
982
+ * last_name: 'Doe',
983
+ * })
984
+ * .execute()
985
+ * ```
986
+ *
987
+ * The generated SQL (PostgreSQL):
988
+ *
989
+ * ```sql
990
+ * merge into "person"
991
+ * using "pet" on "person"."id" = "pet"."owner_id"
992
+ * when not matched then
993
+ * insert ("first_name", "last_name") values ($1, $2)
994
+ * ```
995
+ */
996
+ thenInsertValues<I extends InsertObjectOrList<DB, TT>>(insert: I): WheneableMergeQueryBuilder<DB, TT, ST, O>;
997
+ thenInsertValues<IO extends InsertObjectOrListFactory<DB, TT, ST>>(insert: IO): WheneableMergeQueryBuilder<DB, TT, ST, O>;
998
+ }
999
+ export type ExtractWheneableMergeQueryBuilder<DB, TT extends keyof DB, TE extends TableExpression<DB, TT>, O> = TE extends `${infer T} as ${infer A}` ? T extends keyof DB ? UsingBuilder<DB, TT, A, DB[T], O> : never : TE extends keyof DB ? WheneableMergeQueryBuilder<DB, TT, TE, O> : TE extends AliasedExpression<infer QO, infer QA> ? UsingBuilder<DB, TT, QA, QO, O> : TE extends (qb: any) => AliasedExpression<infer QO, infer QA> ? UsingBuilder<DB, TT, QA, QO, O> : never;
1000
+ type UsingBuilder<DB, TT extends keyof DB, A extends string, R, O> = A extends keyof DB ? WheneableMergeQueryBuilder<DB, TT, A, O> : WheneableMergeQueryBuilder<DB & ShallowRecord<A, R>, TT, A, O>;
1001
+ export {};