drizzle-orm 0.25.2 → 0.25.3-4cc2d87

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 (249) hide show
  1. package/aws-data-api/pg/index.cjs +234 -1
  2. package/aws-data-api/pg/index.cjs.map +1 -1
  3. package/aws-data-api/pg/index.d.ts +5 -6
  4. package/aws-data-api/pg/index.mjs +228 -1
  5. package/aws-data-api/pg/index.mjs.map +1 -1
  6. package/aws-data-api/pg/migrator.cjs +13 -1
  7. package/aws-data-api/pg/migrator.cjs.map +1 -1
  8. package/aws-data-api/pg/migrator.d.ts +5 -6
  9. package/aws-data-api/pg/migrator.mjs +11 -1
  10. package/aws-data-api/pg/migrator.mjs.map +1 -1
  11. package/better-sqlite3/index.cjs +119 -1
  12. package/better-sqlite3/index.cjs.map +1 -1
  13. package/better-sqlite3/index.d.ts +14 -12
  14. package/better-sqlite3/index.mjs +114 -1
  15. package/better-sqlite3/index.mjs.map +1 -1
  16. package/better-sqlite3/migrator.cjs +13 -1
  17. package/better-sqlite3/migrator.cjs.map +1 -1
  18. package/better-sqlite3/migrator.d.ts +5 -5
  19. package/better-sqlite3/migrator.mjs +11 -1
  20. package/better-sqlite3/migrator.mjs.map +1 -1
  21. package/bun-sqlite/index.cjs +126 -1
  22. package/bun-sqlite/index.cjs.map +1 -1
  23. package/bun-sqlite/index.d.ts +14 -12
  24. package/bun-sqlite/index.mjs +121 -1
  25. package/bun-sqlite/index.mjs.map +1 -1
  26. package/bun-sqlite/migrator.cjs +13 -1
  27. package/bun-sqlite/migrator.cjs.map +1 -1
  28. package/bun-sqlite/migrator.d.ts +5 -5
  29. package/bun-sqlite/migrator.mjs +11 -1
  30. package/bun-sqlite/migrator.mjs.map +1 -1
  31. package/{column.d-8b137277.d.ts → column.d-c31e7ad3.d.ts} +77 -6
  32. package/d1/index.cjs +116 -1
  33. package/d1/index.cjs.map +1 -1
  34. package/d1/index.d.ts +15 -12
  35. package/d1/index.mjs +111 -1
  36. package/d1/index.mjs.map +1 -1
  37. package/d1/migrator.cjs +13 -1
  38. package/d1/migrator.cjs.map +1 -1
  39. package/d1/migrator.d.ts +5 -5
  40. package/d1/migrator.mjs +11 -1
  41. package/d1/migrator.mjs.map +1 -1
  42. package/{db.d-ae495c35.d.ts → db.d-a2311092.d.ts} +121 -44
  43. package/{db.d-66553b9e.d.ts → db.d-bc9a1d6c.d.ts} +193 -16
  44. package/driver.d-17ca4c15.d.ts +8 -0
  45. package/driver.d-300ddb0e.d.ts +64 -0
  46. package/driver.d-45e56643.d.ts +60 -0
  47. package/driver.d-64f2125c.d.ts +8 -0
  48. package/driver.d-7fde2e9d.d.ts +55 -0
  49. package/driver.d-9d703b84.d.ts +8 -0
  50. package/driver.d-b2b94bf9.d.ts +46 -0
  51. package/driver.d-b70ee7ee.d.ts +55 -0
  52. package/driver.d-dea23ee6.d.ts +8 -0
  53. package/driver.d-e54af17b.d.ts +52 -0
  54. package/driver.d-eb490c91.d.ts +9 -0
  55. package/driver.d-ef6fa2df.d.ts +14 -0
  56. package/errors-bb636d84.mjs +19 -0
  57. package/errors-bb636d84.mjs.map +1 -0
  58. package/errors-d0192d62.cjs +22 -0
  59. package/errors-d0192d62.cjs.map +1 -0
  60. package/index.cjs +105 -1
  61. package/index.cjs.map +1 -1
  62. package/index.d.ts +16 -432
  63. package/index.mjs +3 -1
  64. package/index.mjs.map +1 -1
  65. package/knex/index.cjs +2 -1
  66. package/knex/index.cjs.map +1 -1
  67. package/knex/index.d.ts +1 -1
  68. package/kysely/index.cjs +2 -1
  69. package/kysely/index.cjs.map +1 -1
  70. package/kysely/index.d.ts +1 -1
  71. package/libsql/index.cjs +155 -1
  72. package/libsql/index.cjs.map +1 -1
  73. package/libsql/index.d.ts +14 -12
  74. package/libsql/index.mjs +150 -1
  75. package/libsql/index.mjs.map +1 -1
  76. package/libsql/migrator.cjs +13 -1
  77. package/libsql/migrator.cjs.map +1 -1
  78. package/libsql/migrator.d.ts +5 -5
  79. package/libsql/migrator.mjs +11 -1
  80. package/libsql/migrator.mjs.map +1 -1
  81. package/logger-caa1ca6e.cjs +34 -0
  82. package/logger-caa1ca6e.cjs.map +1 -0
  83. package/logger-caf75bde.mjs +30 -0
  84. package/logger-caf75bde.mjs.map +1 -0
  85. package/migrator.cjs +48 -1
  86. package/migrator.cjs.map +1 -1
  87. package/migrator.mjs +46 -1
  88. package/migrator.mjs.map +1 -1
  89. package/mysql-core/index.cjs +1004 -1
  90. package/mysql-core/index.cjs.map +1 -1
  91. package/mysql-core/index.d.ts +347 -347
  92. package/mysql-core/index.mjs +869 -1
  93. package/mysql-core/index.mjs.map +1 -1
  94. package/mysql2/index.cjs +230 -1
  95. package/mysql2/index.cjs.map +1 -1
  96. package/mysql2/index.d.ts +5 -6
  97. package/mysql2/index.mjs +223 -1
  98. package/mysql2/index.mjs.map +1 -1
  99. package/mysql2/migrator.cjs +13 -1
  100. package/mysql2/migrator.cjs.map +1 -1
  101. package/mysql2/migrator.d.ts +5 -6
  102. package/mysql2/migrator.mjs +11 -1
  103. package/mysql2/migrator.mjs.map +1 -1
  104. package/neon-serverless/index.cjs +155 -1
  105. package/neon-serverless/index.cjs.map +1 -1
  106. package/neon-serverless/index.d.ts +5 -6
  107. package/neon-serverless/index.mjs +149 -1
  108. package/neon-serverless/index.mjs.map +1 -1
  109. package/neon-serverless/migrator.cjs +13 -1
  110. package/neon-serverless/migrator.cjs.map +1 -1
  111. package/neon-serverless/migrator.d.ts +5 -6
  112. package/neon-serverless/migrator.mjs +11 -1
  113. package/neon-serverless/migrator.mjs.map +1 -1
  114. package/node-postgres/index.cjs +157 -1
  115. package/node-postgres/index.cjs.map +1 -1
  116. package/node-postgres/index.d.ts +5 -6
  117. package/node-postgres/index.mjs +151 -1
  118. package/node-postgres/index.mjs.map +1 -1
  119. package/node-postgres/migrator.cjs +13 -1
  120. package/node-postgres/migrator.cjs.map +1 -1
  121. package/node-postgres/migrator.d.ts +5 -6
  122. package/node-postgres/migrator.mjs +11 -1
  123. package/node-postgres/migrator.mjs.map +1 -1
  124. package/package.json +97 -34
  125. package/pg-core/index.cjs +652 -1
  126. package/pg-core/index.cjs.map +1 -1
  127. package/pg-core/index.d.ts +13 -7
  128. package/pg-core/index.mjs +501 -1
  129. package/pg-core/index.mjs.map +1 -1
  130. package/planetscale-serverless/index.cjs +111 -1
  131. package/planetscale-serverless/index.cjs.map +1 -1
  132. package/planetscale-serverless/index.d.ts +5 -6
  133. package/planetscale-serverless/index.mjs +106 -1
  134. package/planetscale-serverless/index.mjs.map +1 -1
  135. package/planetscale-serverless/migrator.cjs +13 -1
  136. package/planetscale-serverless/migrator.cjs.map +1 -1
  137. package/planetscale-serverless/migrator.d.ts +5 -6
  138. package/planetscale-serverless/migrator.mjs +11 -1
  139. package/planetscale-serverless/migrator.mjs.map +1 -1
  140. package/postgres-js/index.cjs +113 -1
  141. package/postgres-js/index.cjs.map +1 -1
  142. package/postgres-js/index.d.ts +5 -6
  143. package/postgres-js/index.mjs +108 -1
  144. package/postgres-js/index.mjs.map +1 -1
  145. package/postgres-js/migrator.cjs +13 -1
  146. package/postgres-js/migrator.cjs.map +1 -1
  147. package/postgres-js/migrator.d.ts +5 -6
  148. package/postgres-js/migrator.mjs +11 -1
  149. package/postgres-js/migrator.mjs.map +1 -1
  150. package/query-promise.d-e370e0a9.d.ts +617 -0
  151. package/relations-47eb5c5f.mjs +2954 -0
  152. package/relations-47eb5c5f.mjs.map +1 -0
  153. package/relations-5e2d30dd.cjs +3117 -0
  154. package/relations-5e2d30dd.cjs.map +1 -0
  155. package/{select.types.d-c3e86d45.d.ts → select.types.d-34d7f74e.d.ts} +1 -1
  156. package/{select.types.d-adb82002.d.ts → select.types.d-ae2f8e44.d.ts} +58 -14
  157. package/session-483ed08d.mjs +1263 -0
  158. package/session-483ed08d.mjs.map +1 -0
  159. package/session-6bd76405.cjs +362 -0
  160. package/session-6bd76405.cjs.map +1 -0
  161. package/session-a90df8a2.cjs +1252 -0
  162. package/session-a90df8a2.cjs.map +1 -0
  163. package/session-b99382a2.mjs +1223 -0
  164. package/session-b99382a2.mjs.map +1 -0
  165. package/session-c62f6348.cjs +1298 -0
  166. package/session-c62f6348.cjs.map +1 -0
  167. package/session-e8745392.mjs +351 -0
  168. package/session-e8745392.mjs.map +1 -0
  169. package/sql-js/index.cjs +175 -1
  170. package/sql-js/index.cjs.map +1 -1
  171. package/sql-js/index.d.ts +14 -12
  172. package/sql-js/index.mjs +170 -1
  173. package/sql-js/index.mjs.map +1 -1
  174. package/sql-js/migrator.cjs +13 -1
  175. package/sql-js/migrator.cjs.map +1 -1
  176. package/sql-js/migrator.d.ts +5 -5
  177. package/sql-js/migrator.mjs +11 -1
  178. package/sql-js/migrator.mjs.map +1 -1
  179. package/sqlite-core/index.cjs +516 -1
  180. package/sqlite-core/index.cjs.map +1 -1
  181. package/sqlite-core/index.d.ts +6 -5
  182. package/sqlite-core/index.mjs +441 -1
  183. package/sqlite-core/index.mjs.map +1 -1
  184. package/sqlite-proxy/index.cjs +118 -1
  185. package/sqlite-proxy/index.cjs.map +1 -1
  186. package/sqlite-proxy/index.d.ts +12 -11
  187. package/sqlite-proxy/index.mjs +113 -1
  188. package/sqlite-proxy/index.mjs.map +1 -1
  189. package/sqlite-proxy/migrator.cjs +25 -2
  190. package/sqlite-proxy/migrator.cjs.map +1 -1
  191. package/sqlite-proxy/migrator.d.ts +5 -5
  192. package/sqlite-proxy/migrator.mjs +23 -2
  193. package/sqlite-proxy/migrator.mjs.map +1 -1
  194. package/version.cjs +9 -1
  195. package/version.cjs.map +1 -1
  196. package/version.d.ts +1 -1
  197. package/version.mjs +6 -1
  198. package/version.mjs.map +1 -1
  199. package/README.md +0 -150
  200. package/column-builder-592f0191.mjs +0 -2
  201. package/column-builder-592f0191.mjs.map +0 -1
  202. package/column-builder-b48639f3.cjs +0 -2
  203. package/column-builder-b48639f3.cjs.map +0 -1
  204. package/driver.d-0158cd93.d.ts +0 -11
  205. package/driver.d-1f73a4a9.d.ts +0 -70
  206. package/driver.d-2e907d12.d.ts +0 -17
  207. package/driver.d-3781598a.d.ts +0 -11
  208. package/driver.d-3a8adf2a.d.ts +0 -61
  209. package/driver.d-59580d08.d.ts +0 -11
  210. package/driver.d-5f3fc125.d.ts +0 -12
  211. package/driver.d-693f7f9f.d.ts +0 -56
  212. package/driver.d-6c43e393.d.ts +0 -60
  213. package/driver.d-b00fc6ec.d.ts +0 -57
  214. package/driver.d-e4bd120b.d.ts +0 -47
  215. package/driver.d-f4b5b390.d.ts +0 -11
  216. package/index-59b7992d.cjs +0 -2
  217. package/index-59b7992d.cjs.map +0 -1
  218. package/index-b71998f1.mjs +0 -2
  219. package/index-b71998f1.mjs.map +0 -1
  220. package/logger-04bad527.cjs +0 -2
  221. package/logger-04bad527.cjs.map +0 -1
  222. package/logger-2598bf05.mjs +0 -2
  223. package/logger-2598bf05.mjs.map +0 -1
  224. package/logger.d-37185354.d.ts +0 -21
  225. package/query-builder-2f2e8229.cjs +0 -2
  226. package/query-builder-2f2e8229.cjs.map +0 -1
  227. package/query-builder-2fcde2f0.mjs +0 -2
  228. package/query-builder-2fcde2f0.mjs.map +0 -1
  229. package/query-promise-2c5b43ab.cjs +0 -2
  230. package/query-promise-2c5b43ab.cjs.map +0 -1
  231. package/query-promise-a65edd44.mjs +0 -2
  232. package/query-promise-a65edd44.mjs.map +0 -1
  233. package/query-promise.d-a8af8583.d.ts +0 -9
  234. package/session-8a621f09.mjs +0 -8
  235. package/session-8a621f09.mjs.map +0 -1
  236. package/session-b6939bab.cjs +0 -14
  237. package/session-b6939bab.cjs.map +0 -1
  238. package/session-b977ce56.mjs +0 -14
  239. package/session-b977ce56.mjs.map +0 -1
  240. package/session-c891400d.mjs +0 -8
  241. package/session-c891400d.mjs.map +0 -1
  242. package/session-e6db6732.cjs +0 -8
  243. package/session-e6db6732.cjs.map +0 -1
  244. package/session-ef1ef979.cjs +0 -8
  245. package/session-ef1ef979.cjs.map +0 -1
  246. package/utils-9d882195.cjs +0 -2
  247. package/utils-9d882195.cjs.map +0 -1
  248. package/utils-e6870670.mjs +0 -2
  249. package/utils-e6870670.mjs.map +0 -1
