kysely 0.25.0 → 0.26.1

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 (315) hide show
  1. package/README.md +10 -563
  2. package/dist/cjs/dialect/database-introspector.d.ts +1 -1
  3. package/dist/cjs/dialect/mysql/mysql-dialect-config.d.ts +2 -2
  4. package/dist/cjs/dialect/mysql/mysql-driver.js +5 -1
  5. package/dist/cjs/dialect/postgres/postgres-dialect-config.d.ts +1 -1
  6. package/dist/cjs/dialect/postgres/postgres-introspector.js +1 -4
  7. package/dist/cjs/dialect/sqlite/sqlite-introspector.js +1 -1
  8. package/dist/cjs/driver/database-connection.d.ts +6 -0
  9. package/dist/cjs/driver/driver.d.ts +1 -1
  10. package/dist/cjs/expression/expression-builder.d.ts +207 -108
  11. package/dist/cjs/expression/expression-builder.js +28 -7
  12. package/dist/cjs/expression/expression-wrapper.d.ts +296 -5
  13. package/dist/cjs/expression/expression-wrapper.js +70 -2
  14. package/dist/cjs/helpers/postgres.d.ts +30 -18
  15. package/dist/cjs/helpers/postgres.js +30 -18
  16. package/dist/cjs/index.d.ts +6 -0
  17. package/dist/cjs/index.js +6 -0
  18. package/dist/cjs/kysely.d.ts +23 -13
  19. package/dist/cjs/kysely.js +13 -9
  20. package/dist/cjs/migration/file-migration-provider.js +2 -2
  21. package/dist/cjs/operation-node/alter-column-node.d.ts +2 -3
  22. package/dist/cjs/operation-node/alter-column-node.js +2 -7
  23. package/dist/cjs/operation-node/alter-table-node.d.ts +2 -2
  24. package/dist/cjs/operation-node/column-definition-node.d.ts +1 -1
  25. package/dist/cjs/operation-node/constraint-node.d.ts +1 -1
  26. package/dist/cjs/operation-node/create-index-node.d.ts +2 -2
  27. package/dist/cjs/operation-node/create-schema-node.d.ts +1 -1
  28. package/dist/cjs/operation-node/create-table-node.d.ts +2 -2
  29. package/dist/cjs/operation-node/create-type-node.d.ts +1 -1
  30. package/dist/cjs/operation-node/create-view-node.d.ts +1 -1
  31. package/dist/cjs/operation-node/data-type-node.d.ts +2 -2
  32. package/dist/cjs/operation-node/drop-constraint-node.d.ts +1 -1
  33. package/dist/cjs/operation-node/drop-index-node.d.ts +1 -1
  34. package/dist/cjs/operation-node/drop-schema-node.d.ts +1 -1
  35. package/dist/cjs/operation-node/drop-table-node.d.ts +1 -1
  36. package/dist/cjs/operation-node/drop-type-node.d.ts +1 -1
  37. package/dist/cjs/operation-node/drop-view-node.d.ts +1 -1
  38. package/dist/cjs/operation-node/foreign-key-constraint-node.d.ts +1 -1
  39. package/dist/cjs/operation-node/generated-node.d.ts +1 -1
  40. package/dist/cjs/operation-node/insert-query-node.d.ts +1 -1
  41. package/dist/cjs/operation-node/join-node.d.ts +1 -2
  42. package/dist/cjs/operation-node/join-node.js +0 -8
  43. package/dist/cjs/operation-node/json-operator-chain-node.d.ts +16 -0
  44. package/dist/cjs/operation-node/json-operator-chain-node.js +25 -0
  45. package/dist/cjs/operation-node/json-path-leg-node.d.ts +14 -0
  46. package/dist/cjs/operation-node/json-path-leg-node.js +19 -0
  47. package/dist/cjs/operation-node/json-path-node.d.ts +16 -0
  48. package/dist/cjs/operation-node/json-path-node.js +25 -0
  49. package/dist/cjs/operation-node/json-reference-node.d.ts +17 -0
  50. package/dist/cjs/operation-node/json-reference-node.js +25 -0
  51. package/dist/cjs/operation-node/on-conflict-node.d.ts +1 -1
  52. package/dist/cjs/operation-node/on-duplicate-key-node.d.ts +1 -1
  53. package/dist/cjs/operation-node/operation-node-transformer.d.ts +8 -0
  54. package/dist/cjs/operation-node/operation-node-transformer.js +33 -1
  55. package/dist/cjs/operation-node/operation-node-visitor.d.ts +8 -0
  56. package/dist/cjs/operation-node/operation-node-visitor.js +4 -0
  57. package/dist/cjs/operation-node/operation-node.d.ts +1 -1
  58. package/dist/cjs/operation-node/operator-node.d.ts +13 -9
  59. package/dist/cjs/operation-node/operator-node.js +12 -2
  60. package/dist/cjs/operation-node/query-node.d.ts +9 -10
  61. package/dist/cjs/operation-node/query-node.js +0 -8
  62. package/dist/cjs/operation-node/reference-node.d.ts +2 -2
  63. package/dist/cjs/operation-node/reference-node.js +1 -1
  64. package/dist/cjs/operation-node/references-node.d.ts +1 -1
  65. package/dist/cjs/operation-node/select-modifier-node.d.ts +1 -1
  66. package/dist/cjs/operation-node/select-query-node.d.ts +0 -1
  67. package/dist/cjs/operation-node/select-query-node.js +0 -8
  68. package/dist/cjs/operation-node/selection-node.d.ts +1 -1
  69. package/dist/cjs/operation-node/set-operation-node.d.ts +1 -1
  70. package/dist/cjs/operation-node/simple-reference-expression-node.d.ts +1 -1
  71. package/dist/cjs/operation-node/update-query-node.d.ts +1 -1
  72. package/dist/cjs/operation-node/values-node.d.ts +1 -1
  73. package/dist/cjs/operation-node/with-node.d.ts +1 -1
  74. package/dist/cjs/parser/binary-operation-parser.d.ts +9 -12
  75. package/dist/cjs/parser/binary-operation-parser.js +40 -119
  76. package/dist/cjs/parser/coalesce-parser.d.ts +1 -1
  77. package/dist/cjs/parser/data-type-parser.d.ts +1 -1
  78. package/dist/cjs/parser/default-value-parser.d.ts +1 -1
  79. package/dist/cjs/parser/expression-parser.d.ts +5 -5
  80. package/dist/cjs/parser/group-by-parser.d.ts +2 -2
  81. package/dist/cjs/parser/insert-values-parser.d.ts +4 -4
  82. package/dist/cjs/parser/join-parser.d.ts +4 -4
  83. package/dist/cjs/parser/order-by-parser.d.ts +3 -3
  84. package/dist/cjs/parser/partition-by-parser.d.ts +2 -2
  85. package/dist/cjs/parser/reference-parser.d.ts +13 -9
  86. package/dist/cjs/parser/reference-parser.js +28 -16
  87. package/dist/cjs/parser/returning-parser.d.ts +2 -2
  88. package/dist/cjs/parser/select-parser.d.ts +10 -10
  89. package/dist/cjs/parser/table-parser.d.ts +12 -12
  90. package/dist/cjs/parser/unary-operation-parser.d.ts +1 -1
  91. package/dist/cjs/parser/update-set-parser.d.ts +3 -3
  92. package/dist/cjs/parser/update-set-parser.js +1 -3
  93. package/dist/cjs/parser/value-parser.d.ts +4 -4
  94. package/dist/cjs/parser/with-parser.d.ts +12 -8
  95. package/dist/cjs/plugin/camel-case/camel-case.d.ts +1 -1
  96. package/dist/cjs/plugin/parse-json-results/parse-json-results-plugin.d.ts +42 -0
  97. package/dist/cjs/plugin/parse-json-results/parse-json-results-plugin.js +32 -0
  98. package/dist/cjs/plugin/with-schema/with-schema-transformer.js +22 -6
  99. package/dist/cjs/query-builder/aggregate-function-builder.d.ts +5 -38
  100. package/dist/cjs/query-builder/aggregate-function-builder.js +4 -59
  101. package/dist/cjs/query-builder/case-builder.d.ts +11 -11
  102. package/dist/cjs/query-builder/case-builder.js +2 -2
  103. package/dist/cjs/query-builder/delete-query-builder.d.ts +110 -62
  104. package/dist/cjs/query-builder/delete-query-builder.js +1 -62
  105. package/dist/cjs/query-builder/delete-result.d.ts +1 -2
  106. package/dist/cjs/query-builder/delete-result.js +2 -8
  107. package/dist/cjs/query-builder/function-module.d.ts +44 -66
  108. package/dist/cjs/query-builder/having-interface.d.ts +2 -35
  109. package/dist/cjs/query-builder/insert-query-builder.d.ts +59 -48
  110. package/dist/cjs/query-builder/insert-query-builder.js +17 -34
  111. package/dist/cjs/query-builder/insert-result.d.ts +3 -4
  112. package/dist/cjs/query-builder/insert-result.js +5 -14
  113. package/dist/cjs/query-builder/join-builder.d.ts +2 -35
  114. package/dist/cjs/query-builder/join-builder.js +1 -56
  115. package/dist/cjs/query-builder/json-path-builder.d.ts +212 -0
  116. package/dist/cjs/query-builder/json-path-builder.js +191 -0
  117. package/dist/cjs/query-builder/no-result-error.d.ts +1 -1
  118. package/dist/cjs/query-builder/on-conflict-builder.d.ts +194 -77
  119. package/dist/cjs/query-builder/on-conflict-builder.js +2 -111
  120. package/dist/cjs/query-builder/over-builder.d.ts +2 -2
  121. package/dist/cjs/query-builder/over-builder.js +1 -1
  122. package/dist/cjs/query-builder/returning-interface.d.ts +1 -1
  123. package/dist/cjs/query-builder/select-query-builder.d.ts +169 -141
  124. package/dist/cjs/query-builder/select-query-builder.js +27 -136
  125. package/dist/cjs/query-builder/update-query-builder.d.ts +147 -66
  126. package/dist/cjs/query-builder/update-query-builder.js +3 -63
  127. package/dist/cjs/query-builder/update-result.d.ts +3 -3
  128. package/dist/cjs/query-builder/update-result.js +5 -9
  129. package/dist/cjs/query-builder/where-interface.d.ts +98 -40
  130. package/dist/cjs/query-compiler/compiled-query.d.ts +1 -1
  131. package/dist/cjs/query-compiler/compiled-query.js +2 -2
  132. package/dist/cjs/query-compiler/default-query-compiler.d.ts +8 -0
  133. package/dist/cjs/query-compiler/default-query-compiler.js +37 -2
  134. package/dist/cjs/query-compiler/query-compiler.d.ts +1 -1
  135. package/dist/cjs/query-creator.d.ts +4 -2
  136. package/dist/cjs/schema/alter-column-builder.d.ts +11 -5
  137. package/dist/cjs/schema/alter-column-builder.js +19 -21
  138. package/dist/cjs/schema/alter-table-builder.d.ts +0 -4
  139. package/dist/cjs/schema/alter-table-builder.js +2 -9
  140. package/dist/cjs/schema/column-definition-builder.d.ts +1 -1
  141. package/dist/cjs/schema/column-definition-builder.js +1 -2
  142. package/dist/cjs/schema/create-index-builder.js +1 -1
  143. package/dist/cjs/schema/create-table-builder.d.ts +2 -6
  144. package/dist/cjs/schema/create-table-builder.js +0 -6
  145. package/dist/cjs/schema/schema.d.ts +1 -2
  146. package/dist/cjs/schema/schema.js +1 -2
  147. package/dist/cjs/util/column-type.d.ts +22 -18
  148. package/dist/cjs/util/explainable.d.ts +1 -1
  149. package/dist/cjs/util/infer-result.d.ts +2 -2
  150. package/dist/cjs/util/log.d.ts +4 -4
  151. package/dist/cjs/util/require-all-props.d.ts +1 -1
  152. package/dist/cjs/util/type-utils.d.ts +19 -19
  153. package/dist/esm/dialect/database-introspector.d.ts +1 -1
  154. package/dist/esm/dialect/mysql/mysql-dialect-config.d.ts +2 -2
  155. package/dist/esm/dialect/mysql/mysql-driver.js +5 -1
  156. package/dist/esm/dialect/postgres/postgres-dialect-config.d.ts +1 -1
  157. package/dist/esm/dialect/postgres/postgres-introspector.js +1 -4
  158. package/dist/esm/dialect/sqlite/sqlite-introspector.js +1 -1
  159. package/dist/esm/driver/database-connection.d.ts +6 -0
  160. package/dist/esm/driver/driver.d.ts +1 -1
  161. package/dist/esm/expression/expression-builder.d.ts +207 -108
  162. package/dist/esm/expression/expression-builder.js +30 -9
  163. package/dist/esm/expression/expression-wrapper.d.ts +296 -5
  164. package/dist/esm/expression/expression-wrapper.js +67 -1
  165. package/dist/esm/helpers/postgres.d.ts +30 -18
  166. package/dist/esm/helpers/postgres.js +30 -18
  167. package/dist/esm/index.d.ts +6 -0
  168. package/dist/esm/index.js +6 -0
  169. package/dist/esm/kysely.d.ts +23 -13
  170. package/dist/esm/kysely.js +13 -9
  171. package/dist/esm/operation-node/alter-column-node.d.ts +2 -3
  172. package/dist/esm/operation-node/alter-column-node.js +2 -7
  173. package/dist/esm/operation-node/alter-table-node.d.ts +2 -2
  174. package/dist/esm/operation-node/column-definition-node.d.ts +1 -1
  175. package/dist/esm/operation-node/constraint-node.d.ts +1 -1
  176. package/dist/esm/operation-node/create-index-node.d.ts +2 -2
  177. package/dist/esm/operation-node/create-schema-node.d.ts +1 -1
  178. package/dist/esm/operation-node/create-table-node.d.ts +2 -2
  179. package/dist/esm/operation-node/create-type-node.d.ts +1 -1
  180. package/dist/esm/operation-node/create-view-node.d.ts +1 -1
  181. package/dist/esm/operation-node/data-type-node.d.ts +2 -2
  182. package/dist/esm/operation-node/drop-constraint-node.d.ts +1 -1
  183. package/dist/esm/operation-node/drop-index-node.d.ts +1 -1
  184. package/dist/esm/operation-node/drop-schema-node.d.ts +1 -1
  185. package/dist/esm/operation-node/drop-table-node.d.ts +1 -1
  186. package/dist/esm/operation-node/drop-type-node.d.ts +1 -1
  187. package/dist/esm/operation-node/drop-view-node.d.ts +1 -1
  188. package/dist/esm/operation-node/foreign-key-constraint-node.d.ts +1 -1
  189. package/dist/esm/operation-node/generated-node.d.ts +1 -1
  190. package/dist/esm/operation-node/insert-query-node.d.ts +1 -1
  191. package/dist/esm/operation-node/join-node.d.ts +1 -2
  192. package/dist/esm/operation-node/join-node.js +0 -8
  193. package/dist/esm/operation-node/json-operator-chain-node.d.ts +16 -0
  194. package/dist/esm/operation-node/json-operator-chain-node.js +23 -0
  195. package/dist/esm/operation-node/json-path-leg-node.d.ts +14 -0
  196. package/dist/esm/operation-node/json-path-leg-node.js +17 -0
  197. package/dist/esm/operation-node/json-path-node.d.ts +16 -0
  198. package/dist/esm/operation-node/json-path-node.js +23 -0
  199. package/dist/esm/operation-node/json-reference-node.d.ts +17 -0
  200. package/dist/esm/operation-node/json-reference-node.js +23 -0
  201. package/dist/esm/operation-node/on-conflict-node.d.ts +1 -1
  202. package/dist/esm/operation-node/on-duplicate-key-node.d.ts +1 -1
  203. package/dist/esm/operation-node/operation-node-transformer.d.ts +8 -0
  204. package/dist/esm/operation-node/operation-node-transformer.js +33 -1
  205. package/dist/esm/operation-node/operation-node-visitor.d.ts +8 -0
  206. package/dist/esm/operation-node/operation-node-visitor.js +4 -0
  207. package/dist/esm/operation-node/operation-node.d.ts +1 -1
  208. package/dist/esm/operation-node/operator-node.d.ts +13 -9
  209. package/dist/esm/operation-node/operator-node.js +10 -1
  210. package/dist/esm/operation-node/query-node.d.ts +9 -10
  211. package/dist/esm/operation-node/query-node.js +0 -8
  212. package/dist/esm/operation-node/reference-node.d.ts +2 -2
  213. package/dist/esm/operation-node/reference-node.js +1 -1
  214. package/dist/esm/operation-node/references-node.d.ts +1 -1
  215. package/dist/esm/operation-node/select-modifier-node.d.ts +1 -1
  216. package/dist/esm/operation-node/select-query-node.d.ts +0 -1
  217. package/dist/esm/operation-node/select-query-node.js +0 -8
  218. package/dist/esm/operation-node/selection-node.d.ts +1 -1
  219. package/dist/esm/operation-node/set-operation-node.d.ts +1 -1
  220. package/dist/esm/operation-node/simple-reference-expression-node.d.ts +1 -1
  221. package/dist/esm/operation-node/update-query-node.d.ts +1 -1
  222. package/dist/esm/operation-node/values-node.d.ts +1 -1
  223. package/dist/esm/operation-node/with-node.d.ts +1 -1
  224. package/dist/esm/parser/binary-operation-parser.d.ts +9 -12
  225. package/dist/esm/parser/binary-operation-parser.js +38 -114
  226. package/dist/esm/parser/coalesce-parser.d.ts +1 -1
  227. package/dist/esm/parser/data-type-parser.d.ts +1 -1
  228. package/dist/esm/parser/default-value-parser.d.ts +1 -1
  229. package/dist/esm/parser/expression-parser.d.ts +5 -5
  230. package/dist/esm/parser/group-by-parser.d.ts +2 -2
  231. package/dist/esm/parser/insert-values-parser.d.ts +4 -4
  232. package/dist/esm/parser/join-parser.d.ts +4 -4
  233. package/dist/esm/parser/order-by-parser.d.ts +3 -3
  234. package/dist/esm/parser/partition-by-parser.d.ts +2 -2
  235. package/dist/esm/parser/reference-parser.d.ts +13 -9
  236. package/dist/esm/parser/reference-parser.js +26 -15
  237. package/dist/esm/parser/returning-parser.d.ts +2 -2
  238. package/dist/esm/parser/select-parser.d.ts +10 -10
  239. package/dist/esm/parser/table-parser.d.ts +12 -12
  240. package/dist/esm/parser/unary-operation-parser.d.ts +1 -1
  241. package/dist/esm/parser/update-set-parser.d.ts +3 -3
  242. package/dist/esm/parser/update-set-parser.js +2 -4
  243. package/dist/esm/parser/value-parser.d.ts +4 -4
  244. package/dist/esm/parser/with-parser.d.ts +12 -8
  245. package/dist/esm/plugin/camel-case/camel-case.d.ts +1 -1
  246. package/dist/esm/plugin/parse-json-results/parse-json-results-plugin.d.ts +42 -0
  247. package/dist/esm/plugin/parse-json-results/parse-json-results-plugin.js +29 -0
  248. package/dist/esm/plugin/with-schema/with-schema-transformer.js +22 -6
  249. package/dist/esm/query-builder/aggregate-function-builder.d.ts +5 -38
  250. package/dist/esm/query-builder/aggregate-function-builder.js +5 -60
  251. package/dist/esm/query-builder/case-builder.d.ts +11 -11
  252. package/dist/esm/query-builder/case-builder.js +3 -3
  253. package/dist/esm/query-builder/delete-query-builder.d.ts +110 -62
  254. package/dist/esm/query-builder/delete-query-builder.js +2 -63
  255. package/dist/esm/query-builder/delete-result.d.ts +1 -2
  256. package/dist/esm/query-builder/delete-result.js +2 -8
  257. package/dist/esm/query-builder/function-module.d.ts +44 -66
  258. package/dist/esm/query-builder/having-interface.d.ts +2 -35
  259. package/dist/esm/query-builder/insert-query-builder.d.ts +59 -48
  260. package/dist/esm/query-builder/insert-query-builder.js +17 -34
  261. package/dist/esm/query-builder/insert-result.d.ts +3 -4
  262. package/dist/esm/query-builder/insert-result.js +5 -14
  263. package/dist/esm/query-builder/join-builder.d.ts +2 -35
  264. package/dist/esm/query-builder/join-builder.js +2 -57
  265. package/dist/esm/query-builder/json-path-builder.d.ts +212 -0
  266. package/dist/esm/query-builder/json-path-builder.js +186 -0
  267. package/dist/esm/query-builder/no-result-error.d.ts +1 -1
  268. package/dist/esm/query-builder/on-conflict-builder.d.ts +194 -77
  269. package/dist/esm/query-builder/on-conflict-builder.js +3 -112
  270. package/dist/esm/query-builder/over-builder.d.ts +2 -2
  271. package/dist/esm/query-builder/over-builder.js +1 -1
  272. package/dist/esm/query-builder/returning-interface.d.ts +1 -1
  273. package/dist/esm/query-builder/select-query-builder.d.ts +169 -141
  274. package/dist/esm/query-builder/select-query-builder.js +28 -137
  275. package/dist/esm/query-builder/update-query-builder.d.ts +147 -66
  276. package/dist/esm/query-builder/update-query-builder.js +4 -64
  277. package/dist/esm/query-builder/update-result.d.ts +3 -3
  278. package/dist/esm/query-builder/update-result.js +5 -9
  279. package/dist/esm/query-builder/where-interface.d.ts +98 -40
  280. package/dist/esm/query-compiler/compiled-query.d.ts +1 -1
  281. package/dist/esm/query-compiler/compiled-query.js +2 -2
  282. package/dist/esm/query-compiler/default-query-compiler.d.ts +8 -0
  283. package/dist/esm/query-compiler/default-query-compiler.js +37 -2
  284. package/dist/esm/query-compiler/query-compiler.d.ts +1 -1
  285. package/dist/esm/query-creator.d.ts +4 -2
  286. package/dist/esm/schema/alter-column-builder.d.ts +11 -5
  287. package/dist/esm/schema/alter-column-builder.js +19 -21
  288. package/dist/esm/schema/alter-table-builder.d.ts +0 -4
  289. package/dist/esm/schema/alter-table-builder.js +2 -9
  290. package/dist/esm/schema/column-definition-builder.d.ts +1 -1
  291. package/dist/esm/schema/column-definition-builder.js +1 -2
  292. package/dist/esm/schema/create-index-builder.js +2 -2
  293. package/dist/esm/schema/create-table-builder.d.ts +2 -6
  294. package/dist/esm/schema/create-table-builder.js +0 -6
  295. package/dist/esm/schema/schema.d.ts +1 -2
  296. package/dist/esm/schema/schema.js +1 -2
  297. package/dist/esm/util/column-type.d.ts +22 -18
  298. package/dist/esm/util/explainable.d.ts +1 -1
  299. package/dist/esm/util/infer-result.d.ts +2 -2
  300. package/dist/esm/util/log.d.ts +4 -4
  301. package/dist/esm/util/require-all-props.d.ts +1 -1
  302. package/dist/esm/util/type-utils.d.ts +19 -19
  303. package/package.json +25 -23
  304. package/dist/cjs/query-builder/deprecated-having-expression-builder.d.ts +0 -62
  305. package/dist/cjs/query-builder/deprecated-having-expression-builder.js +0 -2
  306. package/dist/cjs/query-builder/deprecated-on-expression-builder.d.ts +0 -62
  307. package/dist/cjs/query-builder/deprecated-on-expression-builder.js +0 -2
  308. package/dist/cjs/query-builder/deprecated-where-expression-builder.d.ts +0 -62
  309. package/dist/cjs/query-builder/deprecated-where-expression-builder.js +0 -2
  310. package/dist/esm/query-builder/deprecated-having-expression-builder.d.ts +0 -62
  311. package/dist/esm/query-builder/deprecated-having-expression-builder.js +0 -2
  312. package/dist/esm/query-builder/deprecated-on-expression-builder.d.ts +0 -62
  313. package/dist/esm/query-builder/deprecated-on-expression-builder.js +0 -2
  314. package/dist/esm/query-builder/deprecated-where-expression-builder.d.ts +0 -62
  315. package/dist/esm/query-builder/deprecated-where-expression-builder.js +0 -2
