uql-orm 0.9.5 → 0.10.2

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 (681) hide show
  1. package/CHANGELOG.md +43 -0
  2. package/README.md +3 -2
  3. package/dist/browser/http/bus.d.ts +4 -0
  4. package/dist/browser/http/bus.d.ts.map +1 -0
  5. package/dist/browser/http/bus.js +14 -0
  6. package/dist/browser/http/bus.js.map +1 -0
  7. package/dist/browser/http/http.d.ts +22 -0
  8. package/dist/browser/http/http.d.ts.map +1 -0
  9. package/dist/browser/http/http.js +70 -0
  10. package/dist/browser/http/http.js.map +1 -0
  11. package/dist/browser/http/index.d.ts +3 -0
  12. package/dist/browser/http/index.d.ts.map +1 -0
  13. package/dist/browser/http/index.js +3 -0
  14. package/dist/browser/http/index.js.map +1 -0
  15. package/dist/browser/index.d.ts +5 -0
  16. package/dist/browser/index.d.ts.map +1 -0
  17. package/dist/browser/index.js +5 -0
  18. package/dist/browser/index.js.map +1 -0
  19. package/dist/browser/options.d.ts +5 -0
  20. package/dist/browser/options.d.ts.map +1 -0
  21. package/dist/browser/options.js +14 -0
  22. package/dist/browser/options.js.map +1 -0
  23. package/dist/browser/querier/httpQuerier.d.ts +38 -0
  24. package/dist/browser/querier/httpQuerier.d.ts.map +1 -0
  25. package/dist/browser/querier/httpQuerier.js +83 -0
  26. package/dist/browser/querier/httpQuerier.js.map +1 -0
  27. package/dist/browser/querier/index.d.ts +2 -0
  28. package/dist/browser/querier/index.d.ts.map +1 -0
  29. package/dist/browser/querier/index.js +2 -0
  30. package/dist/browser/querier/index.js.map +1 -0
  31. package/dist/browser/type/clientQuerier.d.ts +28 -0
  32. package/dist/browser/type/clientQuerier.d.ts.map +1 -0
  33. package/dist/browser/type/clientQuerier.js +2 -0
  34. package/dist/browser/type/clientQuerier.js.map +1 -0
  35. package/dist/browser/type/clientQuerierPool.d.ts +5 -0
  36. package/dist/browser/type/clientQuerierPool.d.ts.map +1 -0
  37. package/dist/browser/type/clientQuerierPool.js +2 -0
  38. package/dist/browser/type/clientQuerierPool.js.map +1 -0
  39. package/dist/browser/type/index.d.ts +4 -0
  40. package/dist/browser/type/index.d.ts.map +1 -0
  41. package/dist/browser/type/index.js +4 -0
  42. package/dist/browser/type/index.js.map +1 -0
  43. package/dist/browser/type/request.d.ts +28 -0
  44. package/dist/browser/type/request.d.ts.map +1 -0
  45. package/dist/browser/type/request.js +2 -0
  46. package/dist/browser/type/request.js.map +1 -0
  47. package/dist/browser/uql-browser.min.js +2 -7029
  48. package/dist/browser/uql-browser.min.js.map +17 -1
  49. package/dist/bunSql/bunSql.util.d.ts +30 -0
  50. package/dist/bunSql/bunSql.util.d.ts.map +1 -0
  51. package/dist/bunSql/bunSql.util.js +101 -0
  52. package/dist/bunSql/bunSql.util.js.map +1 -0
  53. package/dist/bunSql/bunSqlPostgresDialect.d.ts +12 -0
  54. package/dist/bunSql/bunSqlPostgresDialect.d.ts.map +1 -0
  55. package/dist/bunSql/bunSqlPostgresDialect.js +21 -0
  56. package/dist/bunSql/bunSqlPostgresDialect.js.map +1 -0
  57. package/dist/bunSql/bunSqlQuerier.d.ts +14 -0
  58. package/dist/bunSql/bunSqlQuerier.d.ts.map +1 -0
  59. package/dist/bunSql/bunSqlQuerier.js +37 -0
  60. package/dist/bunSql/bunSqlQuerier.js.map +1 -0
  61. package/dist/bunSql/bunSqlQuerierPool.d.ts +19 -0
  62. package/dist/bunSql/bunSqlQuerierPool.d.ts.map +1 -0
  63. package/dist/bunSql/bunSqlQuerierPool.js +58 -0
  64. package/dist/bunSql/bunSqlQuerierPool.js.map +1 -0
  65. package/dist/bunSql/bunSqliteDialect.d.ts +7 -0
  66. package/dist/bunSql/bunSqliteDialect.d.ts.map +1 -0
  67. package/dist/bunSql/bunSqliteDialect.js +7 -0
  68. package/dist/bunSql/bunSqliteDialect.js.map +1 -0
  69. package/dist/bunSql/index.d.ts +5 -0
  70. package/dist/bunSql/index.d.ts.map +1 -0
  71. package/dist/bunSql/index.js +5 -0
  72. package/dist/bunSql/index.js.map +1 -0
  73. package/dist/cockroachdb/cockroachDialect.d.ts +15 -0
  74. package/dist/cockroachdb/cockroachDialect.d.ts.map +1 -0
  75. package/dist/cockroachdb/cockroachDialect.js +14 -0
  76. package/dist/cockroachdb/cockroachDialect.js.map +1 -0
  77. package/dist/cockroachdb/crdbQuerier.d.ts +9 -0
  78. package/dist/cockroachdb/crdbQuerier.d.ts.map +1 -0
  79. package/dist/cockroachdb/crdbQuerier.js +7 -0
  80. package/dist/cockroachdb/crdbQuerier.js.map +1 -0
  81. package/dist/cockroachdb/crdbQuerierPool.d.ts +14 -0
  82. package/dist/cockroachdb/crdbQuerierPool.d.ts.map +1 -0
  83. package/dist/cockroachdb/crdbQuerierPool.js +16 -0
  84. package/dist/cockroachdb/crdbQuerierPool.js.map +1 -0
  85. package/dist/cockroachdb/index.d.ts +4 -0
  86. package/dist/cockroachdb/index.d.ts.map +1 -0
  87. package/dist/cockroachdb/index.js +4 -0
  88. package/dist/cockroachdb/index.js.map +1 -0
  89. package/dist/d1/d1Querier.d.ts +46 -0
  90. package/dist/d1/d1Querier.d.ts.map +1 -0
  91. package/dist/d1/d1Querier.js +30 -0
  92. package/dist/d1/d1Querier.js.map +1 -0
  93. package/dist/d1/d1QuerierPool.d.ts +11 -0
  94. package/dist/d1/d1QuerierPool.d.ts.map +1 -0
  95. package/dist/d1/d1QuerierPool.js +17 -0
  96. package/dist/d1/d1QuerierPool.js.map +1 -0
  97. package/dist/d1/d1SqliteDialect.d.ts +10 -0
  98. package/dist/d1/d1SqliteDialect.d.ts.map +1 -0
  99. package/dist/d1/d1SqliteDialect.js +10 -0
  100. package/dist/d1/d1SqliteDialect.js.map +1 -0
  101. package/dist/d1/index.d.ts +4 -0
  102. package/dist/d1/index.d.ts.map +1 -0
  103. package/dist/d1/index.js +4 -0
  104. package/dist/d1/index.js.map +1 -0
  105. package/dist/dialect/abstractDialect.d.ts +32 -0
  106. package/dist/dialect/abstractDialect.d.ts.map +1 -0
  107. package/dist/dialect/abstractDialect.js +39 -0
  108. package/dist/dialect/abstractDialect.js.map +1 -0
  109. package/dist/dialect/abstractSqlDialect.d.ts +233 -0
  110. package/dist/dialect/abstractSqlDialect.d.ts.map +1 -0
  111. package/dist/dialect/abstractSqlDialect.js +1332 -0
  112. package/dist/dialect/abstractSqlDialect.js.map +1 -0
  113. package/dist/dialect/index.d.ts +9 -0
  114. package/dist/dialect/index.d.ts.map +1 -0
  115. package/dist/dialect/index.js +9 -0
  116. package/dist/dialect/index.js.map +1 -0
  117. package/dist/dialect/jsonArrayElemMatchUtils.d.ts +10 -0
  118. package/dist/dialect/jsonArrayElemMatchUtils.d.ts.map +1 -0
  119. package/dist/dialect/jsonArrayElemMatchUtils.js +24 -0
  120. package/dist/dialect/jsonArrayElemMatchUtils.js.map +1 -0
  121. package/dist/dialect/mysqlLikeSqlDialect.d.ts +36 -0
  122. package/dist/dialect/mysqlLikeSqlDialect.d.ts.map +1 -0
  123. package/dist/dialect/mysqlLikeSqlDialect.js +84 -0
  124. package/dist/dialect/mysqlLikeSqlDialect.js.map +1 -0
  125. package/dist/dialect/queryContext.d.ts +49 -0
  126. package/dist/dialect/queryContext.d.ts.map +1 -0
  127. package/dist/dialect/queryContext.js +65 -0
  128. package/dist/dialect/queryContext.js.map +1 -0
  129. package/dist/entity/decorator/entity.d.ts +3 -0
  130. package/dist/entity/decorator/entity.d.ts.map +1 -0
  131. package/dist/entity/decorator/entity.js +7 -0
  132. package/dist/entity/decorator/entity.js.map +1 -0
  133. package/dist/entity/decorator/field.d.ts +3 -0
  134. package/dist/entity/decorator/field.d.ts.map +1 -0
  135. package/dist/entity/decorator/field.js +8 -0
  136. package/dist/entity/decorator/field.js.map +1 -0
  137. package/dist/entity/decorator/hook.d.ts +8 -0
  138. package/dist/entity/decorator/hook.d.ts.map +1 -0
  139. package/dist/entity/decorator/hook.js +15 -0
  140. package/dist/entity/decorator/hook.js.map +1 -0
  141. package/dist/entity/decorator/id.d.ts +3 -0
  142. package/dist/entity/decorator/id.d.ts.map +1 -0
  143. package/dist/entity/decorator/id.js +8 -0
  144. package/dist/entity/decorator/id.js.map +1 -0
  145. package/dist/entity/decorator/index-decorator.d.ts +37 -0
  146. package/dist/entity/decorator/index-decorator.d.ts.map +1 -0
  147. package/dist/entity/decorator/index-decorator.js +27 -0
  148. package/dist/entity/decorator/index-decorator.js.map +1 -0
  149. package/dist/entity/decorator/index.d.ts +8 -0
  150. package/dist/entity/decorator/index.d.ts.map +1 -0
  151. package/dist/entity/decorator/index.js +8 -0
  152. package/dist/entity/decorator/index.js.map +1 -0
  153. package/dist/entity/decorator/relation.d.ts +9 -0
  154. package/dist/entity/decorator/relation.d.ts.map +1 -0
  155. package/dist/entity/decorator/relation.js +20 -0
  156. package/dist/entity/decorator/relation.js.map +1 -0
  157. package/dist/entity/index.d.ts +2 -0
  158. package/dist/entity/index.d.ts.map +1 -0
  159. package/dist/entity/index.js +2 -0
  160. package/dist/entity/index.js.map +1 -0
  161. package/dist/entity/metadata/definition.d.ts +16 -0
  162. package/dist/entity/metadata/definition.d.ts.map +1 -0
  163. package/dist/entity/metadata/definition.js +311 -0
  164. package/dist/entity/metadata/definition.js.map +1 -0
  165. package/dist/entity/test-helpers.d.ts +4 -0
  166. package/dist/entity/test-helpers.d.ts.map +1 -0
  167. package/dist/entity/test-helpers.js +15 -0
  168. package/dist/entity/test-helpers.js.map +1 -0
  169. package/dist/express/index.d.ts +2 -0
  170. package/dist/express/index.d.ts.map +1 -0
  171. package/dist/express/index.js +2 -0
  172. package/dist/express/index.js.map +1 -0
  173. package/dist/express/querierMiddleware.d.ts +12 -0
  174. package/dist/express/querierMiddleware.d.ts.map +1 -0
  175. package/dist/express/querierMiddleware.js +40 -0
  176. package/dist/express/querierMiddleware.js.map +1 -0
  177. package/dist/http/contract.d.ts +99 -0
  178. package/dist/http/contract.d.ts.map +1 -0
  179. package/dist/http/contract.js +72 -0
  180. package/dist/http/contract.js.map +1 -0
  181. package/dist/http/fetchHandler.d.ts +14 -0
  182. package/dist/http/fetchHandler.d.ts.map +1 -0
  183. package/dist/http/fetchHandler.js +63 -0
  184. package/dist/http/fetchHandler.js.map +1 -0
  185. package/dist/http/handler.d.ts +77 -0
  186. package/dist/http/handler.d.ts.map +1 -0
  187. package/dist/http/handler.js +172 -0
  188. package/dist/http/handler.js.map +1 -0
  189. package/dist/http/index.d.ts +5 -0
  190. package/dist/http/index.d.ts.map +1 -0
  191. package/dist/http/index.js +5 -0
  192. package/dist/http/index.js.map +1 -0
  193. package/dist/http/query.d.ts +12 -0
  194. package/dist/http/query.d.ts.map +1 -0
  195. package/dist/http/query.js +49 -0
  196. package/dist/http/query.js.map +1 -0
  197. package/dist/index.d.ts +8 -0
  198. package/dist/index.d.ts.map +1 -0
  199. package/dist/index.js +8 -0
  200. package/dist/index.js.map +1 -0
  201. package/dist/libsql/index.d.ts +4 -0
  202. package/dist/libsql/index.d.ts.map +1 -0
  203. package/dist/libsql/index.js +4 -0
  204. package/dist/libsql/index.js.map +1 -0
  205. package/dist/libsql/libsqlDialect.d.ts +10 -0
  206. package/dist/libsql/libsqlDialect.d.ts.map +1 -0
  207. package/dist/libsql/libsqlDialect.js +10 -0
  208. package/dist/libsql/libsqlDialect.js.map +1 -0
  209. package/dist/libsql/libsqlQuerier.d.ts +24 -0
  210. package/dist/libsql/libsqlQuerier.d.ts.map +1 -0
  211. package/dist/libsql/libsqlQuerier.js +76 -0
  212. package/dist/libsql/libsqlQuerier.js.map +1 -0
  213. package/dist/libsql/libsqlQuerierPool.d.ts +20 -0
  214. package/dist/libsql/libsqlQuerierPool.d.ts.map +1 -0
  215. package/dist/libsql/libsqlQuerierPool.js +40 -0
  216. package/dist/libsql/libsqlQuerierPool.js.map +1 -0
  217. package/dist/maria/index.d.ts +4 -0
  218. package/dist/maria/index.d.ts.map +1 -0
  219. package/dist/maria/index.js +4 -0
  220. package/dist/maria/index.js.map +1 -0
  221. package/dist/maria/mariaDialect.d.ts +16 -0
  222. package/dist/maria/mariaDialect.d.ts.map +1 -0
  223. package/dist/maria/mariaDialect.js +56 -0
  224. package/dist/maria/mariaDialect.js.map +1 -0
  225. package/dist/maria/mariadbQuerier.d.ts +12 -0
  226. package/dist/maria/mariadbQuerier.d.ts.map +1 -0
  227. package/dist/maria/mariadbQuerier.js +31 -0
  228. package/dist/maria/mariadbQuerier.js.map +1 -0
  229. package/dist/maria/mariadbQuerierPool.d.ts +14 -0
  230. package/dist/maria/mariadbQuerierPool.d.ts.map +1 -0
  231. package/dist/maria/mariadbQuerierPool.js +26 -0
  232. package/dist/maria/mariadbQuerierPool.js.map +1 -0
  233. package/dist/migrate/acquireQuerierForMigrations.d.ts +9 -0
  234. package/dist/migrate/acquireQuerierForMigrations.d.ts.map +1 -0
  235. package/dist/migrate/acquireQuerierForMigrations.js +10 -0
  236. package/dist/migrate/acquireQuerierForMigrations.js.map +1 -0
  237. package/dist/migrate/assertCliConfig.d.ts +6 -0
  238. package/dist/migrate/assertCliConfig.d.ts.map +1 -0
  239. package/dist/migrate/assertCliConfig.js +31 -0
  240. package/dist/migrate/assertCliConfig.js.map +1 -0
  241. package/dist/migrate/bin.d.ts +3 -0
  242. package/dist/migrate/bin.d.ts.map +1 -0
  243. package/dist/migrate/bin.js +7 -0
  244. package/dist/migrate/bin.js.map +1 -0
  245. package/dist/migrate/builder/columnBuilder.d.ts +79 -0
  246. package/dist/migrate/builder/columnBuilder.d.ts.map +1 -0
  247. package/dist/migrate/builder/columnBuilder.js +159 -0
  248. package/dist/migrate/builder/columnBuilder.js.map +1 -0
  249. package/dist/migrate/builder/expressions.d.ts +87 -0
  250. package/dist/migrate/builder/expressions.d.ts.map +1 -0
  251. package/dist/migrate/builder/expressions.js +150 -0
  252. package/dist/migrate/builder/expressions.js.map +1 -0
  253. package/dist/migrate/builder/index.d.ts +6 -0
  254. package/dist/migrate/builder/index.d.ts.map +1 -0
  255. package/dist/migrate/builder/index.js +6 -0
  256. package/dist/migrate/builder/index.js.map +1 -0
  257. package/dist/migrate/builder/migrationBuilder.d.ts +110 -0
  258. package/dist/migrate/builder/migrationBuilder.d.ts.map +1 -0
  259. package/dist/migrate/builder/migrationBuilder.js +470 -0
  260. package/dist/migrate/builder/migrationBuilder.js.map +1 -0
  261. package/dist/migrate/builder/splitSqlStatements.d.ts +18 -0
  262. package/dist/migrate/builder/splitSqlStatements.d.ts.map +1 -0
  263. package/dist/migrate/builder/splitSqlStatements.js +44 -0
  264. package/dist/migrate/builder/splitSqlStatements.js.map +1 -0
  265. package/dist/migrate/builder/tableBuilder.d.ts +51 -0
  266. package/dist/migrate/builder/tableBuilder.d.ts.map +1 -0
  267. package/dist/migrate/builder/tableBuilder.js +291 -0
  268. package/dist/migrate/builder/tableBuilder.js.map +1 -0
  269. package/dist/migrate/builder/types.d.ts +466 -0
  270. package/dist/migrate/builder/types.d.ts.map +1 -0
  271. package/dist/migrate/builder/types.js +8 -0
  272. package/dist/migrate/builder/types.js.map +1 -0
  273. package/dist/migrate/cli-config.d.ts +3 -0
  274. package/dist/migrate/cli-config.d.ts.map +1 -0
  275. package/dist/migrate/cli-config.js +35 -0
  276. package/dist/migrate/cli-config.js.map +1 -0
  277. package/dist/migrate/cli.d.ts +20 -0
  278. package/dist/migrate/cli.d.ts.map +1 -0
  279. package/dist/migrate/cli.js +398 -0
  280. package/dist/migrate/cli.js.map +1 -0
  281. package/dist/migrate/codegen/entityCodeGenerator.d.ts +137 -0
  282. package/dist/migrate/codegen/entityCodeGenerator.d.ts.map +1 -0
  283. package/dist/migrate/codegen/entityCodeGenerator.js +405 -0
  284. package/dist/migrate/codegen/entityCodeGenerator.js.map +1 -0
  285. package/dist/migrate/codegen/entityMerger.d.ts +115 -0
  286. package/dist/migrate/codegen/entityMerger.d.ts.map +1 -0
  287. package/dist/migrate/codegen/entityMerger.js +294 -0
  288. package/dist/migrate/codegen/entityMerger.js.map +1 -0
  289. package/dist/migrate/codegen/index.d.ts +11 -0
  290. package/dist/migrate/codegen/index.d.ts.map +1 -0
  291. package/dist/migrate/codegen/index.js +15 -0
  292. package/dist/migrate/codegen/index.js.map +1 -0
  293. package/dist/migrate/codegen/migrationCodeGenerator.d.ts +62 -0
  294. package/dist/migrate/codegen/migrationCodeGenerator.d.ts.map +1 -0
  295. package/dist/migrate/codegen/migrationCodeGenerator.js +356 -0
  296. package/dist/migrate/codegen/migrationCodeGenerator.js.map +1 -0
  297. package/dist/migrate/codegen/migrationFile.d.ts +29 -0
  298. package/dist/migrate/codegen/migrationFile.d.ts.map +1 -0
  299. package/dist/migrate/codegen/migrationFile.js +48 -0
  300. package/dist/migrate/codegen/migrationFile.js.map +1 -0
  301. package/dist/migrate/codegen/smartRelationDetector.d.ts +48 -0
  302. package/dist/migrate/codegen/smartRelationDetector.d.ts.map +1 -0
  303. package/dist/migrate/codegen/smartRelationDetector.js +135 -0
  304. package/dist/migrate/codegen/smartRelationDetector.js.map +1 -0
  305. package/dist/migrate/drift/driftDetector.d.ts +80 -0
  306. package/dist/migrate/drift/driftDetector.d.ts.map +1 -0
  307. package/dist/migrate/drift/driftDetector.js +247 -0
  308. package/dist/migrate/drift/driftDetector.js.map +1 -0
  309. package/dist/migrate/drift/index.d.ts +7 -0
  310. package/dist/migrate/drift/index.d.ts.map +1 -0
  311. package/dist/migrate/drift/index.js +7 -0
  312. package/dist/migrate/drift/index.js.map +1 -0
  313. package/dist/migrate/generator/index.d.ts +3 -0
  314. package/dist/migrate/generator/index.d.ts.map +1 -0
  315. package/dist/migrate/generator/index.js +3 -0
  316. package/dist/migrate/generator/index.js.map +1 -0
  317. package/dist/migrate/generator/mongoSchemaGenerator.d.ts +48 -0
  318. package/dist/migrate/generator/mongoSchemaGenerator.d.ts.map +1 -0
  319. package/dist/migrate/generator/mongoSchemaGenerator.js +188 -0
  320. package/dist/migrate/generator/mongoSchemaGenerator.js.map +1 -0
  321. package/dist/migrate/index.d.ts +16 -0
  322. package/dist/migrate/index.d.ts.map +1 -0
  323. package/dist/migrate/index.js +23 -0
  324. package/dist/migrate/index.js.map +1 -0
  325. package/dist/migrate/introspection/abstractSqlSchemaIntrospector.d.ts +77 -0
  326. package/dist/migrate/introspection/abstractSqlSchemaIntrospector.d.ts.map +1 -0
  327. package/dist/migrate/introspection/abstractSqlSchemaIntrospector.js +156 -0
  328. package/dist/migrate/introspection/abstractSqlSchemaIntrospector.js.map +1 -0
  329. package/dist/migrate/introspection/baseSqlIntrospector.d.ts +26 -0
  330. package/dist/migrate/introspection/baseSqlIntrospector.d.ts.map +1 -0
  331. package/dist/migrate/introspection/baseSqlIntrospector.js +132 -0
  332. package/dist/migrate/introspection/baseSqlIntrospector.js.map +1 -0
  333. package/dist/migrate/introspection/index.d.ts +6 -0
  334. package/dist/migrate/introspection/index.d.ts.map +1 -0
  335. package/dist/migrate/introspection/index.js +6 -0
  336. package/dist/migrate/introspection/index.js.map +1 -0
  337. package/dist/migrate/introspection/mongoIntrospector.d.ts +15 -0
  338. package/dist/migrate/introspection/mongoIntrospector.d.ts.map +1 -0
  339. package/dist/migrate/introspection/mongoIntrospector.js +100 -0
  340. package/dist/migrate/introspection/mongoIntrospector.js.map +1 -0
  341. package/dist/migrate/introspection/mysqlIntrospector.d.ts +59 -0
  342. package/dist/migrate/introspection/mysqlIntrospector.d.ts.map +1 -0
  343. package/dist/migrate/introspection/mysqlIntrospector.js +175 -0
  344. package/dist/migrate/introspection/mysqlIntrospector.js.map +1 -0
  345. package/dist/migrate/introspection/postgresIntrospector.d.ts +55 -0
  346. package/dist/migrate/introspection/postgresIntrospector.d.ts.map +1 -0
  347. package/dist/migrate/introspection/postgresIntrospector.js +226 -0
  348. package/dist/migrate/introspection/postgresIntrospector.js.map +1 -0
  349. package/dist/migrate/introspection/sqliteIntrospector.d.ts +60 -0
  350. package/dist/migrate/introspection/sqliteIntrospector.d.ts.map +1 -0
  351. package/dist/migrate/introspection/sqliteIntrospector.js +188 -0
  352. package/dist/migrate/introspection/sqliteIntrospector.js.map +1 -0
  353. package/dist/migrate/migrator.d.ts +168 -0
  354. package/dist/migrate/migrator.d.ts.map +1 -0
  355. package/dist/migrate/migrator.js +614 -0
  356. package/dist/migrate/migrator.js.map +1 -0
  357. package/dist/migrate/schemaGenerator.d.ts +142 -0
  358. package/dist/migrate/schemaGenerator.d.ts.map +1 -0
  359. package/dist/migrate/schemaGenerator.js +693 -0
  360. package/dist/migrate/schemaGenerator.js.map +1 -0
  361. package/dist/migrate/schemaGeneratorAsync.d.ts +9 -0
  362. package/dist/migrate/schemaGeneratorAsync.d.ts.map +1 -0
  363. package/dist/migrate/schemaGeneratorAsync.js +13 -0
  364. package/dist/migrate/schemaGeneratorAsync.js.map +1 -0
  365. package/dist/migrate/storage/databaseStorage.d.ts +25 -0
  366. package/dist/migrate/storage/databaseStorage.d.ts.map +1 -0
  367. package/dist/migrate/storage/databaseStorage.js +78 -0
  368. package/dist/migrate/storage/databaseStorage.js.map +1 -0
  369. package/dist/migrate/storage/index.d.ts +3 -0
  370. package/dist/migrate/storage/index.d.ts.map +1 -0
  371. package/dist/migrate/storage/index.js +3 -0
  372. package/dist/migrate/storage/index.js.map +1 -0
  373. package/dist/migrate/storage/jsonStorage.d.ts +16 -0
  374. package/dist/migrate/storage/jsonStorage.d.ts.map +1 -0
  375. package/dist/migrate/storage/jsonStorage.js +43 -0
  376. package/dist/migrate/storage/jsonStorage.js.map +1 -0
  377. package/dist/migrate/sync/index.d.ts +7 -0
  378. package/dist/migrate/sync/index.d.ts.map +1 -0
  379. package/dist/migrate/sync/index.js +7 -0
  380. package/dist/migrate/sync/index.js.map +1 -0
  381. package/dist/migrate/sync/schemaSync.d.ts +132 -0
  382. package/dist/migrate/sync/schemaSync.d.ts.map +1 -0
  383. package/dist/migrate/sync/schemaSync.js +260 -0
  384. package/dist/migrate/sync/schemaSync.js.map +1 -0
  385. package/dist/mongo/index.d.ts +6 -0
  386. package/dist/mongo/index.d.ts.map +1 -0
  387. package/dist/mongo/index.js +6 -0
  388. package/dist/mongo/index.js.map +1 -0
  389. package/dist/mongo/mongoDialect.d.ts +83 -0
  390. package/dist/mongo/mongoDialect.d.ts.map +1 -0
  391. package/dist/mongo/mongoDialect.js +418 -0
  392. package/dist/mongo/mongoDialect.js.map +1 -0
  393. package/dist/mongo/mongodbNativeDialect.d.ts +10 -0
  394. package/dist/mongo/mongodbNativeDialect.d.ts.map +1 -0
  395. package/dist/mongo/mongodbNativeDialect.js +10 -0
  396. package/dist/mongo/mongodbNativeDialect.js.map +1 -0
  397. package/dist/mongo/mongodbQuerier.d.ts +46 -0
  398. package/dist/mongo/mongodbQuerier.d.ts.map +1 -0
  399. package/dist/mongo/mongodbQuerier.js +344 -0
  400. package/dist/mongo/mongodbQuerier.js.map +1 -0
  401. package/dist/mongo/mongodbQuerierPool.d.ts +12 -0
  402. package/dist/mongo/mongodbQuerierPool.d.ts.map +1 -0
  403. package/dist/mongo/mongodbQuerierPool.js +19 -0
  404. package/dist/mongo/mongodbQuerierPool.js.map +1 -0
  405. package/dist/mysql/index.d.ts +5 -0
  406. package/dist/mysql/index.d.ts.map +1 -0
  407. package/dist/mysql/index.js +5 -0
  408. package/dist/mysql/index.js.map +1 -0
  409. package/dist/mysql/mysql2Dialect.d.ts +10 -0
  410. package/dist/mysql/mysql2Dialect.d.ts.map +1 -0
  411. package/dist/mysql/mysql2Dialect.js +10 -0
  412. package/dist/mysql/mysql2Dialect.js.map +1 -0
  413. package/dist/mysql/mysql2Querier.d.ts +12 -0
  414. package/dist/mysql/mysql2Querier.d.ts.map +1 -0
  415. package/dist/mysql/mysql2Querier.js +34 -0
  416. package/dist/mysql/mysql2Querier.js.map +1 -0
  417. package/dist/mysql/mysql2QuerierPool.d.ts +12 -0
  418. package/dist/mysql/mysql2QuerierPool.d.ts.map +1 -0
  419. package/dist/mysql/mysql2QuerierPool.js +18 -0
  420. package/dist/mysql/mysql2QuerierPool.js.map +1 -0
  421. package/dist/mysql/mysqlDialect.d.ts +6 -0
  422. package/dist/mysql/mysqlDialect.d.ts.map +1 -0
  423. package/dist/mysql/mysqlDialect.js +6 -0
  424. package/dist/mysql/mysqlDialect.js.map +1 -0
  425. package/dist/namingStrategy/defaultNamingStrategy.d.ts +10 -0
  426. package/dist/namingStrategy/defaultNamingStrategy.d.ts.map +1 -0
  427. package/dist/namingStrategy/defaultNamingStrategy.js +15 -0
  428. package/dist/namingStrategy/defaultNamingStrategy.js.map +1 -0
  429. package/dist/namingStrategy/index.d.ts +3 -0
  430. package/dist/namingStrategy/index.d.ts.map +1 -0
  431. package/dist/namingStrategy/index.js +3 -0
  432. package/dist/namingStrategy/index.js.map +1 -0
  433. package/dist/namingStrategy/snakeCaseNamingStrategy.d.ts +9 -0
  434. package/dist/namingStrategy/snakeCaseNamingStrategy.d.ts.map +1 -0
  435. package/dist/namingStrategy/snakeCaseNamingStrategy.js +14 -0
  436. package/dist/namingStrategy/snakeCaseNamingStrategy.js.map +1 -0
  437. package/dist/neon/index.d.ts +4 -0
  438. package/dist/neon/index.d.ts.map +1 -0
  439. package/dist/neon/index.js +4 -0
  440. package/dist/neon/index.js.map +1 -0
  441. package/dist/neon/neonDialect.d.ts +11 -0
  442. package/dist/neon/neonDialect.d.ts.map +1 -0
  443. package/dist/neon/neonDialect.js +11 -0
  444. package/dist/neon/neonDialect.js.map +1 -0
  445. package/dist/neon/neonQuerier.d.ts +6 -0
  446. package/dist/neon/neonQuerier.d.ts.map +1 -0
  447. package/dist/neon/neonQuerier.js +4 -0
  448. package/dist/neon/neonQuerier.js.map +1 -0
  449. package/dist/neon/neonQuerierPool.d.ts +11 -0
  450. package/dist/neon/neonQuerierPool.d.ts.map +1 -0
  451. package/dist/neon/neonQuerierPool.js +13 -0
  452. package/dist/neon/neonQuerierPool.js.map +1 -0
  453. package/dist/nestjs/index.d.ts +2 -0
  454. package/dist/nestjs/index.d.ts.map +1 -0
  455. package/dist/nestjs/index.js +2 -0
  456. package/dist/nestjs/index.js.map +1 -0
  457. package/dist/nestjs/uqlModule.d.ts +29 -0
  458. package/dist/nestjs/uqlModule.d.ts.map +1 -0
  459. package/dist/nestjs/uqlModule.js +42 -0
  460. package/dist/nestjs/uqlModule.js.map +1 -0
  461. package/dist/options.d.ts +5 -0
  462. package/dist/options.d.ts.map +1 -0
  463. package/dist/options.js +14 -0
  464. package/dist/options.js.map +1 -0
  465. package/dist/postgres/abstractPgQuerier.d.ts +24 -0
  466. package/dist/postgres/abstractPgQuerier.d.ts.map +1 -0
  467. package/dist/postgres/abstractPgQuerier.js +33 -0
  468. package/dist/postgres/abstractPgQuerier.js.map +1 -0
  469. package/dist/postgres/abstractPgQuerierPool.d.ts +22 -0
  470. package/dist/postgres/abstractPgQuerierPool.d.ts.map +1 -0
  471. package/dist/postgres/abstractPgQuerierPool.js +21 -0
  472. package/dist/postgres/abstractPgQuerierPool.js.map +1 -0
  473. package/dist/postgres/index.d.ts +6 -0
  474. package/dist/postgres/index.d.ts.map +1 -0
  475. package/dist/postgres/index.js +6 -0
  476. package/dist/postgres/index.js.map +1 -0
  477. package/dist/postgres/pgDialect.d.ts +13 -0
  478. package/dist/postgres/pgDialect.d.ts.map +1 -0
  479. package/dist/postgres/pgDialect.js +14 -0
  480. package/dist/postgres/pgDialect.js.map +1 -0
  481. package/dist/postgres/pgQuerier.d.ts +6 -0
  482. package/dist/postgres/pgQuerier.d.ts.map +1 -0
  483. package/dist/postgres/pgQuerier.js +4 -0
  484. package/dist/postgres/pgQuerier.js.map +1 -0
  485. package/dist/postgres/pgQuerierPool.d.ts +11 -0
  486. package/dist/postgres/pgQuerierPool.d.ts.map +1 -0
  487. package/dist/postgres/pgQuerierPool.js +15 -0
  488. package/dist/postgres/pgQuerierPool.js.map +1 -0
  489. package/dist/postgres/postgresDialect.d.ts +48 -0
  490. package/dist/postgres/postgresDialect.d.ts.map +1 -0
  491. package/dist/postgres/postgresDialect.js +222 -0
  492. package/dist/postgres/postgresDialect.js.map +1 -0
  493. package/dist/postgres/postgresWireDriverCapabilities.d.ts +15 -0
  494. package/dist/postgres/postgresWireDriverCapabilities.d.ts.map +1 -0
  495. package/dist/postgres/postgresWireDriverCapabilities.js +15 -0
  496. package/dist/postgres/postgresWireDriverCapabilities.js.map +1 -0
  497. package/dist/querier/abstractPoolQuerier.d.ts +14 -0
  498. package/dist/querier/abstractPoolQuerier.d.ts.map +1 -0
  499. package/dist/querier/abstractPoolQuerier.js +31 -0
  500. package/dist/querier/abstractPoolQuerier.js.map +1 -0
  501. package/dist/querier/abstractQuerier.d.ts +138 -0
  502. package/dist/querier/abstractQuerier.d.ts.map +1 -0
  503. package/dist/querier/abstractQuerier.js +426 -0
  504. package/dist/querier/abstractQuerier.js.map +1 -0
  505. package/dist/querier/abstractQuerierPool.d.ts +27 -0
  506. package/dist/querier/abstractQuerierPool.d.ts.map +1 -0
  507. package/dist/querier/abstractQuerierPool.js +31 -0
  508. package/dist/querier/abstractQuerierPool.js.map +1 -0
  509. package/dist/querier/abstractSqlQuerier.d.ts +53 -0
  510. package/dist/querier/abstractSqlQuerier.d.ts.map +1 -0
  511. package/dist/querier/abstractSqlQuerier.js +256 -0
  512. package/dist/querier/abstractSqlQuerier.js.map +1 -0
  513. package/dist/querier/decorator/index.d.ts +5 -0
  514. package/dist/querier/decorator/index.d.ts.map +1 -0
  515. package/dist/querier/decorator/index.js +5 -0
  516. package/dist/querier/decorator/index.js.map +1 -0
  517. package/dist/querier/decorator/injectQuerier.d.ts +4 -0
  518. package/dist/querier/decorator/injectQuerier.d.ts.map +1 -0
  519. package/dist/querier/decorator/injectQuerier.js +34 -0
  520. package/dist/querier/decorator/injectQuerier.js.map +1 -0
  521. package/dist/querier/decorator/log.d.ts +7 -0
  522. package/dist/querier/decorator/log.d.ts.map +1 -0
  523. package/dist/querier/decorator/log.js +27 -0
  524. package/dist/querier/decorator/log.js.map +1 -0
  525. package/dist/querier/decorator/serialized.d.ts +7 -0
  526. package/dist/querier/decorator/serialized.d.ts.map +1 -0
  527. package/dist/querier/decorator/serialized.js +14 -0
  528. package/dist/querier/decorator/serialized.js.map +1 -0
  529. package/dist/querier/decorator/transactional.d.ts +7 -0
  530. package/dist/querier/decorator/transactional.d.ts.map +1 -0
  531. package/dist/querier/decorator/transactional.js +49 -0
  532. package/dist/querier/decorator/transactional.js.map +1 -0
  533. package/dist/querier/index.d.ts +5 -0
  534. package/dist/querier/index.d.ts.map +1 -0
  535. package/dist/querier/index.js +5 -0
  536. package/dist/querier/index.js.map +1 -0
  537. package/dist/schema/canonicalType.d.ts +54 -0
  538. package/dist/schema/canonicalType.d.ts.map +1 -0
  539. package/dist/schema/canonicalType.js +571 -0
  540. package/dist/schema/canonicalType.js.map +1 -0
  541. package/dist/schema/index.d.ts +26 -0
  542. package/dist/schema/index.d.ts.map +1 -0
  543. package/dist/schema/index.js +27 -0
  544. package/dist/schema/index.js.map +1 -0
  545. package/dist/schema/schemaAST.d.ts +155 -0
  546. package/dist/schema/schemaAST.d.ts.map +1 -0
  547. package/dist/schema/schemaAST.js +496 -0
  548. package/dist/schema/schemaAST.js.map +1 -0
  549. package/dist/schema/schemaASTBuilder.d.ts +78 -0
  550. package/dist/schema/schemaASTBuilder.d.ts.map +1 -0
  551. package/dist/schema/schemaASTBuilder.js +259 -0
  552. package/dist/schema/schemaASTBuilder.js.map +1 -0
  553. package/dist/schema/schemaASTDiffer.d.ts +84 -0
  554. package/dist/schema/schemaASTDiffer.d.ts.map +1 -0
  555. package/dist/schema/schemaASTDiffer.js +431 -0
  556. package/dist/schema/schemaASTDiffer.js.map +1 -0
  557. package/dist/schema/types.d.ts +348 -0
  558. package/dist/schema/types.d.ts.map +1 -0
  559. package/dist/schema/types.js +11 -0
  560. package/dist/schema/types.js.map +1 -0
  561. package/dist/sqlite/abstractSqliteQuerier.d.ts +4 -0
  562. package/dist/sqlite/abstractSqliteQuerier.d.ts.map +1 -0
  563. package/dist/sqlite/abstractSqliteQuerier.js +4 -0
  564. package/dist/sqlite/abstractSqliteQuerier.js.map +1 -0
  565. package/dist/sqlite/betterSqlite3Dialect.d.ts +10 -0
  566. package/dist/sqlite/betterSqlite3Dialect.d.ts.map +1 -0
  567. package/dist/sqlite/betterSqlite3Dialect.js +10 -0
  568. package/dist/sqlite/betterSqlite3Dialect.js.map +1 -0
  569. package/dist/sqlite/index.d.ts +6 -0
  570. package/dist/sqlite/index.d.ts.map +1 -0
  571. package/dist/sqlite/index.js +6 -0
  572. package/dist/sqlite/index.js.map +1 -0
  573. package/dist/sqlite/sqliteDialect.d.ts +36 -0
  574. package/dist/sqlite/sqliteDialect.d.ts.map +1 -0
  575. package/dist/sqlite/sqliteDialect.js +155 -0
  576. package/dist/sqlite/sqliteDialect.js.map +1 -0
  577. package/dist/sqlite/sqliteQuerier.d.ts +14 -0
  578. package/dist/sqlite/sqliteQuerier.d.ts.map +1 -0
  579. package/dist/sqlite/sqliteQuerier.js +30 -0
  580. package/dist/sqlite/sqliteQuerier.js.map +1 -0
  581. package/dist/sqlite/sqliteQuerierPool.d.ts +14 -0
  582. package/dist/sqlite/sqliteQuerierPool.d.ts.map +1 -0
  583. package/dist/sqlite/sqliteQuerierPool.js +36 -0
  584. package/dist/sqlite/sqliteQuerierPool.js.map +1 -0
  585. package/dist/type/config.d.ts +43 -0
  586. package/dist/type/config.d.ts.map +1 -0
  587. package/dist/type/config.js +2 -0
  588. package/dist/type/config.js.map +1 -0
  589. package/dist/type/entity.d.ts +338 -0
  590. package/dist/type/entity.d.ts.map +1 -0
  591. package/dist/type/entity.js +5 -0
  592. package/dist/type/entity.js.map +1 -0
  593. package/dist/type/index.d.ts +12 -0
  594. package/dist/type/index.d.ts.map +1 -0
  595. package/dist/type/index.js +12 -0
  596. package/dist/type/index.js.map +1 -0
  597. package/dist/type/logger.d.ts +61 -0
  598. package/dist/type/logger.d.ts.map +1 -0
  599. package/dist/type/logger.js +2 -0
  600. package/dist/type/logger.js.map +1 -0
  601. package/dist/type/migration.d.ts +267 -0
  602. package/dist/type/migration.d.ts.map +1 -0
  603. package/dist/type/migration.js +2 -0
  604. package/dist/type/migration.js.map +1 -0
  605. package/dist/type/migratorDialect.d.ts +10 -0
  606. package/dist/type/migratorDialect.d.ts.map +1 -0
  607. package/dist/type/migratorDialect.js +16 -0
  608. package/dist/type/migratorDialect.js.map +1 -0
  609. package/dist/type/namingStrategy.d.ts +18 -0
  610. package/dist/type/namingStrategy.d.ts.map +1 -0
  611. package/dist/type/namingStrategy.js +2 -0
  612. package/dist/type/namingStrategy.js.map +1 -0
  613. package/dist/type/querier.d.ts +162 -0
  614. package/dist/type/querier.d.ts.map +1 -0
  615. package/dist/type/querier.js +11 -0
  616. package/dist/type/querier.js.map +1 -0
  617. package/dist/type/querierPool.d.ts +62 -0
  618. package/dist/type/querierPool.d.ts.map +1 -0
  619. package/dist/type/querierPool.js +2 -0
  620. package/dist/type/querierPool.js.map +1 -0
  621. package/dist/type/query.d.ts +700 -0
  622. package/dist/type/query.d.ts.map +1 -0
  623. package/dist/type/query.js +11 -0
  624. package/dist/type/query.js.map +1 -0
  625. package/dist/type/universalQuerier.d.ts +136 -0
  626. package/dist/type/universalQuerier.d.ts.map +1 -0
  627. package/dist/type/universalQuerier.js +2 -0
  628. package/dist/type/universalQuerier.js.map +1 -0
  629. package/dist/type/utility.d.ts +37 -0
  630. package/dist/type/utility.d.ts.map +1 -0
  631. package/dist/type/utility.js +2 -0
  632. package/dist/type/utility.js.map +1 -0
  633. package/dist/util/ansiSqlLiteral.d.ts +21 -0
  634. package/dist/util/ansiSqlLiteral.d.ts.map +1 -0
  635. package/dist/util/ansiSqlLiteral.js +101 -0
  636. package/dist/util/ansiSqlLiteral.js.map +1 -0
  637. package/dist/util/dialect.util.d.ts +31 -0
  638. package/dist/util/dialect.util.d.ts.map +1 -0
  639. package/dist/util/dialect.util.js +113 -0
  640. package/dist/util/dialect.util.js.map +1 -0
  641. package/dist/util/field.util.d.ts +14 -0
  642. package/dist/util/field.util.d.ts.map +1 -0
  643. package/dist/util/field.util.js +57 -0
  644. package/dist/util/field.util.js.map +1 -0
  645. package/dist/util/hook.util.d.ts +15 -0
  646. package/dist/util/hook.util.d.ts.map +1 -0
  647. package/dist/util/hook.util.js +20 -0
  648. package/dist/util/hook.util.js.map +1 -0
  649. package/dist/util/index.d.ts +10 -0
  650. package/dist/util/index.d.ts.map +1 -0
  651. package/dist/util/index.js +10 -0
  652. package/dist/util/index.js.map +1 -0
  653. package/dist/util/logger.d.ts +51 -0
  654. package/dist/util/logger.d.ts.map +1 -0
  655. package/dist/util/logger.js +144 -0
  656. package/dist/util/logger.js.map +1 -0
  657. package/dist/util/object.util.d.ts +10 -0
  658. package/dist/util/object.util.d.ts.map +1 -0
  659. package/dist/util/object.util.js +29 -0
  660. package/dist/util/object.util.js.map +1 -0
  661. package/dist/util/raw.d.ts +18 -0
  662. package/dist/util/raw.d.ts.map +1 -0
  663. package/dist/util/raw.js +20 -0
  664. package/dist/util/raw.js.map +1 -0
  665. package/dist/util/relationQuery.util.d.ts +25 -0
  666. package/dist/util/relationQuery.util.d.ts.map +1 -0
  667. package/dist/util/relationQuery.util.js +101 -0
  668. package/dist/util/relationQuery.util.js.map +1 -0
  669. package/dist/util/sql.util.d.ts +50 -0
  670. package/dist/util/sql.util.d.ts.map +1 -0
  671. package/dist/util/sql.util.js +141 -0
  672. package/dist/util/sql.util.js.map +1 -0
  673. package/dist/util/string.util.d.ts +29 -0
  674. package/dist/util/string.util.d.ts.map +1 -0
  675. package/dist/util/string.util.js +93 -0
  676. package/dist/util/string.util.js.map +1 -0
  677. package/package.json +17 -10
  678. package/dist/browser/cc-BVTDOeZ_.js +0 -566
  679. package/dist/browser/cc-BVTDOeZ_.js.map +0 -1
  680. package/dist/browser/mongoSchemaGenerator-BT2_u1wI.js +0 -735
  681. package/dist/browser/mongoSchemaGenerator-BT2_u1wI.js.map +0 -1