package/d1/index.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/d1/session.ts","../../src/d1/driver.ts"],"sourcesContent":[null,null],"names":["SQLiteD1Session","SQLiteSession","constructor","client","dialect","options","super","this","logger","NoopLogger","prepareQuery","query","fields","stmt","prepare","sql","PreparedQuery","params","async","transaction","config","tx","D1Transaction","run","raw","behavior","result","err","SQLiteTransaction","savepointName","nestedIndex","session","PreparedQueryBase","queryString","placeholderValues","fillPlaceholders","logQuery","bind","all","joinsNotNullableMap","values","then","map","row","mapResultRow","results","get","rows","SQLiteAsyncDialect","DefaultLogger","BaseSQLiteDatabase"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/d1/session.ts","../../src/d1/driver.ts"],"sourcesContent":[null,null],"names":["SQLiteSession","NoopLogger","sql","SQLiteTransaction","PreparedQueryBase","fillPlaceholders","mapResultRow","SQLiteAsyncDialect","logger","DefaultLogger","extractTablesRelationalConfig","createTableRelationsHelpers","session","BaseSQLiteDatabase"],"mappings":";;;;;;;AAAA;AAuBM,MAAO,eAGX,SAAQA,qBAAsD,CAAA;AAG/D,IAAA,WAAA,CACS,MAAkB,EAC1B,OAA2B,EACnB,MAAmD,EACnD,UAAkC,EAAE,EAAA;QAE5C,KAAK,CAAC,OAAO,CAAC,CAAC;QALP,IAAM,CAAA,MAAA,GAAN,MAAM,CAAY;QAElB,IAAM,CAAA,MAAA,GAAN,MAAM,CAA6C;QACnD,IAAO,CAAA,OAAA,GAAP,OAAO,CAA6B;QAG5C,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,IAAIC,iBAAU,EAAE,CAAC;KACjD;AAED,IAAA,YAAY,CACX,KAAY,EACZ,MAA8B,EAC9B,kBAAmD,EAAA;AAEnD,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5C,OAAO,IAAI,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,kBAAkB,CAAC,CAAC;KACjG;AAEQ,IAAA,MAAM,WAAW,CACzB,WAAwE,EACxE,MAAgC,EAAA;AAEhC,QAAA,MAAM,EAAE,GAAG,IAAI,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACvE,MAAM,IAAI,CAAC,GAAG,CAACC,aAAG,CAAC,GAAG,CAAC,CAAA,KAAA,EAAQ,MAAM,EAAE,QAAQ,GAAG,GAAG,GAAG,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAA,CAAE,CAAC,CAAC,CAAC;QACjF,IAAI;AACH,YAAA,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,EAAE,CAAC,CAAC;YACrC,MAAM,IAAI,CAAC,GAAG,CAACA,aAAG,CAAA,CAAA,MAAA,CAAQ,CAAC,CAAC;AAC5B,YAAA,OAAO,MAAM,CAAC;AACd,SAAA;AAAC,QAAA,OAAO,GAAG,EAAE;YACb,MAAM,IAAI,CAAC,GAAG,CAACA,aAAG,CAAA,CAAA,QAAA,CAAU,CAAC,CAAC;AAC9B,YAAA,MAAM,GAAG,CAAC;AACV,SAAA;KACD;AACD,CAAA;AAEK,MAAO,aAGX,SAAQC,yBAA0D,CAAA;IAC1D,MAAM,WAAW,CAAI,WAAoE,EAAA;AACjG,QAAA,MAAM,aAAa,GAAG,CAAA,EAAA,EAAK,IAAI,CAAC,WAAW,EAAE,CAAC;QAC9C,MAAM,EAAE,GAAG,IAAI,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;AACrG,QAAA,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAACD,aAAG,CAAC,GAAG,CAAC,CAAa,UAAA,EAAA,aAAa,CAAE,CAAA,CAAC,CAAC,CAAC;QAC9D,IAAI;AACH,YAAA,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,EAAE,CAAC,CAAC;AACrC,YAAA,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAACA,aAAG,CAAC,GAAG,CAAC,CAAqB,kBAAA,EAAA,aAAa,CAAE,CAAA,CAAC,CAAC,CAAC;AACtE,YAAA,OAAO,MAAM,CAAC;AACd,SAAA;AAAC,QAAA,OAAO,GAAG,EAAE;AACb,YAAA,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAACA,aAAG,CAAC,GAAG,CAAC,CAAyB,sBAAA,EAAA,aAAa,CAAE,CAAA,CAAC,CAAC,CAAC;AAC1E,YAAA,MAAM,GAAG,CAAC;AACV,SAAA;KACD;AACD,CAAA;AAEK,MAAO,aAAmE,SAAQE,qBAEvF,CAAA;IACA,WACS,CAAA,IAAyB,EACzB,WAAmB,EACnB,MAAiB,EACjB,MAAc,EACd,MAAyC,EACzC,kBAAmD,EAAA;AAE3D,QAAA,KAAK,EAAE,CAAC;QAPA,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAqB;QACzB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAQ;QACnB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAW;QACjB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QACd,IAAM,CAAA,MAAA,GAAN,MAAM,CAAmC;QACzC,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAiC;KAG3D;AAED,IAAA,GAAG,CAAC,iBAA2C,EAAA;AAC9C,QAAA,MAAM,MAAM,GAAGC,0BAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,iBAAiB,IAAI,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAC/C,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC;KACvC;IAED,MAAM,GAAG,CAAC,iBAA2C,EAAA;AACpD,QAAA,MAAM,EAAE,MAAM,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC;AAC5F,QAAA,IAAI,CAAC,MAAM,IAAI,CAAC,kBAAkB,EAAE;AACnC,YAAA,MAAM,MAAM,GAAGA,0BAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,iBAAiB,IAAI,EAAE,CAAC,CAAC;AACtE,YAAA,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACrC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,OAAQ,CAAC,CAAC;AAClE,SAAA;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAElD,QAAA,IAAI,kBAAkB,EAAE;AACvB,YAAA,OAAO,kBAAkB,CAAC,IAAI,CAAa,CAAC;AAC5C,SAAA;AAED,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,KAAKC,sBAAY,CAAC,MAAO,EAAE,GAAG,EAAE,mBAAmB,CAAC,CAAC,CAAC;KAC1E;AAED,IAAA,GAAG,CAAC,iBAA2C,EAAA;;AAE9C,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;KAC3D;AAED,IAAA,MAAM,CAA8B,iBAA2C,EAAA;AAC9E,QAAA,MAAM,MAAM,GAAGD,0BAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,iBAAiB,IAAI,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAC/C,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC;KACvC;AACD;;ACnID;SAkBgB,OAAO,CACtB,MAAkB,EAClB,SAAiC,EAAE,EAAA;AAEnC,IAAA,MAAM,OAAO,GAAG,IAAIE,0BAAkB,EAAE,CAAC;AACzC,IAAA,IAAIC,QAAM,CAAC;AACX,IAAA,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE;AAC3B,QAAAA,QAAM,GAAG,IAAIC,oBAAa,EAAE,CAAC;AAC7B,KAAA;AAAM,SAAA,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE;AACnC,QAAAD,QAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AACvB,KAAA;AAED,IAAA,IAAI,MAAkE,CAAC;IACvE,IAAI,MAAM,CAAC,MAAM,EAAE;QAClB,MAAM,YAAY,GAAGE,uCAA6B,CACjD,MAAM,CAAC,MAAM,EACbC,qCAA2B,CAC3B,CAAC;AACF,QAAA,MAAM,GAAG;YACR,UAAU,EAAE,MAAM,CAAC,MAAM;YACzB,MAAM,EAAE,YAAY,CAAC,MAAM;YAC3B,aAAa,EAAE,YAAY,CAAC,aAAa;SACzC,CAAC;AACF,KAAA;AAED,IAAA,MAAMC,SAAO,GAAG,IAAI,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAEJ,QAAM,EAAE,CAAC,CAAC;IACzE,OAAO,IAAIK,0BAAkB,CAAC,OAAO,EAAE,OAAO,EAAED,SAAO,EAAE,MAAM,CAA+B,CAAC;AAChG;;;;;;;"}
package/d1/index.d.ts CHANGED
@@ -1,24 +1,26 @@
1
1
  /// <reference types="@cloudflare/workers-types" />
