noormme 1.0.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 (1230) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +727 -0
  3. package/dist/cjs/cache/cache-manager.d.ts +76 -0
  4. package/dist/cjs/cache/cache-manager.js +169 -0
  5. package/dist/cjs/cli/commands/analyze.d.ts +7 -0
  6. package/dist/cjs/cli/commands/analyze.js +132 -0
  7. package/dist/cjs/cli/commands/generate.d.ts +7 -0
  8. package/dist/cjs/cli/commands/generate.js +514 -0
  9. package/dist/cjs/cli/commands/init.d.ts +7 -0
  10. package/dist/cjs/cli/commands/init.js +470 -0
  11. package/dist/cjs/cli/commands/inspect.d.ts +7 -0
  12. package/dist/cjs/cli/commands/inspect.js +365 -0
  13. package/dist/cjs/cli/commands/migrate.d.ts +8 -0
  14. package/dist/cjs/cli/commands/migrate.js +218 -0
  15. package/dist/cjs/cli/commands/optimize.d.ts +8 -0
  16. package/dist/cjs/cli/commands/optimize.js +156 -0
  17. package/dist/cjs/cli/commands/status.d.ts +6 -0
  18. package/dist/cjs/cli/commands/status.js +267 -0
  19. package/dist/cjs/cli/commands/watch.d.ts +7 -0
  20. package/dist/cjs/cli/commands/watch.js +216 -0
  21. package/dist/cjs/cli/index.d.ts +2 -0
  22. package/dist/cjs/cli/index.js +157 -0
  23. package/dist/cjs/dialect/database-introspector.d.ts +61 -0
  24. package/dist/cjs/dialect/database-introspector.js +85 -0
  25. package/dist/cjs/dialect/dialect-adapter-base.d.ts +94 -0
  26. package/dist/cjs/dialect/dialect-adapter-base.js +24 -0
  27. package/dist/cjs/dialect/dialect-adapter.d.ts +115 -0
  28. package/dist/cjs/dialect/dialect-adapter.js +2 -0
  29. package/dist/cjs/dialect/dialect.d.ts +34 -0
  30. package/dist/cjs/dialect/dialect.js +2 -0
  31. package/dist/cjs/dialect/sqlite/sqlite-adapter.d.ts +80 -0
  32. package/dist/cjs/dialect/sqlite/sqlite-adapter.js +23 -0
  33. package/dist/cjs/dialect/sqlite/sqlite-auto-indexer.d.ts +181 -0
  34. package/dist/cjs/dialect/sqlite/sqlite-auto-indexer.js +541 -0
  35. package/dist/cjs/dialect/sqlite/sqlite-auto-optimizer.d.ts +102 -0
  36. package/dist/cjs/dialect/sqlite/sqlite-auto-optimizer.js +373 -0
  37. package/dist/cjs/dialect/sqlite/sqlite-dialect-config.d.ts +41 -0
  38. package/dist/cjs/dialect/sqlite/sqlite-dialect-config.js +2 -0
  39. package/dist/cjs/dialect/sqlite/sqlite-dialect.d.ts +55 -0
  40. package/dist/cjs/dialect/sqlite/sqlite-dialect.js +51 -0
  41. package/dist/cjs/dialect/sqlite/sqlite-driver.d.ts +42 -0
  42. package/dist/cjs/dialect/sqlite/sqlite-driver.js +152 -0
  43. package/dist/cjs/dialect/sqlite/sqlite-introspector.d.ts +36 -0
  44. package/dist/cjs/dialect/sqlite/sqlite-introspector.js +236 -0
  45. package/dist/cjs/dialect/sqlite/sqlite-query-compiler.d.ts +16 -0
  46. package/dist/cjs/dialect/sqlite/sqlite-query-compiler.js +43 -0
  47. package/dist/cjs/driver/connection-provider.d.ts +8 -0
  48. package/dist/cjs/driver/connection-provider.js +2 -0
  49. package/dist/cjs/driver/database-connection.d.ts +35 -0
  50. package/dist/cjs/driver/database-connection.js +2 -0
  51. package/dist/cjs/driver/default-connection-provider.d.ts +12 -0
  52. package/dist/cjs/driver/default-connection-provider.js +19 -0
  53. package/dist/cjs/driver/driver.d.ts +61 -0
  54. package/dist/cjs/driver/driver.js +22 -0
  55. package/dist/cjs/driver/dummy-driver.d.ts +75 -0
  56. package/dist/cjs/driver/dummy-driver.js +83 -0
  57. package/dist/cjs/driver/runtime-driver.d.ts +47 -0
  58. package/dist/cjs/driver/runtime-driver.js +165 -0
  59. package/dist/cjs/driver/single-connection-provider.d.ts +11 -0
  60. package/dist/cjs/driver/single-connection-provider.js +29 -0
  61. package/dist/cjs/dynamic/dynamic-reference-builder.d.ts +18 -0
  62. package/dist/cjs/dynamic/dynamic-reference-builder.js +36 -0
  63. package/dist/cjs/dynamic/dynamic-table-builder.d.ts +16 -0
  64. package/dist/cjs/dynamic/dynamic-table-builder.js +46 -0
  65. package/dist/cjs/dynamic/dynamic.d.ts +124 -0
  66. package/dist/cjs/dynamic/dynamic.js +132 -0
  67. package/dist/cjs/errors/NoormError.d.ts +56 -0
  68. package/dist/cjs/errors/NoormError.js +158 -0
  69. package/dist/cjs/expression/expression-builder.d.ts +920 -0
  70. package/dist/cjs/expression/expression-builder.js +128 -0
  71. package/dist/cjs/expression/expression-wrapper.d.ts +631 -0
  72. package/dist/cjs/expression/expression-wrapper.js +134 -0
  73. package/dist/cjs/expression/expression.d.ts +198 -0
  74. package/dist/cjs/expression/expression.js +15 -0
  75. package/dist/cjs/helpers/sqlite.d.ts +189 -0
  76. package/dist/cjs/helpers/sqlite.js +204 -0
  77. package/dist/cjs/index.d.ts +211 -0
  78. package/dist/cjs/index.js +223 -0
  79. package/dist/cjs/kysely.d.ts +848 -0
  80. package/dist/cjs/kysely.js +924 -0
  81. package/dist/cjs/logging/logger.d.ts +96 -0
  82. package/dist/cjs/logging/logger.js +179 -0
  83. package/dist/cjs/noormme.d.ts +137 -0
  84. package/dist/cjs/noormme.js +521 -0
  85. package/dist/cjs/operation-node/add-column-node.d.ts +13 -0
  86. package/dist/cjs/operation-node/add-column-node.js +18 -0
  87. package/dist/cjs/operation-node/add-constraint-node.d.ts +13 -0
  88. package/dist/cjs/operation-node/add-constraint-node.js +18 -0
  89. package/dist/cjs/operation-node/add-index-node.d.ts +21 -0
  90. package/dist/cjs/operation-node/add-index-node.js +31 -0
  91. package/dist/cjs/operation-node/aggregate-function-node.d.ts +27 -0
  92. package/dist/cjs/operation-node/aggregate-function-node.js +58 -0
  93. package/dist/cjs/operation-node/alias-node.d.ts +13 -0
  94. package/dist/cjs/operation-node/alias-node.js +19 -0
  95. package/dist/cjs/operation-node/alter-column-node.d.ts +21 -0
  96. package/dist/cjs/operation-node/alter-column-node.js +20 -0
  97. package/dist/cjs/operation-node/alter-table-node.d.ts +36 -0
  98. package/dist/cjs/operation-node/alter-table-node.js +32 -0
  99. package/dist/cjs/operation-node/and-node.d.ts +13 -0
  100. package/dist/cjs/operation-node/and-node.js +19 -0
  101. package/dist/cjs/operation-node/binary-operation-node.d.ts +14 -0
  102. package/dist/cjs/operation-node/binary-operation-node.js +20 -0
  103. package/dist/cjs/operation-node/case-node.d.ts +19 -0
  104. package/dist/cjs/operation-node/case-node.js +42 -0
  105. package/dist/cjs/operation-node/cast-node.d.ts +13 -0
  106. package/dist/cjs/operation-node/cast-node.js +19 -0
  107. package/dist/cjs/operation-node/check-constraint-node.d.ts +14 -0
  108. package/dist/cjs/operation-node/check-constraint-node.js +20 -0
  109. package/dist/cjs/operation-node/collate-node.d.ts +13 -0
  110. package/dist/cjs/operation-node/collate-node.js +19 -0
  111. package/dist/cjs/operation-node/column-definition-node.d.ts +36 -0
  112. package/dist/cjs/operation-node/column-definition-node.js +42 -0
  113. package/dist/cjs/operation-node/column-node.d.ts +13 -0
  114. package/dist/cjs/operation-node/column-node.js +19 -0
  115. package/dist/cjs/operation-node/column-update-node.d.ts +13 -0
  116. package/dist/cjs/operation-node/column-update-node.js +19 -0
  117. package/dist/cjs/operation-node/common-table-expression-name-node.d.ts +15 -0
  118. package/dist/cjs/operation-node/common-table-expression-name-node.js +23 -0
  119. package/dist/cjs/operation-node/common-table-expression-node.d.ts +18 -0
  120. package/dist/cjs/operation-node/common-table-expression-node.js +25 -0
  121. package/dist/cjs/operation-node/constraint-node.d.ts +5 -0
  122. package/dist/cjs/operation-node/constraint-node.js +2 -0
  123. package/dist/cjs/operation-node/create-index-node.d.ts +27 -0
  124. package/dist/cjs/operation-node/create-index-node.js +31 -0
  125. package/dist/cjs/operation-node/create-schema-node.d.ts +16 -0
  126. package/dist/cjs/operation-node/create-schema-node.js +26 -0
  127. package/dist/cjs/operation-node/create-table-node.d.ts +32 -0
  128. package/dist/cjs/operation-node/create-table-node.js +56 -0
  129. package/dist/cjs/operation-node/create-type-node.d.ts +17 -0
  130. package/dist/cjs/operation-node/create-type-node.js +26 -0
  131. package/dist/cjs/operation-node/create-view-node.d.ts +24 -0
  132. package/dist/cjs/operation-node/create-view-node.js +25 -0
  133. package/dist/cjs/operation-node/data-type-node.d.ts +18 -0
  134. package/dist/cjs/operation-node/data-type-node.js +86 -0
  135. package/dist/cjs/operation-node/default-insert-value-node.d.ts +11 -0
  136. package/dist/cjs/operation-node/default-insert-value-node.js +17 -0
  137. package/dist/cjs/operation-node/default-value-node.d.ts +12 -0
  138. package/dist/cjs/operation-node/default-value-node.js +18 -0
  139. package/dist/cjs/operation-node/delete-query-node.d.ts +46 -0
  140. package/dist/cjs/operation-node/delete-query-node.js +52 -0
  141. package/dist/cjs/operation-node/drop-column-node.d.ts +13 -0
  142. package/dist/cjs/operation-node/drop-column-node.js +19 -0
  143. package/dist/cjs/operation-node/drop-constraint-node.d.ts +17 -0
  144. package/dist/cjs/operation-node/drop-constraint-node.js +25 -0
  145. package/dist/cjs/operation-node/drop-index-node.d.ts +19 -0
  146. package/dist/cjs/operation-node/drop-index-node.js +26 -0
  147. package/dist/cjs/operation-node/drop-schema-node.d.ts +17 -0
  148. package/dist/cjs/operation-node/drop-schema-node.js +26 -0
  149. package/dist/cjs/operation-node/drop-table-node.d.ts +17 -0
  150. package/dist/cjs/operation-node/drop-table-node.js +25 -0
  151. package/dist/cjs/operation-node/drop-type-node.d.ts +16 -0
  152. package/dist/cjs/operation-node/drop-type-node.js +24 -0
  153. package/dist/cjs/operation-node/drop-view-node.d.ts +18 -0
  154. package/dist/cjs/operation-node/drop-view-node.js +25 -0
  155. package/dist/cjs/operation-node/explain-node.d.ts +14 -0
  156. package/dist/cjs/operation-node/explain-node.js +19 -0
  157. package/dist/cjs/operation-node/fetch-node.d.ts +15 -0
  158. package/dist/cjs/operation-node/fetch-node.js +19 -0
  159. package/dist/cjs/operation-node/foreign-key-constraint-node.d.ts +33 -0
  160. package/dist/cjs/operation-node/foreign-key-constraint-node.js +28 -0
  161. package/dist/cjs/operation-node/from-node.d.ts +13 -0
  162. package/dist/cjs/operation-node/from-node.js +24 -0
  163. package/dist/cjs/operation-node/function-node.d.ts +13 -0
  164. package/dist/cjs/operation-node/function-node.js +19 -0
  165. package/dist/cjs/operation-node/generated-node.d.ts +19 -0
  166. package/dist/cjs/operation-node/generated-node.js +31 -0
  167. package/dist/cjs/operation-node/group-by-item-node.d.ts +12 -0
  168. package/dist/cjs/operation-node/group-by-item-node.js +18 -0
  169. package/dist/cjs/operation-node/group-by-node.d.ts +14 -0
  170. package/dist/cjs/operation-node/group-by-node.js +24 -0
  171. package/dist/cjs/operation-node/having-node.d.ts +13 -0
  172. package/dist/cjs/operation-node/having-node.js +28 -0
  173. package/dist/cjs/operation-node/identifier-node.d.ts +12 -0
  174. package/dist/cjs/operation-node/identifier-node.js +18 -0
  175. package/dist/cjs/operation-node/insert-query-node.d.ts +40 -0
  176. package/dist/cjs/operation-node/insert-query-node.js +31 -0
  177. package/dist/cjs/operation-node/join-node.d.ts +18 -0
  178. package/dist/cjs/operation-node/join-node.js +37 -0
  179. package/dist/cjs/operation-node/json-operator-chain-node.d.ts +16 -0
  180. package/dist/cjs/operation-node/json-operator-chain-node.js +25 -0
  181. package/dist/cjs/operation-node/json-path-leg-node.d.ts +14 -0
  182. package/dist/cjs/operation-node/json-path-leg-node.js +19 -0
  183. package/dist/cjs/operation-node/json-path-node.d.ts +16 -0
  184. package/dist/cjs/operation-node/json-path-node.js +25 -0
  185. package/dist/cjs/operation-node/json-reference-node.d.ts +17 -0
  186. package/dist/cjs/operation-node/json-reference-node.js +25 -0
  187. package/dist/cjs/operation-node/limit-node.d.ts +12 -0
  188. package/dist/cjs/operation-node/limit-node.js +18 -0
  189. package/dist/cjs/operation-node/list-node.d.ts +12 -0
  190. package/dist/cjs/operation-node/list-node.js +18 -0
  191. package/dist/cjs/operation-node/matched-node.d.ts +13 -0
  192. package/dist/cjs/operation-node/matched-node.js +19 -0
  193. package/dist/cjs/operation-node/merge-query-node.d.ts +30 -0
  194. package/dist/cjs/operation-node/merge-query-node.js +45 -0
  195. package/dist/cjs/operation-node/modify-column-node.d.ts +13 -0
  196. package/dist/cjs/operation-node/modify-column-node.js +18 -0
  197. package/dist/cjs/operation-node/offset-node.d.ts +12 -0
  198. package/dist/cjs/operation-node/offset-node.js +18 -0
  199. package/dist/cjs/operation-node/on-conflict-node.d.ts +30 -0
  200. package/dist/cjs/operation-node/on-conflict-node.js +68 -0
  201. package/dist/cjs/operation-node/on-duplicate-key-node.d.ts +14 -0
  202. package/dist/cjs/operation-node/on-duplicate-key-node.js +18 -0
  203. package/dist/cjs/operation-node/on-node.d.ts +13 -0
  204. package/dist/cjs/operation-node/on-node.js +28 -0
  205. package/dist/cjs/operation-node/operation-node-source.d.ts +5 -0
  206. package/dist/cjs/operation-node/operation-node-source.js +7 -0
  207. package/dist/cjs/operation-node/operation-node-transformer.d.ts +238 -0
  208. package/dist/cjs/operation-node/operation-node-transformer.js +929 -0
  209. package/dist/cjs/operation-node/operation-node-visitor.d.ts +201 -0
  210. package/dist/cjs/operation-node/operation-node-visitor.js +115 -0
  211. package/dist/cjs/operation-node/operation-node.d.ts +4 -0
  212. package/dist/cjs/operation-node/operation-node.js +2 -0
  213. package/dist/cjs/operation-node/operator-node.d.ts +32 -0
  214. package/dist/cjs/operation-node/operator-node.js +107 -0
  215. package/dist/cjs/operation-node/or-action-node.d.ts +12 -0
  216. package/dist/cjs/operation-node/or-action-node.js +18 -0
  217. package/dist/cjs/operation-node/or-node.d.ts +13 -0
  218. package/dist/cjs/operation-node/or-node.js +19 -0
  219. package/dist/cjs/operation-node/order-by-item-node.d.ts +18 -0
  220. package/dist/cjs/operation-node/order-by-item-node.js +25 -0
  221. package/dist/cjs/operation-node/order-by-node.d.ts +14 -0
  222. package/dist/cjs/operation-node/order-by-node.js +24 -0
  223. package/dist/cjs/operation-node/output-node.d.ts +13 -0
  224. package/dist/cjs/operation-node/output-node.js +26 -0
  225. package/dist/cjs/operation-node/over-node.d.ts +19 -0
  226. package/dist/cjs/operation-node/over-node.js +35 -0
  227. package/dist/cjs/operation-node/parens-node.d.ts +12 -0
  228. package/dist/cjs/operation-node/parens-node.js +18 -0
  229. package/dist/cjs/operation-node/partition-by-item-node.d.ts +13 -0
  230. package/dist/cjs/operation-node/partition-by-item-node.js +18 -0
  231. package/dist/cjs/operation-node/partition-by-node.d.ts +14 -0
  232. package/dist/cjs/operation-node/partition-by-node.js +24 -0
  233. package/dist/cjs/operation-node/primary-key-constraint-node.d.ts +29 -0
  234. package/dist/cjs/operation-node/primary-key-constraint-node.js +30 -0
  235. package/dist/cjs/operation-node/primitive-value-list-node.d.ts +17 -0
  236. package/dist/cjs/operation-node/primitive-value-list-node.js +18 -0
  237. package/dist/cjs/operation-node/query-node.d.ts +60 -0
  238. package/dist/cjs/operation-node/query-node.js +102 -0
  239. package/dist/cjs/operation-node/raw-node.d.ts +16 -0
  240. package/dist/cjs/operation-node/raw-node.js +28 -0
  241. package/dist/cjs/operation-node/reference-node.d.ts +17 -0
  242. package/dist/cjs/operation-node/reference-node.js +27 -0
  243. package/dist/cjs/operation-node/references-node.d.ts +22 -0
  244. package/dist/cjs/operation-node/references-node.js +38 -0
  245. package/dist/cjs/operation-node/refresh-materialized-view-node.d.ts +17 -0
  246. package/dist/cjs/operation-node/refresh-materialized-view-node.js +25 -0
  247. package/dist/cjs/operation-node/rename-column-node.d.ts +14 -0
  248. package/dist/cjs/operation-node/rename-column-node.js +20 -0
  249. package/dist/cjs/operation-node/rename-constraint-node.d.ts +14 -0
  250. package/dist/cjs/operation-node/rename-constraint-node.js +20 -0
  251. package/dist/cjs/operation-node/returning-node.d.ts +14 -0
  252. package/dist/cjs/operation-node/returning-node.js +26 -0
  253. package/dist/cjs/operation-node/schemable-identifier-node.d.ts +15 -0
  254. package/dist/cjs/operation-node/schemable-identifier-node.js +26 -0
  255. package/dist/cjs/operation-node/select-all-node.d.ts +11 -0
  256. package/dist/cjs/operation-node/select-all-node.js +17 -0
  257. package/dist/cjs/operation-node/select-modifier-node.d.ts +16 -0
  258. package/dist/cjs/operation-node/select-modifier-node.js +25 -0
  259. package/dist/cjs/operation-node/select-query-node.d.ts +67 -0
  260. package/dist/cjs/operation-node/select-query-node.js +129 -0
  261. package/dist/cjs/operation-node/selection-node.d.ts +20 -0
  262. package/dist/cjs/operation-node/selection-node.js +32 -0
  263. package/dist/cjs/operation-node/set-operation-node.d.ts +15 -0
  264. package/dist/cjs/operation-node/set-operation-node.js +20 -0
  265. package/dist/cjs/operation-node/simple-reference-expression-node.d.ts +3 -0
  266. package/dist/cjs/operation-node/simple-reference-expression-node.js +2 -0
  267. package/dist/cjs/operation-node/table-node.d.ts +14 -0
  268. package/dist/cjs/operation-node/table-node.js +25 -0
  269. package/dist/cjs/operation-node/top-node.d.ts +14 -0
  270. package/dist/cjs/operation-node/top-node.js +19 -0
  271. package/dist/cjs/operation-node/tuple-node.d.ts +12 -0
  272. package/dist/cjs/operation-node/tuple-node.js +18 -0
  273. package/dist/cjs/operation-node/unary-operation-node.d.ts +13 -0
  274. package/dist/cjs/operation-node/unary-operation-node.js +19 -0
  275. package/dist/cjs/operation-node/unique-constraint-node.d.ts +20 -0
  276. package/dist/cjs/operation-node/unique-constraint-node.js +28 -0
  277. package/dist/cjs/operation-node/update-query-node.d.ts +39 -0
  278. package/dist/cjs/operation-node/update-query-node.js +50 -0
  279. package/dist/cjs/operation-node/using-node.d.ts +13 -0
  280. package/dist/cjs/operation-node/using-node.js +24 -0
  281. package/dist/cjs/operation-node/value-list-node.d.ts +12 -0
  282. package/dist/cjs/operation-node/value-list-node.js +18 -0
  283. package/dist/cjs/operation-node/value-node.d.ts +14 -0
  284. package/dist/cjs/operation-node/value-node.js +25 -0
  285. package/dist/cjs/operation-node/values-node.d.ts +15 -0
  286. package/dist/cjs/operation-node/values-node.js +18 -0
  287. package/dist/cjs/operation-node/when-node.d.ts +14 -0
  288. package/dist/cjs/operation-node/when-node.js +24 -0
  289. package/dist/cjs/operation-node/where-node.d.ts +13 -0
  290. package/dist/cjs/operation-node/where-node.js +28 -0
  291. package/dist/cjs/operation-node/with-node.d.ts +16 -0
  292. package/dist/cjs/operation-node/with-node.js +25 -0
  293. package/dist/cjs/package.json +1 -0
  294. package/dist/cjs/parser/binary-operation-parser.d.ts +21 -0
  295. package/dist/cjs/parser/binary-operation-parser.js +74 -0
  296. package/dist/cjs/parser/coalesce-parser.d.ts +12 -0
  297. package/dist/cjs/parser/coalesce-parser.js +2 -0
  298. package/dist/cjs/parser/collate-parser.d.ts +1 -0
  299. package/dist/cjs/parser/collate-parser.js +2 -0
  300. package/dist/cjs/parser/data-type-parser.d.ts +5 -0
  301. package/dist/cjs/parser/data-type-parser.js +14 -0
  302. package/dist/cjs/parser/default-value-parser.d.ts +4 -0
  303. package/dist/cjs/parser/default-value-parser.js +10 -0
  304. package/dist/cjs/parser/delete-from-parser.d.ts +9 -0
  305. package/dist/cjs/parser/delete-from-parser.js +2 -0
  306. package/dist/cjs/parser/expression-parser.d.ts +20 -0
  307. package/dist/cjs/parser/expression-parser.js +30 -0
  308. package/dist/cjs/parser/fetch-parser.d.ts +2 -0
  309. package/dist/cjs/parser/fetch-parser.js +17 -0
  310. package/dist/cjs/parser/group-by-parser.d.ts +6 -0
  311. package/dist/cjs/parser/group-by-parser.js +11 -0
  312. package/dist/cjs/parser/identifier-parser.d.ts +2 -0
  313. package/dist/cjs/parser/identifier-parser.js +22 -0
  314. package/dist/cjs/parser/insert-values-parser.d.ts +14 -0
  315. package/dist/cjs/parser/insert-values-parser.js +64 -0
  316. package/dist/cjs/parser/join-parser.d.ts +10 -0
  317. package/dist/cjs/parser/join-parser.js +30 -0
  318. package/dist/cjs/parser/merge-into-parser.d.ts +7 -0
  319. package/dist/cjs/parser/merge-into-parser.js +2 -0
  320. package/dist/cjs/parser/merge-parser.d.ts +9 -0
  321. package/dist/cjs/parser/merge-parser.js +31 -0
  322. package/dist/cjs/parser/on-commit-action-parse.d.ts +2 -0
  323. package/dist/cjs/parser/on-commit-action-parse.js +10 -0
  324. package/dist/cjs/parser/on-modify-action-parser.d.ts +2 -0
  325. package/dist/cjs/parser/on-modify-action-parser.js +10 -0
  326. package/dist/cjs/parser/order-by-parser.d.ts +25 -0
  327. package/dist/cjs/parser/order-by-parser.js +71 -0
  328. package/dist/cjs/parser/parse-utils.d.ts +10 -0
  329. package/dist/cjs/parser/parse-utils.js +38 -0
  330. package/dist/cjs/parser/partition-by-parser.d.ts +6 -0
  331. package/dist/cjs/parser/partition-by-parser.js +8 -0
  332. package/dist/cjs/parser/reference-parser.d.ts +31 -0
  333. package/dist/cjs/parser/reference-parser.js +104 -0
  334. package/dist/cjs/parser/returning-parser.d.ts +8 -0
  335. package/dist/cjs/parser/returning-parser.js +2 -0
  336. package/dist/cjs/parser/savepoint-parser.d.ts +4 -0
  337. package/dist/cjs/parser/savepoint-parser.js +11 -0
  338. package/dist/cjs/parser/select-from-parser.d.ts +6 -0
  339. package/dist/cjs/parser/select-from-parser.js +2 -0
  340. package/dist/cjs/parser/select-parser.d.ts +36 -0
  341. package/dist/cjs/parser/select-parser.js +50 -0
  342. package/dist/cjs/parser/set-operation-parser.d.ts +5 -0
  343. package/dist/cjs/parser/set-operation-parser.js +16 -0
  344. package/dist/cjs/parser/table-parser.d.ts +24 -0
  345. package/dist/cjs/parser/table-parser.js +54 -0
  346. package/dist/cjs/parser/top-parser.d.ts +2 -0
  347. package/dist/cjs/parser/top-parser.js +19 -0
  348. package/dist/cjs/parser/tuple-parser.d.ts +47 -0
  349. package/dist/cjs/parser/tuple-parser.js +2 -0
  350. package/dist/cjs/parser/unary-operation-parser.d.ts +8 -0
  351. package/dist/cjs/parser/unary-operation-parser.js +17 -0
  352. package/dist/cjs/parser/update-parser.d.ts +9 -0
  353. package/dist/cjs/parser/update-parser.js +2 -0
  354. package/dist/cjs/parser/update-set-parser.d.ts +16 -0
  355. package/dist/cjs/parser/update-set-parser.js +26 -0
  356. package/dist/cjs/parser/value-parser.d.ts +13 -0
  357. package/dist/cjs/parser/value-parser.js +38 -0
  358. package/dist/cjs/parser/with-parser.d.ts +45 -0
  359. package/dist/cjs/parser/with-parser.js +33 -0
  360. package/dist/cjs/performance/query-analyzer.d.ts +89 -0
  361. package/dist/cjs/performance/query-analyzer.js +263 -0
  362. package/dist/cjs/plugin/camel-case/camel-case-plugin.d.ts +170 -0
  363. package/dist/cjs/plugin/camel-case/camel-case-plugin.js +122 -0
  364. package/dist/cjs/plugin/camel-case/camel-case-transformer.d.ts +9 -0
  365. package/dist/cjs/plugin/camel-case/camel-case-transformer.js +19 -0
  366. package/dist/cjs/plugin/camel-case/camel-case.d.ts +15 -0
  367. package/dist/cjs/plugin/camel-case/camel-case.js +111 -0
  368. package/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-plugin.d.ts +70 -0
  369. package/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-plugin.js +19 -0
  370. package/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-transformer.d.ts +11 -0
  371. package/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-transformer.js +42 -0
  372. package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists-plugin.d.ts +211 -0
  373. package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists-plugin.js +162 -0
  374. package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists-transformer.d.ts +8 -0
  375. package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists-transformer.js +29 -0
  376. package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists.d.ts +44 -0
  377. package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists.js +66 -0
  378. package/dist/cjs/plugin/immediate-value/immediate-value-plugin.d.ts +73 -0
  379. package/dist/cjs/plugin/immediate-value/immediate-value-plugin.js +22 -0
  380. package/dist/cjs/plugin/immediate-value/immediate-value-transformer.d.ts +15 -0
  381. package/dist/cjs/plugin/immediate-value/immediate-value-transformer.js +23 -0
  382. package/dist/cjs/plugin/kysely-plugin.d.ts +72 -0
  383. package/dist/cjs/plugin/kysely-plugin.js +2 -0
  384. package/dist/cjs/plugin/noop-plugin.d.ts +64 -0
  385. package/dist/cjs/plugin/noop-plugin.js +12 -0
  386. package/dist/cjs/plugin/parse-json-results/parse-json-results-plugin.d.ts +126 -0
  387. package/dist/cjs/plugin/parse-json-results/parse-json-results-plugin.js +107 -0
  388. package/dist/cjs/plugin/with-schema/with-schema-plugin.d.ts +66 -0
  389. package/dist/cjs/plugin/with-schema/with-schema-plugin.js +17 -0
  390. package/dist/cjs/plugin/with-schema/with-schema-transformer.d.ts +16 -0
  391. package/dist/cjs/plugin/with-schema/with-schema-transformer.js +181 -0
  392. package/dist/cjs/query-builder/aggregate-function-builder.d.ts +379 -0
  393. package/dist/cjs/query-builder/aggregate-function-builder.js +242 -0
  394. package/dist/cjs/query-builder/case-builder.d.ts +112 -0
  395. package/dist/cjs/query-builder/case-builder.js +79 -0
  396. package/dist/cjs/query-builder/cte-builder.d.ts +20 -0
  397. package/dist/cjs/query-builder/cte-builder.js +37 -0
  398. package/dist/cjs/query-builder/delete-query-builder.d.ts +1348 -0
  399. package/dist/cjs/query-builder/delete-query-builder.js +504 -0
  400. package/dist/cjs/query-builder/delete-result.d.ts +4 -0
  401. package/dist/cjs/query-builder/delete-result.js +10 -0
  402. package/dist/cjs/query-builder/function-module.d.ts +592 -0
  403. package/dist/cjs/query-builder/function-module.js +62 -0
  404. package/dist/cjs/query-builder/having-interface.d.ts +15 -0
  405. package/dist/cjs/query-builder/having-interface.js +2 -0
  406. package/dist/cjs/query-builder/insert-query-builder.d.ts +1235 -0
  407. package/dist/cjs/query-builder/insert-query-builder.js +1160 -0
  408. package/dist/cjs/query-builder/insert-result.d.ts +46 -0
  409. package/dist/cjs/query-builder/insert-result.js +53 -0
  410. package/dist/cjs/query-builder/join-builder.d.ts +38 -0
  411. package/dist/cjs/query-builder/join-builder.js +51 -0
  412. package/dist/cjs/query-builder/json-path-builder.d.ts +294 -0
  413. package/dist/cjs/query-builder/json-path-builder.js +200 -0
  414. package/dist/cjs/query-builder/merge-query-builder.d.ts +1001 -0
  415. package/dist/cjs/query-builder/merge-query-builder.js +630 -0
  416. package/dist/cjs/query-builder/merge-result.d.ts +4 -0
  417. package/dist/cjs/query-builder/merge-result.js +10 -0
  418. package/dist/cjs/query-builder/no-result-error.d.ts +10 -0
  419. package/dist/cjs/query-builder/no-result-error.js +18 -0
  420. package/dist/cjs/query-builder/on-conflict-builder.d.ts +872 -0
  421. package/dist/cjs/query-builder/on-conflict-builder.js +259 -0
  422. package/dist/cjs/query-builder/order-by-interface.d.ts +158 -0
  423. package/dist/cjs/query-builder/order-by-interface.js +2 -0
  424. package/dist/cjs/query-builder/order-by-item-builder.d.ts +43 -0
  425. package/dist/cjs/query-builder/order-by-item-builder.js +75 -0
  426. package/dist/cjs/query-builder/output-interface.d.ts +138 -0
  427. package/dist/cjs/query-builder/output-interface.js +2 -0
  428. package/dist/cjs/query-builder/over-builder.d.ts +101 -0
  429. package/dist/cjs/query-builder/over-builder.js +40 -0
  430. package/dist/cjs/query-builder/returning-interface.d.ts +91 -0
  431. package/dist/cjs/query-builder/returning-interface.js +2 -0
  432. package/dist/cjs/query-builder/select-query-builder-expression.d.ts +28 -0
  433. package/dist/cjs/query-builder/select-query-builder-expression.js +2 -0
  434. package/dist/cjs/query-builder/select-query-builder.d.ts +2391 -0
  435. package/dist/cjs/query-builder/select-query-builder.js +376 -0
  436. package/dist/cjs/query-builder/update-query-builder.d.ts +1392 -0
  437. package/dist/cjs/query-builder/update-query-builder.js +513 -0
  438. package/dist/cjs/query-builder/update-result.d.ts +14 -0
  439. package/dist/cjs/query-builder/update-result.js +21 -0
  440. package/dist/cjs/query-builder/where-interface.d.ts +382 -0
  441. package/dist/cjs/query-builder/where-interface.js +2 -0
  442. package/dist/cjs/query-compiler/compiled-query.d.ts +11 -0
  443. package/dist/cjs/query-compiler/compiled-query.js +16 -0
  444. package/dist/cjs/query-compiler/default-query-compiler.d.ts +235 -0
  445. package/dist/cjs/query-compiler/default-query-compiler.js +1390 -0
  446. package/dist/cjs/query-compiler/query-compiler.d.ts +24 -0
  447. package/dist/cjs/query-compiler/query-compiler.js +2 -0
  448. package/dist/cjs/query-creator.d.ts +592 -0
  449. package/dist/cjs/query-creator.js +622 -0
  450. package/dist/cjs/query-executor/default-query-executor.d.ts +50 -0
  451. package/dist/cjs/query-executor/default-query-executor.js +40 -0
  452. package/dist/cjs/query-executor/noop-query-executor.d.ts +50 -0
  453. package/dist/cjs/query-executor/noop-query-executor.js +37 -0
  454. package/dist/cjs/query-executor/query-executor-base.d.ts +68 -0
  455. package/dist/cjs/query-executor/query-executor-base.js +62 -0
  456. package/dist/cjs/query-executor/query-executor-provider.d.ts +8 -0
  457. package/dist/cjs/query-executor/query-executor-provider.js +2 -0
  458. package/dist/cjs/query-executor/query-executor.d.ts +74 -0
  459. package/dist/cjs/query-executor/query-executor.js +2 -0
  460. package/dist/cjs/raw-builder/raw-builder.d.ts +218 -0
  461. package/dist/cjs/raw-builder/raw-builder.js +86 -0
  462. package/dist/cjs/raw-builder/sql.d.ts +366 -0
  463. package/dist/cjs/raw-builder/sql.js +84 -0
  464. package/dist/cjs/relationships/relationship-engine.d.ts +59 -0
  465. package/dist/cjs/relationships/relationship-engine.js +206 -0
  466. package/dist/cjs/repository/repository-factory.d.ts +54 -0
  467. package/dist/cjs/repository/repository-factory.js +449 -0
  468. package/dist/cjs/schema/builders/alter-column-builder.d.ts +53 -0
  469. package/dist/cjs/schema/builders/alter-column-builder.js +74 -0
  470. package/dist/cjs/schema/builders/alter-table-add-foreign-key-constraint-builder.d.ts +32 -0
  471. package/dist/cjs/schema/builders/alter-table-add-foreign-key-constraint-builder.js +67 -0
  472. package/dist/cjs/schema/builders/alter-table-add-index-builder.d.ts +138 -0
  473. package/dist/cjs/schema/builders/alter-table-add-index-builder.js +165 -0
  474. package/dist/cjs/schema/builders/alter-table-builder.d.ts +148 -0
  475. package/dist/cjs/schema/builders/alter-table-builder.js +267 -0
  476. package/dist/cjs/schema/builders/alter-table-drop-constraint-builder.d.ts +26 -0
  477. package/dist/cjs/schema/builders/alter-table-drop-constraint-builder.js +59 -0
  478. package/dist/cjs/schema/builders/alter-table-executor.d.ts +18 -0
  479. package/dist/cjs/schema/builders/alter-table-executor.js +20 -0
  480. package/dist/cjs/schema/builders/check-constraint-builder.d.ts +13 -0
  481. package/dist/cjs/schema/builders/check-constraint-builder.js +20 -0
  482. package/dist/cjs/schema/builders/column-definition-builder.d.ts +514 -0
  483. package/dist/cjs/schema/builders/column-definition-builder.js +600 -0
  484. package/dist/cjs/schema/builders/create-index-builder.d.ts +173 -0
  485. package/dist/cjs/schema/builders/create-index-builder.js +202 -0
  486. package/dist/cjs/schema/builders/create-schema-builder.d.ts +24 -0
  487. package/dist/cjs/schema/builders/create-schema-builder.js +34 -0
  488. package/dist/cjs/schema/builders/create-table-builder.d.ts +331 -0
  489. package/dist/cjs/schema/builders/create-table-builder.js +411 -0
  490. package/dist/cjs/schema/builders/create-type-builder.d.ts +33 -0
  491. package/dist/cjs/schema/builders/create-type-builder.js +43 -0
  492. package/dist/cjs/schema/builders/create-view-builder.d.ts +48 -0
  493. package/dist/cjs/schema/builders/create-view-builder.js +98 -0
  494. package/dist/cjs/schema/builders/drop-index-builder.d.ts +30 -0
  495. package/dist/cjs/schema/builders/drop-index-builder.js +57 -0
  496. package/dist/cjs/schema/builders/drop-schema-builder.d.ts +25 -0
  497. package/dist/cjs/schema/builders/drop-schema-builder.js +44 -0
  498. package/dist/cjs/schema/builders/drop-table-builder.d.ts +25 -0
  499. package/dist/cjs/schema/builders/drop-table-builder.js +44 -0
  500. package/dist/cjs/schema/builders/drop-type-builder.d.ts +24 -0
  501. package/dist/cjs/schema/builders/drop-type-builder.js +36 -0
  502. package/dist/cjs/schema/builders/drop-view-builder.d.ts +26 -0
  503. package/dist/cjs/schema/builders/drop-view-builder.js +52 -0
  504. package/dist/cjs/schema/builders/foreign-key-constraint-builder.d.ts +28 -0
  505. package/dist/cjs/schema/builders/foreign-key-constraint-builder.js +48 -0
  506. package/dist/cjs/schema/builders/index.d.ts +22 -0
  507. package/dist/cjs/schema/builders/index.js +39 -0
  508. package/dist/cjs/schema/builders/primary-key-constraint-builder.d.ts +17 -0
  509. package/dist/cjs/schema/builders/primary-key-constraint-builder.js +37 -0
  510. package/dist/cjs/schema/builders/refresh-materialized-view-builder.d.ts +47 -0
  511. package/dist/cjs/schema/builders/refresh-materialized-view-builder.js +75 -0
  512. package/dist/cjs/schema/builders/unique-constraint-builder.d.ts +23 -0
  513. package/dist/cjs/schema/builders/unique-constraint-builder.js +45 -0
  514. package/dist/cjs/schema/core/coordinators/schema-discovery.coordinator.d.ts +35 -0
  515. package/dist/cjs/schema/core/coordinators/schema-discovery.coordinator.js +63 -0
  516. package/dist/cjs/schema/core/discovery/relationship-discovery.d.ts +36 -0
  517. package/dist/cjs/schema/core/discovery/relationship-discovery.js +162 -0
  518. package/dist/cjs/schema/core/discovery/table-metadata-discovery.d.ts +29 -0
  519. package/dist/cjs/schema/core/discovery/table-metadata-discovery.js +126 -0
  520. package/dist/cjs/schema/core/discovery/view-discovery.d.ts +36 -0
  521. package/dist/cjs/schema/core/discovery/view-discovery.js +137 -0
  522. package/dist/cjs/schema/core/factories/discovery-factory.d.ts +66 -0
  523. package/dist/cjs/schema/core/factories/discovery-factory.js +122 -0
  524. package/dist/cjs/schema/core/types/schema-discovery-types.d.ts +43 -0
  525. package/dist/cjs/schema/core/types/schema-discovery-types.js +3 -0
  526. package/dist/cjs/schema/core/utils/name-generator.d.ts +21 -0
  527. package/dist/cjs/schema/core/utils/name-generator.js +55 -0
  528. package/dist/cjs/schema/core/utils/type-mapper.d.ts +25 -0
  529. package/dist/cjs/schema/core/utils/type-mapper.js +61 -0
  530. package/dist/cjs/schema/dialects/sqlite/discovery/sqlite-constraint-discovery.d.ts +97 -0
  531. package/dist/cjs/schema/dialects/sqlite/discovery/sqlite-constraint-discovery.js +533 -0
  532. package/dist/cjs/schema/dialects/sqlite/discovery/sqlite-index-discovery.d.ts +32 -0
  533. package/dist/cjs/schema/dialects/sqlite/discovery/sqlite-index-discovery.js +133 -0
  534. package/dist/cjs/schema/dialects/sqlite/introspection/sqlite-schema-introspector.d.ts +31 -0
  535. package/dist/cjs/schema/dialects/sqlite/introspection/sqlite-schema-introspector.js +192 -0
  536. package/dist/cjs/schema/dialects/sqlite/sqlite-discovery.coordinator.d.ts +51 -0
  537. package/dist/cjs/schema/dialects/sqlite/sqlite-discovery.coordinator.js +180 -0
  538. package/dist/cjs/schema/index.d.ts +14 -0
  539. package/dist/cjs/schema/index.js +49 -0
  540. package/dist/cjs/schema/schema-discovery.d.ts +23 -0
  541. package/dist/cjs/schema/schema-discovery.js +33 -0
  542. package/dist/cjs/schema/schema.d.ts +230 -0
  543. package/dist/cjs/schema/schema.js +328 -0
  544. package/dist/cjs/schema/test/basic-schema-test.d.ts +8 -0
  545. package/dist/cjs/schema/test/basic-schema-test.js +184 -0
  546. package/dist/cjs/schema/test/dialect-capabilities.test.d.ts +1 -0
  547. package/dist/cjs/schema/test/dialect-capabilities.test.js +153 -0
  548. package/dist/cjs/schema/test/discovery-factory.test.d.ts +1 -0
  549. package/dist/cjs/schema/test/discovery-factory.test.js +151 -0
  550. package/dist/cjs/schema/test/error-handling.test.d.ts +1 -0
  551. package/dist/cjs/schema/test/error-handling.test.js +149 -0
  552. package/dist/cjs/schema/test/integration.test.d.ts +1 -0
  553. package/dist/cjs/schema/test/integration.test.js +135 -0
  554. package/dist/cjs/schema/test/schema-discovery-coordinator.test.d.ts +1 -0
  555. package/dist/cjs/schema/test/schema-discovery-coordinator.test.js +139 -0
  556. package/dist/cjs/schema/test/simple-schema-test.d.ts +5 -0
  557. package/dist/cjs/schema/test/simple-schema-test.js +77 -0
  558. package/dist/cjs/schema/test/sqlite-discovery-coordinator.test.d.ts +1 -0
  559. package/dist/cjs/schema/test/sqlite-discovery-coordinator.test.js +377 -0
  560. package/dist/cjs/schema/test/test-runner.d.ts +66 -0
  561. package/dist/cjs/schema/test/test-runner.js +90 -0
  562. package/dist/cjs/sqlite-migration/index.d.ts +6 -0
  563. package/dist/cjs/sqlite-migration/index.js +20 -0
  564. package/dist/cjs/sqlite-migration/sqlite-migration-manager.d.ts +104 -0
  565. package/dist/cjs/sqlite-migration/sqlite-migration-manager.js +335 -0
  566. package/dist/cjs/sqlite-migration/sqlite-migration-provider.d.ts +77 -0
  567. package/dist/cjs/sqlite-migration/sqlite-migration-provider.js +342 -0
  568. package/dist/cjs/testing/test-utils.d.ts +110 -0
  569. package/dist/cjs/testing/test-utils.js +328 -0
  570. package/dist/cjs/types/index.d.ts +155 -0
  571. package/dist/cjs/types/index.js +5 -0
  572. package/dist/cjs/types/type-generator.d.ts +52 -0
  573. package/dist/cjs/types/type-generator.js +261 -0
  574. package/dist/cjs/util/assert.d.ts +2 -0
  575. package/dist/cjs/util/assert.js +14 -0
  576. package/dist/cjs/util/column-type.d.ts +175 -0
  577. package/dist/cjs/util/column-type.js +2 -0
  578. package/dist/cjs/util/compilable.d.ts +5 -0
  579. package/dist/cjs/util/compilable.js +7 -0
  580. package/dist/cjs/util/deferred.d.ts +7 -0
  581. package/dist/cjs/util/deferred.js +28 -0
  582. package/dist/cjs/util/explainable.d.ts +40 -0
  583. package/dist/cjs/util/explainable.js +2 -0
  584. package/dist/cjs/util/infer-result.d.ts +48 -0
  585. package/dist/cjs/util/infer-result.js +2 -0
  586. package/dist/cjs/util/json-object-args.d.ts +3 -0
  587. package/dist/cjs/util/json-object-args.js +34 -0
  588. package/dist/cjs/util/log-once.d.ts +5 -0
  589. package/dist/cjs/util/log-once.js +15 -0
  590. package/dist/cjs/util/log.d.ts +26 -0
  591. package/dist/cjs/util/log.js +58 -0
  592. package/dist/cjs/util/object-utils.d.ts +23 -0
  593. package/dist/cjs/util/object-utils.js +162 -0
  594. package/dist/cjs/util/performance-now.d.ts +1 -0
  595. package/dist/cjs/util/performance-now.js +12 -0
  596. package/dist/cjs/util/provide-controlled-connection.d.ts +7 -0
  597. package/dist/cjs/util/provide-controlled-connection.js +24 -0
  598. package/dist/cjs/util/query-id.d.ts +4 -0
  599. package/dist/cjs/util/query-id.js +16 -0
  600. package/dist/cjs/util/random-string.d.ts +1 -0
  601. package/dist/cjs/util/random-string.js +77 -0
  602. package/dist/cjs/util/require-all-props.d.ts +45 -0
  603. package/dist/cjs/util/require-all-props.js +41 -0
  604. package/dist/cjs/util/stack-trace-utils.d.ts +1 -0
  605. package/dist/cjs/util/stack-trace-utils.js +16 -0
  606. package/dist/cjs/util/streamable.d.ts +29 -0
  607. package/dist/cjs/util/streamable.js +2 -0
  608. package/dist/cjs/util/type-error.d.ts +3 -0
  609. package/dist/cjs/util/type-error.js +2 -0
  610. package/dist/cjs/util/type-utils.d.ts +189 -0
  611. package/dist/cjs/util/type-utils.js +2 -0
  612. package/dist/cjs/utils/errorHelpers.d.ts +26 -0
  613. package/dist/cjs/utils/errorHelpers.js +186 -0
  614. package/dist/cjs/watch/schema-watcher.d.ts +68 -0
  615. package/dist/cjs/watch/schema-watcher.js +186 -0
  616. package/dist/esm/cache/cache-manager.d.ts +76 -0
  617. package/dist/esm/cache/cache-manager.js +166 -0
  618. package/dist/esm/cli/commands/analyze.d.ts +7 -0
  619. package/dist/esm/cli/commands/analyze.js +130 -0
  620. package/dist/esm/cli/commands/generate.d.ts +7 -0
  621. package/dist/esm/cli/commands/generate.js +512 -0
  622. package/dist/esm/cli/commands/init.d.ts +7 -0
  623. package/dist/esm/cli/commands/init.js +468 -0
  624. package/dist/esm/cli/commands/inspect.d.ts +7 -0
  625. package/dist/esm/cli/commands/inspect.js +363 -0
  626. package/dist/esm/cli/commands/migrate.d.ts +8 -0
  627. package/dist/esm/cli/commands/migrate.js +216 -0
  628. package/dist/esm/cli/commands/optimize.d.ts +8 -0
  629. package/dist/esm/cli/commands/optimize.js +154 -0
  630. package/dist/esm/cli/commands/status.d.ts +6 -0
  631. package/dist/esm/cli/commands/status.js +265 -0
  632. package/dist/esm/cli/commands/watch.d.ts +7 -0
  633. package/dist/esm/cli/commands/watch.js +214 -0
  634. package/dist/esm/cli/index.d.ts +2 -0
  635. package/dist/esm/cli/index.js +156 -0
  636. package/dist/esm/dialect/database-introspector.d.ts +61 -0
  637. package/dist/esm/dialect/database-introspector.js +82 -0
  638. package/dist/esm/dialect/dialect-adapter-base.d.ts +94 -0
  639. package/dist/esm/dialect/dialect-adapter-base.js +21 -0
  640. package/dist/esm/dialect/dialect-adapter.d.ts +115 -0
  641. package/dist/esm/dialect/dialect-adapter.js +2 -0
  642. package/dist/esm/dialect/dialect.d.ts +34 -0
  643. package/dist/esm/dialect/dialect.js +2 -0
  644. package/dist/esm/dialect/sqlite/sqlite-adapter.d.ts +80 -0
  645. package/dist/esm/dialect/sqlite/sqlite-adapter.js +20 -0
  646. package/dist/esm/dialect/sqlite/sqlite-auto-indexer.d.ts +181 -0
  647. package/dist/esm/dialect/sqlite/sqlite-auto-indexer.js +538 -0
  648. package/dist/esm/dialect/sqlite/sqlite-auto-optimizer.d.ts +102 -0
  649. package/dist/esm/dialect/sqlite/sqlite-auto-optimizer.js +370 -0
  650. package/dist/esm/dialect/sqlite/sqlite-dialect-config.d.ts +41 -0
  651. package/dist/esm/dialect/sqlite/sqlite-dialect-config.js +2 -0
  652. package/dist/esm/dialect/sqlite/sqlite-dialect.d.ts +55 -0
  653. package/dist/esm/dialect/sqlite/sqlite-dialect.js +48 -0
  654. package/dist/esm/dialect/sqlite/sqlite-driver.d.ts +42 -0
  655. package/dist/esm/dialect/sqlite/sqlite-driver.js +149 -0
  656. package/dist/esm/dialect/sqlite/sqlite-introspector.d.ts +36 -0
  657. package/dist/esm/dialect/sqlite/sqlite-introspector.js +233 -0
  658. package/dist/esm/dialect/sqlite/sqlite-query-compiler.d.ts +16 -0
  659. package/dist/esm/dialect/sqlite/sqlite-query-compiler.js +40 -0
  660. package/dist/esm/driver/connection-provider.d.ts +8 -0
  661. package/dist/esm/driver/connection-provider.js +2 -0
  662. package/dist/esm/driver/database-connection.d.ts +35 -0
  663. package/dist/esm/driver/database-connection.js +2 -0
  664. package/dist/esm/driver/default-connection-provider.d.ts +12 -0
  665. package/dist/esm/driver/default-connection-provider.js +16 -0
  666. package/dist/esm/driver/driver.d.ts +61 -0
  667. package/dist/esm/driver/driver.js +19 -0
  668. package/dist/esm/driver/dummy-driver.d.ts +75 -0
  669. package/dist/esm/driver/dummy-driver.js +80 -0
  670. package/dist/esm/driver/runtime-driver.d.ts +47 -0
  671. package/dist/esm/driver/runtime-driver.js +162 -0
  672. package/dist/esm/driver/single-connection-provider.d.ts +11 -0
  673. package/dist/esm/driver/single-connection-provider.js +26 -0
  674. package/dist/esm/dynamic/dynamic-reference-builder.d.ts +18 -0
  675. package/dist/esm/dynamic/dynamic-reference-builder.js +32 -0
  676. package/dist/esm/dynamic/dynamic-table-builder.d.ts +16 -0
  677. package/dist/esm/dynamic/dynamic-table-builder.js +41 -0
  678. package/dist/esm/dynamic/dynamic.d.ts +124 -0
  679. package/dist/esm/dynamic/dynamic.js +129 -0
  680. package/dist/esm/errors/NoormError.d.ts +56 -0
  681. package/dist/esm/errors/NoormError.js +150 -0
  682. package/dist/esm/expression/expression-builder.d.ts +920 -0
  683. package/dist/esm/expression/expression-builder.js +125 -0
  684. package/dist/esm/expression/expression-wrapper.d.ts +631 -0
  685. package/dist/esm/expression/expression-wrapper.js +128 -0
  686. package/dist/esm/expression/expression.d.ts +198 -0
  687. package/dist/esm/expression/expression.js +12 -0
  688. package/dist/esm/helpers/sqlite.d.ts +189 -0
  689. package/dist/esm/helpers/sqlite.js +200 -0
  690. package/dist/esm/index.d.ts +211 -0
  691. package/dist/esm/index.js +203 -0
  692. package/dist/esm/kysely.d.ts +848 -0
  693. package/dist/esm/kysely.js +914 -0
  694. package/dist/esm/logging/logger.d.ts +96 -0
  695. package/dist/esm/logging/logger.js +176 -0
  696. package/dist/esm/noormme.d.ts +137 -0
  697. package/dist/esm/noormme.js +518 -0
  698. package/dist/esm/operation-node/add-column-node.d.ts +13 -0
  699. package/dist/esm/operation-node/add-column-node.js +16 -0
  700. package/dist/esm/operation-node/add-constraint-node.d.ts +13 -0
  701. package/dist/esm/operation-node/add-constraint-node.js +16 -0
  702. package/dist/esm/operation-node/add-index-node.d.ts +21 -0
  703. package/dist/esm/operation-node/add-index-node.js +29 -0
  704. package/dist/esm/operation-node/aggregate-function-node.d.ts +27 -0
  705. package/dist/esm/operation-node/aggregate-function-node.js +56 -0
  706. package/dist/esm/operation-node/alias-node.d.ts +13 -0
  707. package/dist/esm/operation-node/alias-node.js +17 -0
  708. package/dist/esm/operation-node/alter-column-node.d.ts +21 -0
  709. package/dist/esm/operation-node/alter-column-node.js +18 -0
  710. package/dist/esm/operation-node/alter-table-node.d.ts +36 -0
  711. package/dist/esm/operation-node/alter-table-node.js +30 -0
  712. package/dist/esm/operation-node/and-node.d.ts +13 -0
  713. package/dist/esm/operation-node/and-node.js +17 -0
  714. package/dist/esm/operation-node/binary-operation-node.d.ts +14 -0
  715. package/dist/esm/operation-node/binary-operation-node.js +18 -0
  716. package/dist/esm/operation-node/case-node.d.ts +19 -0
  717. package/dist/esm/operation-node/case-node.js +40 -0
  718. package/dist/esm/operation-node/cast-node.d.ts +13 -0
  719. package/dist/esm/operation-node/cast-node.js +17 -0
  720. package/dist/esm/operation-node/check-constraint-node.d.ts +14 -0
  721. package/dist/esm/operation-node/check-constraint-node.js +18 -0
  722. package/dist/esm/operation-node/collate-node.d.ts +13 -0
  723. package/dist/esm/operation-node/collate-node.js +17 -0
  724. package/dist/esm/operation-node/column-definition-node.d.ts +36 -0
  725. package/dist/esm/operation-node/column-definition-node.js +40 -0
  726. package/dist/esm/operation-node/column-node.d.ts +13 -0
  727. package/dist/esm/operation-node/column-node.js +17 -0
  728. package/dist/esm/operation-node/column-update-node.d.ts +13 -0
  729. package/dist/esm/operation-node/column-update-node.js +17 -0
  730. package/dist/esm/operation-node/common-table-expression-name-node.d.ts +15 -0
  731. package/dist/esm/operation-node/common-table-expression-name-node.js +21 -0
  732. package/dist/esm/operation-node/common-table-expression-node.d.ts +18 -0
  733. package/dist/esm/operation-node/common-table-expression-node.js +23 -0
  734. package/dist/esm/operation-node/constraint-node.d.ts +5 -0
  735. package/dist/esm/operation-node/constraint-node.js +2 -0
  736. package/dist/esm/operation-node/create-index-node.d.ts +27 -0
  737. package/dist/esm/operation-node/create-index-node.js +29 -0
  738. package/dist/esm/operation-node/create-schema-node.d.ts +16 -0
  739. package/dist/esm/operation-node/create-schema-node.js +24 -0
  740. package/dist/esm/operation-node/create-table-node.d.ts +32 -0
  741. package/dist/esm/operation-node/create-table-node.js +54 -0
  742. package/dist/esm/operation-node/create-type-node.d.ts +17 -0
  743. package/dist/esm/operation-node/create-type-node.js +24 -0
  744. package/dist/esm/operation-node/create-view-node.d.ts +24 -0
  745. package/dist/esm/operation-node/create-view-node.js +23 -0
  746. package/dist/esm/operation-node/data-type-node.d.ts +18 -0
  747. package/dist/esm/operation-node/data-type-node.js +83 -0
  748. package/dist/esm/operation-node/default-insert-value-node.d.ts +11 -0
  749. package/dist/esm/operation-node/default-insert-value-node.js +15 -0
  750. package/dist/esm/operation-node/default-value-node.d.ts +12 -0
  751. package/dist/esm/operation-node/default-value-node.js +16 -0
  752. package/dist/esm/operation-node/delete-query-node.d.ts +46 -0
  753. package/dist/esm/operation-node/delete-query-node.js +50 -0
  754. package/dist/esm/operation-node/drop-column-node.d.ts +13 -0
  755. package/dist/esm/operation-node/drop-column-node.js +17 -0
  756. package/dist/esm/operation-node/drop-constraint-node.d.ts +17 -0
  757. package/dist/esm/operation-node/drop-constraint-node.js +23 -0
  758. package/dist/esm/operation-node/drop-index-node.d.ts +19 -0
  759. package/dist/esm/operation-node/drop-index-node.js +24 -0
  760. package/dist/esm/operation-node/drop-schema-node.d.ts +17 -0
  761. package/dist/esm/operation-node/drop-schema-node.js +24 -0
  762. package/dist/esm/operation-node/drop-table-node.d.ts +17 -0
  763. package/dist/esm/operation-node/drop-table-node.js +23 -0
  764. package/dist/esm/operation-node/drop-type-node.d.ts +16 -0
  765. package/dist/esm/operation-node/drop-type-node.js +22 -0
  766. package/dist/esm/operation-node/drop-view-node.d.ts +18 -0
  767. package/dist/esm/operation-node/drop-view-node.js +23 -0
  768. package/dist/esm/operation-node/explain-node.d.ts +14 -0
  769. package/dist/esm/operation-node/explain-node.js +17 -0
  770. package/dist/esm/operation-node/fetch-node.d.ts +15 -0
  771. package/dist/esm/operation-node/fetch-node.js +17 -0
  772. package/dist/esm/operation-node/foreign-key-constraint-node.d.ts +33 -0
  773. package/dist/esm/operation-node/foreign-key-constraint-node.js +26 -0
  774. package/dist/esm/operation-node/from-node.d.ts +13 -0
  775. package/dist/esm/operation-node/from-node.js +22 -0
  776. package/dist/esm/operation-node/function-node.d.ts +13 -0
  777. package/dist/esm/operation-node/function-node.js +17 -0
  778. package/dist/esm/operation-node/generated-node.d.ts +19 -0
  779. package/dist/esm/operation-node/generated-node.js +29 -0
  780. package/dist/esm/operation-node/group-by-item-node.d.ts +12 -0
  781. package/dist/esm/operation-node/group-by-item-node.js +16 -0
  782. package/dist/esm/operation-node/group-by-node.d.ts +14 -0
  783. package/dist/esm/operation-node/group-by-node.js +22 -0
  784. package/dist/esm/operation-node/having-node.d.ts +13 -0
  785. package/dist/esm/operation-node/having-node.js +26 -0
  786. package/dist/esm/operation-node/identifier-node.d.ts +12 -0
  787. package/dist/esm/operation-node/identifier-node.js +16 -0
  788. package/dist/esm/operation-node/insert-query-node.d.ts +40 -0
  789. package/dist/esm/operation-node/insert-query-node.js +29 -0
  790. package/dist/esm/operation-node/join-node.d.ts +18 -0
  791. package/dist/esm/operation-node/join-node.js +35 -0
  792. package/dist/esm/operation-node/json-operator-chain-node.d.ts +16 -0
  793. package/dist/esm/operation-node/json-operator-chain-node.js +23 -0
  794. package/dist/esm/operation-node/json-path-leg-node.d.ts +14 -0
  795. package/dist/esm/operation-node/json-path-leg-node.js +17 -0
  796. package/dist/esm/operation-node/json-path-node.d.ts +16 -0
  797. package/dist/esm/operation-node/json-path-node.js +23 -0
  798. package/dist/esm/operation-node/json-reference-node.d.ts +17 -0
  799. package/dist/esm/operation-node/json-reference-node.js +23 -0
  800. package/dist/esm/operation-node/limit-node.d.ts +12 -0
  801. package/dist/esm/operation-node/limit-node.js +16 -0
  802. package/dist/esm/operation-node/list-node.d.ts +12 -0
  803. package/dist/esm/operation-node/list-node.js +16 -0
  804. package/dist/esm/operation-node/matched-node.d.ts +13 -0
  805. package/dist/esm/operation-node/matched-node.js +17 -0
  806. package/dist/esm/operation-node/merge-query-node.d.ts +30 -0
  807. package/dist/esm/operation-node/merge-query-node.js +43 -0
  808. package/dist/esm/operation-node/modify-column-node.d.ts +13 -0
  809. package/dist/esm/operation-node/modify-column-node.js +16 -0
  810. package/dist/esm/operation-node/offset-node.d.ts +12 -0
  811. package/dist/esm/operation-node/offset-node.js +16 -0
  812. package/dist/esm/operation-node/on-conflict-node.d.ts +30 -0
  813. package/dist/esm/operation-node/on-conflict-node.js +66 -0
  814. package/dist/esm/operation-node/on-duplicate-key-node.d.ts +14 -0
  815. package/dist/esm/operation-node/on-duplicate-key-node.js +16 -0
  816. package/dist/esm/operation-node/on-node.d.ts +13 -0
  817. package/dist/esm/operation-node/on-node.js +26 -0
  818. package/dist/esm/operation-node/operation-node-source.d.ts +5 -0
  819. package/dist/esm/operation-node/operation-node-source.js +5 -0
  820. package/dist/esm/operation-node/operation-node-transformer.d.ts +238 -0
  821. package/dist/esm/operation-node/operation-node-transformer.js +926 -0
  822. package/dist/esm/operation-node/operation-node-visitor.d.ts +201 -0
  823. package/dist/esm/operation-node/operation-node-visitor.js +112 -0
  824. package/dist/esm/operation-node/operation-node.d.ts +4 -0
  825. package/dist/esm/operation-node/operation-node.js +2 -0
  826. package/dist/esm/operation-node/operator-node.d.ts +32 -0
  827. package/dist/esm/operation-node/operator-node.js +100 -0
  828. package/dist/esm/operation-node/or-action-node.d.ts +12 -0
  829. package/dist/esm/operation-node/or-action-node.js +16 -0
  830. package/dist/esm/operation-node/or-node.d.ts +13 -0
  831. package/dist/esm/operation-node/or-node.js +17 -0
  832. package/dist/esm/operation-node/order-by-item-node.d.ts +18 -0
  833. package/dist/esm/operation-node/order-by-item-node.js +23 -0
  834. package/dist/esm/operation-node/order-by-node.d.ts +14 -0
  835. package/dist/esm/operation-node/order-by-node.js +22 -0
  836. package/dist/esm/operation-node/output-node.d.ts +13 -0
  837. package/dist/esm/operation-node/output-node.js +24 -0
  838. package/dist/esm/operation-node/over-node.d.ts +19 -0
  839. package/dist/esm/operation-node/over-node.js +33 -0
  840. package/dist/esm/operation-node/parens-node.d.ts +12 -0
  841. package/dist/esm/operation-node/parens-node.js +16 -0
  842. package/dist/esm/operation-node/partition-by-item-node.d.ts +13 -0
  843. package/dist/esm/operation-node/partition-by-item-node.js +16 -0
  844. package/dist/esm/operation-node/partition-by-node.d.ts +14 -0
  845. package/dist/esm/operation-node/partition-by-node.js +22 -0
  846. package/dist/esm/operation-node/primary-key-constraint-node.d.ts +29 -0
  847. package/dist/esm/operation-node/primary-key-constraint-node.js +28 -0
  848. package/dist/esm/operation-node/primitive-value-list-node.d.ts +17 -0
  849. package/dist/esm/operation-node/primitive-value-list-node.js +16 -0
  850. package/dist/esm/operation-node/query-node.d.ts +60 -0
  851. package/dist/esm/operation-node/query-node.js +100 -0
  852. package/dist/esm/operation-node/raw-node.d.ts +16 -0
  853. package/dist/esm/operation-node/raw-node.js +26 -0
  854. package/dist/esm/operation-node/reference-node.d.ts +17 -0
  855. package/dist/esm/operation-node/reference-node.js +25 -0
  856. package/dist/esm/operation-node/references-node.d.ts +22 -0
  857. package/dist/esm/operation-node/references-node.js +36 -0
  858. package/dist/esm/operation-node/refresh-materialized-view-node.d.ts +17 -0
  859. package/dist/esm/operation-node/refresh-materialized-view-node.js +23 -0
  860. package/dist/esm/operation-node/rename-column-node.d.ts +14 -0
  861. package/dist/esm/operation-node/rename-column-node.js +18 -0
  862. package/dist/esm/operation-node/rename-constraint-node.d.ts +14 -0
  863. package/dist/esm/operation-node/rename-constraint-node.js +18 -0
  864. package/dist/esm/operation-node/returning-node.d.ts +14 -0
  865. package/dist/esm/operation-node/returning-node.js +24 -0
  866. package/dist/esm/operation-node/schemable-identifier-node.d.ts +15 -0
  867. package/dist/esm/operation-node/schemable-identifier-node.js +24 -0
  868. package/dist/esm/operation-node/select-all-node.d.ts +11 -0
  869. package/dist/esm/operation-node/select-all-node.js +15 -0
  870. package/dist/esm/operation-node/select-modifier-node.d.ts +16 -0
  871. package/dist/esm/operation-node/select-modifier-node.js +23 -0
  872. package/dist/esm/operation-node/select-query-node.d.ts +67 -0
  873. package/dist/esm/operation-node/select-query-node.js +127 -0
  874. package/dist/esm/operation-node/selection-node.d.ts +20 -0
  875. package/dist/esm/operation-node/selection-node.js +30 -0
  876. package/dist/esm/operation-node/set-operation-node.d.ts +15 -0
  877. package/dist/esm/operation-node/set-operation-node.js +18 -0
  878. package/dist/esm/operation-node/simple-reference-expression-node.d.ts +3 -0
  879. package/dist/esm/operation-node/simple-reference-expression-node.js +2 -0
  880. package/dist/esm/operation-node/table-node.d.ts +14 -0
  881. package/dist/esm/operation-node/table-node.js +23 -0
  882. package/dist/esm/operation-node/top-node.d.ts +14 -0
  883. package/dist/esm/operation-node/top-node.js +17 -0
  884. package/dist/esm/operation-node/tuple-node.d.ts +12 -0
  885. package/dist/esm/operation-node/tuple-node.js +16 -0
  886. package/dist/esm/operation-node/unary-operation-node.d.ts +13 -0
  887. package/dist/esm/operation-node/unary-operation-node.js +17 -0
  888. package/dist/esm/operation-node/unique-constraint-node.d.ts +20 -0
  889. package/dist/esm/operation-node/unique-constraint-node.js +26 -0
  890. package/dist/esm/operation-node/update-query-node.d.ts +39 -0
  891. package/dist/esm/operation-node/update-query-node.js +48 -0
  892. package/dist/esm/operation-node/using-node.d.ts +13 -0
  893. package/dist/esm/operation-node/using-node.js +22 -0
  894. package/dist/esm/operation-node/value-list-node.d.ts +12 -0
  895. package/dist/esm/operation-node/value-list-node.js +16 -0
  896. package/dist/esm/operation-node/value-node.d.ts +14 -0
  897. package/dist/esm/operation-node/value-node.js +23 -0
  898. package/dist/esm/operation-node/values-node.d.ts +15 -0
  899. package/dist/esm/operation-node/values-node.js +16 -0
  900. package/dist/esm/operation-node/when-node.d.ts +14 -0
  901. package/dist/esm/operation-node/when-node.js +22 -0
  902. package/dist/esm/operation-node/where-node.d.ts +13 -0
  903. package/dist/esm/operation-node/where-node.js +26 -0
  904. package/dist/esm/operation-node/with-node.d.ts +16 -0
  905. package/dist/esm/operation-node/with-node.js +23 -0
  906. package/dist/esm/package.json +1 -0
  907. package/dist/esm/parser/binary-operation-parser.d.ts +21 -0
  908. package/dist/esm/parser/binary-operation-parser.js +68 -0
  909. package/dist/esm/parser/coalesce-parser.d.ts +12 -0
  910. package/dist/esm/parser/coalesce-parser.js +2 -0
  911. package/dist/esm/parser/collate-parser.d.ts +1 -0
  912. package/dist/esm/parser/collate-parser.js +2 -0
  913. package/dist/esm/parser/data-type-parser.d.ts +5 -0
  914. package/dist/esm/parser/data-type-parser.js +12 -0
  915. package/dist/esm/parser/default-value-parser.d.ts +4 -0
  916. package/dist/esm/parser/default-value-parser.js +8 -0
  917. package/dist/esm/parser/delete-from-parser.d.ts +9 -0
  918. package/dist/esm/parser/delete-from-parser.js +2 -0
  919. package/dist/esm/parser/expression-parser.d.ts +20 -0
  920. package/dist/esm/parser/expression-parser.js +26 -0
  921. package/dist/esm/parser/fetch-parser.d.ts +2 -0
  922. package/dist/esm/parser/fetch-parser.js +15 -0
  923. package/dist/esm/parser/group-by-parser.d.ts +6 -0
  924. package/dist/esm/parser/group-by-parser.js +9 -0
  925. package/dist/esm/parser/identifier-parser.d.ts +2 -0
  926. package/dist/esm/parser/identifier-parser.js +20 -0
  927. package/dist/esm/parser/insert-values-parser.d.ts +14 -0
  928. package/dist/esm/parser/insert-values-parser.js +62 -0
  929. package/dist/esm/parser/join-parser.d.ts +10 -0
  930. package/dist/esm/parser/join-parser.js +28 -0
  931. package/dist/esm/parser/merge-into-parser.d.ts +7 -0
  932. package/dist/esm/parser/merge-into-parser.js +2 -0
  933. package/dist/esm/parser/merge-parser.d.ts +9 -0
  934. package/dist/esm/parser/merge-parser.js +28 -0
  935. package/dist/esm/parser/on-commit-action-parse.d.ts +2 -0
  936. package/dist/esm/parser/on-commit-action-parse.js +8 -0
  937. package/dist/esm/parser/on-modify-action-parser.d.ts +2 -0
  938. package/dist/esm/parser/on-modify-action-parser.js +8 -0
  939. package/dist/esm/parser/order-by-parser.d.ts +25 -0
  940. package/dist/esm/parser/order-by-parser.js +67 -0
  941. package/dist/esm/parser/parse-utils.d.ts +10 -0
  942. package/dist/esm/parser/parse-utils.js +33 -0
  943. package/dist/esm/parser/partition-by-parser.d.ts +6 -0
  944. package/dist/esm/parser/partition-by-parser.js +6 -0
  945. package/dist/esm/parser/reference-parser.d.ts +31 -0
  946. package/dist/esm/parser/reference-parser.js +95 -0
  947. package/dist/esm/parser/returning-parser.d.ts +8 -0
  948. package/dist/esm/parser/returning-parser.js +2 -0
  949. package/dist/esm/parser/savepoint-parser.d.ts +4 -0
  950. package/dist/esm/parser/savepoint-parser.js +9 -0
  951. package/dist/esm/parser/select-from-parser.d.ts +6 -0
  952. package/dist/esm/parser/select-from-parser.js +2 -0
  953. package/dist/esm/parser/select-parser.d.ts +36 -0
  954. package/dist/esm/parser/select-parser.js +47 -0
  955. package/dist/esm/parser/set-operation-parser.d.ts +5 -0
  956. package/dist/esm/parser/set-operation-parser.js +14 -0
  957. package/dist/esm/parser/table-parser.d.ts +24 -0
  958. package/dist/esm/parser/table-parser.js +49 -0
  959. package/dist/esm/parser/top-parser.d.ts +2 -0
  960. package/dist/esm/parser/top-parser.js +17 -0
  961. package/dist/esm/parser/tuple-parser.d.ts +47 -0
  962. package/dist/esm/parser/tuple-parser.js +2 -0
  963. package/dist/esm/parser/unary-operation-parser.d.ts +8 -0
  964. package/dist/esm/parser/unary-operation-parser.js +13 -0
  965. package/dist/esm/parser/update-parser.d.ts +9 -0
  966. package/dist/esm/parser/update-parser.js +2 -0
  967. package/dist/esm/parser/update-set-parser.d.ts +16 -0
  968. package/dist/esm/parser/update-set-parser.js +23 -0
  969. package/dist/esm/parser/value-parser.d.ts +13 -0
  970. package/dist/esm/parser/value-parser.js +33 -0
  971. package/dist/esm/parser/with-parser.d.ts +45 -0
  972. package/dist/esm/parser/with-parser.js +31 -0
  973. package/dist/esm/performance/query-analyzer.d.ts +89 -0
  974. package/dist/esm/performance/query-analyzer.js +260 -0
  975. package/dist/esm/plugin/camel-case/camel-case-plugin.d.ts +170 -0
  976. package/dist/esm/plugin/camel-case/camel-case-plugin.js +119 -0
  977. package/dist/esm/plugin/camel-case/camel-case-transformer.d.ts +9 -0
  978. package/dist/esm/plugin/camel-case/camel-case-transformer.js +16 -0
  979. package/dist/esm/plugin/camel-case/camel-case.d.ts +15 -0
  980. package/dist/esm/plugin/camel-case/camel-case.js +108 -0
  981. package/dist/esm/plugin/deduplicate-joins/deduplicate-joins-plugin.d.ts +70 -0
  982. package/dist/esm/plugin/deduplicate-joins/deduplicate-joins-plugin.js +16 -0
  983. package/dist/esm/plugin/deduplicate-joins/deduplicate-joins-transformer.d.ts +11 -0
  984. package/dist/esm/plugin/deduplicate-joins/deduplicate-joins-transformer.js +39 -0
  985. package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists-plugin.d.ts +211 -0
  986. package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists-plugin.js +159 -0
  987. package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists-transformer.d.ts +8 -0
  988. package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists-transformer.js +26 -0
  989. package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists.d.ts +44 -0
  990. package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists.js +63 -0
  991. package/dist/esm/plugin/immediate-value/immediate-value-plugin.d.ts +73 -0
  992. package/dist/esm/plugin/immediate-value/immediate-value-plugin.js +19 -0
  993. package/dist/esm/plugin/immediate-value/immediate-value-transformer.d.ts +15 -0
  994. package/dist/esm/plugin/immediate-value/immediate-value-transformer.js +20 -0
  995. package/dist/esm/plugin/kysely-plugin.d.ts +72 -0
  996. package/dist/esm/plugin/kysely-plugin.js +2 -0
  997. package/dist/esm/plugin/noop-plugin.d.ts +64 -0
  998. package/dist/esm/plugin/noop-plugin.js +9 -0
  999. package/dist/esm/plugin/parse-json-results/parse-json-results-plugin.d.ts +126 -0
  1000. package/dist/esm/plugin/parse-json-results/parse-json-results-plugin.js +104 -0
  1001. package/dist/esm/plugin/with-schema/with-schema-plugin.d.ts +66 -0
  1002. package/dist/esm/plugin/with-schema/with-schema-plugin.js +14 -0
  1003. package/dist/esm/plugin/with-schema/with-schema-transformer.d.ts +16 -0
  1004. package/dist/esm/plugin/with-schema/with-schema-transformer.js +178 -0
  1005. package/dist/esm/query-builder/aggregate-function-builder.d.ts +379 -0
  1006. package/dist/esm/query-builder/aggregate-function-builder.js +238 -0
  1007. package/dist/esm/query-builder/case-builder.d.ts +112 -0
  1008. package/dist/esm/query-builder/case-builder.js +73 -0
  1009. package/dist/esm/query-builder/cte-builder.d.ts +20 -0
  1010. package/dist/esm/query-builder/cte-builder.js +34 -0
  1011. package/dist/esm/query-builder/delete-query-builder.d.ts +1348 -0
  1012. package/dist/esm/query-builder/delete-query-builder.js +501 -0
  1013. package/dist/esm/query-builder/delete-result.d.ts +4 -0
  1014. package/dist/esm/query-builder/delete-result.js +7 -0
  1015. package/dist/esm/query-builder/function-module.d.ts +592 -0
  1016. package/dist/esm/query-builder/function-module.js +60 -0
  1017. package/dist/esm/query-builder/having-interface.d.ts +15 -0
  1018. package/dist/esm/query-builder/having-interface.js +2 -0
  1019. package/dist/esm/query-builder/insert-query-builder.d.ts +1235 -0
  1020. package/dist/esm/query-builder/insert-query-builder.js +1157 -0
  1021. package/dist/esm/query-builder/insert-result.d.ts +46 -0
  1022. package/dist/esm/query-builder/insert-result.js +50 -0
  1023. package/dist/esm/query-builder/join-builder.d.ts +38 -0
  1024. package/dist/esm/query-builder/join-builder.js +48 -0
  1025. package/dist/esm/query-builder/json-path-builder.d.ts +294 -0
  1026. package/dist/esm/query-builder/json-path-builder.js +195 -0
  1027. package/dist/esm/query-builder/merge-query-builder.d.ts +1001 -0
  1028. package/dist/esm/query-builder/merge-query-builder.js +624 -0
  1029. package/dist/esm/query-builder/merge-result.d.ts +4 -0
  1030. package/dist/esm/query-builder/merge-result.js +7 -0
  1031. package/dist/esm/query-builder/no-result-error.d.ts +10 -0
  1032. package/dist/esm/query-builder/no-result-error.js +14 -0
  1033. package/dist/esm/query-builder/on-conflict-builder.d.ts +872 -0
  1034. package/dist/esm/query-builder/on-conflict-builder.js +254 -0
  1035. package/dist/esm/query-builder/order-by-interface.d.ts +158 -0
  1036. package/dist/esm/query-builder/order-by-interface.js +2 -0
  1037. package/dist/esm/query-builder/order-by-item-builder.d.ts +43 -0
  1038. package/dist/esm/query-builder/order-by-item-builder.js +72 -0
  1039. package/dist/esm/query-builder/output-interface.d.ts +138 -0
  1040. package/dist/esm/query-builder/output-interface.js +2 -0
  1041. package/dist/esm/query-builder/over-builder.d.ts +101 -0
  1042. package/dist/esm/query-builder/over-builder.js +37 -0
  1043. package/dist/esm/query-builder/returning-interface.d.ts +91 -0
  1044. package/dist/esm/query-builder/returning-interface.js +2 -0
  1045. package/dist/esm/query-builder/select-query-builder-expression.d.ts +28 -0
  1046. package/dist/esm/query-builder/select-query-builder-expression.js +2 -0
  1047. package/dist/esm/query-builder/select-query-builder.d.ts +2391 -0
  1048. package/dist/esm/query-builder/select-query-builder.js +374 -0
  1049. package/dist/esm/query-builder/update-query-builder.d.ts +1392 -0
  1050. package/dist/esm/query-builder/update-query-builder.js +510 -0
  1051. package/dist/esm/query-builder/update-result.d.ts +14 -0
  1052. package/dist/esm/query-builder/update-result.js +18 -0
  1053. package/dist/esm/query-builder/where-interface.d.ts +382 -0
  1054. package/dist/esm/query-builder/where-interface.js +2 -0
  1055. package/dist/esm/query-compiler/compiled-query.d.ts +11 -0
  1056. package/dist/esm/query-compiler/compiled-query.js +14 -0
  1057. package/dist/esm/query-compiler/default-query-compiler.d.ts +235 -0
  1058. package/dist/esm/query-compiler/default-query-compiler.js +1387 -0
  1059. package/dist/esm/query-compiler/query-compiler.d.ts +24 -0
  1060. package/dist/esm/query-compiler/query-compiler.js +2 -0
  1061. package/dist/esm/query-creator.d.ts +592 -0
  1062. package/dist/esm/query-creator.js +619 -0
  1063. package/dist/esm/query-executor/default-query-executor.d.ts +50 -0
  1064. package/dist/esm/query-executor/default-query-executor.js +37 -0
  1065. package/dist/esm/query-executor/noop-query-executor.d.ts +50 -0
  1066. package/dist/esm/query-executor/noop-query-executor.js +34 -0
  1067. package/dist/esm/query-executor/query-executor-base.d.ts +68 -0
  1068. package/dist/esm/query-executor/query-executor-base.js +59 -0
  1069. package/dist/esm/query-executor/query-executor-provider.d.ts +8 -0
  1070. package/dist/esm/query-executor/query-executor-provider.js +2 -0
  1071. package/dist/esm/query-executor/query-executor.d.ts +74 -0
  1072. package/dist/esm/query-executor/query-executor.js +2 -0
  1073. package/dist/esm/raw-builder/raw-builder.d.ts +218 -0
  1074. package/dist/esm/raw-builder/raw-builder.js +84 -0
  1075. package/dist/esm/raw-builder/sql.d.ts +366 -0
  1076. package/dist/esm/raw-builder/sql.js +82 -0
  1077. package/dist/esm/relationships/relationship-engine.d.ts +59 -0
  1078. package/dist/esm/relationships/relationship-engine.js +203 -0
  1079. package/dist/esm/repository/repository-factory.d.ts +54 -0
  1080. package/dist/esm/repository/repository-factory.js +446 -0
  1081. package/dist/esm/schema/builders/alter-column-builder.d.ts +53 -0
  1082. package/dist/esm/schema/builders/alter-column-builder.js +70 -0
  1083. package/dist/esm/schema/builders/alter-table-add-foreign-key-constraint-builder.d.ts +32 -0
  1084. package/dist/esm/schema/builders/alter-table-add-foreign-key-constraint-builder.js +64 -0
  1085. package/dist/esm/schema/builders/alter-table-add-index-builder.d.ts +138 -0
  1086. package/dist/esm/schema/builders/alter-table-add-index-builder.js +162 -0
  1087. package/dist/esm/schema/builders/alter-table-builder.d.ts +148 -0
  1088. package/dist/esm/schema/builders/alter-table-builder.js +263 -0
  1089. package/dist/esm/schema/builders/alter-table-drop-constraint-builder.d.ts +26 -0
  1090. package/dist/esm/schema/builders/alter-table-drop-constraint-builder.js +56 -0
  1091. package/dist/esm/schema/builders/alter-table-executor.d.ts +18 -0
  1092. package/dist/esm/schema/builders/alter-table-executor.js +17 -0
  1093. package/dist/esm/schema/builders/check-constraint-builder.d.ts +13 -0
  1094. package/dist/esm/schema/builders/check-constraint-builder.js +17 -0
  1095. package/dist/esm/schema/builders/column-definition-builder.d.ts +514 -0
  1096. package/dist/esm/schema/builders/column-definition-builder.js +597 -0
  1097. package/dist/esm/schema/builders/create-index-builder.d.ts +173 -0
  1098. package/dist/esm/schema/builders/create-index-builder.js +199 -0
  1099. package/dist/esm/schema/builders/create-schema-builder.d.ts +24 -0
  1100. package/dist/esm/schema/builders/create-schema-builder.js +31 -0
  1101. package/dist/esm/schema/builders/create-table-builder.d.ts +331 -0
  1102. package/dist/esm/schema/builders/create-table-builder.js +408 -0
  1103. package/dist/esm/schema/builders/create-type-builder.d.ts +33 -0
  1104. package/dist/esm/schema/builders/create-type-builder.js +40 -0
  1105. package/dist/esm/schema/builders/create-view-builder.d.ts +48 -0
  1106. package/dist/esm/schema/builders/create-view-builder.js +95 -0
  1107. package/dist/esm/schema/builders/drop-index-builder.d.ts +30 -0
  1108. package/dist/esm/schema/builders/drop-index-builder.js +54 -0
  1109. package/dist/esm/schema/builders/drop-schema-builder.d.ts +25 -0
  1110. package/dist/esm/schema/builders/drop-schema-builder.js +41 -0
  1111. package/dist/esm/schema/builders/drop-table-builder.d.ts +25 -0
  1112. package/dist/esm/schema/builders/drop-table-builder.js +41 -0
  1113. package/dist/esm/schema/builders/drop-type-builder.d.ts +24 -0
  1114. package/dist/esm/schema/builders/drop-type-builder.js +33 -0
  1115. package/dist/esm/schema/builders/drop-view-builder.d.ts +26 -0
  1116. package/dist/esm/schema/builders/drop-view-builder.js +49 -0
  1117. package/dist/esm/schema/builders/foreign-key-constraint-builder.d.ts +28 -0
  1118. package/dist/esm/schema/builders/foreign-key-constraint-builder.js +45 -0
  1119. package/dist/esm/schema/builders/index.d.ts +22 -0
  1120. package/dist/esm/schema/builders/index.js +24 -0
  1121. package/dist/esm/schema/builders/primary-key-constraint-builder.d.ts +17 -0
  1122. package/dist/esm/schema/builders/primary-key-constraint-builder.js +34 -0
  1123. package/dist/esm/schema/builders/refresh-materialized-view-builder.d.ts +47 -0
  1124. package/dist/esm/schema/builders/refresh-materialized-view-builder.js +72 -0
  1125. package/dist/esm/schema/builders/unique-constraint-builder.d.ts +23 -0
  1126. package/dist/esm/schema/builders/unique-constraint-builder.js +42 -0
  1127. package/dist/esm/schema/core/coordinators/schema-discovery.coordinator.d.ts +35 -0
  1128. package/dist/esm/schema/core/coordinators/schema-discovery.coordinator.js +60 -0
  1129. package/dist/esm/schema/core/discovery/relationship-discovery.d.ts +36 -0
  1130. package/dist/esm/schema/core/discovery/relationship-discovery.js +159 -0
  1131. package/dist/esm/schema/core/discovery/table-metadata-discovery.d.ts +29 -0
  1132. package/dist/esm/schema/core/discovery/table-metadata-discovery.js +123 -0
  1133. package/dist/esm/schema/core/discovery/view-discovery.d.ts +36 -0
  1134. package/dist/esm/schema/core/discovery/view-discovery.js +134 -0
  1135. package/dist/esm/schema/core/factories/discovery-factory.d.ts +66 -0
  1136. package/dist/esm/schema/core/factories/discovery-factory.js +119 -0
  1137. package/dist/esm/schema/core/types/schema-discovery-types.d.ts +43 -0
  1138. package/dist/esm/schema/core/types/schema-discovery-types.js +3 -0
  1139. package/dist/esm/schema/core/utils/name-generator.d.ts +21 -0
  1140. package/dist/esm/schema/core/utils/name-generator.js +52 -0
  1141. package/dist/esm/schema/core/utils/type-mapper.d.ts +25 -0
  1142. package/dist/esm/schema/core/utils/type-mapper.js +58 -0
  1143. package/dist/esm/schema/dialects/sqlite/discovery/sqlite-constraint-discovery.d.ts +97 -0
  1144. package/dist/esm/schema/dialects/sqlite/discovery/sqlite-constraint-discovery.js +530 -0
  1145. package/dist/esm/schema/dialects/sqlite/discovery/sqlite-index-discovery.d.ts +32 -0
  1146. package/dist/esm/schema/dialects/sqlite/discovery/sqlite-index-discovery.js +130 -0
  1147. package/dist/esm/schema/dialects/sqlite/introspection/sqlite-schema-introspector.d.ts +31 -0
  1148. package/dist/esm/schema/dialects/sqlite/introspection/sqlite-schema-introspector.js +189 -0
  1149. package/dist/esm/schema/dialects/sqlite/sqlite-discovery.coordinator.d.ts +51 -0
  1150. package/dist/esm/schema/dialects/sqlite/sqlite-discovery.coordinator.js +177 -0
  1151. package/dist/esm/schema/index.d.ts +14 -0
  1152. package/dist/esm/schema/index.js +21 -0
  1153. package/dist/esm/schema/schema-discovery.d.ts +23 -0
  1154. package/dist/esm/schema/schema-discovery.js +30 -0
  1155. package/dist/esm/schema/schema.d.ts +230 -0
  1156. package/dist/esm/schema/schema.js +325 -0
  1157. package/dist/esm/schema/test/basic-schema-test.d.ts +8 -0
  1158. package/dist/esm/schema/test/basic-schema-test.js +183 -0
  1159. package/dist/esm/schema/test/dialect-capabilities.test.d.ts +1 -0
  1160. package/dist/esm/schema/test/dialect-capabilities.test.js +152 -0
  1161. package/dist/esm/schema/test/discovery-factory.test.d.ts +1 -0
  1162. package/dist/esm/schema/test/discovery-factory.test.js +150 -0
  1163. package/dist/esm/schema/test/error-handling.test.d.ts +1 -0
  1164. package/dist/esm/schema/test/error-handling.test.js +148 -0
  1165. package/dist/esm/schema/test/integration.test.d.ts +1 -0
  1166. package/dist/esm/schema/test/integration.test.js +134 -0
  1167. package/dist/esm/schema/test/schema-discovery-coordinator.test.d.ts +1 -0
  1168. package/dist/esm/schema/test/schema-discovery-coordinator.test.js +138 -0
  1169. package/dist/esm/schema/test/simple-schema-test.d.ts +5 -0
  1170. package/dist/esm/schema/test/simple-schema-test.js +78 -0
  1171. package/dist/esm/schema/test/sqlite-discovery-coordinator.test.d.ts +1 -0
  1172. package/dist/esm/schema/test/sqlite-discovery-coordinator.test.js +376 -0
  1173. package/dist/esm/schema/test/test-runner.d.ts +66 -0
  1174. package/dist/esm/schema/test/test-runner.js +89 -0
  1175. package/dist/esm/sqlite-migration/index.d.ts +6 -0
  1176. package/dist/esm/sqlite-migration/index.js +14 -0
  1177. package/dist/esm/sqlite-migration/sqlite-migration-manager.d.ts +104 -0
  1178. package/dist/esm/sqlite-migration/sqlite-migration-manager.js +332 -0
  1179. package/dist/esm/sqlite-migration/sqlite-migration-provider.d.ts +77 -0
  1180. package/dist/esm/sqlite-migration/sqlite-migration-provider.js +339 -0
  1181. package/dist/esm/testing/test-utils.d.ts +110 -0
  1182. package/dist/esm/testing/test-utils.js +320 -0
  1183. package/dist/esm/types/index.d.ts +155 -0
  1184. package/dist/esm/types/index.js +5 -0
  1185. package/dist/esm/types/type-generator.d.ts +52 -0
  1186. package/dist/esm/types/type-generator.js +258 -0
  1187. package/dist/esm/util/assert.d.ts +2 -0
  1188. package/dist/esm/util/assert.js +11 -0
  1189. package/dist/esm/util/column-type.d.ts +175 -0
  1190. package/dist/esm/util/column-type.js +2 -0
  1191. package/dist/esm/util/compilable.d.ts +5 -0
  1192. package/dist/esm/util/compilable.js +5 -0
  1193. package/dist/esm/util/deferred.d.ts +7 -0
  1194. package/dist/esm/util/deferred.js +25 -0
  1195. package/dist/esm/util/explainable.d.ts +40 -0
  1196. package/dist/esm/util/explainable.js +2 -0
  1197. package/dist/esm/util/infer-result.d.ts +48 -0
  1198. package/dist/esm/util/infer-result.js +2 -0
  1199. package/dist/esm/util/json-object-args.d.ts +3 -0
  1200. package/dist/esm/util/json-object-args.js +32 -0
  1201. package/dist/esm/util/log-once.d.ts +5 -0
  1202. package/dist/esm/util/log-once.js +13 -0
  1203. package/dist/esm/util/log.d.ts +26 -0
  1204. package/dist/esm/util/log.js +55 -0
  1205. package/dist/esm/util/object-utils.d.ts +23 -0
  1206. package/dist/esm/util/object-utils.js +141 -0
  1207. package/dist/esm/util/performance-now.d.ts +1 -0
  1208. package/dist/esm/util/performance-now.js +10 -0
  1209. package/dist/esm/util/provide-controlled-connection.d.ts +7 -0
  1210. package/dist/esm/util/provide-controlled-connection.js +22 -0
  1211. package/dist/esm/util/query-id.d.ts +4 -0
  1212. package/dist/esm/util/query-id.js +14 -0
  1213. package/dist/esm/util/random-string.d.ts +1 -0
  1214. package/dist/esm/util/random-string.js +75 -0
  1215. package/dist/esm/util/require-all-props.d.ts +45 -0
  1216. package/dist/esm/util/require-all-props.js +39 -0
  1217. package/dist/esm/util/stack-trace-utils.d.ts +1 -0
  1218. package/dist/esm/util/stack-trace-utils.js +14 -0
  1219. package/dist/esm/util/streamable.d.ts +29 -0
  1220. package/dist/esm/util/streamable.js +2 -0
  1221. package/dist/esm/util/type-error.d.ts +3 -0
  1222. package/dist/esm/util/type-error.js +2 -0
  1223. package/dist/esm/util/type-utils.d.ts +189 -0
  1224. package/dist/esm/util/type-utils.js +2 -0
  1225. package/dist/esm/utils/errorHelpers.d.ts +26 -0
  1226. package/dist/esm/utils/errorHelpers.js +180 -0
  1227. package/dist/esm/watch/schema-watcher.d.ts +68 -0
  1228. package/dist/esm/watch/schema-watcher.js +183 -0
  1229. package/outdated-typescript.d.ts +5 -0
  1230. package/package.json +152 -0