@@ -0,0 +1,222 @@
1
+ import { AbstractSqlDialect } from '../dialect/abstractSqlDialect.js';
2
+ import { buildElemMatchConditions } from '../dialect/jsonArrayElemMatchUtils.js';
3
+ import { getMeta } from '../entity/index.js';
4
+ import { QueryRaw, } from '../type/index.js';
5
+ import { escapeAnsiSqlLiteral } from '../util/ansiSqlLiteral.js';
6
+ import { hasKeys, isJsonType } from '../util/index.js';
7
+ /**
8
+ * PostgreSQL dialect (AST, quoting, BIGINT IDENTITY PKs).
9
+ * For node-pg use PgDialect. Neon, Bun SQL, and Cockroach use driver-specific subclasses.
10
+ */
11
+ export class PostgresDialect extends AbstractSqlDialect {
12
+ /** Default {@link DialectFeatures} before wire/driver-specific patches (e.g. {@link PgDialect}). */
13
+ static defaultDialectFeatures = {
14
+ explicitJsonCast: false,
15
+ nativeArrays: true,
16
+ supportsJsonb: true,
17
+ returning: true,
18
+ ifNotExists: true,
19
+ indexIfNotExists: true,
20
+ dropTableCascade: true,
21
+ renameColumn: true,
22
+ foreignKeyAlter: true,
23
+ columnComment: false,
24
+ vectorIndexStyle: 'create',
25
+ vectorSupportsLength: true,
26
+ supportsTimestamptz: true,
27
+ defaultStringAsText: true,
28
+ };
29
+ dialectName = 'postgres';
30
+ quoteChar = '"';
31
+ serialPrimaryKey = 'BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY';
32
+ tableOptions = '';
33
+ beginTransactionCommand = 'BEGIN';
34
+ commitTransactionCommand = 'COMMIT';
35
+ rollbackTransactionCommand = 'ROLLBACK';
36
+ alterColumnStrategy = 'separate-clauses';
37
+ insertIdStrategy = 'last';
38
+ constructor(options = {}) {
39
+ super(PostgresDialect.defaultDialectFeatures, options);
40
+ }
41
+ vectorOpsClass = {
42
+ cosine: 'vector_cosine_ops',
43
+ l2: 'vector_l2_ops',
44
+ inner: 'vector_ip_ops',
45
+ l1: 'vector_l1_ops',
46
+ hamming: 'bit_hamming_ops',
47
+ };
48
+ vectorExtension = 'vector';
49
+ normalizeValue(value) {
50
+ if (value != null && typeof value === 'object' && Array.isArray(value)) {
51
+ return this.features.nativeArrays ? value : toPgArray(value);
52
+ }
53
+ return super.normalizeValue(value);
54
+ }
55
+ placeholder(index) {
56
+ return `$${index}`;
57
+ }
58
+ insert(ctx, entity, payload, opts) {
59
+ super.insert(ctx, entity, payload, opts);
60
+ ctx.append(' ' + this.returningId(entity));
61
+ }
62
+ upsert(ctx, entity, conflictPaths, payload) {
63
+ const meta = getMeta(entity);
64
+ const update = this.getUpsertUpdateAssignments(ctx, meta, conflictPaths, payload, (name) => `EXCLUDED.${name}`);
65
+ const keysStr = this.getUpsertConflictPathsStr(meta, conflictPaths);
66
+ const onConflict = update ? `DO UPDATE SET ${update}` : 'DO NOTHING';
67
+ super.insert(ctx, entity, payload);
68
+ // xmax system column is 0 for newly inserted rows, non-zero for updated rows (MVCC).
69
+ ctx.append(` ON CONFLICT (${keysStr}) ${onConflict} ${this.returningId(entity)}, (xmax = 0) AS ${this.escapeId('_created')}`);
70
+ }
71
+ compare(ctx, entity, key, val, opts = {}) {
72
+ if (key === '$text') {
73
+ const meta = getMeta(entity);
74
+ const search = val;
75
+ const fields = (search.$fields ?? [])
76
+ .map((fKey) => {
77
+ const field = meta.fields[fKey];
78
+ const columnName = this.resolveColumnName(fKey, field);
79
+ return this.escapeId(columnName);
80
+ })
81
+ .join(` || ' ' || `);
82
+ ctx.append(`to_tsvector(${fields}) @@ to_tsquery(`);
83
+ ctx.addValue(search.$value);
84
+ ctx.append(')');
85
+ return;
86
+ }
87
+ super.compare(ctx, entity, key, val, opts);
88
+ }
89
+ jsonAll(ctx, jsonField, value) {
90
+ return `${jsonField} @> ${this.jsonVal(ctx, value)}`;
91
+ }
92
+ jsonSize(ctx, jsonField, value) {
93
+ const tmpCtx = this.createContext();
94
+ this.buildSizeComparison(tmpCtx, () => tmpCtx.append(`jsonb_array_length(${jsonField})`), value);
95
+ ctx.pushValue(...tmpCtx.values);
96
+ return tmpCtx.sql;
97
+ }
98
+ jsonElemMatch(ctx, jsonField, match) {
99
+ // Primitive element match: keys are operators (e.g. { $startsWith: 'ad' } on a string[])
100
+ const isPrimitiveElement = Object.keys(match).some((k) => k.startsWith('$'));
101
+ if (isPrimitiveElement) {
102
+ const conditions = Object.entries(match).map(([op, opVal]) => this.buildJsonFieldCondition(ctx, () => 'elem', '', op, opVal));
103
+ return `EXISTS (SELECT 1 FROM jsonb_array_elements_text(${jsonField}) AS elem WHERE ${conditions.join(' AND ')})`;
104
+ }
105
+ const hasOperators = Object.values(match).some((v) => v && typeof v === 'object' && !Array.isArray(v) && Object.keys(v).some((k) => k.startsWith('$')));
106
+ if (!hasOperators) {
107
+ return `${jsonField} @> ${this.jsonVal(ctx, [match])}`;
108
+ }
109
+ const conditions = buildElemMatchConditions(match, (field, op, opVal) => this.buildJsonFieldCondition(ctx, (f) => `elem->>'${this.escapeJsonKey(f)}'`, field, op, opVal), (field, val) => `elem->>'${this.escapeJsonKey(field)}' = ${this.addValue(ctx.values, val)}`);
110
+ return `EXISTS (SELECT 1 FROM jsonb_array_elements(${jsonField}) AS elem WHERE ${conditions.join(' AND ')})`;
111
+ }
112
+ get regexpOp() {
113
+ return '~';
114
+ }
115
+ ilikeExpr(f, ph) {
116
+ return `${f} ILIKE ${ph}`;
117
+ }
118
+ get neOp() {
119
+ return 'IS DISTINCT FROM';
120
+ }
121
+ formatIn(ctx, values, negate) {
122
+ if (values.length === 0)
123
+ return negate ? ' NOT IN (NULL)' : ' IN (NULL)';
124
+ const ph = this.addValue(ctx.values, values);
125
+ return negate ? ` <> ALL(${ph})` : ` = ANY(${ph})`;
126
+ }
127
+ numericCast(expr) {
128
+ return `(${expr})::numeric`;
129
+ }
130
+ formatPersistableValue(ctx, field, value) {
131
+ if (value instanceof QueryRaw) {
132
+ super.formatPersistableValue(ctx, field, value);
133
+ return;
134
+ }
135
+ if (isJsonType(field.type)) {
136
+ ctx.append(this.jsonVal(ctx, value, field.type));
137
+ return;
138
+ }
139
+ if (field.type === 'vector' && Array.isArray(value)) {
140
+ ctx.addValue(`[${value.join(',')}]`);
141
+ ctx.append('::vector');
142
+ return;
143
+ }
144
+ super.formatPersistableValue(ctx, field, value);
145
+ }
146
+ /** pgvector distance operators. */
147
+ static VECTOR_OPS = {
148
+ cosine: '<=>',
149
+ l2: '<->',
150
+ inner: '<#>',
151
+ l1: '<+>',
152
+ hamming: '<~>',
153
+ };
154
+ /** Emit a pgvector distance expression: `"col" <op> $N::<vectorType>`. */
155
+ appendVectorSort(ctx, meta, key, search) {
156
+ const { colName, distance, vectorCast } = this.resolveVectorSortParams(meta, key, search);
157
+ const op = PostgresDialect.VECTOR_OPS[distance];
158
+ ctx.append(`${this.escapeId(colName)} ${op} `);
159
+ ctx.addValue(`[${search.$vector.join(',')}]`);
160
+ ctx.append(`::${vectorCast}`);
161
+ }
162
+ formatJsonUpdate(ctx, escapedCol, value) {
163
+ let expr = escapedCol;
164
+ if (hasKeys(value.$merge)) {
165
+ expr = `COALESCE(${escapedCol}, '{}'::jsonb) || ${this.jsonVal(ctx, value.$merge)}`;
166
+ }
167
+ if (hasKeys(value.$push)) {
168
+ const push = value.$push;
169
+ for (const [key, v] of Object.entries(push)) {
170
+ const currentExpr = expr;
171
+ const ph = this.jsonVal(ctx, v);
172
+ expr = `jsonb_set(${currentExpr}, '{${this.escapeJsonKey(key)}}', COALESCE((${currentExpr})->'${this.escapeJsonKey(key)}', '[]'::jsonb) || jsonb_build_array(${ph}))`;
173
+ }
174
+ }
175
+ if (value.$unset?.length) {
176
+ for (const key of value.$unset) {
177
+ expr = `(${expr}) - '${this.escapeJsonKey(key)}'`;
178
+ }
179
+ }
180
+ ctx.append(`${escapedCol} = ${expr}`);
181
+ }
182
+ /**
183
+ * Helper to add a JSON value to context with appropriate stringification and cast.
184
+ */
185
+ jsonVal(ctx, value, type = 'jsonb') {
186
+ if (value instanceof QueryRaw)
187
+ return this.addValue(ctx.values, value);
188
+ if (value == null)
189
+ return `${this.addValue(ctx.values, null)}::${type}`;
190
+ const json = JSON.stringify(value);
191
+ const ph = this.addValue(ctx.values, json);
192
+ return this.features.explicitJsonCast ? `(${ph}::text)::${type}` : `${ph}::${type}`;
193
+ }
194
+ escape(value) {
195
+ return escapeAnsiSqlLiteral(value);
196
+ }
197
+ }
198
+ /**
199
+ * Converts a JS array to a Postgres array literal string: `{"val1","val2"}`.
200
+ * Safely handles nesting and escaping of special characters.
201
+ */
202
+ function toPgArray(arr) {
203
+ const elements = arr.map((val) => {
204
+ if (val == null)
205
+ return 'NULL';
206
+ if (Array.isArray(val))
207
+ return toPgArray(val);
208
+ if (typeof val === 'boolean')
209
+ return val ? 'true' : 'false';
210
+ if (val instanceof Uint8Array || (typeof Buffer !== 'undefined' && Buffer.isBuffer(val))) {
211
+ const hex = Array.from(val)
212
+ .map((b) => b.toString(16).padStart(2, '0'))
213
+ .join('');
214
+ return `"\\\\x${hex}"`;
215
+ }
216
+ const str = String(val);
217
+ const escaped = str.replace(/\\/g, '\\\\').replace(/"/g, '\\"');
218
+ return `"${escaped}"`;
219
+ });
220
+ return `{${elements.join(',')}}`;
221
+ }
222
+ //# sourceMappingURL=postgresDialect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postgresDialect.js","sourceRoot":"","sources":["../../src/postgres/postgresDialect.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Wire-style parameter shaping for **Bun SQL** (and similar clients) on PostgreSQL: arrays are
3
+ * sent as string literals (`nativeArrays: false`) via the {@link PostgresDialect} `toPgArray` path.
4
+ *
5
+ * `PgDialect` does **not** use this constant — it keeps base {@link PostgresDialect} defaults
6
+ * (`nativeArrays: true`, `explicitJsonCast: false`). `BunSqlPostgresDialect` spreads this
7
+ * and sets `explicitJsonCast: true`.
8
+ *
9
+ * @remarks Optional import for custom pools; Neon / Cockroach `PostgresDialect` subclasses
10
+ * typically use base defaults without these patches.
11
+ */
12
+ export declare const POSTGRES_WIRE_DRIVER_CAPABILITIES: {
13
+ readonly nativeArrays: false;
14
+ };
15
+ //# sourceMappingURL=postgresWireDriverCapabilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postgresWireDriverCapabilities.d.ts","sourceRoot":"","sources":["../../src/postgres/postgresWireDriverCapabilities.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AACH,eAAO,MAAM,iCAAiC;;CAED,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Wire-style parameter shaping for **Bun SQL** (and similar clients) on PostgreSQL: arrays are
3
+ * sent as string literals (`nativeArrays: false`) via the {@link PostgresDialect} `toPgArray` path.
4
+ *
5
+ * `PgDialect` does **not** use this constant — it keeps base {@link PostgresDialect} defaults
6
+ * (`nativeArrays: true`, `explicitJsonCast: false`). `BunSqlPostgresDialect` spreads this
7
+ * and sets `explicitJsonCast: true`.
8
+ *
9
+ * @remarks Optional import for custom pools; Neon / Cockroach `PostgresDialect` subclasses
10
+ * typically use base defaults without these patches.
11
+ */
12
+ export const POSTGRES_WIRE_DRIVER_CAPABILITIES = {
13
+ nativeArrays: false,
14
+ };
15
+ //# sourceMappingURL=postgresWireDriverCapabilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postgresWireDriverCapabilities.js","sourceRoot":"","sources":["../../src/postgres/postgresWireDriverCapabilities.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG;IAC/C,YAAY,EAAE,KAAK;CACwB,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { AbstractSqlDialect } from '../dialect/index.js';
2
+ import type { ExtraOptions } from '../type/index.js';
3
+ import { AbstractSqlQuerier } from './abstractSqlQuerier.js';
4
+ export declare abstract class AbstractPoolQuerier<C> extends AbstractSqlQuerier {
5
+ protected readonly connect: () => Promise<C>;
6
+ readonly extra?: ExtraOptions | undefined;
7
+ protected conn: C | undefined;
8
+ protected getConn(): C;
9
+ constructor(dialect: AbstractSqlDialect, connect: () => Promise<C>, extra?: ExtraOptions | undefined);
10
+ protected lazyConnect(): Promise<void>;
11
+ internalRelease(): Promise<void>;
12
+ protected abstract releaseConn(conn: C): Promise<void>;
13
+ }
14
+ //# sourceMappingURL=abstractPoolQuerier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstractPoolQuerier.d.ts","sourceRoot":"","sources":["../../src/querier/abstractPoolQuerier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,8BAAsB,mBAAmB,CAAC,CAAC,CAAE,SAAQ,kBAAkB;IAUnE,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC;aAC1B,KAAK,CAAC,EAAE,YAAY;IAVxC,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,SAAS,CAAC;IAE9B,SAAS,CAAC,OAAO,IAAI,CAAC;gBAMpB,OAAO,EAAE,kBAAkB,EACR,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC1B,KAAK,CAAC,EAAE,YAAY,YAAA;cAKf,WAAW;IAIrB,eAAe;IAW9B,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CACvD"}
@@ -0,0 +1,31 @@
1
+ import { throwPendingTransaction } from '../util/index.js';
2
+ import { AbstractSqlQuerier } from './abstractSqlQuerier.js';
3
+ export class AbstractPoolQuerier extends AbstractSqlQuerier {
4
+ connect;
5
+ extra;
6
+ conn;
7
+ getConn() {
8
+ if (!this.conn)
9
+ throw new TypeError('pool querier not connected');
10
+ return this.conn;
11
+ }
12
+ constructor(dialect, connect, extra) {
13
+ super(dialect, extra);
14
+ this.connect = connect;
15
+ this.extra = extra;
16
+ }
17
+ async lazyConnect() {
18
+ this.conn ??= await this.connect();
19
+ }
20
+ async internalRelease() {
21
+ if (this.hasOpenTransaction) {
22
+ throwPendingTransaction();
23
+ }
24
+ if (!this.conn) {
25
+ return;
26
+ }
27
+ await this.releaseConn(this.conn);
28
+ this.conn = undefined;
29
+ }
30
+ }
31
+ //# sourceMappingURL=abstractPoolQuerier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstractPoolQuerier.js","sourceRoot":"","sources":["../../src/querier/abstractPoolQuerier.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,MAAM,OAAgB,mBAAuB,SAAQ,kBAAkB;IAUhD;IACD;IAVV,IAAI,CAAgB;IAEpB,OAAO;QACf,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,SAAS,CAAC,4BAA4B,CAAC,CAAC;QAClE,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,YACE,OAA2B,EACR,OAAyB,EAC1B,KAAoB;QAEtC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAHH,YAAO,GAAP,OAAO,CAAkB;QAC1B,UAAK,GAAL,KAAK,CAAe;IAGxC,CAAC;IAEkB,KAAK,CAAC,WAAW;QAClC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;IACrC,CAAC;IAEQ,KAAK,CAAC,eAAe;QAC5B,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,uBAAuB,EAAE,CAAC;QAC5B,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;IACxB,CAAC;CAGF"}
@@ -0,0 +1,138 @@
1
+ import type { ExtraOptions, IdValue, Querier, Query, QueryAggregate, QueryAggregateResult, QueryConflictPaths, QueryOne, QueryOptions, QueryPopulate, QuerySearch, QueryUpdateResult, RawRow, RelationKey, TransactionOptions, Type, UpdatePayload } from '../type/index.js';
2
+ import { LoggerWrapper } from '../util/index.js';
3
+ /**
4
+ * Base class for all database queriers.
5
+ * It provides a standardized way to execute tasks serially to prevent race conditions on database connections.
6
+ */
7
+ export declare abstract class AbstractQuerier implements Querier {
8
+ readonly extra?: ExtraOptions | undefined;
9
+ private static readonly emittedWarnings;
10
+ /** Clears process-wide warning deduplication. For tests only. */
11
+ static clearEmittedWarningsForTests(): void;
12
+ /**
13
+ * Internal promise used to queue database operations.
14
+ * This ensures that each operation is executed serially, preventing race conditions
15
+ * and ensuring that the database connection is used safely across concurrent calls.
16
+ */
17
+ private taskQueue;
18
+ protected readonly logger: LoggerWrapper;
19
+ constructor(extra?: ExtraOptions | undefined);
20
+ protected validateProjectionQuery<E extends object>(entity: Type<E>, q: Query<E>): void;
21
+ private validateProjectionQueryRecursive;
22
+ /**
23
+ * Resolves entity from either a separate argument or from $entity field in query.
24
+ */
25
+ protected resolveEntityAndQuery<E extends object>(entityOrQuery: Type<E> | (QuerySearch<E> & {
26
+ $entity: Type<E>;
27
+ }), maybeQuery?: QuerySearch<E>): [Type<E>, QuerySearch<E>];
28
+ findOneById<E extends object>(entity: Type<E>, id: IdValue<E>, q?: QueryOne<E>): Promise<E | undefined>;
29
+ /**
30
+ * Find a single record matching the query.
31
+ * Supports both entity-as-argument and entity-as-field patterns.
32
+ */
33
+ findOne<E extends object>(entity: Type<E>, q: QueryOne<E>): Promise<E | undefined>;
34
+ findOne<E extends object>(q: QueryOne<E> & {
35
+ $entity: Type<E>;
36
+ }): Promise<E | undefined>;
37
+ /**
38
+ * Find multiple records matching the query.
39
+ * Supports both entity-as-argument and entity-as-field patterns.
40
+ */
41
+ findMany<E extends object>(entity: Type<E>, q: Query<E>): Promise<E[]>;
42
+ findMany<E extends object>(q: Query<E> & {
43
+ $entity: Type<E>;
44
+ }): Promise<E[]>;
45
+ protected abstract internalFindMany<E extends object>(entity: Type<E>, q: Query<E>): Promise<E[]>;
46
+ /**
47
+ * Stream records as an async iterable.
48
+ * Supports both entity-as-argument and entity-as-field patterns.
49
+ *
50
+ * **SQL:** Joinable relations (e.g. m1 / one-to-one) are still emitted in the streamed SQL; **to-many**
51
+ * relations are not filled (no second query) — requesting them throws a clear `TypeError`.
52
+ *
53
+ * **MongoDB:** Relation loading uses aggregation + follow-up queries in `findMany`; **streams use a plain
54
+ * find cursor**, so any requested relation keys in `$select` / `$populate` throw a `TypeError`.
55
+ *
56
+ * No `afterLoad` hooks on streamed rows.
57
+ */
58
+ findManyStream<E extends object>(entity: Type<E>, q: Query<E>): AsyncIterable<E>;
59
+ findManyStream<E extends object>(q: Query<E> & {
60
+ $entity: Type<E>;
61
+ }): AsyncIterable<E>;
62
+ protected abstract internalFindManyStream<E extends object>(entity: Type<E>, q: Query<E>): AsyncIterable<E>;
63
+ /**
64
+ * Find multiple records and return both the records and total count.
65
+ * Supports both entity-as-argument and entity-as-field patterns.
66
+ */
67
+ findManyAndCount<E extends object>(entity: Type<E>, q: Query<E>): Promise<[E[], number]>;
68
+ findManyAndCount<E extends object>(q: Query<E> & {
69
+ $entity: Type<E>;
70
+ }): Promise<[E[], number]>;
71
+ /**
72
+ * Count records matching the query.
73
+ * Supports both entity-as-argument and entity-as-field patterns.
74
+ */
75
+ count<E extends object>(entity: Type<E>, q: QuerySearch<E>): Promise<number>;
76
+ count<E extends object>(q: QuerySearch<E> & {
77
+ $entity: Type<E>;
78
+ }): Promise<number>;
79
+ protected abstract internalCount<E extends object>(entity: Type<E>, q: QuerySearch<E>): Promise<number>;
80
+ /**
81
+ * Run an aggregate query.
82
+ */
83
+ aggregate<E extends object, const Q extends QueryAggregate<E>>(entity: Type<E>, q: Q): Promise<QueryAggregateResult<E, Q['$group']>[]>;
84
+ protected abstract internalAggregate<E extends object, Q extends QueryAggregate<E>>(entity: Type<E>, q: Q): Promise<QueryAggregateResult<E, Q['$group']>[]>;
85
+ insertOne<E extends object>(entity: Type<E>, payload: E): Promise<IdValue<E>>;
86
+ insertMany<E extends object>(entity: Type<E>, payload: E[]): Promise<IdValue<E>[]>;
87
+ protected abstract internalInsertMany<E extends object>(entity: Type<E>, payload: E[]): Promise<IdValue<E>[]>;
88
+ updateOneById<E extends object>(entity: Type<E>, id: IdValue<E>, payload: UpdatePayload<E>): Promise<number>;
89
+ updateMany<E extends object>(entity: Type<E>, q: QuerySearch<E>, payload: UpdatePayload<E>): Promise<number>;
90
+ protected abstract internalUpdateMany<E extends object>(entity: Type<E>, q: QuerySearch<E>, payload: UpdatePayload<E>): Promise<number>;
91
+ abstract upsertOne<E extends object>(entity: Type<E>, conflictPaths: QueryConflictPaths<E>, payload: E): Promise<QueryUpdateResult>;
92
+ abstract upsertMany<E extends object>(entity: Type<E>, conflictPaths: QueryConflictPaths<E>, payload: E[]): Promise<QueryUpdateResult>;
93
+ deleteOneById<E extends object>(entity: Type<E>, id: IdValue<E>, opts?: QueryOptions): Promise<number>;
94
+ /**
95
+ * Delete records matching the query.
96
+ * Supports both entity-as-argument and entity-as-field patterns.
97
+ */
98
+ deleteMany<E extends object>(entity: Type<E>, q: QuerySearch<E>, opts?: QueryOptions): Promise<number>;
99
+ deleteMany<E extends object>(q: QuerySearch<E> & {
100
+ $entity: Type<E>;
101
+ }, opts?: QueryOptions): Promise<number>;
102
+ protected abstract internalDeleteMany<E extends object>(entity: Type<E>, q: QuerySearch<E>, opts?: QueryOptions): Promise<number>;
103
+ saveOne<E extends object>(entity: Type<E>, payload: E): Promise<IdValue<E>>;
104
+ saveMany<E extends object>(entity: Type<E>, payload: E[]): Promise<IdValue<E>[]>;
105
+ protected fillToManyRelations<E>(entity: Type<E>, payload: E[], populate?: QueryPopulate<E>): Promise<void>;
106
+ private fillToManyThroughRelation;
107
+ private fillToManyOneToMany;
108
+ protected putChildrenInParents<E>(parents: E[], children: RawRow[], parentIdKey: keyof E & string, referenceKey: string, relKey: keyof E & string): void;
109
+ protected insertRelations<E extends object>(entity: Type<E>, payload: E[]): Promise<void>;
110
+ protected updateRelations<E extends object>(entity: Type<E>, q: QuerySearch<E>, payload: UpdatePayload<E>): Promise<void>;
111
+ protected deleteRelations<E extends object>(entity: Type<E>, ids: IdValue<E>[], opts?: QueryOptions): Promise<void>;
112
+ protected saveRelation<E extends object>(entity: Type<E>, payload: E, relKey: RelationKey<E>, isUpdate?: boolean): Promise<void>;
113
+ private saveToMany;
114
+ private saveOneToOne;
115
+ private saveManyToOne;
116
+ abstract readonly hasOpenTransaction: boolean;
117
+ transaction<T>(callback: () => Promise<T>, opts?: TransactionOptions): Promise<T>;
118
+ /**
119
+ * Emit a lifecycle hook event for the given entity.
120
+ * Fires global listeners first, then entity-level hooks.
121
+ */
122
+ private emitHook;
123
+ releaseIfFree(): Promise<void>;
124
+ /**
125
+ * Schedules a task to be executed serially in the querier instance.
126
+ * This is used by the @Serialized decorator to protect database-level operations.
127
+ *
128
+ * @param task - The async task to execute.
129
+ * @returns A promise that resolves with the task's result.
130
+ */
131
+ protected serialize<T>(task: () => Promise<T>): Promise<T>;
132
+ abstract beginTransaction(opts?: TransactionOptions): Promise<void>;
133
+ abstract commitTransaction(): Promise<void>;
134
+ abstract rollbackTransaction(): Promise<void>;
135
+ protected abstract internalRelease(): Promise<void>;
136
+ release(): Promise<void>;
137
+ }
138
+ //# sourceMappingURL=abstractQuerier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstractQuerier.d.ts","sourceRoot":"","sources":["../../src/querier/abstractQuerier.ts"],"names":[],"mappings":"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"}