2
- export { D as DrizzleConfig, a as DrizzleD1Database, d as drizzle } from '../driver.d-59580d08.js';
3
- import { L as Logger } from '../logger.d-37185354.js';
4
- import { y as Query } from '../column.d-8b137277.js';
5
- import { S as SQLiteSession, f as SQLiteAsyncDialect, b as SelectedFieldsOrdered, c as SQLiteTransactionConfig, d as SQLiteTransaction, P as PreparedQuery$1, e as PreparedQueryConfig$1 } from '../db.d-ae495c35.js';
6
- import '../select.types.d-c3e86d45.js';
2
+ export { D as DrizzleD1Database, d as drizzle } from '../driver.d-dea23ee6.js';
3
+ import { L as Logger, H as Query } from '../column.d-c31e7ad3.js';
4
+ import { J as TablesRelationalConfig, K as RelationalSchemaConfig } from '../query-promise.d-e370e0a9.js';
5
+ import { S as SQLiteSession, f as SQLiteAsyncDialect, b as SelectedFieldsOrdered, c as SQLiteTransactionConfig, d as SQLiteTransaction, P as PreparedQuery$1, e as PreparedQueryConfig$1 } from '../db.d-a2311092.js';
6
+ import '../select.types.d-34d7f74e.js';
7
7
  import '../migrator.js';
8
8
 
9
9
  interface SQLiteD1SessionOptions {
10
10
  logger?: Logger;
11
11
  }
12
12
  type PreparedQueryConfig = Omit<PreparedQueryConfig$1, 'statement' | 'run'>;