@@ -4,7 +4,6 @@ import { OverBuilder } from './over-builder.js';
4
4
  import { AliasedExpression, Expression } from '../expression/expression.js';
5
5
  import { ReferenceExpression } from '../parser/reference-parser.js';
6
6
  import { ComparisonOperatorExpression, OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
7
- import { ExistsExpression } from '../parser/unary-operation-parser.js';
8
7
  import { WhereExpressionFactory } from './where-interface.js';
9
8
  export declare class AggregateFunctionBuilder<DB, TB extends keyof DB, O = unknown> implements Expression<O> {
10
9
  #private;
@@ -37,7 +36,7 @@ export declare class AggregateFunctionBuilder<DB, TB extends keyof DB, O = unkno
37
36
  * const result = await db
38
37
  * .selectFrom('person')
39
38
  * .select(
40
- * eb => eb.fn.count<number>('id').as('person_count')
39
+ * (eb) => eb.fn.count<number>('id').as('person_count')
41
40
  * )
42
41
  * .executeTakeFirstOrThrow()
43
42
  *
@@ -80,7 +79,7 @@ export declare class AggregateFunctionBuilder<DB, TB extends keyof DB, O = unkno
80
79
  *
81
80
  * Similar to {@link WhereInterface}'s `where` method.
82
81
  *
83
- * Also see {@link orFilterWhere}, {@link filterWhereExists} and {@link filterWhereRef}.
82
+ * Also see {@link filterWhereRef}.
84
83
  *
85
84
  * ### Examples
86
85
  *
@@ -119,14 +118,6 @@ export declare class AggregateFunctionBuilder<DB, TB extends keyof DB, O = unkno
119
118
  filterWhere<RE extends ReferenceExpression<DB, TB>>(lhs: RE, op: ComparisonOperatorExpression, rhs: OperandValueExpressionOrList<DB, TB, RE>): AggregateFunctionBuilder<DB, TB, O>;
120
119
  filterWhere(factory: WhereExpressionFactory<DB, TB>): AggregateFunctionBuilder<DB, TB, O>;
121
120
  filterWhere(expression: Expression<any>): AggregateFunctionBuilder<DB, TB, O>;
122
- /**
123
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
124
- */
125
- filterWhereExists(arg: ExistsExpression<DB, TB>): AggregateFunctionBuilder<DB, TB, O>;
126
- /**
127
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
128
- */
129
- filterWhereNotExists(arg: ExistsExpression<DB, TB>): AggregateFunctionBuilder<DB, TB, O>;
130
121
  /**
131
122
  * Adds a `filter` clause with a nested `where` clause after the function, where
132
123
  * both sides of the operator are references to columns.
@@ -160,30 +151,6 @@ export declare class AggregateFunctionBuilder<DB, TB extends keyof DB, O = unkno
160
151
  * ```
161
152
  */
162
153
  filterWhereRef(lhs: ReferenceExpression<DB, TB>, op: ComparisonOperatorExpression, rhs: ReferenceExpression<DB, TB>): AggregateFunctionBuilder<DB, TB, O>;
163
- /**
164
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
165
- */
166
- orFilterWhere<RE extends ReferenceExpression<DB, TB>>(lhs: RE, op: ComparisonOperatorExpression, rhs: OperandValueExpressionOrList<DB, TB, RE>): AggregateFunctionBuilder<DB, TB, O>;
167
- /**
168
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
169
- */
170
- orFilterWhere(factory: WhereExpressionFactory<DB, TB>): AggregateFunctionBuilder<DB, TB, O>;
171
- /**
172
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
173
- */
174
- orFilterWhere(expression: Expression<any>): AggregateFunctionBuilder<DB, TB, O>;
175
- /**
176
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
177
- */
178
- orFilterWhereExists(arg: ExistsExpression<DB, TB>): AggregateFunctionBuilder<DB, TB, O>;
179
- /**
180
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
181
- */
182
- orFilterWhereNotExists(arg: ExistsExpression<DB, TB>): AggregateFunctionBuilder<DB, TB, O>;
183
- /**
184
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
185
- */
186
- orFilterWhereRef(lhs: ReferenceExpression<DB, TB>, op: ComparisonOperatorExpression, rhs: ReferenceExpression<DB, TB>): AggregateFunctionBuilder<DB, TB, O>;
187
154
  /**
188
155
  * Adds an `over` clause (window functions) after the function.
189
156
  *
@@ -193,7 +160,7 @@ export declare class AggregateFunctionBuilder<DB, TB extends keyof DB, O = unkno
193
160
  * const result = await db
194
161
  * .selectFrom('person')
195
162
  * .select(
196
- * eb => eb.fn.avg<number>('age').over().as('average_age')
163
+ * (eb) => eb.fn.avg<number>('age').over().as('average_age')
197
164
  * )
198
165
  * .execute()
199
166
  * ```
@@ -212,7 +179,7 @@ export declare class AggregateFunctionBuilder<DB, TB extends keyof DB, O = unkno
212
179
  * const result = await db
213
180
  * .selectFrom('person')
214
181
  * .select(
215
- * eb => eb.fn.avg<number>('age').over(
182
+ * (eb) => eb.fn.avg<number>('age').over(
216
183
  * ob => ob.partitionBy('last_name').orderBy('first_name', 'asc')
217
184
  * ).as('average_age')
218
185
  * )
@@ -272,4 +239,4 @@ export declare class AliasedAggregateFunctionBuilder<DB, TB extends keyof DB, O
272
239
  export interface AggregateFunctionBuilderProps {
273
240
  aggregateFunctionNode: AggregateFunctionNode;
274
241
  }
275
- export declare type OverBuilderCallback<DB, TB extends keyof DB> = (builder: OverBuilder<DB, TB>) => OverBuilder<DB, TB>;
242
+ export type OverBuilderCallback<DB, TB extends keyof DB> = (builder: OverBuilder<DB, TB>) => OverBuilder<DB, TB>;
@@ -5,8 +5,7 @@ import { AliasNode } from '../operation-node/alias-node.js';
5
5
  import { IdentifierNode } from '../operation-node/identifier-node.js';
6
6
  import { preventAwait } from '../util/prevent-await.js';
7
7
  import { createOverBuilder } from '../parser/parse-utils.js';
8
- import { parseReferentialComparison, parseWhere, } from '../parser/binary-operation-parser.js';
9
- import { parseExists, parseNotExists, } from '../parser/unary-operation-parser.js';
8
+ import { parseReferentialComparison, parseFilter, } from '../parser/binary-operation-parser.js';
10
9
  export class AggregateFunctionBuilder {
11
10
  #props;
12
11
  constructor(props) {
@@ -26,7 +25,7 @@ export class AggregateFunctionBuilder {
26
25
  * const result = await db
27
26
  * .selectFrom('person')
28
27
  * .select(
29
- * eb => eb.fn.count<number>('id').as('person_count')
28
+ * (eb) => eb.fn.count<number>('id').as('person_count')
30
29
  * )
31
30
  * .executeTakeFirstOrThrow()
32
31
  *
@@ -74,25 +73,7 @@ export class AggregateFunctionBuilder {
74
73
  filterWhere(...args) {
75
74
  return new AggregateFunctionBuilder({
76
75
  ...this.#props,
77
- aggregateFunctionNode: AggregateFunctionNode.cloneWithFilter(this.#props.aggregateFunctionNode, parseWhere(args)),
78
- });
79
- }
80
- /**
81
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
82
- */
83
- filterWhereExists(arg) {
84
- return new AggregateFunctionBuilder({
85
- ...this.#props,
86
- aggregateFunctionNode: AggregateFunctionNode.cloneWithFilter(this.#props.aggregateFunctionNode, parseExists(arg)),
87
- });
88
- }
89
- /**
90
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
91
- */
92
- filterWhereNotExists(arg) {
93
- return new AggregateFunctionBuilder({
94
- ...this.#props,
95
- aggregateFunctionNode: AggregateFunctionNode.cloneWithFilter(this.#props.aggregateFunctionNode, parseNotExists(arg)),
76
+ aggregateFunctionNode: AggregateFunctionNode.cloneWithFilter(this.#props.aggregateFunctionNode, parseFilter(args)),
96
77
  });
97
78
  }
98
79
  /**
@@ -133,42 +114,6 @@ export class AggregateFunctionBuilder {
133
114
  aggregateFunctionNode: AggregateFunctionNode.cloneWithFilter(this.#props.aggregateFunctionNode, parseReferentialComparison(lhs, op, rhs)),
134
115
  });
135
116
  }
136
- /**
137
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
138
- */
139
- orFilterWhere(...args) {
140
- return new AggregateFunctionBuilder({
141
- ...this.#props,
142
- aggregateFunctionNode: AggregateFunctionNode.cloneWithOrFilter(this.#props.aggregateFunctionNode, parseWhere(args)),
143
- });
144
- }
145
- /**
146
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
147
- */
148
- orFilterWhereExists(arg) {
149
- return new AggregateFunctionBuilder({
150
- ...this.#props,
151
- aggregateFunctionNode: AggregateFunctionNode.cloneWithOrFilter(this.#props.aggregateFunctionNode, parseExists(arg)),
152
- });
153
- }
154
- /**
155
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
156
- */
157
- orFilterWhereNotExists(arg) {
158
- return new AggregateFunctionBuilder({
159
- ...this.#props,
160
- aggregateFunctionNode: AggregateFunctionNode.cloneWithOrFilter(this.#props.aggregateFunctionNode, parseNotExists(arg)),
161
- });
162
- }
163
- /**
164
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
165
- */
166
- orFilterWhereRef(lhs, op, rhs) {
167
- return new AggregateFunctionBuilder({
168
- ...this.#props,
169
- aggregateFunctionNode: AggregateFunctionNode.cloneWithOrFilter(this.#props.aggregateFunctionNode, parseReferentialComparison(lhs, op, rhs)),
170
- });
171
- }
172
117
  /**
173
118
  * Adds an `over` clause (window functions) after the function.
174
119
  *
@@ -178,7 +123,7 @@ export class AggregateFunctionBuilder {
178
123
  * const result = await db
179
124
  * .selectFrom('person')
180
125
  * .select(
181
- * eb => eb.fn.avg<number>('age').over().as('average_age')
126
+ * (eb) => eb.fn.avg<number>('age').over().as('average_age')
182
127
  * )
183
128
  * .execute()
184
129
  * ```
@@ -197,7 +142,7 @@ export class AggregateFunctionBuilder {
197
142
  * const result = await db
198
143
  * .selectFrom('person')
199
144
  * .select(
200
- * eb => eb.fn.avg<number>('age').over(
145
+ * (eb) => eb.fn.avg<number>('age').over(
201
146
  * ob => ob.partitionBy('last_name').orderBy('first_name', 'asc')
202
147
  * ).as('average_age')
203
148
  * )
@@ -31,7 +31,7 @@ export declare class CaseThenBuilder<DB, TB extends keyof DB, W, O> {
31
31
  then<O2>(expression: Expression<O2>): CaseWhenBuilder<DB, TB, W, O | O2>;
32
32
  then<V>(value: V): CaseWhenBuilder<DB, TB, W, O | V>;
33
33
  }
34
- export declare class CaseWhenBuilder<DB, TB extends keyof DB, W, O> implements Whenable<DB, TB, W, O>, Endable<O | null> {
34
+ export declare class CaseWhenBuilder<DB, TB extends keyof DB, W, O> implements Whenable<DB, TB, W, O>, Endable<DB, TB, O | null> {
35
35
  #private;
36
36
  constructor(props: CaseBuilderProps);
37
37
  /**
@@ -47,24 +47,24 @@ export declare class CaseWhenBuilder<DB, TB extends keyof DB, W, O> implements W
47
47
  *
48
48
  * An `else` call must be followed by an {@link Endable.end} or {@link Endable.endCase} call.
49
49
  */
50
- else<O2>(expression: Expression<O2>): CaseEndBuilder<O | O2>;
51
- else<V>(value: V): CaseEndBuilder<O | V>;
50
+ else<O2>(expression: Expression<O2>): CaseEndBuilder<DB, TB, O | O2>;
51
+ else<V>(value: V): CaseEndBuilder<DB, TB, O | V>;
52
52
  /**
53
53
  * Adds an `end` keyword to the case operator.
54
54
  *
55
55
  * `case` operators can only be used as part of a query.
56
56
  * For a `case` statement used as part of a stored program, use {@link endCase} instead.
57
57
  */
58
- end(): ExpressionWrapper<O | null>;
58
+ end(): ExpressionWrapper<DB, TB, O | null>;
59
59
  /**
60
60
  * Adds `end case` keywords to the case statement.
61
61
  *
62
62
  * `case` statements can only be used for flow control in stored programs.
63
63
  * For a `case` operator used as part of a query, use {@link end} instead.
64
64
  */
65
- endCase(): ExpressionWrapper<O | null>;
65
+ endCase(): ExpressionWrapper<DB, TB, O | null>;
66
66
  }
67
- export declare class CaseEndBuilder<O> implements Endable<O> {
67
+ export declare class CaseEndBuilder<DB, TB extends keyof DB, O> implements Endable<DB, TB, O> {
68
68
  #private;
69
69
  constructor(props: CaseBuilderProps);
70
70
  /**
@@ -73,14 +73,14 @@ export declare class CaseEndBuilder<O> implements Endable<O> {
73
73
  * `case` operators can only be used as part of a query.
74
74
  * For a `case` statement used as part of a stored program, use {@link endCase} instead.
75
75
  */
76
- end(): ExpressionWrapper<O>;
76
+ end(): ExpressionWrapper<DB, TB, O>;
77
77
  /**
78
78
  * Adds `end case` keywords to the case statement.
79
79
  *
80
80
  * `case` statements can only be used for flow control in stored programs.
81
81
  * For a `case` operator used as part of a query, use {@link end} instead.
82
82
  */
83
- endCase(): ExpressionWrapper<O>;
83
+ endCase(): ExpressionWrapper<DB, TB, O>;
84
84
  }
85
85
  interface Whenable<DB, TB extends keyof DB, W, O> {
86
86
  /**
@@ -92,20 +92,20 @@ interface Whenable<DB, TB extends keyof DB, W, O> {
92
92
  when(expression: Expression<W>): CaseThenBuilder<DB, TB, W, O>;
93
93
  when(value: unknown extends W ? KyselyTypeError<'when(value) is only supported when using case(value)'> : W): CaseThenBuilder<DB, TB, W, O>;
94
94
  }
95
- interface Endable<O> {
95
+ interface Endable<DB, TB extends keyof DB, O> {
96
96
  /**
97
97
  * Adds an `end` keyword to the case operator.
98
98
  *
99
99
  * `case` operators can only be used as part of a query.
100
100
  * For a `case` statement used as part of a stored program, use {@link endCase} instead.
101
101
  */
102
- end(): ExpressionWrapper<O>;
102
+ end(): ExpressionWrapper<DB, TB, O>;
103
103
  /**
104
104
  * Adds `end case` keywords to the case statement.
105
105
  *
106
106
  * `case` statements can only be used for flow control in stored programs.
107
107
  * For a `case` operator used as part of a query, use {@link end} instead.
108
108
  */
109
- endCase(): ExpressionWrapper<O>;
109
+ endCase(): ExpressionWrapper<DB, TB, O>;
110
110
  }
111
111
  export {};
@@ -3,7 +3,7 @@ import { ExpressionWrapper } from '../expression/expression-wrapper.js';
3
3
  import { freeze } from '../util/object-utils.js';
4
4
  import { CaseNode } from '../operation-node/case-node.js';
5
5
  import { WhenNode } from '../operation-node/when-node.js';
6
- import { parseWhen, } from '../parser/binary-operation-parser.js';
6
+ import { parseFilter, } from '../parser/binary-operation-parser.js';
7
7
  import { parseValueExpression } from '../parser/value-parser.js';
8
8
  export class CaseBuilder {
9
9
  #props;
@@ -13,7 +13,7 @@ export class CaseBuilder {
13
13
  when(...args) {
14
14
  return new CaseThenBuilder({
15
15
  ...this.#props,
16
- node: CaseNode.cloneWithWhen(this.#props.node, WhenNode.create(parseWhen(args))),
16
+ node: CaseNode.cloneWithWhen(this.#props.node, WhenNode.create(parseFilter(args))),
17
17
  });
18
18
  }
19
19
  }
@@ -37,7 +37,7 @@ export class CaseWhenBuilder {
37
37
  when(...args) {
38
38
  return new CaseThenBuilder({
39
39
  ...this.#props,
40
- node: CaseNode.cloneWithWhen(this.#props.node, WhenNode.create(parseWhen(args))),
40
+ node: CaseNode.cloneWithWhen(this.#props.node, WhenNode.create(parseFilter(args))),
41
41
  });
42
42
  }
43
43
  else(valueExpression) {
@@ -20,7 +20,6 @@ import { OrderByDirectionExpression, OrderByExpression } from '../parser/order-b
20
20
  import { Explainable, ExplainFormat } from '../util/explainable.js';
21
21
  import { AliasedExpression, Expression } from '../expression/expression.js';
22
22
  import { ComparisonOperatorExpression, OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
23
- import { ExistsExpression } from '../parser/unary-operation-parser.js';
24
23
  import { KyselyTypeError } from '../util/type-error.js';
25
24
  import { Streamable } from '../util/streamable.js';
26
25
  export declare class DeleteQueryBuilder<DB, TB extends keyof DB, O> implements WhereInterface<DB, TB>, ReturningInterface<DB, TB, O>, OperationNodeSource, Compilable<O>, Explainable, Streamable<O> {
@@ -35,6 +34,10 @@ export declare class DeleteQueryBuilder<DB, TB extends keyof DB, O> implements W
35
34
  *
36
35
  * ### Examples
37
36
  *
37
+ * <!-- siteExample("where", "Simple where clause", 10) -->
38
+ *
39
+ * `where` method calls are combined with `AND`:
40
+ *
38
41
  * ```ts
39
42
  * const person = await db
40
43
  * .selectFrom('person')
@@ -57,9 +60,71 @@ export declare class DeleteQueryBuilder<DB, TB extends keyof DB, O> implements W
57
60
  * sql`your operator`
58
61
  * ```
59
62
  *
63
+ * <!-- siteExample("where", "Where in", 20) -->
64
+ *
65
+ * Find multiple items using a list of identifiers:
66
+ *
67
+ * ```ts
68
+ * const persons = await db
69
+ * .selectFrom('person')
70
+ * .selectAll()
71
+ * .where('id', 'in', ['1', '2', '3'])
72
+ * .execute()
73
+ * ```
74
+ *
75
+ * The generated SQL (PostgreSQL):
76
+ *
77
+ * ```sql
78
+ * select * from "person" where "id" in ($1, $2, $3)
79
+ * ```
80
+ *
81
+ * <!-- siteExample("where", "OR where", 30) -->
82
+ *
83
+ * To combine conditions using `OR`, you can use the expression builder.
84
+ * There are two ways to create `OR` expressions. Both are shown in this
85
+ * example:
86
+ *
87
+ * ```ts
88
+ * const persons = await db
89
+ * .selectFrom('person')
90
+ * .selectAll()
91
+ * // 1. Using the `or` method on the expression builder:
92
+ * .where((eb) => eb.or([
93
+ * eb('first_name', '=', 'Jennifer'),
94
+ * eb('first_name', '=', 'Sylvester')
95
+ * ]))
96
+ * // 2. Chaining expressions using the `or` method on the
97
+ * // created expressions:
98
+ * .where((eb) =>
99
+ * eb('last_name', '=', 'Aniston').or('last_name', '=', 'Stallone')
100
+ * )
101
+ * .execute()
102
+ * ```
103
+ *
104
+ * The generated SQL (PostgreSQL):
105
+ *
106
+ * ```sql
107
+ * select *
108
+ * from "person"
109
+ * where (
110
+ * ("first_name" = $1 or "first_name" = $2)
111
+ * and
112
+ * ("last_name" = $3 or "last_name" = $4)
113
+ * )
114
+ * ```
115
+ *
116
+ * <!-- siteExample("where", "Conditional where calls", 40) -->
117
+ *
60
118
  * You can add expressions conditionally like this:
61
119
  *
62
120
  * ```ts
121
+ * import { Expression, SqlBool } from 'kysely'
122
+ *
123
+ * const firstName: string | undefined = 'Jennifer'
124
+ * const lastName: string | undefined = 'Aniston'
125
+ * const under18 = true
126
+ * const over60 = true
127
+ *
63
128
  * let query = db
64
129
  * .selectFrom('person')
65
130
  * .selectAll()
@@ -74,6 +139,23 @@ export declare class DeleteQueryBuilder<DB, TB extends keyof DB, O> implements W
74
139
  * query = query.where('last_name', '=', lastName)
75
140
  * }
76
141
  *
142
+ * if (under18 || over60) {
143
+ * // Conditional OR expressions can be added like this.
144
+ * query = query.where((eb) => {
145
+ * const ors: Expression<SqlBool>[] = []
146
+ *
147
+ * if (under18) {
148
+ * ors.push(eb('age', '<', 18))
149
+ * }
150
+ *
151
+ * if (over60) {
152
+ * ors.push(eb('age', '>', 60))
153
+ * }
154
+ *
155
+ * return eb.or(ors)
156
+ * })
157
+ * }
158
+ *
77
159
  * const persons = await query.execute()
78
160
  * ```
79
161
  *
@@ -126,22 +208,30 @@ export declare class DeleteQueryBuilder<DB, TB extends keyof DB, O> implements W
126
208
  * select * from "person" where "id" in ($1, $2, $3)
127
209
  * ```
128
210
  *
211
+ * <!-- siteExample("where", "Complex where clause", 50) -->
212
+ *
129
213
  * For complex `where` expressions you can pass in a single callback and
130
- * use the {@link ExpressionBuilder} to build your expression:
214
+ * use the `ExpressionBuilder` to build your expression:
131
215
  *
132
216
  * ```ts
217
+ * const firstName = 'Jennifer'
218
+ * const maxAge = 60
219
+ *
133
220
  * const persons = await db
134
221
  * .selectFrom('person')
135
222
  * .selectAll('person')
136
- * .where(({ cmpr, or, and, not, exists, selectFrom, val }) => and([
223
+ * .where(({ eb, or, and, not, exists, selectFrom }) => and([
137
224
  * or([
138
- * cmpr('first_name', '=', firstName),
139
- * cmpr('age', '<', maxAge)
225
+ * eb('first_name', '=', firstName),
226
+ * eb('age', '<', maxAge)
140
227
  * ]),
141
228
  * not(exists(
142
- * selectFrom('pet').select('pet.id').whereRef('pet.owner_id', '=', 'person.id')
229
+ * selectFrom('pet')
230
+ * .select('pet.id')
231
+ * .whereRef('pet.owner_id', '=', 'person.id')
143
232
  * ))
144
233
  * ]))
234
+ * .execute()
145
235
  * ```
146
236
  *
147
237
  * The generated SQL (PostgreSQL):
@@ -262,32 +352,6 @@ export declare class DeleteQueryBuilder<DB, TB extends keyof DB, O> implements W
262
352
  * from "person"
263
353
  */
264
354
  whereRef(lhs: ReferenceExpression<DB, TB>, op: ComparisonOperatorExpression, rhs: ReferenceExpression<DB, TB>): DeleteQueryBuilder<DB, TB, O>;
265
- /**
266
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
267
- */
268
- orWhere<RE extends ReferenceExpression<DB, TB>>(lhs: RE, op: ComparisonOperatorExpression, rhs: OperandValueExpressionOrList<DB, TB, RE>): DeleteQueryBuilder<DB, TB, O>;
269
- orWhere(factory: WhereExpressionFactory<DB, TB>): DeleteQueryBuilder<DB, TB, O>;
270
- orWhere(expression: Expression<any>): DeleteQueryBuilder<DB, TB, O>;
271
- /**
272
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
273
- */
274
- orWhereRef(lhs: ReferenceExpression<DB, TB>, op: ComparisonOperatorExpression, rhs: ReferenceExpression<DB, TB>): DeleteQueryBuilder<DB, TB, O>;
275
- /**
276
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
277
- */
278
- whereExists(arg: ExistsExpression<DB, TB>): DeleteQueryBuilder<DB, TB, O>;
279
- /**
280
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
281
- */
282
- whereNotExists(arg: ExistsExpression<DB, TB>): DeleteQueryBuilder<DB, TB, O>;
283
- /**
284
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
285
- */
286
- orWhereExists(arg: ExistsExpression<DB, TB>): DeleteQueryBuilder<DB, TB, O>;
287
- /**
288
- * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
289
- */
290
- orWhereNotExists(arg: ExistsExpression<DB, TB>): DeleteQueryBuilder<DB, TB, O>;
291
355
  /**
292
356
  * Clears all where expressions from the query.
293
357
  *
@@ -560,7 +624,7 @@ export declare class DeleteQueryBuilder<DB, TB extends keyof DB, O> implements W
560
624
  * first_name: 'Jennifer',
561
625
  * last_name: 'Aniston'
562
626
  * })
563
- * .returning(eb => [
627
+ * .returning((eb) => [
564
628
  * 'id as id',
565
629
  * sql<string>`concat(first_name, ' ', last_name)`.as('full_name'),
566
630
  * eb.selectFrom('pets').select('pet.id').limit(1).as('first_pet_id')
@@ -745,10 +809,6 @@ export declare class DeleteQueryBuilder<DB, TB extends keyof DB, O> implements W
745
809
  * ```
746
810
  */
747
811
  $call<T>(func: (qb: this) => T): T;
748
- /**
749
- * @deprecated Use `$call` instead
750
- */
751
- call<T>(func: (qb: this) => T): T;
752
812
  /**
753
813
  * Call `func(this)` if `condition` is true.
754
814
  *
@@ -784,11 +844,7 @@ export declare class DeleteQueryBuilder<DB, TB extends keyof DB, O> implements W
784
844
  * }
785
845
  * ```
786
846
  */
787
- $if<O2>(condition: boolean, func: (qb: this) => DeleteQueryBuilder<DB, TB, O2>): O2 extends DeleteResult ? DeleteQueryBuilder<DB, TB, DeleteResult> : O2 extends O & infer E ? DeleteQueryBuilder<DB, TB, O & Partial<E>> : DeleteQueryBuilder<DB, TB, Partial<O2>>;
788
- /**
789
- * @deprecated Use `$if` instead
790
- */
791
- if<O2>(condition: boolean, func: (qb: this) => DeleteQueryBuilder<DB, TB, O2>): O2 extends DeleteResult ? DeleteQueryBuilder<DB, TB, DeleteResult> : O2 extends O & infer E ? DeleteQueryBuilder<DB, TB, O & Partial<E>> : DeleteQueryBuilder<DB, TB, Partial<O2>>;
847
+ $if<O2>(condition: boolean, func: (qb: this) => DeleteQueryBuilder<any, any, O2>): O2 extends DeleteResult ? DeleteQueryBuilder<DB, TB, DeleteResult> : O2 extends O & infer E ? DeleteQueryBuilder<DB, TB, O & Partial<E>> : DeleteQueryBuilder<DB, TB, Partial<O2>>;
792
848
  /**
793
849
  * Change the output type of the query.
794
850
  *
@@ -796,10 +852,6 @@ export declare class DeleteQueryBuilder<DB, TB extends keyof DB, O> implements W
796
852
  * don't support your use case.
797
853
  */
798
854
  $castTo<T>(): DeleteQueryBuilder<DB, TB, T>;
799
- /**
800
- * @deprecated Use `$castTo` instead.
801
- */
802
- castTo<T>(): DeleteQueryBuilder<DB, TB, T>;
803
855
  /**
804
856
  * Narrows (parts of) the output type of the query.
805
857
  *
@@ -884,10 +936,6 @@ export declare class DeleteQueryBuilder<DB, TB extends keyof DB, O> implements W
884
936
  * ```
885
937
  */
886
938
  $assertType<T extends O>(): O extends T ? DeleteQueryBuilder<DB, TB, T> : KyselyTypeError<`$assertType() call failed: The type passed in is not equal to the output type of the query.`>;
887
- /**
888
- * @deprecated Use `$assertType` instead.
889
- */
890
- assertType<T extends O>(): O extends T ? DeleteQueryBuilder<DB, TB, T> : KyselyTypeError<`assertType() call failed: The type passed in is not equal to the output type of the query.`>;
891
939
  /**
892
940
  * Returns a copy of this DeleteQueryBuilder instance with the given plugin installed.
893
941
  */
@@ -983,24 +1031,24 @@ export interface DeleteQueryBuilderProps {
983
1031
  readonly queryNode: DeleteQueryNode;
984
1032
  readonly executor: QueryExecutor;
985
1033
  }
986
- export declare type DeleteQueryBuilderWithInnerJoin<DB, TB extends keyof DB, O, TE extends TableExpression<DB, TB>> = TE extends `${infer T} as ${infer A}` ? T extends keyof DB ? InnerJoinedBuilder<DB, TB, O, A, DB[T]> : never : TE extends keyof DB ? DeleteQueryBuilder<DB, TB | TE, O> : TE extends AliasedExpression<infer QO, infer QA> ? InnerJoinedBuilder<DB, TB, O, QA, QO> : TE extends (qb: any) => AliasedExpression<infer QO, infer QA> ? InnerJoinedBuilder<DB, TB, O, QA, QO> : never;
987
- declare type InnerJoinedBuilder<DB, TB extends keyof DB, O, A extends string, R> = A extends keyof DB ? DeleteQueryBuilder<InnerJoinedDB<DB, A, R>, TB | A, O> : DeleteQueryBuilder<DB & ShallowRecord<A, R>, TB | A, O>;
988
- declare type InnerJoinedDB<DB, A extends string, R> = DrainOuterGeneric<{
1034
+ export type DeleteQueryBuilderWithInnerJoin<DB, TB extends keyof DB, O, TE extends TableExpression<DB, TB>> = TE extends `${infer T} as ${infer A}` ? T extends keyof DB ? InnerJoinedBuilder<DB, TB, O, A, DB[T]> : never : TE extends keyof DB ? DeleteQueryBuilder<DB, TB | TE, O> : TE extends AliasedExpression<infer QO, infer QA> ? InnerJoinedBuilder<DB, TB, O, QA, QO> : TE extends (qb: any) => AliasedExpression<infer QO, infer QA> ? InnerJoinedBuilder<DB, TB, O, QA, QO> : never;
1035
+ type InnerJoinedBuilder<DB, TB extends keyof DB, O, A extends string, R> = A extends keyof DB ? DeleteQueryBuilder<InnerJoinedDB<DB, A, R>, TB | A, O> : DeleteQueryBuilder<DB & ShallowRecord<A, R>, TB | A, O>;
1036
+ type InnerJoinedDB<DB, A extends string, R> = DrainOuterGeneric<{
989
1037
  [C in keyof DB | A]: C extends A ? R : C extends keyof DB ? DB[C] : never;
990
1038
  }>;
991
- export declare type DeleteQueryBuilderWithLeftJoin<DB, TB extends keyof DB, O, TE extends TableExpression<DB, TB>> = TE extends `${infer T} as ${infer A}` ? T extends keyof DB ? LeftJoinedBuilder<DB, TB, O, A, DB[T]> : never : TE extends keyof DB ? LeftJoinedBuilder<DB, TB, O, TE, DB[TE]> : TE extends AliasedExpression<infer QO, infer QA> ? LeftJoinedBuilder<DB, TB, O, QA, QO> : TE extends (qb: any) => AliasedExpression<infer QO, infer QA> ? LeftJoinedBuilder<DB, TB, O, QA, QO> : never;
992
- declare type LeftJoinedBuilder<DB, TB extends keyof DB, O, A extends keyof any, R> = A extends keyof DB ? DeleteQueryBuilder<LeftJoinedDB<DB, A, R>, TB | A, O> : DeleteQueryBuilder<DB & ShallowRecord<A, Nullable<R>>, TB | A, O>;
993
- declare type LeftJoinedDB<DB, A extends keyof any, R> = DrainOuterGeneric<{
1039
+ export type DeleteQueryBuilderWithLeftJoin<DB, TB extends keyof DB, O, TE extends TableExpression<DB, TB>> = TE extends `${infer T} as ${infer A}` ? T extends keyof DB ? LeftJoinedBuilder<DB, TB, O, A, DB[T]> : never : TE extends keyof DB ? LeftJoinedBuilder<DB, TB, O, TE, DB[TE]> : TE extends AliasedExpression<infer QO, infer QA> ? LeftJoinedBuilder<DB, TB, O, QA, QO> : TE extends (qb: any) => AliasedExpression<infer QO, infer QA> ? LeftJoinedBuilder<DB, TB, O, QA, QO> : never;
1040
+ type LeftJoinedBuilder<DB, TB extends keyof DB, O, A extends keyof any, R> = A extends keyof DB ? DeleteQueryBuilder<LeftJoinedDB<DB, A, R>, TB | A, O> : DeleteQueryBuilder<DB & ShallowRecord<A, Nullable<R>>, TB | A, O>;
1041
+ type LeftJoinedDB<DB, A extends keyof any, R> = DrainOuterGeneric<{
994
1042
  [C in keyof DB | A]: C extends A ? Nullable<R> : C extends keyof DB ? DB[C] : never;
995
1043
  }>;
996
- export declare type DeleteQueryBuilderWithRightJoin<DB, TB extends keyof DB, O, TE extends TableExpression<DB, TB>> = TE extends `${infer T} as ${infer A}` ? T extends keyof DB ? RightJoinedBuilder<DB, TB, O, A, DB[T]> : never : TE extends keyof DB ? RightJoinedBuilder<DB, TB, O, TE, DB[TE]> : TE extends AliasedExpression<infer QO, infer QA> ? RightJoinedBuilder<DB, TB, O, QA, QO> : TE extends (qb: any) => AliasedExpression<infer QO, infer QA> ? RightJoinedBuilder<DB, TB, O, QA, QO> : never;
997
- declare type RightJoinedBuilder<DB, TB extends keyof DB, O, A extends keyof any, R> = DeleteQueryBuilder<RightJoinedDB<DB, TB, A, R>, TB | A, O>;
998
- declare type RightJoinedDB<DB, TB extends keyof DB, A extends keyof any, R> = DrainOuterGeneric<{
1044
+ export type DeleteQueryBuilderWithRightJoin<DB, TB extends keyof DB, O, TE extends TableExpression<DB, TB>> = TE extends `${infer T} as ${infer A}` ? T extends keyof DB ? RightJoinedBuilder<DB, TB, O, A, DB[T]> : never : TE extends keyof DB ? RightJoinedBuilder<DB, TB, O, TE, DB[TE]> : TE extends AliasedExpression<infer QO, infer QA> ? RightJoinedBuilder<DB, TB, O, QA, QO> : TE extends (qb: any) => AliasedExpression<infer QO, infer QA> ? RightJoinedBuilder<DB, TB, O, QA, QO> : never;
1045
+ type RightJoinedBuilder<DB, TB extends keyof DB, O, A extends keyof any, R> = DeleteQueryBuilder<RightJoinedDB<DB, TB, A, R>, TB | A, O>;
1046
+ type RightJoinedDB<DB, TB extends keyof DB, A extends keyof any, R> = DrainOuterGeneric<{
999
1047
  [C in keyof DB | A]: C extends A ? R : C extends TB ? Nullable<DB[C]> : C extends keyof DB ? DB[C] : never;
1000
1048
  }>;
1001
- export declare type DeleteQueryBuilderWithFullJoin<DB, TB extends keyof DB, O, TE extends TableExpression<DB, TB>> = TE extends `${infer T} as ${infer A}` ? T extends keyof DB ? OuterJoinedBuilder<DB, TB, O, A, DB[T]> : never : TE extends keyof DB ? OuterJoinedBuilder<DB, TB, O, TE, DB[TE]> : TE extends AliasedExpression<infer QO, infer QA> ? OuterJoinedBuilder<DB, TB, O, QA, QO> : TE extends (qb: any) => AliasedExpression<infer QO, infer QA> ? OuterJoinedBuilder<DB, TB, O, QA, QO> : never;
1002
- declare type OuterJoinedBuilder<DB, TB extends keyof DB, O, A extends keyof any, R> = DeleteQueryBuilder<OuterJoinedBuilderDB<DB, TB, A, R>, TB | A, O>;
1003
- declare type OuterJoinedBuilderDB<DB, TB extends keyof DB, A extends keyof any, R> = DrainOuterGeneric<{
1049
+ export type DeleteQueryBuilderWithFullJoin<DB, TB extends keyof DB, O, TE extends TableExpression<DB, TB>> = TE extends `${infer T} as ${infer A}` ? T extends keyof DB ? OuterJoinedBuilder<DB, TB, O, A, DB[T]> : never : TE extends keyof DB ? OuterJoinedBuilder<DB, TB, O, TE, DB[TE]> : TE extends AliasedExpression<infer QO, infer QA> ? OuterJoinedBuilder<DB, TB, O, QA, QO> : TE extends (qb: any) => AliasedExpression<infer QO, infer QA> ? OuterJoinedBuilder<DB, TB, O, QA, QO> : never;
1050
+ type OuterJoinedBuilder<DB, TB extends keyof DB, O, A extends keyof any, R> = DeleteQueryBuilder<OuterJoinedBuilderDB<DB, TB, A, R>, TB | A, O>;
1051
+ type OuterJoinedBuilderDB<DB, TB extends keyof DB, A extends keyof any, R> = DrainOuterGeneric<{
1004
1052
  [C in keyof DB | A]: C extends A ? Nullable<R> : C extends TB ? Nullable<DB[C]> : C extends keyof DB ? DB[C] : never;
1005
1053
  }>;
1006
1054
  export {};