@@ -0,0 +1,1235 @@
1
+ import { OperationNodeSource } from '../operation-node/operation-node-source.js';
2
+ import { CompiledQuery } from '../query-compiler/compiled-query.js';
3
+ import { SelectExpression, SelectCallback } from '../parser/select-parser.js';
4
+ import { InsertExpression } from '../parser/insert-values-parser.js';
5
+ import { InsertQueryNode } from '../operation-node/insert-query-node.js';
6
+ import { QueryNode } from '../operation-node/query-node.js';
7
+ import { NarrowPartial, SimplifyResult, SimplifySingleResult } from '../util/type-utils.js';
8
+ import { UpdateObjectExpression } from '../parser/update-set-parser.js';
9
+ import { Compilable } from '../util/compilable.js';
10
+ import { QueryExecutor } from '../query-executor/query-executor.js';
11
+ import { QueryId } from '../util/query-id.js';
12
+ import { InsertResult } from './insert-result.js';
13
+ import { KyselyPlugin } from '../plugin/kysely-plugin.js';
14
+ import { ReturningAllRow, ReturningCallbackRow, ReturningRow } from '../parser/returning-parser.js';
15
+ import { NoResultErrorConstructor } from './no-result-error.js';
16
+ import { ExpressionOrFactory } from '../parser/expression-parser.js';
17
+ import { ReturningInterface } from './returning-interface.js';
18
+ import { OnConflictBuilder, OnConflictDatabase, OnConflictDoNothingBuilder, OnConflictTables, OnConflictUpdateBuilder } from './on-conflict-builder.js';
19
+ import { Selectable } from '../util/column-type.js';
20
+ import { Explainable, ExplainFormat } from '../util/explainable.js';
21
+ import { Expression } from '../expression/expression.js';
22
+ import { KyselyTypeError } from '../util/type-error.js';
23
+ import { Streamable } from '../util/streamable.js';
24
+ import { OutputCallback, OutputExpression, OutputInterface, SelectExpressionFromOutputCallback, SelectExpressionFromOutputExpression } from './output-interface.js';
25
+ export declare class InsertQueryBuilder<DB, TB extends keyof DB, O> implements ReturningInterface<DB, TB, O>, OutputInterface<DB, TB, O, 'inserted'>, OperationNodeSource, Compilable<O>, Explainable, Streamable<O> {
26
+ #private;
27
+ constructor(props: InsertQueryBuilderProps);
28
+ /**
29
+ * Sets the values to insert for an {@link Kysely.insertInto | insert} query.
30
+ *
31
+ * This method takes an object whose keys are column names and values are
32
+ * values to insert. In addition to the column's type, the values can be
33
+ * raw {@link sql} snippets or select queries.
34
+ *
35
+ * You must provide all fields you haven't explicitly marked as nullable
36
+ * or optional using {@link Generated} or {@link ColumnType}.
37
+ *
38
+ * The return value of an `insert` query is an instance of {@link InsertResult}. The
39
+ * {@link InsertResult.insertId | insertId} field holds the auto incremented primary
40
+ * key if the database returned one.
41
+ *
42
+ * On PostgreSQL and some other dialects, you need to call `returning` to get
43
+ * something out of the query.
44
+ *
45
+ * Also see the {@link expression} method for inserting the result of a select
46
+ * query or any other expression.
47
+ *
48
+ * ### Examples
49
+ *
50
+ * <!-- siteExample("insert", "Single row", 10) -->
51
+ *
52
+ * Insert a single row:
53
+ *
54
+ * ```ts
55
+ * const result = await db
56
+ * .insertInto('person')
57
+ * .values({
58
+ * first_name: 'Jennifer',
59
+ * last_name: 'Aniston',
60
+ * age: 40
61
+ * })
62
+ * .executeTakeFirst()
63
+ *
64
+ * // `insertId` is only available on dialects that
65
+ * // automatically return the id of the inserted row
66
+ * // such as MySQL and SQLite. On PostgreSQL, for example,
67
+ * // you need to add a `returning` clause to the query to
68
+ * // get anything out. See the "returning data" example.
69
+ * console.log(result.insertId)
70
+ * ```
71
+ *
72
+ * The generated SQL (MySQL):
73
+ *
74
+ * ```sql
75
+ * insert into `person` (`first_name`, `last_name`, `age`) values (?, ?, ?)
76
+ * ```
77
+ *
78
+ * <!-- siteExample("insert", "Multiple rows", 20) -->
79
+ *
80
+ * On dialects that support it (for example PostgreSQL) you can insert multiple
81
+ * rows by providing an array. Note that the return value is once again very
82
+ * dialect-specific. Some databases may only return the id of the *last* inserted
83
+ * row and some return nothing at all unless you call `returning`.
84
+ *
85
+ * ```ts
86
+ * await db
87
+ * .insertInto('person')
88
+ * .values([{
89
+ * first_name: 'Jennifer',
90
+ * last_name: 'Aniston',
91
+ * age: 40,
92
+ * }, {
93
+ * first_name: 'Arnold',
94
+ * last_name: 'Schwarzenegger',
95
+ * age: 70,
96
+ * }])
97
+ * .execute()
98
+ * ```
99
+ *
100
+ * The generated SQL (PostgreSQL):
101
+ *
102
+ * ```sql
103
+ * insert into "person" ("first_name", "last_name", "age") values (($1, $2, $3), ($4, $5, $6))
104
+ * ```
105
+ *
106
+ * <!-- siteExample("insert", "Returning data", 30) -->
107
+ *
108
+ * On supported dialects like PostgreSQL you need to chain `returning` to the query to get
109
+ * the inserted row's columns (or any other expression) as the return value. `returning`
110
+ * works just like `select`. Refer to `select` method's examples and documentation for
111
+ * more info.
112
+ *
113
+ * ```ts
114
+ * const result = await db
115
+ * .insertInto('person')
116
+ * .values({
117
+ * first_name: 'Jennifer',
118
+ * last_name: 'Aniston',
119
+ * age: 40,
120
+ * })
121
+ * .returning(['id', 'first_name as name'])
122
+ * .executeTakeFirstOrThrow()
123
+ * ```
124
+ *
125
+ * The generated SQL (PostgreSQL):
126
+ *
127
+ * ```sql
128
+ * insert into "person" ("first_name", "last_name", "age") values ($1, $2, $3) returning "id", "first_name" as "name"
129
+ * ```
130
+ *
131
+ * <!-- siteExample("insert", "Complex values", 40) -->
132
+ *
133
+ * In addition to primitives, the values can also be arbitrary expressions.
134
+ * You can build the expressions by using a callback and calling the methods
135
+ * on the expression builder passed to it:
136
+ *
137
+ * ```ts
138
+ * import { sql } from 'kysely'
139
+ *
140
+ * const ani = "Ani"
141
+ * const ston = "ston"
142
+ *
143
+ * const result = await db
144
+ * .insertInto('person')
145
+ * .values(({ ref, selectFrom, fn }) => ({
146
+ * first_name: 'Jennifer',
147
+ * last_name: sql<string>`concat(${ani}, ${ston})`,
148
+ * middle_name: ref('first_name'),
149
+ * age: selectFrom('person')
150
+ * .select(fn.avg<number>('age').as('avg_age')),
151
+ * }))
152
+ * .executeTakeFirst()
153
+ * ```
154
+ *
155
+ * The generated SQL (PostgreSQL):
156
+ *
157
+ * ```sql
158
+ * insert into "person" (
159
+ * "first_name",
160
+ * "last_name",
161
+ * "middle_name",
162
+ * "age"
163
+ * )
164
+ * values (
165
+ * $1,
166
+ * concat($2, $3),
167
+ * "first_name",
168
+ * (select avg("age") as "avg_age" from "person")
169
+ * )
170
+ * ```
171
+ *
172
+ * You can also use the callback version of subqueries or raw expressions:
173
+ *
174
+ * ```ts
175
+ * await db.with('jennifer', (db) => db
176
+ * .selectFrom('person')
177
+ * .where('first_name', '=', 'Jennifer')
178
+ * .select(['id', 'first_name', 'gender'])
179
+ * .limit(1)
180
+ * ).insertInto('pet').values((eb) => ({
181
+ * owner_id: eb.selectFrom('jennifer').select('id'),
182
+ * name: eb.selectFrom('jennifer').select('first_name'),
183
+ * species: 'cat',
184
+ * }))
185
+ * .execute()
186
+ * ```
187
+ *
188
+ * The generated SQL (PostgreSQL):
189
+ *
190
+ * ```sql
191
+ * with "jennifer" as (
192
+ * select "id", "first_name", "gender"
193
+ * from "person"
194
+ * where "first_name" = $1
195
+ * limit $2
196
+ * )
197
+ * insert into "pet" ("owner_id", "name", "species")
198
+ * values (
199
+ * (select "id" from "jennifer"),
200
+ * (select "first_name" from "jennifer"),
201
+ * $3
202
+ * )
203
+ * ```
204
+ */
205
+ values(insert: InsertExpression<DB, TB>): InsertQueryBuilder<DB, TB, O>;
206
+ /**
207
+ * Sets the columns to insert.
208
+ *
209
+ * The {@link values} method sets both the columns and the values and this method
210
+ * is not needed. But if you are using the {@link expression} method, you can use
211
+ * this method to set the columns to insert.
212
+ *
213
+ * ### Examples
214
+ *
215
+ * ```ts
216
+ * await db.insertInto('person')
217
+ * .columns(['first_name'])
218
+ * .expression((eb) => eb.selectFrom('pet').select('pet.name'))
219
+ * .execute()
220
+ * ```
221
+ *
222
+ * The generated SQL (PostgreSQL):
223
+ *
224
+ * ```sql
225
+ * insert into "person" ("first_name")
226
+ * select "pet"."name" from "pet"
227
+ * ```
228
+ */
229
+ columns(columns: ReadonlyArray<keyof DB[TB] & string>): InsertQueryBuilder<DB, TB, O>;
230
+ /**
231
+ * Insert an arbitrary expression. For example the result of a select query.
232
+ *
233
+ * ### Examples
234
+ *
235
+ * <!-- siteExample("insert", "Insert subquery", 50) -->
236
+ *
237
+ * You can create an `INSERT INTO SELECT FROM` query using the `expression` method.
238
+ * This API doesn't follow our WYSIWYG principles and might be a bit difficult to
239
+ * remember. The reasons for this design stem from implementation difficulties.
240
+ *
241
+ * ```ts
242
+ * const result = await db.insertInto('person')
243
+ * .columns(['first_name', 'last_name', 'age'])
244
+ * .expression((eb) => eb
245
+ * .selectFrom('pet')
246
+ * .select((eb) => [
247
+ * 'pet.name',
248
+ * eb.val('Petson').as('last_name'),
249
+ * eb.lit(7).as('age'),
250
+ * ])
251
+ * )
252
+ * .execute()
253
+ * ```
254
+ *
255
+ * The generated SQL (PostgreSQL):
256
+ *
257
+ * ```sql
258
+ * insert into "person" ("first_name", "last_name", "age")
259
+ * select "pet"."name", $1 as "last_name", 7 as "age from "pet"
260
+ * ```
261
+ */
262
+ expression(expression: ExpressionOrFactory<DB, TB, any>): InsertQueryBuilder<DB, TB, O>;
263
+ /**
264
+ * Creates an `insert into "person" default values` query.
265
+ *
266
+ * ### Examples
267
+ *
268
+ * ```ts
269
+ * await db.insertInto('person')
270
+ * .defaultValues()
271
+ * .execute()
272
+ * ```
273
+ *
274
+ * The generated SQL (PostgreSQL):
275
+ *
276
+ * ```sql
277
+ * insert into "person" default values
278
+ * ```
279
+ */
280
+ defaultValues(): InsertQueryBuilder<DB, TB, O>;
281
+ /**
282
+ * This can be used to add any additional SQL to the end of the query.
283
+ *
284
+ * ### Examples
285
+ *
286
+ * ```ts
287
+ * import { sql } from 'kysely'
288
+ *
289
+ * await db.insertInto('person')
290
+ * .values({
291
+ * first_name: 'John',
292
+ * last_name: 'Doe',
293
+ * gender: 'male',
294
+ * })
295
+ * .modifyEnd(sql`-- This is a comment`)
296
+ * .execute()
297
+ * ```
298
+ *
299
+ * The generated SQL (MySQL):
300
+ *
301
+ * ```sql
302
+ * insert into `person` ("first_name", "last_name", "gender")
303
+ * values (?, ?, ?) -- This is a comment
304
+ * ```
305
+ */
306
+ modifyEnd(modifier: Expression<any>): InsertQueryBuilder<DB, TB, O>;
307
+ /**
308
+ * Changes an `insert into` query to an `insert ignore into` query.
309
+ *
310
+ * This is only supported by some dialects like MySQL.
311
+ *
312
+ * To avoid a footgun, when invoked with the SQLite dialect, this method will
313
+ * be handled like {@link orIgnore}. See also, {@link orAbort}, {@link orFail},
314
+ * {@link orReplace}, and {@link orRollback}.
315
+ *
316
+ * If you use the ignore modifier, ignorable errors that occur while executing the
317
+ * insert statement are ignored. For example, without ignore, a row that duplicates
318
+ * an existing unique index or primary key value in the table causes a duplicate-key
319
+ * error and the statement is aborted. With ignore, the row is discarded and no error
320
+ * occurs.
321
+ *
322
+ * ### Examples
323
+ *
324
+ * ```ts
325
+ * await db.insertInto('person')
326
+ * .ignore()
327
+ * .values({
328
+ * first_name: 'John',
329
+ * last_name: 'Doe',
330
+ * gender: 'female',
331
+ * })
332
+ * .execute()
333
+ * ```
334
+ *
335
+ * The generated SQL (MySQL):
336
+ *
337
+ * ```sql
338
+ * insert ignore into `person` (`first_name`, `last_name`, `gender`) values (?, ?, ?)
339
+ * ```
340
+ *
341
+ * The generated SQL (SQLite):
342
+ *
343
+ * ```sql
344
+ * insert or ignore into "person" ("first_name", "last_name", "gender") values (?, ?, ?)
345
+ * ```
346
+ */
347
+ ignore(): InsertQueryBuilder<DB, TB, O>;
348
+ /**
349
+ * Changes an `insert into` query to an `insert or ignore into` query.
350
+ *
351
+ * This is only supported by some dialects like SQLite.
352
+ *
353
+ * To avoid a footgun, when invoked with the MySQL dialect, this method will
354
+ * be handled like {@link ignore}.
355
+ *
356
+ * See also, {@link orAbort}, {@link orFail}, {@link orReplace}, and {@link orRollback}.
357
+ *
358
+ * ### Examples
359
+ *
360
+ * ```ts
361
+ * await db.insertInto('person')
362
+ * .orIgnore()
363
+ * .values({
364
+ * first_name: 'John',
365
+ * last_name: 'Doe',
366
+ * gender: 'female',
367
+ * })
368
+ * .execute()
369
+ * ```
370
+ *
371
+ * The generated SQL (SQLite):
372
+ *
373
+ * ```sql
374
+ * insert or ignore into "person" ("first_name", "last_name", "gender") values (?, ?, ?)
375
+ * ```
376
+ *
377
+ * The generated SQL (MySQL):
378
+ *
379
+ * ```sql
380
+ * insert ignore into `person` (`first_name`, `last_name`, `gender`) values (?, ?, ?)
381
+ * ```
382
+ */
383
+ orIgnore(): InsertQueryBuilder<DB, TB, O>;
384
+ /**
385
+ * Changes an `insert into` query to an `insert or abort into` query.
386
+ *
387
+ * This is only supported by some dialects like SQLite.
388
+ *
389
+ * See also, {@link orIgnore}, {@link orFail}, {@link orReplace}, and {@link orRollback}.
390
+ *
391
+ * ### Examples
392
+ *
393
+ * ```ts
394
+ * await db.insertInto('person')
395
+ * .orAbort()
396
+ * .values({
397
+ * first_name: 'John',
398
+ * last_name: 'Doe',
399
+ * gender: 'female',
400
+ * })
401
+ * .execute()
402
+ * ```
403
+ *
404
+ * The generated SQL (SQLite):
405
+ *
406
+ * ```sql
407
+ * insert or abort into "person" ("first_name", "last_name", "gender") values (?, ?, ?)
408
+ * ```
409
+ */
410
+ orAbort(): InsertQueryBuilder<DB, TB, O>;
411
+ /**
412
+ * Changes an `insert into` query to an `insert or fail into` query.
413
+ *
414
+ * This is only supported by some dialects like SQLite.
415
+ *
416
+ * See also, {@link orIgnore}, {@link orAbort}, {@link orReplace}, and {@link orRollback}.
417
+ *
418
+ * ### Examples
419
+ *
420
+ * ```ts
421
+ * await db.insertInto('person')
422
+ * .orFail()
423
+ * .values({
424
+ * first_name: 'John',
425
+ * last_name: 'Doe',
426
+ * gender: 'female',
427
+ * })
428
+ * .execute()
429
+ * ```
430
+ *
431
+ * The generated SQL (SQLite):
432
+ *
433
+ * ```sql
434
+ * insert or fail into "person" ("first_name", "last_name", "gender") values (?, ?, ?)
435
+ * ```
436
+ */
437
+ orFail(): InsertQueryBuilder<DB, TB, O>;
438
+ /**
439
+ * Changes an `insert into` query to an `insert or replace into` query.
440
+ *
441
+ * This is only supported by some dialects like SQLite.
442
+ *
443
+ * You can also use {@link Kysely.replaceInto} to achieve the same result.
444
+ *
445
+ * See also, {@link orIgnore}, {@link orAbort}, {@link orFail}, and {@link orRollback}.
446
+ *
447
+ * ### Examples
448
+ *
449
+ * ```ts
450
+ * await db.insertInto('person')
451
+ * .orReplace()
452
+ * .values({
453
+ * first_name: 'John',
454
+ * last_name: 'Doe',
455
+ * gender: 'female',
456
+ * })
457
+ * .execute()
458
+ * ```
459
+ *
460
+ * The generated SQL (SQLite):
461
+ *
462
+ * ```sql
463
+ * insert or replace into "person" ("first_name", "last_name", "gender") values (?, ?, ?)
464
+ * ```
465
+ */
466
+ orReplace(): InsertQueryBuilder<DB, TB, O>;
467
+ /**
468
+ * Changes an `insert into` query to an `insert or rollback into` query.
469
+ *
470
+ * This is only supported by some dialects like SQLite.
471
+ *
472
+ * See also, {@link orIgnore}, {@link orAbort}, {@link orFail}, and {@link orReplace}.
473
+ *
474
+ * ### Examples
475
+ *
476
+ * ```ts
477
+ * await db.insertInto('person')
478
+ * .orRollback()
479
+ * .values({
480
+ * first_name: 'John',
481
+ * last_name: 'Doe',
482
+ * gender: 'female',
483
+ * })
484
+ * .execute()
485
+ * ```
486
+ *
487
+ * The generated SQL (SQLite):
488
+ *
489
+ * ```sql
490
+ * insert or rollback into "person" ("first_name", "last_name", "gender") values (?, ?, ?)
491
+ * ```
492
+ */
493
+ orRollback(): InsertQueryBuilder<DB, TB, O>;
494
+ /**
495
+ * Changes an `insert into` query to an `insert top into` query.
496
+ *
497
+ * `top` clause is only supported by some dialects like MS SQL Server.
498
+ *
499
+ * ### Examples
500
+ *
501
+ * Insert the first 5 rows:
502
+ *
503
+ * ```ts
504
+ * import { sql } from 'kysely'
505
+ *
506
+ * await db.insertInto('person')
507
+ * .top(5)
508
+ * .columns(['first_name', 'gender'])
509
+ * .expression(
510
+ * (eb) => eb.selectFrom('pet').select(['name', sql.lit('other').as('gender')])
511
+ * )
512
+ * .execute()
513
+ * ```
514
+ *
515
+ * The generated SQL (MS SQL Server):
516
+ *
517
+ * ```sql
518
+ * insert top(5) into "person" ("first_name", "gender") select "name", 'other' as "gender" from "pet"
519
+ * ```
520
+ *
521
+ * Insert the first 50 percent of rows:
522
+ *
523
+ * ```ts
524
+ * import { sql } from 'kysely'
525
+ *
526
+ * await db.insertInto('person')
527
+ * .top(50, 'percent')
528
+ * .columns(['first_name', 'gender'])
529
+ * .expression(
530
+ * (eb) => eb.selectFrom('pet').select(['name', sql.lit('other').as('gender')])
531
+ * )
532
+ * .execute()
533
+ * ```
534
+ *
535
+ * The generated SQL (MS SQL Server):
536
+ *
537
+ * ```sql
538
+ * insert top(50) percent into "person" ("first_name", "gender") select "name", 'other' as "gender" from "pet"
539
+ * ```
540
+ */
541
+ top(expression: number | bigint, modifiers?: 'percent'): InsertQueryBuilder<DB, TB, O>;
542
+ /**
543
+ * Adds an `on conflict` clause to the query.
544
+ *
545
+ * `on conflict` is only supported by some dialects like PostgreSQL and SQLite. On MySQL
546
+ * you can use {@link ignore} and {@link onDuplicateKeyUpdate} to achieve similar results.
547
+ *
548
+ * ### Examples
549
+ *
550
+ * ```ts
551
+ * await db
552
+ * .insertInto('pet')
553
+ * .values({
554
+ * name: 'Catto',
555
+ * species: 'cat',
556
+ * owner_id: 3,
557
+ * })
558
+ * .onConflict((oc) => oc
559
+ * .column('name')
560
+ * .doUpdateSet({ species: 'hamster' })
561
+ * )
562
+ * .execute()
563
+ * ```
564
+ *
565
+ * The generated SQL (PostgreSQL):
566
+ *
567
+ * ```sql
568
+ * insert into "pet" ("name", "species", "owner_id")
569
+ * values ($1, $2, $3)
570
+ * on conflict ("name")
571
+ * do update set "species" = $4
572
+ * ```
573
+ *
574
+ * You can provide the name of the constraint instead of a column name:
575
+ *
576
+ * ```ts
577
+ * await db
578
+ * .insertInto('pet')
579
+ * .values({
580
+ * name: 'Catto',
581
+ * species: 'cat',
582
+ * owner_id: 3,
583
+ * })
584
+ * .onConflict((oc) => oc
585
+ * .constraint('pet_name_key')
586
+ * .doUpdateSet({ species: 'hamster' })
587
+ * )
588
+ * .execute()
589
+ * ```
590
+ *
591
+ * The generated SQL (PostgreSQL):
592
+ *
593
+ * ```sql
594
+ * insert into "pet" ("name", "species", "owner_id")
595
+ * values ($1, $2, $3)
596
+ * on conflict on constraint "pet_name_key"
597
+ * do update set "species" = $4
598
+ * ```
599
+ *
600
+ * You can also specify an expression as the conflict target in case
601
+ * the unique index is an expression index:
602
+ *
603
+ * ```ts
604
+ * import { sql } from 'kysely'
605
+ *
606
+ * await db
607
+ * .insertInto('pet')
608
+ * .values({
609
+ * name: 'Catto',
610
+ * species: 'cat',
611
+ * owner_id: 3,
612
+ * })
613
+ * .onConflict((oc) => oc
614
+ * .expression(sql<string>`lower(name)`)
615
+ * .doUpdateSet({ species: 'hamster' })
616
+ * )
617
+ * .execute()
618
+ * ```
619
+ *
620
+ * The generated SQL (PostgreSQL):
621
+ *
622
+ * ```sql
623
+ * insert into "pet" ("name", "species", "owner_id")
624
+ * values ($1, $2, $3)
625
+ * on conflict (lower(name))
626
+ * do update set "species" = $4
627
+ * ```
628
+ *
629
+ * You can add a filter for the update statement like this:
630
+ *
631
+ * ```ts
632
+ * await db
633
+ * .insertInto('pet')
634
+ * .values({
635
+ * name: 'Catto',
636
+ * species: 'cat',
637
+ * owner_id: 3,
638
+ * })
639
+ * .onConflict((oc) => oc
640
+ * .column('name')
641
+ * .doUpdateSet({ species: 'hamster' })
642
+ * .where('excluded.name', '!=', 'Catto')
643
+ * )
644
+ * .execute()
645
+ * ```
646
+ *
647
+ * The generated SQL (PostgreSQL):
648
+ *
649
+ * ```sql
650
+ * insert into "pet" ("name", "species", "owner_id")
651
+ * values ($1, $2, $3)
652
+ * on conflict ("name")
653
+ * do update set "species" = $4
654
+ * where "excluded"."name" != $5
655
+ * ```
656
+ *
657
+ * You can create an `on conflict do nothing` clauses like this:
658
+ *
659
+ * ```ts
660
+ * await db
661
+ * .insertInto('pet')
662
+ * .values({
663
+ * name: 'Catto',
664
+ * species: 'cat',
665
+ * owner_id: 3,
666
+ * })
667
+ * .onConflict((oc) => oc
668
+ * .column('name')
669
+ * .doNothing()
670
+ * )
671
+ * .execute()
672
+ * ```
673
+ *
674
+ * The generated SQL (PostgreSQL):
675
+ *
676
+ * ```sql
677
+ * insert into "pet" ("name", "species", "owner_id")
678
+ * values ($1, $2, $3)
679
+ * on conflict ("name") do nothing
680
+ * ```
681
+ *
682
+ * You can refer to the columns of the virtual `excluded` table
683
+ * in a type-safe way using a callback and the `ref` method of
684
+ * `ExpressionBuilder`:
685
+ *
686
+ * ```ts
687
+ * await db.insertInto('person')
688
+ * .values({
689
+ * id: 1,
690
+ * first_name: 'John',
691
+ * last_name: 'Doe',
692
+ * gender: 'male',
693
+ * })
694
+ * .onConflict(oc => oc
695
+ * .column('id')
696
+ * .doUpdateSet({
697
+ * first_name: (eb) => eb.ref('excluded.first_name'),
698
+ * last_name: (eb) => eb.ref('excluded.last_name')
699
+ * })
700
+ * )
701
+ * .execute()
702
+ * ```
703
+ *
704
+ * The generated SQL (PostgreSQL):
705
+ *
706
+ * ```sql
707
+ * insert into "person" ("id", "first_name", "last_name", "gender")
708
+ * values ($1, $2, $3, $4)
709
+ * on conflict ("id")
710
+ * do update set
711
+ * "first_name" = "excluded"."first_name",
712
+ * "last_name" = "excluded"."last_name"
713
+ * ```
714
+ */
715
+ onConflict(callback: (builder: OnConflictBuilder<DB, TB>) => OnConflictUpdateBuilder<OnConflictDatabase<DB, TB>, OnConflictTables<TB>> | OnConflictDoNothingBuilder<DB, TB>): InsertQueryBuilder<DB, TB, O>;
716
+ /**
717
+ * Adds `on duplicate key update` to the query.
718
+ *
719
+ * If you specify `on duplicate key update`, and a row is inserted that would cause
720
+ * a duplicate value in a unique index or primary key, an update of the old row occurs.
721
+ *
722
+ * This is only implemented by some dialects like MySQL. On most dialects you should
723
+ * use {@link onConflict} instead.
724
+ *
725
+ * ### Examples
726
+ *
727
+ * ```ts
728
+ * await db
729
+ * .insertInto('person')
730
+ * .values({
731
+ * id: 1,
732
+ * first_name: 'John',
733
+ * last_name: 'Doe',
734
+ * gender: 'male',
735
+ * })
736
+ * .onDuplicateKeyUpdate({ updated_at: new Date().toISOString() })
737
+ * .execute()
738
+ * ```
739
+ *
740
+ * The generated SQL (MySQL):
741
+ *
742
+ * ```sql
743
+ * insert into `person` (`id`, `first_name`, `last_name`, `gender`)
744
+ * values (?, ?, ?, ?)
745
+ * on duplicate key update `updated_at` = ?
746
+ * ```
747
+ */
748
+ onDuplicateKeyUpdate(update: UpdateObjectExpression<DB, TB, TB>): InsertQueryBuilder<DB, TB, O>;
749
+ /**
750
+ * Allows you to return data from modified rows.
751
+ *
752
+ * On supported databases like PostgreSQL, this method can be chained to
753
+ * `insert`, `update`, `delete` and `merge` queries to return data.
754
+ *
755
+ * Note that on SQLite you need to give aliases for the expressions to avoid
756
+ * [this bug](https://sqlite.org/forum/forumpost/033daf0b32) in SQLite.
757
+ * For example `.returning('id as id')`.
758
+ *
759
+ * Also see the {@link returningAll} method.
760
+ *
761
+ * ### Examples
762
+ *
763
+ * Return one column:
764
+ *
765
+ * ```ts
766
+ * const { id } = await db
767
+ * .insertInto('person')
768
+ * .values({
769
+ * first_name: 'Jennifer',
770
+ * last_name: 'Aniston'
771
+ * })
772
+ * .returning('id')
773
+ * .executeTakeFirstOrThrow()
774
+ * ```
775
+ *
776
+ * Return multiple columns:
777
+ *
778
+ * ```ts
779
+ * const { id, last_name } = await db
780
+ * .insertInto('person')
781
+ * .values({
782
+ * first_name: 'Jennifer',
783
+ * last_name: 'Aniston'
784
+ * })
785
+ * .returning(['id', 'last_name'])
786
+ * .executeTakeFirstOrThrow()
787
+ * ```
788
+ *
789
+ * Return arbitrary expressions:
790
+ *
791
+ * ```ts
792
+ * import { sql } from 'kysely'
793
+ *
794
+ * const { id, full_name, first_pet_id } = await db
795
+ * .insertInto('person')
796
+ * .values({
797
+ * first_name: 'Jennifer',
798
+ * last_name: 'Aniston'
799
+ * })
800
+ * .returning((eb) => [
801
+ * 'id as id',
802
+ * sql<string>`concat(first_name, ' ', last_name)`.as('full_name'),
803
+ * eb.selectFrom('pet').select('pet.id').limit(1).as('first_pet_id')
804
+ * ])
805
+ * .executeTakeFirstOrThrow()
806
+ * ```
807
+ */
808
+ returning<SE extends SelectExpression<DB, TB>>(selections: ReadonlyArray<SE>): InsertQueryBuilder<DB, TB, ReturningRow<DB, TB, O, SE>>;
809
+ returning<CB extends SelectCallback<DB, TB>>(callback: CB): InsertQueryBuilder<DB, TB, ReturningCallbackRow<DB, TB, O, CB>>;
810
+ returning<SE extends SelectExpression<DB, TB>>(selection: SE): InsertQueryBuilder<DB, TB, ReturningRow<DB, TB, O, SE>>;
811
+ /**
812
+ * Adds a `returning *` to an insert/update/delete/merge query on databases
813
+ * that support `returning` such as PostgreSQL.
814
+ *
815
+ * Also see the {@link returning} method.
816
+ */
817
+ returningAll(): InsertQueryBuilder<DB, TB, Selectable<DB[TB]>>;
818
+ /**
819
+ * Allows you to return data from modified rows.
820
+ *
821
+ * On supported databases like MS SQL Server (MSSQL), this method can be chained
822
+ * to `insert`, `update`, `delete` and `merge` queries to return data.
823
+ *
824
+ * Also see the {@link outputAll} method.
825
+ *
826
+ * ### Examples
827
+ *
828
+ * Return one column:
829
+ *
830
+ * ```ts
831
+ * const { id } = await db
832
+ * .insertInto('person')
833
+ * .output('inserted.id')
834
+ * .values({
835
+ * first_name: 'Jennifer',
836
+ * last_name: 'Aniston',
837
+ * gender: 'female',
838
+ * })
839
+ * .executeTakeFirstOrThrow()
840
+ * ```
841
+ *
842
+ * The generated SQL (MSSQL):
843
+ *
844
+ * ```sql
845
+ * insert into "person" ("first_name", "last_name", "gender")
846
+ * output "inserted"."id"
847
+ * values (@1, @2, @3)
848
+ * ```
849
+ *
850
+ * Return multiple columns:
851
+ *
852
+ * ```ts
853
+ * const { old_first_name, old_last_name, new_first_name, new_last_name } = await db
854
+ * .updateTable('person')
855
+ * .set({ first_name: 'John', last_name: 'Doe' })
856
+ * .output([
857
+ * 'deleted.first_name as old_first_name',
858
+ * 'deleted.last_name as old_last_name',
859
+ * 'inserted.first_name as new_first_name',
860
+ * 'inserted.last_name as new_last_name',
861
+ * ])
862
+ * .where('created_at', '<', new Date())
863
+ * .executeTakeFirstOrThrow()
864
+ * ```
865
+ *
866
+ * The generated SQL (MSSQL):
867
+ *
868
+ * ```sql
869
+ * update "person"
870
+ * set "first_name" = @1, "last_name" = @2
871
+ * output "deleted"."first_name" as "old_first_name",
872
+ * "deleted"."last_name" as "old_last_name",
873
+ * "inserted"."first_name" as "new_first_name",
874
+ * "inserted"."last_name" as "new_last_name"
875
+ * where "created_at" < @3
876
+ * ```
877
+ *
878
+ * Return arbitrary expressions:
879
+ *
880
+ * ```ts
881
+ * import { sql } from 'kysely'
882
+ *
883
+ * const { full_name } = await db
884
+ * .deleteFrom('person')
885
+ * .output((eb) => sql<string>`concat(${eb.ref('deleted.first_name')}, ' ', ${eb.ref('deleted.last_name')})`.as('full_name'))
886
+ * .where('created_at', '<', new Date())
887
+ * .executeTakeFirstOrThrow()
888
+ * ```
889
+ *
890
+ * The generated SQL (MSSQL):
891
+ *
892
+ * ```sql
893
+ * delete from "person"
894
+ * output concat("deleted"."first_name", ' ', "deleted"."last_name") as "full_name"
895
+ * where "created_at" < @1
896
+ * ```
897
+ *
898
+ * Return the action performed on the row:
899
+ *
900
+ * ```ts
901
+ * await db
902
+ * .mergeInto('person')
903
+ * .using('pet', 'pet.owner_id', 'person.id')
904
+ * .whenMatched()
905
+ * .thenDelete()
906
+ * .whenNotMatched()
907
+ * .thenInsertValues({
908
+ * first_name: 'John',
909
+ * last_name: 'Doe',
910
+ * gender: 'male'
911
+ * })
912
+ * .output([
913
+ * 'inserted.id as inserted_id',
914
+ * 'deleted.id as deleted_id',
915
+ * ])
916
+ * .execute()
917
+ * ```
918
+ *
919
+ * The generated SQL (MSSQL):
920
+ *
921
+ * ```sql
922
+ * merge into "person"
923
+ * using "pet" on "pet"."owner_id" = "person"."id"
924
+ * when matched then delete
925
+ * when not matched then
926
+ * insert ("first_name", "last_name", "gender")
927
+ * values (@1, @2, @3)
928
+ * output "inserted"."id" as "inserted_id", "deleted"."id" as "deleted_id"
929
+ * ```
930
+ *
931
+ */
932
+ output<OE extends OutputExpression<DB, TB, 'inserted'>>(selections: readonly OE[]): InsertQueryBuilder<DB, TB, ReturningRow<DB, TB, O, SelectExpressionFromOutputExpression<OE>>>;
933
+ output<CB extends OutputCallback<DB, TB, 'inserted'>>(callback: CB): InsertQueryBuilder<DB, TB, ReturningRow<DB, TB, O, SelectExpressionFromOutputCallback<CB>>>;
934
+ output<OE extends OutputExpression<DB, TB, 'inserted'>>(selection: OE): InsertQueryBuilder<DB, TB, ReturningRow<DB, TB, O, SelectExpressionFromOutputExpression<OE>>>;
935
+ /**
936
+ * Adds an `output {prefix}.*` to an `insert`/`update`/`delete`/`merge` query on databases
937
+ * that support `output` such as MS SQL Server (MSSQL).
938
+ *
939
+ * Also see the {@link output} method.
940
+ */
941
+ outputAll(table: 'inserted'): InsertQueryBuilder<DB, TB, ReturningAllRow<DB, TB, O>>;
942
+ /**
943
+ * Clears all `returning` clauses from the query.
944
+ *
945
+ * ### Examples
946
+ *
947
+ * ```ts
948
+ * await db.insertInto('person')
949
+ * .values({ first_name: 'James', last_name: 'Smith', gender: 'male' })
950
+ * .returning(['first_name'])
951
+ * .clearReturning()
952
+ * .execute()
953
+ * ```
954
+ *
955
+ * The generated SQL(PostgreSQL):
956
+ *
957
+ * ```sql
958
+ * insert into "person" ("first_name", "last_name", "gender") values ($1, $2, $3)
959
+ * ```
960
+ */
961
+ clearReturning(): InsertQueryBuilder<DB, TB, InsertResult>;
962
+ /**
963
+ * Simply calls the provided function passing `this` as the only argument. `$call` returns
964
+ * what the provided function returns.
965
+ *
966
+ * If you want to conditionally call a method on `this`, see
967
+ * the {@link $if} method.
968
+ *
969
+ * ### Examples
970
+ *
971
+ * The next example uses a helper function `log` to log a query:
972
+ *
973
+ * ```ts
974
+ * import type { Compilable } from 'kysely'
975
+ *
976
+ * function log<T extends Compilable>(qb: T): T {
977
+ * console.log(qb.compile())
978
+ * return qb
979
+ * }
980
+ *
981
+ * await db.insertInto('person')
982
+ * .values({ first_name: 'John', last_name: 'Doe', gender: 'male' })
983
+ * .$call(log)
984
+ * .execute()
985
+ * ```
986
+ */
987
+ $call<T>(func: (qb: this) => T): T;
988
+ /**
989
+ * Call `func(this)` if `condition` is true.
990
+ *
991
+ * This method is especially handy with optional selects. Any `returning` or `returningAll`
992
+ * method calls add columns as optional fields to the output type when called inside
993
+ * the `func` callback. This is because we can't know if those selections were actually
994
+ * made before running the code.
995
+ *
996
+ * You can also call any other methods inside the callback.
997
+ *
998
+ * ### Examples
999
+ *
1000
+ * ```ts
1001
+ * import type { NewPerson } from 'type-editor' // imaginary module
1002
+ *
1003
+ * async function insertPerson(values: NewPerson, returnLastName: boolean) {
1004
+ * return await db
1005
+ * .insertInto('person')
1006
+ * .values(values)
1007
+ * .returning(['id', 'first_name'])
1008
+ * .$if(returnLastName, (qb) => qb.returning('last_name'))
1009
+ * .executeTakeFirstOrThrow()
1010
+ * }
1011
+ * ```
1012
+ *
1013
+ * Any selections added inside the `if` callback will be added as optional fields to the
1014
+ * output type since we can't know if the selections were actually made before running
1015
+ * the code. In the example above the return type of the `insertPerson` function is:
1016
+ *
1017
+ * ```ts
1018
+ * Promise<{
1019
+ * id: number
1020
+ * first_name: string
1021
+ * last_name?: string
1022
+ * }>
1023
+ * ```
1024
+ */
1025
+ $if<O2>(condition: boolean, func: (qb: this) => InsertQueryBuilder<any, any, O2>): O2 extends InsertResult ? InsertQueryBuilder<DB, TB, InsertResult> : O2 extends O & infer E ? InsertQueryBuilder<DB, TB, O & Partial<E>> : InsertQueryBuilder<DB, TB, Partial<O2>>;
1026
+ /**
1027
+ * Change the output type of the query.
1028
+ *
1029
+ * This method call doesn't change the SQL in any way. This methods simply
1030
+ * returns a copy of this `InsertQueryBuilder` with a new output type.
1031
+ */
1032
+ $castTo<C>(): InsertQueryBuilder<DB, TB, C>;
1033
+ /**
1034
+ * Narrows (parts of) the output type of the query.
1035
+ *
1036
+ * Kysely tries to be as type-safe as possible, but in some cases we have to make
1037
+ * compromises for better maintainability and compilation performance. At present,
1038
+ * Kysely doesn't narrow the output type of the query based on {@link values} input
1039
+ * when using {@link returning} or {@link returningAll}.
1040
+ *
1041
+ * This utility method is very useful for these situations, as it removes unncessary
1042
+ * runtime assertion/guard code. Its input type is limited to the output type
1043
+ * of the query, so you can't add a column that doesn't exist, or change a column's
1044
+ * type to something that doesn't exist in its union type.
1045
+ *
1046
+ * ### Examples
1047
+ *
1048
+ * Turn this code:
1049
+ *
1050
+ * ```ts
1051
+ * import type { Person } from 'type-editor' // imaginary module
1052
+ *
1053
+ * const person = await db.insertInto('person')
1054
+ * .values({
1055
+ * first_name: 'John',
1056
+ * last_name: 'Doe',
1057
+ * gender: 'male',
1058
+ * nullable_column: 'hell yeah!'
1059
+ * })
1060
+ * .returningAll()
1061
+ * .executeTakeFirstOrThrow()
1062
+ *
1063
+ * if (isWithNoNullValue(person)) {
1064
+ * functionThatExpectsPersonWithNonNullValue(person)
1065
+ * }
1066
+ *
1067
+ * function isWithNoNullValue(person: Person): person is Person & { nullable_column: string } {
1068
+ * return person.nullable_column != null
1069
+ * }
1070
+ * ```
1071
+ *
1072
+ * Into this:
1073
+ *
1074
+ * ```ts
1075
+ * import type { NotNull } from 'kysely'
1076
+ *
1077
+ * const person = await db.insertInto('person')
1078
+ * .values({
1079
+ * first_name: 'John',
1080
+ * last_name: 'Doe',
1081
+ * gender: 'male',
1082
+ * nullable_column: 'hell yeah!'
1083
+ * })
1084
+ * .returningAll()
1085
+ * .$narrowType<{ nullable_column: NotNull }>()
1086
+ * .executeTakeFirstOrThrow()
1087
+ *
1088
+ * functionThatExpectsPersonWithNonNullValue(person)
1089
+ * ```
1090
+ */
1091
+ $narrowType<T>(): InsertQueryBuilder<DB, TB, NarrowPartial<O, T>>;
1092
+ /**
1093
+ * Asserts that query's output row type equals the given type `T`.
1094
+ *
1095
+ * This method can be used to simplify excessively complex types to make TypeScript happy
1096
+ * and much faster.
1097
+ *
1098
+ * Kysely uses complex type magic to achieve its type safety. This complexity is sometimes too much
1099
+ * for TypeScript and you get errors like this:
1100
+ *
1101
+ * ```
1102
+ * error TS2589: Type instantiation is excessively deep and possibly infinite.
1103
+ * ```
1104
+ *
1105
+ * In these case you can often use this method to help TypeScript a little bit. When you use this
1106
+ * method to assert the output type of a query, Kysely can drop the complex output type that
1107
+ * consists of multiple nested helper types and replace it with the simple asserted type.
1108
+ *
1109
+ * Using this method doesn't reduce type safety at all. You have to pass in a type that is
1110
+ * structurally equal to the current type.
1111
+ *
1112
+ * ### Examples
1113
+ *
1114
+ * ```ts
1115
+ * import type { NewPerson, NewPet, Species } from 'type-editor' // imaginary module
1116
+ *
1117
+ * async function insertPersonAndPet(person: NewPerson, pet: Omit<NewPet, 'owner_id'>) {
1118
+ * return await db
1119
+ * .with('new_person', (qb) => qb
1120
+ * .insertInto('person')
1121
+ * .values(person)
1122
+ * .returning('id')
1123
+ * .$assertType<{ id: number }>()
1124
+ * )
1125
+ * .with('new_pet', (qb) => qb
1126
+ * .insertInto('pet')
1127
+ * .values((eb) => ({
1128
+ * owner_id: eb.selectFrom('new_person').select('id'),
1129
+ * ...pet
1130
+ * }))
1131
+ * .returning(['name as pet_name', 'species'])
1132
+ * .$assertType<{ pet_name: string, species: Species }>()
1133
+ * )
1134
+ * .selectFrom(['new_person', 'new_pet'])
1135
+ * .selectAll()
1136
+ * .executeTakeFirstOrThrow()
1137
+ * }
1138
+ * ```
1139
+ */
1140
+ $assertType<T extends O>(): O extends T ? InsertQueryBuilder<DB, TB, T> : KyselyTypeError<`$assertType() call failed: The type passed in is not equal to the output type of the query.`>;
1141
+ /**
1142
+ * Returns a copy of this InsertQueryBuilder instance with the given plugin installed.
1143
+ */
1144
+ withPlugin(plugin: KyselyPlugin): InsertQueryBuilder<DB, TB, O>;
1145
+ toOperationNode(): InsertQueryNode;
1146
+ compile(): CompiledQuery<O>;
1147
+ /**
1148
+ * Executes the query and returns an array of rows.
1149
+ *
1150
+ * Also see the {@link executeTakeFirst} and {@link executeTakeFirstOrThrow} methods.
1151
+ */
1152
+ execute(): Promise<SimplifyResult<O>[]>;
1153
+ /**
1154
+ * Executes the query and returns the first result or undefined if
1155
+ * the query returned no result.
1156
+ */
1157
+ executeTakeFirst(): Promise<SimplifySingleResult<O>>;
1158
+ /**
1159
+ * Executes the query and returns the first result or throws if
1160
+ * the query returned no result.
1161
+ *
1162
+ * By default an instance of {@link NoResultError} is thrown, but you can
1163
+ * provide a custom error class, or callback as the only argument to throw a different
1164
+ * error.
1165
+ */
1166
+ executeTakeFirstOrThrow(errorConstructor?: NoResultErrorConstructor | ((node: QueryNode) => Error)): Promise<SimplifyResult<O>>;
1167
+ /**
1168
+ * Executes the query and streams the rows.
1169
+ *
1170
+ * The optional argument `chunkSize` defines how many rows to fetch from the database
1171
+ * at a time. It only affects some dialects like PostgreSQL that support it.
1172
+ *
1173
+ * ### Examples
1174
+ *
1175
+ * ```ts
1176
+ * const stream = db
1177
+ * .selectFrom('person')
1178
+ * .select(['first_name', 'last_name'])
1179
+ * .where('gender', '=', 'other')
1180
+ * .stream()
1181
+ *
1182
+ * for await (const person of stream) {
1183
+ * console.log(person.first_name)
1184
+ *
1185
+ * if (person.last_name === 'Something') {
1186
+ * // Breaking or returning before the stream has ended will release
1187
+ * // the database connection and invalidate the stream.
1188
+ * break
1189
+ * }
1190
+ * }
1191
+ * ```
1192
+ */
1193
+ stream(chunkSize?: number): AsyncIterableIterator<O>;
1194
+ /**
1195
+ * Executes query with `explain` statement before the main query.
1196
+ *
1197
+ * ```ts
1198
+ * const explained = await db
1199
+ * .selectFrom('person')
1200
+ * .where('gender', '=', 'female')
1201
+ * .selectAll()
1202
+ * .explain('json')
1203
+ * ```
1204
+ *
1205
+ * The generated SQL (MySQL):
1206
+ *
1207
+ * ```sql
1208
+ * explain format=json select * from `person` where `gender` = ?
1209
+ * ```
1210
+ *
1211
+ * You can also execute `explain analyze` statements.
1212
+ *
1213
+ * ```ts
1214
+ * import { sql } from 'kysely'
1215
+ *
1216
+ * const explained = await db
1217
+ * .selectFrom('person')
1218
+ * .where('gender', '=', 'female')
1219
+ * .selectAll()
1220
+ * .explain('json', sql`analyze`)
1221
+ * ```
1222
+ *
1223
+ * The generated SQL (PostgreSQL):
1224
+ *
1225
+ * ```sql
1226
+ * explain (analyze, format json) select * from "person" where "gender" = $1
1227
+ * ```
1228
+ */
1229
+ explain<ER extends Record<string, any> = Record<string, any>>(format?: ExplainFormat, options?: Expression<any>): Promise<ER[]>;
1230
+ }
1231
+ export interface InsertQueryBuilderProps {
1232
+ readonly queryId: QueryId;
1233
+ readonly queryNode: InsertQueryNode;
1234
+ readonly executor: QueryExecutor;
1235
+ }