13
- declare class SQLiteD1Session extends SQLiteSession<'async', D1Result> {
13
+ declare class SQLiteD1Session<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends SQLiteSession<'async', D1Result, TFullSchema, TSchema> {
14
14
  private client;
15
+ private schema;
16
+ private options;
15
17
  private logger;
16
- constructor(client: D1Database, dialect: SQLiteAsyncDialect, options?: SQLiteD1SessionOptions);
17
- prepareQuery(query: Query, fields?: SelectedFieldsOrdered): PreparedQuery;
18
- transaction<T>(transaction: (tx: D1Transaction) => T | Promise<T>, config?: SQLiteTransactionConfig): Promise<T>;
18
+ constructor(client: D1Database, dialect: SQLiteAsyncDialect, schema: RelationalSchemaConfig<TSchema> | undefined, options?: SQLiteD1SessionOptions);
19
+ prepareQuery(query: Query, fields?: SelectedFieldsOrdered, customResultMapper?: (rows: unknown[][]) => unknown): PreparedQuery;
20
+ transaction<T>(transaction: (tx: D1Transaction<TFullSchema, TSchema>) => T | Promise<T>, config?: SQLiteTransactionConfig): Promise<T>;
19
21
  }
20
- declare class D1Transaction extends SQLiteTransaction<'async', D1Result> {
21
- transaction<T>(transaction: (tx: D1Transaction) => Promise<T>): Promise<T>;
22
+ declare class D1Transaction<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends SQLiteTransaction<'async', D1Result, TFullSchema, TSchema> {
23
+ transaction<T>(transaction: (tx: D1Transaction<TFullSchema, TSchema>) => Promise<T>): Promise<T>;
22
24
  }
23
25
  declare class PreparedQuery<T extends PreparedQueryConfig = PreparedQueryConfig> extends PreparedQuery$1<{
24
26
  type: 'async';
@@ -32,7 +34,8 @@ declare class PreparedQuery<T extends PreparedQueryConfig = PreparedQueryConfig>
32
34
  private params;
33
35
  private logger;
34
36
  private fields;
35
- constructor(stmt: D1PreparedStatement, queryString: string, params: unknown[], logger: Logger, fields: SelectedFieldsOrdered | undefined);
37
+ private customResultMapper?;
38
+ constructor(stmt: D1PreparedStatement, queryString: string, params: unknown[], logger: Logger, fields: SelectedFieldsOrdered | undefined, customResultMapper?: ((rows: unknown[][]) => unknown) | undefined);
36
39
  run(placeholderValues?: Record<string, unknown>): Promise<D1Result>;
37
40
  all(placeholderValues?: Record<string, unknown>): Promise<T['all']>;
38
41
  get(placeholderValues?: Record<string, unknown>): Promise<T['get']>;
package/d1/index.mjs CHANGED
@@ -1,2 +1,112 @@
1
- import{N as s,D as t}from"../logger-2598bf05.mjs";import{S as r,a as e,P as i,B as n,c as a}from"../session-b977ce56.mjs";import{s as o,k as l}from"../index-b71998f1.mjs";import{m as h}from"../utils-e6870670.mjs";import"../query-builder-2fcde2f0.mjs";class u extends r{constructor(t,r,e={}){super(r),this.client=t,this.logger=e.logger??new s}prepareQuery(s,t){const r=this.client.prepare(s.sql);return new g(r,s.sql,s.params,this.logger,t)}async transaction(s,t){const r=new c(this.dialect,this);await this.run(o.raw("begin"+(t?.behavior?" "+t.behavior:"")));try{const t=await s(r);return await this.run(o`commit`),t}catch(s){throw await this.run(o`rollback`),s}}}class c extends e{async transaction(s){const t=`sp${this.nestedIndex}`,r=new c(this.dialect,this.session,this.nestedIndex+1);await this.session.run(o.raw(`savepoint ${t}`));try{const e=await s(r);return await this.session.run(o.raw(`release savepoint ${t}`)),e}catch(s){throw await this.session.run(o.raw(`rollback to savepoint ${t}`)),s}}}class g extends i{constructor(s,t,r,e,i){super(),this.stmt=s,this.queryString=t,this.params=r,this.logger=e,this.fields=i}run(s){const t=l(this.params,s??{});return this.logger.logQuery(this.queryString,t),this.stmt.bind(...t).run()}all(s){const{fields:t,joinsNotNullableMap:r,queryString:e,logger:i,stmt:n}=this;if(t)return this.values(s).then((s=>s.map((s=>h(t,s,r)))));const a=l(this.params,s??{});return i.logQuery(e,a),n.bind(...a).all().then((({results:s})=>s))}get(s){return this.all(s).then((s=>s[0]))}values(s){const t=l(this.params,s??{});return this.logger.logQuery(this.queryString,t),this.stmt.bind(...t).raw()}}function m(s,r={}){const e=new a;let i;!0===r.logger?i=new t:!1!==r.logger&&(i=r.logger);const o=new u(s,e,{logger:i});return new n(e,o)}export{c as D1Transaction,g as PreparedQuery,u as SQLiteD1Session,m as drizzle};
1
+ import { N as NoopLogger, D as DefaultLogger } from '../logger-caf75bde.mjs';
2
+ import { a6 as sql, a9 as fillPlaceholders, ao as mapResultRow, K as extractTablesRelationalConfig, U as createTableRelationsHelpers } from '../relations-47eb5c5f.mjs';
3
+ import { S as SQLiteSession, a as SQLiteTransaction, P as PreparedQuery$1, B as BaseSQLiteDatabase, c as SQLiteAsyncDialect } from '../session-b99382a2.mjs';
4
+ import '../errors-bb636d84.mjs';
5
+
6
+ /// <reference types="@cloudflare/workers-types" />
7
+ class SQLiteD1Session extends SQLiteSession {
8
+ constructor(client, dialect, schema, options = {}) {
9
+ super(dialect);
10
+ this.client = client;
11
+ this.schema = schema;
12
+ this.options = options;
13
+ this.logger = options.logger ?? new NoopLogger();
14
+ }
15
+ prepareQuery(query, fields, customResultMapper) {
16
+ const stmt = this.client.prepare(query.sql);
17
+ return new PreparedQuery(stmt, query.sql, query.params, this.logger, fields, customResultMapper);
18
+ }
19
+ async transaction(transaction, config) {
20
+ const tx = new D1Transaction('async', this.dialect, this, this.schema);
21
+ await this.run(sql.raw(`begin${config?.behavior ? ' ' + config.behavior : ''}`));
22
+ try {
23
+ const result = await transaction(tx);
24
+ await this.run(sql `commit`);
25
+ return result;
26
+ }
27
+ catch (err) {
28
+ await this.run(sql `rollback`);
29
+ throw err;
30
+ }
31
+ }
32
+ }
33
+ class D1Transaction extends SQLiteTransaction {
34
+ async transaction(transaction) {
35
+ const savepointName = `sp${this.nestedIndex}`;
36
+ const tx = new D1Transaction('async', this.dialect, this.session, this.schema, this.nestedIndex + 1);
37
+ await this.session.run(sql.raw(`savepoint ${savepointName}`));
38
+ try {
39
+ const result = await transaction(tx);
40
+ await this.session.run(sql.raw(`release savepoint ${savepointName}`));
41
+ return result;
42
+ }
43
+ catch (err) {
44
+ await this.session.run(sql.raw(`rollback to savepoint ${savepointName}`));
45
+ throw err;
46
+ }
47
+ }
48
+ }
49
+ class PreparedQuery extends PreparedQuery$1 {
50
+ constructor(stmt, queryString, params, logger, fields, customResultMapper) {
51
+ super();
52
+ this.stmt = stmt;
53
+ this.queryString = queryString;
54
+ this.params = params;
55
+ this.logger = logger;
56
+ this.fields = fields;
57
+ this.customResultMapper = customResultMapper;
58
+ }
59
+ run(placeholderValues) {
60
+ const params = fillPlaceholders(this.params, placeholderValues ?? {});
61
+ this.logger.logQuery(this.queryString, params);
62
+ return this.stmt.bind(...params).run();
63
+ }
64
+ async all(placeholderValues) {
65
+ const { fields, joinsNotNullableMap, queryString, logger, stmt, customResultMapper } = this;
66
+ if (!fields && !customResultMapper) {
67
+ const params = fillPlaceholders(this.params, placeholderValues ?? {});
68
+ logger.logQuery(queryString, params);
69
+ return stmt.bind(...params).all().then(({ results }) => results);
70
+ }
71
+ const rows = await this.values(placeholderValues);
72
+ if (customResultMapper) {
73
+ return customResultMapper(rows);
74
+ }
75
+ return rows.map((row) => mapResultRow(fields, row, joinsNotNullableMap));
76
+ }
77
+ get(placeholderValues) {
78
+ // TODO: implement using stmt.get()
79
+ return this.all(placeholderValues).then((rows) => rows[0]);
80
+ }
81
+ values(placeholderValues) {
82
+ const params = fillPlaceholders(this.params, placeholderValues ?? {});
83
+ this.logger.logQuery(this.queryString, params);
84
+ return this.stmt.bind(...params).raw();
85
+ }
86
+ }
87
+
88
+ /// <reference types="@cloudflare/workers-types" />
89
+ function drizzle(client, config = {}) {
90
+ const dialect = new SQLiteAsyncDialect();
91
+ let logger;
92
+ if (config.logger === true) {
93
+ logger = new DefaultLogger();
94
+ }
95
+ else if (config.logger !== false) {
96
+ logger = config.logger;
97
+ }
98
+ let schema;
99
+ if (config.schema) {
100
+ const tablesConfig = extractTablesRelationalConfig(config.schema, createTableRelationsHelpers);
101
+ schema = {
102
+ fullSchema: config.schema,
103
+ schema: tablesConfig.tables,
104
+ tableNamesMap: tablesConfig.tableNamesMap,
105
+ };
106
+ }
107
+ const session = new SQLiteD1Session(client, dialect, schema, { logger });
108
+ return new BaseSQLiteDatabase('async', dialect, session, schema);
109
+ }
110
+
111
+ export { D1Transaction, PreparedQuery, SQLiteD1Session, drizzle };
2
112
  //# sourceMappingURL=index.mjs.map
package/d1/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/d1/session.ts","../../src/d1/driver.ts"],"sourcesContent":[null,null],"names":["SQLiteD1Session","SQLiteSession","constructor","client","dialect","options","super","this","logger","NoopLogger","prepareQuery","query","fields","stmt","prepare","sql","PreparedQuery","params","async","transaction","config","tx","D1Transaction","run","raw","behavior","result","err","SQLiteTransaction","savepointName","nestedIndex","session","PreparedQueryBase","queryString","placeholderValues","fillPlaceholders","logQuery","bind","all","joinsNotNullableMap","values","then","map","row","mapResultRow","results","get","rows","drizzle","SQLiteAsyncDialect","DefaultLogger","BaseSQLiteDatabase"],"mappings":"2PAsBM,MAAOA,UAAwBC,EAGpCC,YACSC,EACRC,EACAC,EAAkC,CAAA,GAElCC,MAAMF,GAJEG,KAAMJ,OAANA,EAKRI,KAAKC,OAASH,EAAQG,QAAU,IAAIC,CACpC,CAEDC,aAAaC,EAAcC,GAC1B,MAAMC,EAAON,KAAKJ,OAAOW,QAAQH,EAAMI,KACvC,OAAO,IAAIC,EAAcH,EAAMF,EAAMI,IAAKJ,EAAMM,OAAQV,KAAKC,OAAQI,EACrE,CAEQM,kBACRC,EACAC,GAEA,MAAMC,EAAK,IAAIC,EAAcf,KAAKH,QAASG,YACrCA,KAAKgB,IAAIR,EAAIS,IAAI,SAAQJ,GAAQK,SAAW,IAAML,EAAOK,SAAW,MAC1E,IACC,MAAMC,QAAeP,EAAYE,GAEjC,aADMd,KAAKgB,IAAIR,CAAG,UACXW,CACP,CAAC,MAAOC,GAER,YADMpB,KAAKgB,IAAIR,CAAG,YACZY,CACN,CACD,EAGI,MAAOL,UAAsBM,EACzBV,kBAAqBC,GAC7B,MAAMU,EAAgB,KAAKtB,KAAKuB,cAC1BT,EAAK,IAAIC,EAAcf,KAAKH,QAASG,KAAKwB,QAASxB,KAAKuB,YAAc,SACtEvB,KAAKwB,QAAQR,IAAIR,EAAIS,IAAI,aAAaK,MAC5C,IACC,MAAMH,QAAeP,EAAYE,GAEjC,aADMd,KAAKwB,QAAQR,IAAIR,EAAIS,IAAI,qBAAqBK,MAC7CH,CACP,CAAC,MAAOC,GAER,YADMpB,KAAKwB,QAAQR,IAAIR,EAAIS,IAAI,yBAAyBK,MAClDF,CACN,CACD,EAGI,MAAOX,UAA2EgB,EAGvF9B,YACSW,EACAoB,EACAhB,EACAT,EACAI,GAERN,QANQC,KAAIM,KAAJA,EACAN,KAAW0B,YAAXA,EACA1B,KAAMU,OAANA,EACAV,KAAMC,OAANA,EACAD,KAAMK,OAANA,CAGR,CAEDW,IAAIW,GACH,MAAMjB,EAASkB,EAAiB5B,KAAKU,OAAQiB,GAAqB,CAAA,GAElE,OADA3B,KAAKC,OAAO4B,SAAS7B,KAAK0B,YAAahB,GAChCV,KAAKM,KAAKwB,QAAQpB,GAAQM,KACjC,CAEDe,IAAIJ,GACH,MAAMtB,OAAEA,EAAM2B,oBAAEA,EAAmBN,YAAEA,EAAWzB,OAAEA,EAAMK,KAAEA,GAASN,KACnE,GAAIK,EACH,OAAOL,KAAKiC,OAAON,GAAmBO,MAAMD,GAC3CA,EAAOE,KAAKC,GAAQC,EAAahC,EAAQ+B,EAAKJ,OAIhD,MAAMtB,EAASkB,EAAiB5B,KAAKU,OAAQiB,GAAqB,CAAA,GAElE,OADA1B,EAAO4B,SAASH,EAAahB,GACtBJ,EAAKwB,QAAQpB,GAAQqB,MAAMG,MAAK,EAAGI,aAAcA,GACxD,CAEDC,IAAIZ,GAEH,OAAO3B,KAAK+B,IAAIJ,GAAmBO,MAAMM,GAASA,EAAK,IACvD,CAEDP,OAAoCN,GACnC,MAAMjB,EAASkB,EAAiB5B,KAAKU,OAAQiB,GAAqB,CAAA,GAElE,OADA3B,KAAKC,OAAO4B,SAAS7B,KAAK0B,YAAahB,GAChCV,KAAKM,KAAKwB,QAAQpB,GAAQO,KACjC,WCnGcwB,EAAQ7C,EAAoBiB,EAAwB,IACnE,MAAMhB,EAAU,IAAI6C,EACpB,IAAIzC,GACkB,IAAlBY,EAAOZ,OACVA,EAAS,IAAI0C,GACe,IAAlB9B,EAAOZ,SACjBA,EAASY,EAAOZ,QAEjB,MAAMuB,EAAU,IAAI/B,EAAgBG,EAAQC,EAAS,CAAEI,WACvD,OAAO,IAAI2C,EAAmB/C,EAAS2B,EACxC"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/d1/session.ts","../../src/d1/driver.ts"],"sourcesContent":[null,null],"names":["PreparedQueryBase"],"mappings":"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"}
package/d1/migrator.cjs CHANGED
@@ -1,2 +1,14 @@
1
- "use strict";var e=require("../migrator.cjs");require("node:crypto"),require("node:fs"),require("node:path"),exports.migrate=async function(r,i){const t=e.readMigrationFiles(i);await r.dialect.migrate(t,r.session)};
1
+ 'use strict';
2
+
3
+ var migrator = require('../migrator.cjs');
4
+ require('node:crypto');
5
+ require('node:fs');
6
+ require('node:path');
7
+
8
+ async function migrate(db, config) {
9
+ const migrations = migrator.readMigrationFiles(config);
10
+ await db.dialect.migrate(migrations, db.session);
11
+ }
12
+
13
+ exports.migrate = migrate;
2
14
  //# sourceMappingURL=migrator.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"migrator.cjs","sources":["../../src/d1/migrator.ts"],"sourcesContent":[null],"names":["async","db","config","migrations","readMigrationFiles","dialect","migrate","session"],"mappings":"6HAIOA,eAAuBC,EAAuBC,GACpD,MAAMC,EAAaC,qBAAmBF,SAChCD,EAAGI,QAAQC,QAAQH,EAAYF,EAAGM,QACzC"}
1
+ {"version":3,"file":"migrator.cjs","sources":["../../src/d1/migrator.ts"],"sourcesContent":[null],"names":["readMigrationFiles"],"mappings":";;;;;;;AAIO,eAAe,OAAO,CAAC,EAAqB,EAAE,MAAgC,EAAA;AACpF,IAAA,MAAM,UAAU,GAAGA,2BAAkB,CAAC,MAAM,CAAC,CAAC;AAC9C,IAAA,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;AAClD;;;;"}
package/d1/migrator.d.ts CHANGED
@@ -1,9 +1,9 @@
1
1
  import { MigrationConfig } from '../migrator.js';
2
- import { a as DrizzleD1Database } from '../driver.d-59580d08.js';
3
- import '../logger.d-37185354.js';
4
- import '../db.d-ae495c35.js';
5
- import '../select.types.d-c3e86d45.js';
6
- import '../column.d-8b137277.js';
2
+ import { D as DrizzleD1Database } from '../driver.d-dea23ee6.js';
3
+ import '../db.d-a2311092.js';
4
+ import '../select.types.d-34d7f74e.js';
5
+ import '../column.d-c31e7ad3.js';
6
+ import '../query-promise.d-e370e0a9.js';
7
7
 
8
8
  declare function migrate(db: DrizzleD1Database, config: string | MigrationConfig): Promise<void>;
9
9
 
package/d1/migrator.mjs CHANGED
@@ -1,2 +1,12 @@
1
- import{readMigrationFiles as o}from"../migrator.mjs";import"node:crypto";import"node:fs";import"node:path";async function t(t,i){const r=o(i);await t.dialect.migrate(r,t.session)}export{t as migrate};
1
+ import { readMigrationFiles } from '../migrator.mjs';
2
+ import 'node:crypto';
3
+ import 'node:fs';
4
+ import 'node:path';
5
+
6
+ async function migrate(db, config) {
7
+ const migrations = readMigrationFiles(config);
8
+ await db.dialect.migrate(migrations, db.session);
9
+ }
10
+
11
+ export { migrate };
2
12
  //# sourceMappingURL=migrator.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"migrator.mjs","sources":["../../src/d1/migrator.ts"],"sourcesContent":[null],"names":["async","migrate","db","config","migrations","readMigrationFiles","dialect","session"],"mappings":"2GAIOA,eAAeC,EAAQC,EAAuBC,GACpD,MAAMC,EAAaC,EAAmBF,SAChCD,EAAGI,QAAQL,QAAQG,EAAYF,EAAGK,QACzC"}
1
+ {"version":3,"file":"migrator.mjs","sources":["../../src/d1/migrator.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAIO,eAAe,OAAO,CAAC,EAAqB,EAAE,MAAgC,EAAA;AACpF,IAAA,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAC9C,IAAA,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;AAClD;;;;"}
@@ -1,5 +1,6 @@
1
- import { T as TypedQueryBuilder, A as AddAliasToSelection, G as GetSelectTableName, a as GetSelectTableSelection, S as SelectMode, J as JoinNullability, B as BuildSubquerySelection, b as SelectResult, c as JoinType, M as MapColumnsToTableAlias, d as AppendToResult, e as AppendToNullabilityMap, f as SelectResultFields } from './select.types.d-c3e86d45.js';
2
- import { S as SQL, a8 as TableConfig$1, T as Table, a9 as UpdateTableConfig, q as BuildColumns, h as ColumnBuilderBaseConfig, ag as Update, d as ColumnHKTBase, C as ColumnBaseConfig, g as Column, j as ColumnBuilderHKTBase, aj as Assume, n as ColumnBuilder, at as ColumnsSelection, V as View, a5 as Subquery, a6 as WithSubquery, am as ValueOrArray, P as Placeholder, ai as Simplify, y as Query, s as SelectedFieldsFlat$1, u as SelectedFields$1, v as SelectedFieldsOrdered$1, b as SQLWrapper, ad as InferModel, ae as UpdateSet, G as GetColumnData, $ as Param } from './column.d-8b137277.js';
1
+ import { T as TypedQueryBuilder, A as AddAliasToSelection, G as GetSelectTableName, a as GetSelectTableSelection, S as SelectMode, J as JoinNullability, B as BuildSubquerySelection, b as SelectResult, c as JoinType, M as MapColumnsToTableAlias, d as AppendToResult, e as AppendToNullabilityMap, f as SelectResultFields } from './select.types.d-34d7f74e.js';
2
+ import { J as TablesRelationalConfig, I as TableRelationalConfig, H as DBQueryConfig, a2 as BuildRelationalQueryResult, U as BuildQueryResult, Q as QueryPromise, L as ExtractTablesWithRelations, K as RelationalSchemaConfig } from './query-promise.d-e370e0a9.js';
3
+ import { S as SQL, ag as TableConfig$1, T as Table, ah as UpdateTableConfig, r as BuildColumns, k as ColumnBuilderHKTBase, ax as Assume, i as ColumnBuilderBaseConfig, b as ColumnHKTBase, C as ColumnBaseConfig, o as ColumnBuilder, at as Update, e as Column, aK as ColumnsSelection, V as View, ad as Subquery, ae as WithSubquery, aA as ValueOrArray, a9 as Placeholder, av as Simplify, H as Query, v as SelectedFieldsFlat$1, x as SelectedFields$1, y as SelectedFieldsOrdered$1, J as SQLWrapper, aq as InferModel, ar as UpdateSet, G as GetColumnData, a5 as Param, A as AnyColumn, aI as KnownKeysOnly } from './column.d-c31e7ad3.js';
3
4
  import { MigrationMeta } from './migrator.js';
4
5
 
5
6
  declare class CheckBuilder {
@@ -222,12 +223,12 @@ declare class SQLiteSelectBuilder<TSelection extends SelectedFields | undefined,
222
223
  private session;
223
224
  private dialect;
224
225
  private withList;
225
- constructor(fields: TSelection, session: SQLiteSession | undefined, dialect: SQLiteDialect, withList?: Subquery[]);
226
+ constructor(fields: TSelection, session: SQLiteSession<any, any, any, any> | undefined, dialect: SQLiteDialect, withList?: Subquery[]);
226
227
  from<TFrom extends AnySQLiteTable | Subquery | SQLiteViewBase | SQL>(source: TFrom): CreateSQLiteSelectFromBuilderMode<TBuilderMode, GetSelectTableName<TFrom>, TResultType, TRunResult, TSelection extends undefined ? GetSelectTableSelection<TFrom> : TSelection, TSelection extends undefined ? 'single' : 'partial'>;
227
228
  }
228
229
  declare abstract class SQLiteSelectQueryBuilder<THKT extends SQLiteSelectHKTBase, TTableName extends string | undefined, TResultType extends 'sync' | 'async', TRunResult, TSelection extends ColumnsSelection, TSelectMode extends SelectMode, TNullabilityMap extends Record<string, JoinNullability> = TTableName extends string ? Record<TTableName, 'not-null'> : {}> extends TypedQueryBuilder<BuildSubquerySelection<TSelection, TNullabilityMap>, SelectResult<TSelection, TSelectMode, TNullabilityMap>[]> {
229
230
  private isPartialSelect;
230
- protected session: SQLiteSession | undefined;
231
+ protected session: SQLiteSession<any, any, any, any> | undefined;
231
232
  protected dialect: SQLiteDialect;
232
233
  readonly _: {
233
234
  readonly selectMode: TSelectMode;
@@ -238,7 +239,7 @@ declare abstract class SQLiteSelectQueryBuilder<THKT extends SQLiteSelectHKTBase
238
239
  protected config: SQLiteSelectConfig;
239
240
  protected joinsNotNullableMap: Record<string, boolean>;
240
241
  private tableName;
241
- constructor(table: SQLiteSelectConfig['table'], fields: SQLiteSelectConfig['fields'], isPartialSelect: boolean, session: SQLiteSession | undefined, dialect: SQLiteDialect, withList: Subquery[]);
242
+ constructor(table: SQLiteSelectConfig['table'], fields: SQLiteSelectConfig['fields'], isPartialSelect: boolean, session: SQLiteSession<any, any, any, any> | undefined, dialect: SQLiteDialect, withList: Subquery[]);
242
243
  private createJoin;
243
244
  leftJoin: JoinFn<THKT, TTableName, TResultType, TRunResult, TSelectMode, "left", TSelection, TNullabilityMap>;
244
245
  rightJoin: JoinFn<THKT, TTableName, TResultType, TRunResult, TSelectMode, "right", TSelection, TNullabilityMap>;
@@ -286,6 +287,7 @@ type BuildAliasTable<TTable extends Table | View, TAlias extends string> = TTabl
286
287
  interface SQLiteSelectConfig {
287
288
  withList: Subquery[];
288
289
  fields: Record<string, unknown>;
290
+ fieldsFlat?: SelectedFieldsOrdered;
289
291
  where?: SQL;
290
292
  having?: SQL;
291
293
  table: AnySQLiteTable | Subquery | SQLiteViewBase | SQL;
@@ -331,32 +333,32 @@ interface PreparedQueryConfig {
331
333
  values: unknown[][];
332
334
  }
333
335
  declare abstract class PreparedQuery<T extends PreparedQueryConfig> {
334
- abstract run(placeholderValues?: Record<string, unknown>): ResultKind<T['type'], T['run']>;
335
- abstract all(placeholderValues?: Record<string, unknown>): ResultKind<T['type'], T['all']>;
336
- abstract get(placeholderValues?: Record<string, unknown>): ResultKind<T['type'], T['get']>;
337
- abstract values(placeholderValues?: Record<string, unknown>): ResultKind<T['type'], T['values']>;
336
+ abstract run(placeholderValues?: Record<string, unknown>): Result<T['type'], T['run']>;
337
+ abstract all(placeholderValues?: Record<string, unknown>): Result<T['type'], T['all']>;
338
+ abstract get(placeholderValues?: Record<string, unknown>): Result<T['type'], T['get']>;
339
+ abstract values(placeholderValues?: Record<string, unknown>): Result<T['type'], T['values']>;
338
340
  }
339
341
  interface SQLiteTransactionConfig {
340
342
  behavior?: 'deferred' | 'immediate' | 'exclusive';
341
343
  }
342
- declare abstract class SQLiteSession<TResultKind extends 'sync' | 'async' = 'sync' | 'async', TRunResult = unknown> {
344
+ declare abstract class SQLiteSession<TResultKind extends 'sync' | 'async', TRunResult, TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> {
343
345
  constructor(
344
346
  /** @internal */
345
347
  dialect: {
346
348
  sync: SQLiteSyncDialect;
347
349
  async: SQLiteAsyncDialect;
348
350
  }[TResultKind]);
349
- abstract prepareQuery(query: Query, fields: SelectedFieldsOrdered | undefined): PreparedQuery<PreparedQueryConfig & {
351
+ abstract prepareQuery(query: Query, fields: SelectedFieldsOrdered | undefined, customResultMapper?: (rows: unknown[][], mapColumnValue?: (value: unknown) => unknown) => unknown): PreparedQuery<PreparedQueryConfig & {
350
352
  type: TResultKind;
351
353
  }>;
352
354
  prepareOneTimeQuery(query: Query, fields: SelectedFieldsOrdered | undefined): PreparedQuery<PreparedQueryConfig & {
353
355
  type: TResultKind;
354
356
  }>;
355
- abstract transaction<T>(transaction: (tx: SQLiteTransaction<TResultKind, TRunResult>) => ResultKind<TResultKind, T>, config?: SQLiteTransactionConfig): ResultKind<TResultKind, T>;
356
- run(query: SQL): ResultKind<TResultKind, TRunResult>;
357
- all<T = unknown>(query: SQL): ResultKind<TResultKind, T[]>;
358
- get<T = unknown>(query: SQL): ResultKind<TResultKind, T>;
359
- values<T extends any[] = unknown[]>(query: SQL): ResultKind<TResultKind, T[]>;
357
+ abstract transaction<T>(transaction: (tx: SQLiteTransaction<TResultKind, TRunResult, TFullSchema, TSchema>) => Result<TResultKind, T>, config?: SQLiteTransactionConfig): Result<TResultKind, T>;
358
+ run(query: SQL): Result<TResultKind, TRunResult>;
359
+ all<T = unknown>(query: SQL): Result<TResultKind, T[]>;
360
+ get<T = unknown>(query: SQL): Result<TResultKind, T>;
361
+ values<T extends any[] = unknown[]>(query: SQL): Result<TResultKind, T[]>;
360
362
  }
361
363
  interface ResultHKT {
362
364
  readonly $brand: 'SQLiteResultHKT';
@@ -369,9 +371,26 @@ interface SyncResultHKT extends ResultHKT {
369
371
  interface AsyncResultHKT extends ResultHKT {
370
372
  readonly type: Promise<this['config']>;
371
373
  }
372
- type ResultKind<TType extends 'sync' | 'async', TResult> = (('sync' extends TType ? SyncResultHKT : AsyncResultHKT) & {
374
+ type Result<TKind extends 'sync' | 'async', TResult> = (('sync' extends TKind ? SyncResultHKT : AsyncResultHKT) & {
373
375
  readonly config: TResult;
374
376
  })['type'];
377
+ declare abstract class SQLiteTransaction<TResultType extends 'sync' | 'async', TRunResult, TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends BaseSQLiteDatabase<TResultType, TRunResult, TFullSchema, TSchema> {
378
+ protected schema: {
379
+ fullSchema: Record<string, unknown>;
380
+ schema: TSchema;
381
+ tableNamesMap: Record<string, string>;
382
+ } | undefined;
383
+ protected readonly nestedIndex: number;
384
+ constructor(resultType: TResultType, dialect: {
385
+ sync: SQLiteSyncDialect;
386
+ async: SQLiteAsyncDialect;
387
+ }[TResultType], session: SQLiteSession<TResultType, TRunResult, TFullSchema, TSchema>, schema: {
388
+ fullSchema: Record<string, unknown>;
389
+ schema: TSchema;
390
+ tableNamesMap: Record<string, string>;
391
+ } | undefined, nestedIndex?: number);
392
+ rollback(): never;
393
+ }
375
394
 
376
395
  interface SQLiteDeleteConfig {
377
396
  where?: SQL | undefined;
@@ -385,7 +404,7 @@ declare class SQLiteDelete<TTable extends AnySQLiteTable, TResultType extends 's
385
404
  private session;
386
405
  private dialect;
387
406
  private config;
388
- constructor(table: TTable, session: SQLiteSession, dialect: SQLiteDialect);
407
+ constructor(table: TTable, session: SQLiteSession<any, any, any, any>, dialect: SQLiteDialect);
389
408
  where(where: SQL | undefined): Omit<this, 'where'>;
390
409
  returning(): Omit<SQLiteDelete<TTable, TResultType, TRunResult, InferModel<TTable>>, 'where' | 'returning'>;
391
410
  returning<TSelectedFields extends SelectedFieldsFlat>(fields: TSelectedFields): Omit<SQLiteDelete<TTable, TResultType, TRunResult, SelectResultFields<TSelectedFields>>, 'where' | 'returning'>;
@@ -414,12 +433,12 @@ type SQLiteUpdateSetSource<TTable extends AnySQLiteTable> = Simplify<{
414
433
  }>;
415
434
  declare class SQLiteUpdateBuilder<TTable extends AnySQLiteTable, TResultType extends 'sync' | 'async', TRunResult> {
416
435
  protected table: TTable;
417
- protected session: SQLiteSession;
436
+ protected session: SQLiteSession<any, any, any, any>;
418
437
  protected dialect: SQLiteDialect;
419
438
  readonly _: {
420
439
  readonly table: TTable;
421
440
  };
422
- constructor(table: TTable, session: SQLiteSession, dialect: SQLiteDialect);
441
+ constructor(table: TTable, session: SQLiteSession<any, any, any, any>, dialect: SQLiteDialect);
423
442
  set(values: SQLiteUpdateSetSource<TTable>): SQLiteUpdate<TTable, TResultType, TRunResult>;
424
443
  }
425
444
  interface SQLiteUpdate<TTable extends AnySQLiteTable, TResultType extends 'sync' | 'async', TRunResult, TReturning = undefined> extends SQLWrapper {
@@ -431,7 +450,7 @@ declare class SQLiteUpdate<TTable extends AnySQLiteTable, TResultType extends 's
431
450
  readonly table: TTable;
432
451
  };
433
452
  private config;
434
- constructor(table: TTable, set: UpdateSet, session: SQLiteSession, dialect: SQLiteDialect);
453
+ constructor(table: TTable, set: UpdateSet, session: SQLiteSession<any, any, any, any>, dialect: SQLiteDialect);
435
454
  where(where: SQL | undefined): Omit<this, 'where'>;
436
455
  returning(): Omit<SQLiteUpdate<TTable, TResultType, TRunResult, InferModel<TTable>>, 'where' | 'returning'>;
437
456
  returning<TSelectedFields extends SelectedFields>(fields: TSelectedFields): Omit<SQLiteUpdate<TTable, TResultType, TRunResult, SelectResultFields<TSelectedFields>>, 'where' | 'returning'>;
@@ -460,9 +479,9 @@ type SQLiteInsertValue<TTable extends AnySQLiteTable> = Simplify<{
460
479
  }>;
461
480
  declare class SQLiteInsertBuilder<TTable extends AnySQLiteTable, TResultType extends 'sync' | 'async', TRunResult> {
462
481
  protected table: TTable;
463
- protected session: SQLiteSession;
482
+ protected session: SQLiteSession<any, any, any, any>;
464
483
  protected dialect: SQLiteDialect;
465
- constructor(table: TTable, session: SQLiteSession, dialect: SQLiteDialect);
484
+ constructor(table: TTable, session: SQLiteSession<any, any, any, any>, dialect: SQLiteDialect);
466
485
  values(value: SQLiteInsertValue<TTable>): SQLiteInsert<TTable, TResultType, TRunResult>;
467
486
  values(values: SQLiteInsertValue<TTable>[]): SQLiteInsert<TTable, TResultType, TRunResult>;
468
487
  }
@@ -478,7 +497,7 @@ declare class SQLiteInsert<TTable extends AnySQLiteTable, TResultType extends 's
478
497
  readonly returning: TReturning;
479
498
  };
480
499
  private config;
481
- constructor(table: TTable, values: SQLiteInsertConfig['values'], session: SQLiteSession, dialect: SQLiteDialect);
500
+ constructor(table: TTable, values: SQLiteInsertConfig['values'], session: SQLiteSession<any, any, any, any>, dialect: SQLiteDialect);
482
501
  returning(): Omit<SQLiteInsert<TTable, TResultType, TRunResult, InferModel<TTable>>, 'returning' | `onConflict${string}`>;
483
502
  returning<TSelectedFields extends SelectedFieldsFlat>(fields: TSelectedFields): Omit<SQLiteInsert<TTable, TResultType, TRunResult, SelectResultFields<TSelectedFields>>, 'returning' | `onConflict${string}`>;
484
503
  onConflictDoNothing(config?: {
@@ -539,26 +558,92 @@ declare abstract class SQLiteDialect {
539
558
  * If `isSingleTable` is true, then columns won't be prefixed with table name
540
559
  */
541
560
  private buildSelection;
542
- buildSelectQuery({ withList, fields, where, having, table, joins, orderBy, groupBy, limit, offset }: SQLiteSelectConfig): SQL;
561
+ buildSelectQuery({ withList, fields, fieldsFlat, where, having, table, joins, orderBy, groupBy, limit, offset }: SQLiteSelectConfig): SQL;
543
562
  buildInsertQuery({ table, values, onConflict, returning }: SQLiteInsertConfig): SQL;
544
563
  sqlToQuery(sql: SQL): Query;
564
+ buildRelationalQuery(fullSchema: Record<string, unknown>, schema: TablesRelationalConfig, tableNamesMap: Record<string, string>, table: AnySQLiteTable, tableConfig: TableRelationalConfig, config: true | DBQueryConfig<'many', true>, tableAlias: string, relationColumns: AnyColumn[], isRoot?: boolean): BuildRelationalQueryResult;
545
565
  }
546
566
  declare class SQLiteSyncDialect extends SQLiteDialect {
547
- migrate(migrations: MigrationMeta[], session: SQLiteSession<'sync'>): void;
567
+ migrate(migrations: MigrationMeta[], session: SQLiteSession<'sync', unknown, Record<string, unknown>, TablesRelationalConfig>): void;
548
568
  }
549
569
  declare class SQLiteAsyncDialect extends SQLiteDialect {
550
- migrate(migrations: MigrationMeta[], session: SQLiteSession<'async'>): Promise<void>;
570
+ migrate(migrations: MigrationMeta[], session: SQLiteSession<'async', unknown, Record<string, unknown>, TablesRelationalConfig>): Promise<void>;
551
571
  }
552
572
 
553
- declare class BaseSQLiteDatabase<TResultKind extends 'sync' | 'async', TRunResult> {
554
- constructor(
573
+ declare class AsyncRelationalQueryBuilder<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig, TFields extends TableRelationalConfig> {
574
+ private fullSchema;
575
+ private schema;
576
+ private tableNamesMap;
577
+ private table;
578
+ private tableConfig;
579
+ private dialect;
580
+ private session;
581
+ constructor(fullSchema: Record<string, unknown>, schema: TSchema, tableNamesMap: Record<string, string>, table: AnySQLiteTable, tableConfig: TableRelationalConfig, dialect: SQLiteDialect, session: SQLiteSession<'async', unknown, TFullSchema, TSchema>);
582
+ findMany<TConfig extends DBQueryConfig<'many', true, TSchema, TFields>>(config?: KnownKeysOnly<TConfig, DBQueryConfig<'many', true, TSchema, TFields>>): SQLiteAsyncRelationalQuery<BuildQueryResult<TSchema, TFields, TConfig>[]>;
583
+ findFirst<TSelection extends Omit<DBQueryConfig<'many', true, TSchema, TFields>, 'limit'>>(config?: KnownKeysOnly<TSelection, Omit<DBQueryConfig<'many', true, TSchema, TFields>, 'limit'>>): SQLiteAsyncRelationalQuery<BuildQueryResult<TSchema, TFields, TSelection> | undefined>;
584
+ }
585
+ declare class SyncRelationalQueryBuilder<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig, TFields extends TableRelationalConfig> {
586
+ private fullSchema;
587
+ private schema;
588
+ private tableNamesMap;
589
+ private table;
590
+ private tableConfig;
591
+ private dialect;
592
+ private session;
593
+ constructor(fullSchema: Record<string, unknown>, schema: TSchema, tableNamesMap: Record<string, string>, table: AnySQLiteTable, tableConfig: TableRelationalConfig, dialect: SQLiteDialect, session: SQLiteSession<'sync', unknown, TFullSchema, TSchema>);
594
+ prepareFindMany<TConfig extends DBQueryConfig<'many', true, TSchema, TFields>>(config?: KnownKeysOnly<TConfig, DBQueryConfig<'many', true, TSchema, TFields>>): {
595
+ execute: PreparedQuery<PreparedQueryConfig & {
596
+ type: 'sync';
597
+ all: BuildQueryResult<TSchema, TFields, TConfig>[];
598
+ }>['all'];
599
+ };
600
+ findMany<TConfig extends DBQueryConfig<'many', true, TSchema, TFields>>(config?: KnownKeysOnly<TConfig, DBQueryConfig<'many', true, TSchema, TFields>>): BuildQueryResult<TSchema, TFields, TConfig>[];
601
+ prepareFindFirst<TConfig extends DBQueryConfig<'many', true, TSchema, TFields>>(config?: KnownKeysOnly<TConfig, DBQueryConfig<'many', true, TSchema, TFields>>): {
602
+ execute: PreparedQuery<PreparedQueryConfig & {
603
+ type: 'sync';
604
+ get: BuildQueryResult<TSchema, TFields, TConfig> | undefined;
605
+ }>['get'];
606
+ };
607
+ findFirst<TSelection extends Omit<DBQueryConfig<'many', true, TSchema, TFields>, 'limit'>>(config?: KnownKeysOnly<TSelection, Omit<DBQueryConfig<'many', true, TSchema, TFields>, 'limit'>>): BuildQueryResult<TSchema, TFields, TSelection> | undefined;
608
+ }
609
+ declare class SQLiteRelationalQuery<TResultKind extends 'sync' | 'async', TResult> {
610
+ private fullSchema;
611
+ private schema;
612
+ private tableNamesMap;
613
+ private table;
614
+ private tableConfig;
615
+ private dialect;
616
+ private session;
617
+ private config;
618
+ private mode;
619
+ protected $brand: 'SQLiteRelationalQuery';
620
+ constructor(fullSchema: Record<string, unknown>, schema: TablesRelationalConfig, tableNamesMap: Record<string, string>, table: AnySQLiteTable, tableConfig: TableRelationalConfig, dialect: SQLiteDialect, session: SQLiteSession<TResultKind, unknown, Record<string, unknown>, TablesRelationalConfig>, config: DBQueryConfig<'many', true> | true, mode: 'many' | 'first');
621
+ prepare(): PreparedQuery<PreparedQueryConfig & {
622
+ type: TResultKind;
623
+ all: TResult;
624
+ get: TResult;
625
+ }>;
626
+ execute(): Result<TResultKind, TResult>;
627
+ }
628
+ interface SQLiteAsyncRelationalQuery<TResult> extends SQLiteRelationalQuery<'async', TResult>, QueryPromise<TResult> {
629
+ }
630
+
631
+ declare class BaseSQLiteDatabase<TResultKind extends 'sync' | 'async', TRunResult, TFullSchema extends Record<string, unknown> = Record<string, never>, TSchema extends TablesRelationalConfig = ExtractTablesWithRelations<TFullSchema>> {
632
+ readonly _: {
633
+ readonly schema: TSchema | undefined;
634
+ readonly tableNamesMap: Record<string, string>;
635
+ };
636
+ query: {
637
+ [K in keyof TSchema]: TResultKind extends 'async' ? AsyncRelationalQueryBuilder<TFullSchema, TSchema, TSchema[K]> : SyncRelationalQueryBuilder<TFullSchema, TSchema, TSchema[K]>;
638
+ };
639
+ constructor(resultKind: TResultKind,
555
640
  /** @internal */
556
641
  dialect: {
557
642
  sync: SQLiteSyncDialect;
558
643
  async: SQLiteAsyncDialect;
559
644
  }[TResultKind],
560
645
  /** @internal */
561
- session: SQLiteSession<TResultKind, TRunResult>);
646
+ session: SQLiteSession<TResultKind, TRunResult, TFullSchema, TSchema>, schema: RelationalSchemaConfig<TSchema> | undefined);
562
647
  $with<TAlias extends string>(alias: TAlias): {
563
648
  as<TSelection extends ColumnsSelection>(qb: TypedQueryBuilder<TSelection, unknown> | ((qb: QueryBuilder) => TypedQueryBuilder<TSelection, unknown>)): WithSubqueryWithSelection<TSelection, TAlias>;
564
649
  };
@@ -573,19 +658,11 @@ declare class BaseSQLiteDatabase<TResultKind extends 'sync' | 'async', TRunResul
573
658
  update<TTable extends AnySQLiteTable>(table: TTable): SQLiteUpdateBuilder<TTable, TResultKind, TRunResult>;
574
659
  insert<TTable extends AnySQLiteTable>(into: TTable): SQLiteInsertBuilder<TTable, TResultKind, TRunResult>;
575
660
  delete<TTable extends AnySQLiteTable>(from: TTable): SQLiteDelete<TTable, TResultKind, TRunResult>;
576
- run(query: SQLWrapper): ResultKind<TResultKind, TRunResult>;
577
- all<T = unknown>(query: SQLWrapper): ResultKind<TResultKind, T[]>;
578
- get<T = unknown>(query: SQLWrapper): ResultKind<TResultKind, T>;
579
- values<T extends unknown[] = unknown[]>(query: SQLWrapper): ResultKind<TResultKind, T[]>;
580
- transaction<T>(transaction: (tx: SQLiteTransaction<TResultKind, TRunResult>) => ResultKind<TResultKind, T>, config?: SQLiteTransactionConfig): ResultKind<TResultKind, T>;
581
- }
582
- declare abstract class SQLiteTransaction<TResultType extends 'sync' | 'async', TRunResult> extends BaseSQLiteDatabase<TResultType, TRunResult> {
583
- protected readonly nestedIndex: number;
584
- constructor(dialect: {
585
- sync: SQLiteSyncDialect;
586
- async: SQLiteAsyncDialect;
587
- }[TResultType], session: SQLiteSession<TResultType, TRunResult>, nestedIndex?: number);
588
- rollback(): never;
661
+ run(query: SQLWrapper): Result<TResultKind, TRunResult>;
662
+ all<T = unknown>(query: SQLWrapper): Result<TResultKind, T[]>;
663
+ get<T = unknown>(query: SQLWrapper): Result<TResultKind, T>;
664
+ values<T extends unknown[] = unknown[]>(query: SQLWrapper): Result<TResultKind, T[]>;
665
+ transaction<T>(transaction: (tx: SQLiteTransaction<TResultKind, TRunResult, TFullSchema, TSchema>) => Result<TResultKind, T>, config?: SQLiteTransactionConfig): Result<TResultKind, T>;
589
666
  }
590
667
 
591
- export { SQLiteSelectQueryBuilderHKT as $, AnySQLiteTable as A, BaseSQLiteDatabase as B, Check as C, SQLiteDeleteConfig as D, SQLiteDelete as E, ForeignKey as F, SQLiteInsertConfig as G, SQLiteInsertValue as H, Index as I, SQLiteInsertBuilder as J, SQLiteInsert as K, SQLiteSelectBuilder as L, SQLiteSelectQueryBuilder as M, SQLiteSelect as N, JoinsValue as O, PreparedQuery as P, QueryBuilder as Q, Reference as R, SQLiteSession as S, AnySQLiteSelect as T, UpdateDeleteAction as U, SQLiteSelectConfig as V, JoinFn as W, SelectedFieldsFlat as X, SelectedFields as Y, SQLiteSelectHKTBase as Z, SQLiteSelectKind as _, SQLiteSyncDialect as a, SQLiteSelectHKT as a0, SQLiteUpdateConfig as a1, SQLiteUpdateSetSource as a2, SQLiteUpdateBuilder as a3, SQLiteUpdate as a4, ResultKind as a5, SubqueryWithSelection as a6, WithSubqueryWithSelection as a7, SQLiteTableExtraConfig as a8, TableConfig as a9, SQLiteTable as aa, SQLiteTableWithColumns as ab, SQLiteTableFn as ac, sqliteTable as ad, sqliteTableCreator as ae, ViewBuilderConfig as af, ViewBuilderCore as ag, ViewBuilder as ah, ManualViewBuilder as ai, SQLiteViewConfig as aj, SQLiteViewWithSelection as ak, sqliteView as al, view as am, SelectedFieldsOrdered as b, SQLiteTransactionConfig as c, SQLiteTransaction as d, PreparedQueryConfig as e, SQLiteAsyncDialect as f, SQLiteColumnBuilder as g, SQLiteColumn as h, AnySQLiteColumn as i, PrimaryKey as j, SQLiteView as k, SQLiteViewBase as l, BuildAliasTable as m, CheckBuilder as n, check as o, SQLiteDialect as p, ForeignKeyBuilder as q, foreignKey as r, IndexConfig as s, IndexColumn as t, IndexBuilderOn as u, IndexBuilder as v, index as w, uniqueIndex as x, primaryKey as y, PrimaryKeyBuilder as z };
668
+ export { SelectedFieldsFlat as $, AnySQLiteTable as A, BaseSQLiteDatabase as B, Check as C, index as D, uniqueIndex as E, ForeignKey as F, primaryKey as G, PrimaryKeyBuilder as H, Index as I, SQLiteDeleteConfig as J, SQLiteDelete as K, SQLiteInsertConfig as L, SQLiteInsertValue as M, SQLiteInsertBuilder as N, SQLiteInsert as O, PreparedQuery as P, QueryBuilder as Q, ReferenceConfig as R, SQLiteSession as S, SQLiteSelectBuilder as T, UpdateDeleteAction as U, SQLiteSelectQueryBuilder as V, SQLiteSelect as W, JoinsValue as X, AnySQLiteSelect as Y, SQLiteSelectConfig as Z, JoinFn as _, SQLiteSyncDialect as a, SelectedFields as a0, SQLiteSelectHKTBase as a1, SQLiteSelectKind as a2, SQLiteSelectQueryBuilderHKT as a3, SQLiteSelectHKT as a4, SQLiteUpdateConfig as a5, SQLiteUpdateSetSource as a6, SQLiteUpdateBuilder as a7, SQLiteUpdate as a8, Result as a9, SubqueryWithSelection as aa, WithSubqueryWithSelection as ab, SQLiteTableExtraConfig as ac, TableConfig as ad, SQLiteTable as ae, SQLiteTableWithColumns as af, SQLiteTableFn as ag, sqliteTable as ah, sqliteTableCreator as ai, ViewBuilderConfig as aj, ViewBuilderCore as ak, ViewBuilder as al, ManualViewBuilder as am, SQLiteViewConfig as an, SQLiteViewWithSelection as ao, sqliteView as ap, view as aq, SelectedFieldsOrdered as b, SQLiteTransactionConfig as c, SQLiteTransaction as d, PreparedQueryConfig as e, SQLiteAsyncDialect as f, SQLiteColumnBuilder as g, SQLiteColumn as h, AnySQLiteColumn as i, PrimaryKey as j, SQLiteView as k, SQLiteViewBase as l, BuildAliasTable as m, CheckBuilder as n, check as o, SQLiteColumnBuilderHKT as p, SQLiteColumnHKT as q, AnySQLiteColumnBuilder as r, SQLiteDialect as s, Reference as t, ForeignKeyBuilder as u, foreignKey as v, IndexConfig as w, IndexColumn as x, IndexBuilderOn as y, IndexBuilder as z };