ts-prorm-orm 1.1.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (460) hide show
  1. package/CHANGELOG.md +95 -0
  2. package/README.md +194 -72
  3. package/dist/audit/history-query.d.ts +35 -0
  4. package/dist/audit/index.d.ts +16 -0
  5. package/dist/audit/logger.d.ts +126 -0
  6. package/dist/cache/cache-manager.d.ts +341 -0
  7. package/dist/cache/index.d.ts +8 -0
  8. package/dist/cache/redis-cluster-cache.d.ts +164 -0
  9. package/dist/cache/redis-cluster-cache.js +19 -36
  10. package/dist/cli/cloud.d.ts +55 -0
  11. package/dist/cli/cloud.js +318 -0
  12. package/dist/cli/commands/auth.d.ts +2 -0
  13. package/dist/cli/commands/auth.js +345 -0
  14. package/dist/cli/commands/billing.d.ts +2 -0
  15. package/dist/cli/commands/billing.js +135 -0
  16. package/dist/cli/commands/code.d.ts +2 -0
  17. package/dist/cli/commands/code.js +168 -0
  18. package/dist/cli/commands/config.d.ts +2 -0
  19. package/dist/cli/commands/config.js +154 -0
  20. package/dist/cli/commands/db.d.ts +2 -0
  21. package/dist/cli/commands/db.js +189 -0
  22. package/dist/cli/commands/index.d.ts +1 -0
  23. package/dist/cli/commands/index.js +22 -0
  24. package/dist/cli/commands/keys.d.ts +2 -0
  25. package/dist/cli/commands/keys.js +100 -0
  26. package/dist/cli/commands/misc.d.ts +2 -0
  27. package/dist/cli/commands/misc.js +282 -0
  28. package/dist/cli/commands/pull.d.ts +2 -0
  29. package/dist/cli/commands/pull.js +306 -0
  30. package/dist/cli/commands/runners.d.ts +2 -0
  31. package/dist/cli/commands/runners.js +218 -0
  32. package/dist/cli/commands/scaffold.d.ts +2 -0
  33. package/dist/cli/commands/scaffold.js +383 -0
  34. package/dist/cli/commands/secrets.d.ts +2 -0
  35. package/dist/cli/commands/secrets.js +162 -0
  36. package/dist/cli/commands/store.d.ts +2 -0
  37. package/dist/cli/commands/store.js +274 -0
  38. package/dist/cli/commands/system.d.ts +10 -0
  39. package/dist/cli/commands/system.js +169 -0
  40. package/dist/cli/commands/teams.d.ts +2 -0
  41. package/dist/cli/commands/teams.js +189 -0
  42. package/dist/cli/commands/user.d.ts +2 -0
  43. package/dist/cli/commands/user.js +171 -0
  44. package/dist/cli/framework.d.ts +103 -0
  45. package/dist/cli/framework.js +436 -0
  46. package/dist/cli/io.d.ts +26 -0
  47. package/dist/cli/io.js +181 -0
  48. package/dist/cli/keychain.d.ts +10 -0
  49. package/dist/cli/keychain.js +101 -0
  50. package/dist/cli/prompt.d.ts +20 -0
  51. package/dist/cli/prompt.js +111 -0
  52. package/dist/cli.d.ts +214 -0
  53. package/dist/cli.js +72 -5
  54. package/dist/compliance/audit-trail.d.ts +66 -0
  55. package/dist/compliance/backup-verification.d.ts +279 -0
  56. package/dist/compliance/breach-detector.d.ts +197 -0
  57. package/dist/compliance/consent-record.d.ts +107 -0
  58. package/dist/compliance/consent-versioning.d.ts +169 -0
  59. package/dist/compliance/cross-border-log.d.ts +254 -0
  60. package/dist/compliance/data-classifier.d.ts +127 -0
  61. package/dist/compliance/data-lineage.d.ts +268 -0
  62. package/dist/compliance/data-masker.d.ts +110 -0
  63. package/dist/compliance/data-portability.d.ts +98 -0
  64. package/dist/compliance/data-retention.d.ts +108 -0
  65. package/dist/compliance/dsar-workflow.d.ts +175 -0
  66. package/dist/compliance/field-encryption.d.ts +84 -0
  67. package/dist/compliance/immutable-record.d.ts +84 -0
  68. package/dist/compliance/index.d.ts +93 -0
  69. package/dist/compliance/privacy-impact-assessment.d.ts +196 -0
  70. package/dist/compliance/pseudonymization.d.ts +96 -0
  71. package/dist/compliance/query-firewall.d.ts +661 -0
  72. package/dist/compliance/rate-limiter.d.ts +203 -0
  73. package/dist/compliance/right-to-erasure.d.ts +96 -0
  74. package/dist/compliance/row-level-security.d.ts +152 -0
  75. package/dist/compliance/security-decorator.d.ts +388 -0
  76. package/dist/compliance/security-monitor.d.ts +170 -0
  77. package/dist/compliance/sensitive-data-discovery.d.ts +151 -0
  78. package/dist/compliance/session-isolation.d.ts +286 -0
  79. package/dist/compliance/tls-enforcer.d.ts +51 -0
  80. package/dist/compliance/worm-storage.d.ts +225 -0
  81. package/dist/connection-manager.d.ts +130 -0
  82. package/dist/connection-pool.d.ts +311 -0
  83. package/dist/decorators/audit.d.ts +49 -0
  84. package/dist/decorators/check.d.ts +218 -0
  85. package/dist/decorators/collate.d.ts +346 -0
  86. package/dist/decorators/comment.d.ts +51 -0
  87. package/dist/decorators/database-settings.d.ts +193 -0
  88. package/dist/decorators/default.d.ts +148 -0
  89. package/dist/decorators/encryption.d.ts +175 -0
  90. package/dist/decorators/engine.d.ts +97 -0
  91. package/dist/decorators/fk-constraints.d.ts +387 -0
  92. package/dist/decorators/foreign-table.d.ts +57 -0
  93. package/dist/decorators/generated.d.ts +232 -0
  94. package/dist/decorators/hstore.d.ts +96 -0
  95. package/dist/decorators/index.d.ts +57 -0
  96. package/dist/decorators/index.js +14 -30
  97. package/dist/decorators/json-column.d.ts +47 -0
  98. package/dist/decorators/jsonb.d.ts +83 -0
  99. package/dist/decorators/orm-decorators.d.ts +274 -0
  100. package/dist/decorators/permissions.d.ts +192 -0
  101. package/dist/decorators/procedure.d.ts +168 -0
  102. package/dist/decorators/procedure.js +31 -7
  103. package/dist/decorators/query-options.d.ts +527 -0
  104. package/dist/decorators/range.d.ts +122 -0
  105. package/dist/decorators/set-column.d.ts +43 -0
  106. package/dist/decorators/spatial.d.ts +60 -0
  107. package/dist/decorators/storage.d.ts +561 -0
  108. package/dist/decorators/timezone.d.ts +319 -0
  109. package/dist/decorators/trigger.d.ts +50 -0
  110. package/dist/decorators/uuid.d.ts +102 -0
  111. package/dist/decorators/view.d.ts +213 -0
  112. package/dist/diagrams/chen-diagram.d.ts +70 -0
  113. package/dist/diagrams/chen-diagram.js +33 -31
  114. package/dist/diagrams/class-diagram.d.ts +78 -0
  115. package/dist/diagrams/class-diagram.js +23 -27
  116. package/dist/diagrams/dependency-diagram.d.ts +82 -0
  117. package/dist/diagrams/dependency-diagram.js +18 -9
  118. package/dist/diagrams/er-diagram.d.ts +82 -0
  119. package/dist/diagrams/er-diagram.js +174 -231
  120. package/dist/diagrams/flow-diagram.d.ts +70 -0
  121. package/dist/diagrams/flow-diagram.js +23 -18
  122. package/dist/diagrams/gantt-diagram.d.ts +67 -0
  123. package/dist/diagrams/gantt-diagram.js +20 -18
  124. package/dist/diagrams/index-diagram.d.ts +61 -0
  125. package/dist/diagrams/index-diagram.js +36 -31
  126. package/dist/diagrams/index.d.ts +155 -0
  127. package/dist/diagrams/index.js +7 -1
  128. package/dist/diagrams/migration-diagram.d.ts +67 -0
  129. package/dist/diagrams/migration-diagram.js +45 -57
  130. package/dist/diagrams/model-diagram.d.ts +85 -0
  131. package/dist/diagrams/model-diagram.js +225 -287
  132. package/dist/diagrams/package-diagram.d.ts +69 -0
  133. package/dist/diagrams/package-diagram.js +30 -32
  134. package/dist/diagrams/palette.d.ts +138 -0
  135. package/dist/diagrams/palette.js +134 -25
  136. package/dist/diagrams/relational-diagram.d.ts +82 -0
  137. package/dist/diagrams/relational-diagram.js +51 -59
  138. package/dist/diagrams/schemadoc-diagram.d.ts +57 -0
  139. package/dist/diagrams/schemadoc-diagram.js +36 -28
  140. package/dist/diagrams/sequence-diagram.d.ts +61 -0
  141. package/dist/diagrams/sequence-diagram.js +20 -11
  142. package/dist/diagrams/state-diagram.d.ts +85 -0
  143. package/dist/diagrams/state-diagram.js +21 -17
  144. package/dist/diagrams/svg-dom.d.ts +62 -0
  145. package/dist/diagrams/svg-dom.js +11 -0
  146. package/dist/diagrams/tree-diagram.d.ts +47 -0
  147. package/dist/diagrams/tree-diagram.js +19 -10
  148. package/dist/dialects/clickhouse/index.d.ts +660 -0
  149. package/dist/dialects/clickhouse/index.js +107 -2
  150. package/dist/dialects/cockroachdb/index.d.ts +1708 -0
  151. package/dist/dialects/cockroachdb/index.js +139 -10
  152. package/dist/dialects/cratedb/index.d.ts +262 -0
  153. package/dist/dialects/cratedb/index.js +148 -0
  154. package/dist/dialects/databricks/index.d.ts +397 -0
  155. package/dist/dialects/databricks/index.js +233 -11
  156. package/dist/dialects/db2/index.d.ts +729 -0
  157. package/dist/dialects/db2/index.js +152 -2
  158. package/dist/dialects/dialect.d.ts +1653 -0
  159. package/dist/dialects/duckdb/index.d.ts +440 -0
  160. package/dist/dialects/duckdb/index.js +21 -37
  161. package/dist/dialects/exasol/index.d.ts +197 -0
  162. package/dist/dialects/exasol/index.js +14 -0
  163. package/dist/dialects/firebird/index.d.ts +286 -0
  164. package/dist/dialects/firebird/index.js +135 -0
  165. package/dist/dialects/greenplum/index.d.ts +336 -0
  166. package/dist/dialects/greenplum/index.js +168 -0
  167. package/dist/dialects/hana/index.d.ts +512 -0
  168. package/dist/dialects/hana/index.js +17 -35
  169. package/dist/dialects/mariadb/index.d.ts +1241 -0
  170. package/dist/dialects/mariadb/index.js +181 -43
  171. package/dist/dialects/mssql/index.d.ts +729 -0
  172. package/dist/dialects/mssql/index.js +76 -7
  173. package/dist/dialects/mysql/index.d.ts +1233 -0
  174. package/dist/dialects/mysql/index.js +87 -19
  175. package/dist/dialects/oracle/index.d.ts +1222 -0
  176. package/dist/dialects/oracle/index.js +210 -9
  177. package/dist/dialects/postgres/index.d.ts +1598 -0
  178. package/dist/dialects/postgres/index.js +34 -13
  179. package/dist/dialects/query-stream-helper.d.ts +58 -0
  180. package/dist/dialects/questdb/index.d.ts +430 -0
  181. package/dist/dialects/questdb/index.js +292 -0
  182. package/dist/dialects/redshift/index.d.ts +933 -0
  183. package/dist/dialects/redshift/index.js +17 -5
  184. package/dist/dialects/singlestore/index.d.ts +233 -0
  185. package/dist/dialects/singlestore/index.js +53 -0
  186. package/dist/dialects/snowflake/index.d.ts +727 -0
  187. package/dist/dialects/snowflake/index.js +154 -5
  188. package/dist/dialects/spanner/index.d.ts +660 -0
  189. package/dist/dialects/spanner/index.js +43 -21
  190. package/dist/dialects/sqlite/index.d.ts +1133 -0
  191. package/dist/dialects/sqlite/index.js +168 -30
  192. package/dist/dialects/tidb/index.d.ts +226 -0
  193. package/dist/dialects/tidb/index.js +10 -0
  194. package/dist/dialects/timescaledb/index.d.ts +286 -0
  195. package/dist/dialects/timescaledb/index.js +179 -0
  196. package/dist/dialects/trino/index.d.ts +230 -0
  197. package/dist/dialects/trino/index.js +85 -10
  198. package/dist/dialects/turso/index.d.ts +98 -0
  199. package/dist/dialects/turso/index.js +10 -0
  200. package/dist/dialects/vertica/index.d.ts +321 -0
  201. package/dist/dialects/vertica/index.js +161 -0
  202. package/dist/dialects/yugabytedb/index.d.ts +276 -0
  203. package/dist/dialects/yugabytedb/index.js +121 -0
  204. package/dist/errors/index.d.ts +378 -0
  205. package/dist/errors/index.js +29 -1
  206. package/dist/errors/utils.d.ts +53 -0
  207. package/dist/errors.d.ts +5 -0
  208. package/dist/extensions/catalog/cloud-warehouse-features.d.ts +27 -0
  209. package/dist/extensions/catalog/mssql-features.d.ts +20 -0
  210. package/dist/extensions/catalog/mysql-mariadb-plugins.d.ts +18 -0
  211. package/dist/extensions/catalog/oracle-db2-features.d.ts +17 -0
  212. package/dist/extensions/catalog/postgres-extensions.d.ts +15 -0
  213. package/dist/extensions/index.d.ts +34 -0
  214. package/dist/extensions/types.d.ts +43 -0
  215. package/dist/external-fields/adapters.d.ts +50 -0
  216. package/dist/external-fields/adapters.js +227 -0
  217. package/dist/external-fields/decorator.d.ts +77 -0
  218. package/dist/external-fields/decorator.js +80 -0
  219. package/dist/external-fields/index.d.ts +10 -0
  220. package/dist/external-fields/index.js +19 -0
  221. package/dist/external-fields/runtime.d.ts +39 -0
  222. package/dist/external-fields/runtime.js +221 -0
  223. package/dist/foreign-data.d.ts +168 -0
  224. package/dist/graph/base-graph-dialect.d.ts +250 -0
  225. package/dist/graph/base-graph-dialect.js +539 -0
  226. package/dist/graph/dgraph/index.d.ts +65 -0
  227. package/dist/graph/dgraph/index.js +559 -0
  228. package/dist/graph/gremlin/index.d.ts +59 -0
  229. package/dist/graph/gremlin/index.js +378 -0
  230. package/dist/graph/index.d.ts +60 -0
  231. package/dist/graph/index.js +67 -0
  232. package/dist/graph/neo4j/index.d.ts +50 -0
  233. package/dist/graph/neo4j/index.js +462 -0
  234. package/dist/graph/types.d.ts +213 -0
  235. package/dist/graph/types.js +234 -0
  236. package/dist/hooks/hooks-manager.d.ts +189 -0
  237. package/dist/hooks/index.d.ts +8 -0
  238. package/dist/index.d.ts +713 -0
  239. package/dist/index.js +36 -4
  240. package/dist/logging.d.ts +183 -0
  241. package/dist/migrations/index.d.ts +9 -0
  242. package/dist/migrations/migration.d.ts +143 -0
  243. package/dist/migrations/migrator.d.ts +199 -0
  244. package/dist/migrations/prormmigration.d.ts +131 -0
  245. package/dist/migrations/query-interface.d.ts +335 -0
  246. package/dist/migrations/seeder.d.ts +167 -0
  247. package/dist/models/associations.d.ts +131 -0
  248. package/dist/models/associations.js +7 -2
  249. package/dist/models/constraints.d.ts +175 -0
  250. package/dist/models/data-types.d.ts +1656 -0
  251. package/dist/models/decorators.d.ts +328 -0
  252. package/dist/models/decorators.js +61 -82
  253. package/dist/models/eager-load.d.ts +86 -0
  254. package/dist/models/eager-load.js +369 -0
  255. package/dist/models/index.d.ts +13 -0
  256. package/dist/models/indexes.d.ts +325 -0
  257. package/dist/models/methods.d.ts +419 -0
  258. package/dist/models/model-manager.d.ts +76 -0
  259. package/dist/models/model.d.ts +820 -0
  260. package/dist/models/model.js +15 -101
  261. package/dist/models/operators.d.ts +29 -0
  262. package/dist/models/scopes.d.ts +71 -0
  263. package/dist/models/typescript-types.d.ts +177 -0
  264. package/dist/nosql/aerospike/index.d.ts +126 -0
  265. package/dist/nosql/allegrograph/index.d.ts +86 -0
  266. package/dist/nosql/arangodb/index.d.ts +285 -0
  267. package/dist/nosql/arangodb/index.js +274 -2
  268. package/dist/nosql/arangodb/where.d.ts +38 -0
  269. package/dist/nosql/arangodb/where.js +94 -0
  270. package/dist/nosql/azure-blob/index.d.ts +104 -0
  271. package/dist/nosql/beanstalkd/index.d.ts +88 -0
  272. package/dist/nosql/beequeue/index.d.ts +99 -0
  273. package/dist/nosql/bigchaindb/index.d.ts +113 -0
  274. package/dist/nosql/bigtable/index.d.ts +144 -0
  275. package/dist/nosql/blazegraph/index.d.ts +88 -0
  276. package/dist/nosql/bullmq/index.d.ts +83 -0
  277. package/dist/nosql/cassandra/index.d.ts +119 -0
  278. package/dist/nosql/chroma/index.d.ts +151 -0
  279. package/dist/nosql/cloudflare-kv/index.d.ts +120 -0
  280. package/dist/nosql/coherence/index.d.ts +91 -0
  281. package/dist/nosql/cosmosdb/index.d.ts +78 -0
  282. package/dist/nosql/couchbase/index.d.ts +103 -0
  283. package/dist/nosql/dax/index.d.ts +118 -0
  284. package/dist/nosql/deno-kv/index.d.ts +109 -0
  285. package/dist/nosql/dgraph/index.d.ts +80 -0
  286. package/dist/nosql/doris/index.d.ts +88 -0
  287. package/dist/nosql/druid/index.d.ts +95 -0
  288. package/dist/nosql/dynamodb/index.d.ts +643 -0
  289. package/dist/nosql/dynamodb/index.js +423 -0
  290. package/dist/nosql/elasticsearch/index.d.ts +239 -0
  291. package/dist/nosql/etcd/index.d.ts +243 -0
  292. package/dist/nosql/eventhubs/index.d.ts +89 -0
  293. package/dist/nosql/eventstore/index.d.ts +102 -0
  294. package/dist/nosql/faunadb/index.d.ts +141 -0
  295. package/dist/nosql/faunadb/index.js +329 -0
  296. package/dist/nosql/firestore/index.d.ts +67 -0
  297. package/dist/nosql/fluree/index.d.ts +88 -0
  298. package/dist/nosql/fuseki/index.d.ts +94 -0
  299. package/dist/nosql/gcs/index.d.ts +62 -0
  300. package/dist/nosql/gearman/index.d.ts +77 -0
  301. package/dist/nosql/geode/index.d.ts +93 -0
  302. package/dist/nosql/graphdb/index.d.ts +86 -0
  303. package/dist/nosql/graylog/index.d.ts +118 -0
  304. package/dist/nosql/gridgain/index.d.ts +78 -0
  305. package/dist/nosql/hazelcast/index.d.ts +73 -0
  306. package/dist/nosql/hbase/index.d.ts +123 -0
  307. package/dist/nosql/ignite/index.d.ts +80 -0
  308. package/dist/nosql/immudb/index.d.ts +131 -0
  309. package/dist/nosql/index.d.ts +215 -0
  310. package/dist/nosql/infinispan/index.d.ts +95 -0
  311. package/dist/nosql/influxdb/flux-compiler.d.ts +23 -0
  312. package/dist/nosql/influxdb/flux-compiler.js +170 -0
  313. package/dist/nosql/influxdb/index.d.ts +300 -0
  314. package/dist/nosql/influxdb/index.js +0 -0
  315. package/dist/nosql/kafka/index.d.ts +113 -0
  316. package/dist/nosql/keyspaces/index.d.ts +122 -0
  317. package/dist/nosql/kinesis/index.d.ts +121 -0
  318. package/dist/nosql/leveldb/index.d.ts +112 -0
  319. package/dist/nosql/leveldb/index.js +103 -1
  320. package/dist/nosql/lmdb/index.d.ts +76 -0
  321. package/dist/nosql/loki/index.d.ts +126 -0
  322. package/dist/nosql/marklogic/index.d.ts +76 -0
  323. package/dist/nosql/materialize/index.d.ts +91 -0
  324. package/dist/nosql/meilisearch/index.d.ts +76 -0
  325. package/dist/nosql/memcached/index.d.ts +138 -0
  326. package/dist/nosql/milvus/index.d.ts +167 -0
  327. package/dist/nosql/minio/index.d.ts +122 -0
  328. package/dist/nosql/momento/index.d.ts +99 -0
  329. package/dist/nosql/mongodb/index.d.ts +265 -0
  330. package/dist/nosql/mongodb/index.js +139 -0
  331. package/dist/nosql/mongodb/where.d.ts +8 -0
  332. package/dist/nosql/mongodb/where.js +181 -0
  333. package/dist/nosql/nats/index.d.ts +139 -0
  334. package/dist/nosql/nedb/index.d.ts +79 -0
  335. package/dist/nosql/neo4j/index.d.ts +217 -0
  336. package/dist/nosql/neo4j/index.js +26 -14
  337. package/dist/nosql/neptune/index.d.ts +234 -0
  338. package/dist/nosql/neptune/index.js +23 -9
  339. package/dist/nosql/nsq/index.d.ts +93 -0
  340. package/dist/nosql/opensearch/index.d.ts +97 -0
  341. package/dist/nosql/orientdb/index.d.ts +72 -0
  342. package/dist/nosql/papertrail/index.d.ts +120 -0
  343. package/dist/nosql/pinecone/index.d.ts +148 -0
  344. package/dist/nosql/pinot/index.d.ts +90 -0
  345. package/dist/nosql/pouchdb/index.d.ts +95 -0
  346. package/dist/nosql/prometheus/index.d.ts +112 -0
  347. package/dist/nosql/provendb/index.d.ts +143 -0
  348. package/dist/nosql/provendb/index.js +262 -0
  349. package/dist/nosql/pubsub/index.d.ts +83 -0
  350. package/dist/nosql/pulsar/index.d.ts +105 -0
  351. package/dist/nosql/qdrant/index.d.ts +231 -0
  352. package/dist/nosql/qldb/index.d.ts +182 -0
  353. package/dist/nosql/qldb/index.js +302 -1
  354. package/dist/nosql/r2/index.d.ts +160 -0
  355. package/dist/nosql/rabbitmq/index.d.ts +131 -0
  356. package/dist/nosql/ravendb/index.d.ts +138 -0
  357. package/dist/nosql/ravendb/index.js +323 -9
  358. package/dist/nosql/ravendb/where.d.ts +38 -0
  359. package/dist/nosql/ravendb/where.js +94 -0
  360. package/dist/nosql/redis/index.d.ts +267 -0
  361. package/dist/nosql/redis/index.js +19 -5
  362. package/dist/nosql/redpanda/index.d.ts +117 -0
  363. package/dist/nosql/resque/index.d.ts +91 -0
  364. package/dist/nosql/rethinkdb/index.d.ts +194 -0
  365. package/dist/nosql/rethinkdb/index.js +290 -0
  366. package/dist/nosql/rethinkdb/where.d.ts +38 -0
  367. package/dist/nosql/rethinkdb/where.js +94 -0
  368. package/dist/nosql/rocksdb/document-layer.d.ts +162 -0
  369. package/dist/nosql/rocksdb/document-layer.js +338 -0
  370. package/dist/nosql/rocksdb/index.d.ts +112 -0
  371. package/dist/nosql/rocksdb/index.js +103 -1
  372. package/dist/nosql/rocksdb/where-match.d.ts +21 -0
  373. package/dist/nosql/rocksdb/where-match.js +238 -0
  374. package/dist/nosql/rockset/index.d.ts +84 -0
  375. package/dist/nosql/s3/index.d.ts +170 -0
  376. package/dist/nosql/scylladb/index.d.ts +117 -0
  377. package/dist/nosql/signoz/index.d.ts +116 -0
  378. package/dist/nosql/sns/index.d.ts +99 -0
  379. package/dist/nosql/solr/index.d.ts +129 -0
  380. package/dist/nosql/splunk/index.d.ts +125 -0
  381. package/dist/nosql/sqs/index.d.ts +116 -0
  382. package/dist/nosql/stardog/index.d.ts +86 -0
  383. package/dist/nosql/starrocks/index.d.ts +89 -0
  384. package/dist/nosql/store.d.ts +23 -0
  385. package/dist/nosql/sumologic/index.d.ts +119 -0
  386. package/dist/nosql/surrealdb/index.d.ts +156 -0
  387. package/dist/nosql/surrealdb/index.js +174 -1
  388. package/dist/nosql/surrealdb/query-compiler.d.ts +26 -0
  389. package/dist/nosql/surrealdb/query-compiler.js +193 -0
  390. package/dist/nosql/terminusdb/index.d.ts +95 -0
  391. package/dist/nosql/tigergraph/index.d.ts +314 -0
  392. package/dist/nosql/typesense/index.d.ts +82 -0
  393. package/dist/nosql/unqlite/index.d.ts +68 -0
  394. package/dist/nosql/upstash/index.d.ts +80 -0
  395. package/dist/nosql/vercel-kv/index.d.ts +82 -0
  396. package/dist/nosql/victoriametrics/index.d.ts +129 -0
  397. package/dist/nosql/virtuoso/index.d.ts +87 -0
  398. package/dist/nosql/weaviate/index.d.ts +196 -0
  399. package/dist/operators/index.d.ts +7 -0
  400. package/dist/operators.d.ts +2947 -0
  401. package/dist/operators.js +46 -1
  402. package/dist/prisma-migrate/index.d.ts +28 -0
  403. package/dist/prisma-migrate/migration-generator.d.ts +21 -0
  404. package/dist/prisma-migrate/model-generator.d.ts +12 -0
  405. package/dist/prisma-migrate/relations.d.ts +28 -0
  406. package/dist/prisma-migrate/schema-parser.d.ts +42 -0
  407. package/dist/prisma-migrate/type-mapper.d.ts +20 -0
  408. package/dist/prorm.d.ts +2093 -0
  409. package/dist/prorm.js +721 -302
  410. package/dist/query-builders/cte-builder.d.ts +104 -0
  411. package/dist/query-builders/functions/aggregate.d.ts +199 -0
  412. package/dist/query-builders/functions/conditional.d.ts +195 -0
  413. package/dist/query-builders/functions/datetime.d.ts +202 -0
  414. package/dist/query-builders/functions/fulltext.d.ts +220 -0
  415. package/dist/query-builders/functions/index.d.ts +17 -0
  416. package/dist/query-builders/functions/json.d.ts +157 -0
  417. package/dist/query-builders/functions/math.d.ts +215 -0
  418. package/dist/query-builders/functions/string.d.ts +233 -0
  419. package/dist/query-builders/functions/window.d.ts +209 -0
  420. package/dist/query-builders/include-builder.d.ts +85 -0
  421. package/dist/query-builders/index-expression-builder.d.ts +153 -0
  422. package/dist/query-builders/index.d.ts +121 -0
  423. package/dist/query-builders/index.js +10 -0
  424. package/dist/query-builders/insert-builder.d.ts +62 -0
  425. package/dist/query-builders/model-helpers.d.ts +28 -0
  426. package/dist/query-builders/order-limit-builder.d.ts +84 -0
  427. package/dist/query-builders/sql-compiler.d.ts +562 -0
  428. package/dist/query-builders/subquery-builder.d.ts +133 -0
  429. package/dist/query-builders/update-builder.d.ts +71 -0
  430. package/dist/query-builders/view-builder.d.ts +189 -0
  431. package/dist/query-builders/where-builder.d.ts +124 -0
  432. package/dist/query-interface.d.ts +407 -0
  433. package/dist/query-interface.js +84 -0
  434. package/dist/query-optimizers/batch-optimizer.d.ts +175 -0
  435. package/dist/query-optimizers/explain-plans.d.ts +187 -0
  436. package/dist/query-optimizers/index.d.ts +27 -0
  437. package/dist/query-optimizers/prepared-statement-cache.d.ts +252 -0
  438. package/dist/query-optimizers/query-hints.d.ts +201 -0
  439. package/dist/query-optimizers/query-optimizer.d.ts +162 -0
  440. package/dist/query-optimizers/slow-query-logger.d.ts +186 -0
  441. package/dist/replica-manager.d.ts +235 -0
  442. package/dist/schema/index.d.ts +7 -0
  443. package/dist/schema/migration-generator.d.ts +74 -0
  444. package/dist/schema/schema-differ.d.ts +114 -0
  445. package/dist/schema/types.d.ts +246 -0
  446. package/dist/schema-objects.d.ts +78 -0
  447. package/dist/schema-objects.js +203 -0
  448. package/dist/sql-constants.d.ts +240 -0
  449. package/dist/sqlite-advanced.d.ts +572 -0
  450. package/dist/streams/index.d.ts +5 -0
  451. package/dist/streams/transforms.d.ts +120 -0
  452. package/dist/transaction.d.ts +221 -0
  453. package/dist/types/index.d.ts +3123 -0
  454. package/dist/user-management.d.ts +141 -0
  455. package/dist/utils/date.d.ts +149 -0
  456. package/dist/utils/index.d.ts +359 -0
  457. package/dist/utils/string.d.ts +88 -0
  458. package/dist/validators/index.d.ts +7 -0
  459. package/dist/validators/validator.d.ts +306 -0
  460. package/package.json +20 -5
@@ -0,0 +1,419 @@
1
+ /**
2
+ * Custom Methods Helpers for Models
3
+ *
4
+ * This module provides utilities for adding custom class and instance methods
5
+ * to Prorm-like models.
6
+ */
7
+ import { ModelStatic, ModelInstance } from '../types';
8
+ /**
9
+ * Add custom class methods to a model
10
+ * Use this to add static methods to a model (e.g., User.findByEmail)
11
+ *
12
+ * @example
13
+ * ```typescript
14
+ * addClassMethods(User, {
15
+ * findByEmail: async function(email) {
16
+ * return this.findOne({ where: { email } });
17
+ * },
18
+ * findByRole: function(role) {
19
+ * return this.findAll({ where: { role } });
20
+ * }
21
+ * });
22
+ * ```
23
+ *
24
+ * @param model - The model static to add methods to
25
+ * @param methods - Object containing method names and their implementations
26
+ */
27
+ export declare function addClassMethods<T extends ModelStatic<any>>(model: T, methods: Record<string, Function>): void;
28
+ /**
29
+ * Add custom instance methods to a model
30
+ * Use this to add methods that will be available on model instances (e.g., user.getFullName())
31
+ *
32
+ * @example
33
+ * ```typescript
34
+ * addInstanceMethods(User, {
35
+ * getFullName: function() {
36
+ * return `${this.firstName} ${this.lastName}`;
37
+ * },
38
+ * isActive: function() {
39
+ * return this.status === 'active';
40
+ * }
41
+ * });
42
+ * ```
43
+ *
44
+ * @param model - The model static to add methods to
45
+ * @param methods - Object containing method names and their implementations
46
+ */
47
+ export declare function addInstanceMethods<T extends ModelStatic<any>>(model: T, methods: Record<string, Function>): void;
48
+ /**
49
+ * Define custom methods when creating a model using define()
50
+ * This is the preferred way to add custom methods during model definition
51
+ *
52
+ * @example
53
+ * ```typescript
54
+ * const User = prorm.define('User', {
55
+ * firstName: Prorm.STRING,
56
+ * lastName: Prorm.STRING,
57
+ * email: Prorm.STRING
58
+ * }, {
59
+ * classMethods: {
60
+ * findByEmail: async function(email) {
61
+ * return this.findOne({ where: { email } });
62
+ * }
63
+ * },
64
+ * instanceMethods: {
65
+ * getFullName: function() {
66
+ * return `${this.firstName} ${this.lastName}`;
67
+ * }
68
+ * }
69
+ * });
70
+ * ```
71
+ */
72
+ export interface ModelWithMethods<T = any> extends ModelStatic<ModelInstance<T>> {
73
+ findByEmail?: (email: string) => Promise<ModelInstance<T> | null>;
74
+ findByRole?: (role: string) => Promise<ModelInstance<T>[]>;
75
+ [key: string]: any;
76
+ }
77
+ export interface InstanceWithMethods<T = any> extends ModelInstance<T> {
78
+ getFullName?: () => string;
79
+ isActive?: () => boolean;
80
+ [key: string]: any;
81
+ }
82
+ /**
83
+ * Helper to extend a model with additional methods after definition
84
+ * Useful for adding methods to models defined elsewhere
85
+ *
86
+ * @example
87
+ * ```typescript
88
+ * // Extend User model with custom methods
89
+ * extendModel(User, {
90
+ * classMethods: {
91
+ * findActive: function() {
92
+ * return this.findAll({ where: { status: 'active' } });
93
+ * }
94
+ * },
95
+ * instanceMethods: {
96
+ * getDisplayName: function() {
97
+ * return this.name || this.email;
98
+ * }
99
+ * }
100
+ * });
101
+ * ```
102
+ *
103
+ * @param model - The model to extend
104
+ * @param options - Object containing classMethods and/or instanceMethods
105
+ */
106
+ export declare function extendModel<T extends ModelStatic<any>>(model: T, options: {
107
+ classMethods?: Record<string, Function>;
108
+ instanceMethods?: Record<string, Function>;
109
+ }): void;
110
+ /**
111
+ * Common instance methods that can be added to any model
112
+ */
113
+ export declare const commonInstanceMethods: {
114
+ /**
115
+ * Get a single attribute value
116
+ * @example
117
+ * ```typescript
118
+ * const name = user.get('firstName');
119
+ * ```
120
+ */
121
+ get(key: string): any;
122
+ /**
123
+ * Set a single attribute value
124
+ * @example
125
+ * ```typescript
126
+ * user.set('firstName', 'John');
127
+ * ```
128
+ */
129
+ set(key: string, value: any): void;
130
+ /**
131
+ * Get raw data value (bypasses getters)
132
+ * @example
133
+ * ```typescript
134
+ * const value = user.getDataValue('firstName');
135
+ * ```
136
+ */
137
+ getDataValue(key: string): any;
138
+ /**
139
+ * Set raw data value (bypasses setters)
140
+ * @example
141
+ * ```typescript
142
+ * user.setDataValue('firstName', 'John');
143
+ * ```
144
+ */
145
+ setDataValue(key: string, value: any): void;
146
+ /**
147
+ * Check if record is new (not saved to database)
148
+ * @example
149
+ * ```typescript
150
+ * if (user.isNewRecord) {
151
+ * console.log('New user!');
152
+ * }
153
+ * ```
154
+ */
155
+ isNewRecord(): boolean;
156
+ /**
157
+ * Convert instance to JSON
158
+ * @example
159
+ * ```typescript
160
+ * const json = user.toJSON();
161
+ * ```
162
+ */
163
+ toJSON(): Record<string, any>;
164
+ /**
165
+ * Check if a specific field has changed
166
+ * @example
167
+ * ```typescript
168
+ * if (user.changed('email')) {
169
+ * console.log('Email was changed');
170
+ * }
171
+ * ```
172
+ */
173
+ changed(key?: string): boolean | string[];
174
+ /**
175
+ * Get previous value of a field
176
+ * @example
177
+ * ```typescript
178
+ * const oldEmail = user.previous('email');
179
+ * ```
180
+ */
181
+ previous(key?: string): any;
182
+ };
183
+ /**
184
+ * Common class methods that can be added to any model
185
+ */
186
+ export declare const commonClassMethods: {
187
+ /**
188
+ * Find a record or create it if not found
189
+ * @example
190
+ * ```typescript
191
+ * const [user, created] = await User.findOrCreate({
192
+ * where: { email: 'john@example.com' },
193
+ * defaults: { name: 'John' }
194
+ * });
195
+ * ```
196
+ */
197
+ findOrCreate<T extends ModelStatic<any>>(this: T, options: {
198
+ where: Record<string, any>;
199
+ defaults?: Record<string, any>;
200
+ }): Promise<[ModelInstance<any>, boolean]>;
201
+ /**
202
+ * Find a record or build (but not save) it if not found
203
+ * @example
204
+ * ```typescript
205
+ * const [user, built] = await User.findOrBuild({
206
+ * where: { email: 'john@example.com' },
207
+ * defaults: { name: 'John' }
208
+ * });
209
+ * if (built) {
210
+ * await user.save();
211
+ * }
212
+ * ```
213
+ */
214
+ findOrBuild<T extends ModelStatic<any>>(this: T, options: {
215
+ where: Record<string, any>;
216
+ defaults?: Record<string, any>;
217
+ }): Promise<[ModelInstance<any>, boolean]>;
218
+ /**
219
+ * Insert or update a record
220
+ * @example
221
+ * ```typescript
222
+ * const [user, isNew] = await User.upsert({
223
+ * id: 1,
224
+ * name: 'John',
225
+ * email: 'john@example.com'
226
+ * });
227
+ * ```
228
+ */
229
+ upsert<T extends ModelStatic<any>>(this: T, values: Record<string, any>, _options?: {
230
+ returning?: boolean;
231
+ }): Promise<[ModelInstance<any>, boolean]>;
232
+ /**
233
+ * Find a record by where conditions, or create it with upsert semantics
234
+ * Similar to findOrCreate but uses upsert for the create path
235
+ * @example
236
+ * ```typescript
237
+ * const [user, created] = await User.upsertOrCreate({
238
+ * where: { email: 'john@example.com' },
239
+ * defaults: { name: 'John' },
240
+ * updateValues: { name: 'John Updated' }
241
+ * });
242
+ * ```
243
+ */
244
+ upsertOrCreate<T extends ModelStatic<any>>(this: T, options: {
245
+ where: Record<string, any>;
246
+ defaults?: Record<string, any>;
247
+ updateValues?: Record<string, any>;
248
+ }): Promise<[ModelInstance<any>, boolean]>;
249
+ /**
250
+ * Bulk upsert - upsert multiple records at once
251
+ * @example
252
+ * ```typescript
253
+ * const results = await User.bulkUpsert([
254
+ * { id: 1, name: 'John' },
255
+ * { id: 2, name: 'Jane' },
256
+ * { name: 'New User' }
257
+ * ], { conflictKeys: ['email'], updateKeys: ['name'] });
258
+ * ```
259
+ */
260
+ bulkUpsert<T extends ModelStatic<any>>(this: T, records: Record<string, any>[], options?: {
261
+ conflictKeys?: string[];
262
+ updateKeys?: string[];
263
+ }): Promise<number>;
264
+ };
265
+ declare const _default: {
266
+ addClassMethods: typeof addClassMethods;
267
+ addInstanceMethods: typeof addInstanceMethods;
268
+ extendModel: typeof extendModel;
269
+ commonInstanceMethods: {
270
+ /**
271
+ * Get a single attribute value
272
+ * @example
273
+ * ```typescript
274
+ * const name = user.get('firstName');
275
+ * ```
276
+ */
277
+ get(key: string): any;
278
+ /**
279
+ * Set a single attribute value
280
+ * @example
281
+ * ```typescript
282
+ * user.set('firstName', 'John');
283
+ * ```
284
+ */
285
+ set(key: string, value: any): void;
286
+ /**
287
+ * Get raw data value (bypasses getters)
288
+ * @example
289
+ * ```typescript
290
+ * const value = user.getDataValue('firstName');
291
+ * ```
292
+ */
293
+ getDataValue(key: string): any;
294
+ /**
295
+ * Set raw data value (bypasses setters)
296
+ * @example
297
+ * ```typescript
298
+ * user.setDataValue('firstName', 'John');
299
+ * ```
300
+ */
301
+ setDataValue(key: string, value: any): void;
302
+ /**
303
+ * Check if record is new (not saved to database)
304
+ * @example
305
+ * ```typescript
306
+ * if (user.isNewRecord) {
307
+ * console.log('New user!');
308
+ * }
309
+ * ```
310
+ */
311
+ isNewRecord(): boolean;
312
+ /**
313
+ * Convert instance to JSON
314
+ * @example
315
+ * ```typescript
316
+ * const json = user.toJSON();
317
+ * ```
318
+ */
319
+ toJSON(): Record<string, any>;
320
+ /**
321
+ * Check if a specific field has changed
322
+ * @example
323
+ * ```typescript
324
+ * if (user.changed('email')) {
325
+ * console.log('Email was changed');
326
+ * }
327
+ * ```
328
+ */
329
+ changed(key?: string): boolean | string[];
330
+ /**
331
+ * Get previous value of a field
332
+ * @example
333
+ * ```typescript
334
+ * const oldEmail = user.previous('email');
335
+ * ```
336
+ */
337
+ previous(key?: string): any;
338
+ };
339
+ commonClassMethods: {
340
+ /**
341
+ * Find a record or create it if not found
342
+ * @example
343
+ * ```typescript
344
+ * const [user, created] = await User.findOrCreate({
345
+ * where: { email: 'john@example.com' },
346
+ * defaults: { name: 'John' }
347
+ * });
348
+ * ```
349
+ */
350
+ findOrCreate<T extends ModelStatic<any>>(this: T, options: {
351
+ where: Record<string, any>;
352
+ defaults?: Record<string, any>;
353
+ }): Promise<[ModelInstance<any>, boolean]>;
354
+ /**
355
+ * Find a record or build (but not save) it if not found
356
+ * @example
357
+ * ```typescript
358
+ * const [user, built] = await User.findOrBuild({
359
+ * where: { email: 'john@example.com' },
360
+ * defaults: { name: 'John' }
361
+ * });
362
+ * if (built) {
363
+ * await user.save();
364
+ * }
365
+ * ```
366
+ */
367
+ findOrBuild<T extends ModelStatic<any>>(this: T, options: {
368
+ where: Record<string, any>;
369
+ defaults?: Record<string, any>;
370
+ }): Promise<[ModelInstance<any>, boolean]>;
371
+ /**
372
+ * Insert or update a record
373
+ * @example
374
+ * ```typescript
375
+ * const [user, isNew] = await User.upsert({
376
+ * id: 1,
377
+ * name: 'John',
378
+ * email: 'john@example.com'
379
+ * });
380
+ * ```
381
+ */
382
+ upsert<T extends ModelStatic<any>>(this: T, values: Record<string, any>, _options?: {
383
+ returning?: boolean;
384
+ }): Promise<[ModelInstance<any>, boolean]>;
385
+ /**
386
+ * Find a record by where conditions, or create it with upsert semantics
387
+ * Similar to findOrCreate but uses upsert for the create path
388
+ * @example
389
+ * ```typescript
390
+ * const [user, created] = await User.upsertOrCreate({
391
+ * where: { email: 'john@example.com' },
392
+ * defaults: { name: 'John' },
393
+ * updateValues: { name: 'John Updated' }
394
+ * });
395
+ * ```
396
+ */
397
+ upsertOrCreate<T extends ModelStatic<any>>(this: T, options: {
398
+ where: Record<string, any>;
399
+ defaults?: Record<string, any>;
400
+ updateValues?: Record<string, any>;
401
+ }): Promise<[ModelInstance<any>, boolean]>;
402
+ /**
403
+ * Bulk upsert - upsert multiple records at once
404
+ * @example
405
+ * ```typescript
406
+ * const results = await User.bulkUpsert([
407
+ * { id: 1, name: 'John' },
408
+ * { id: 2, name: 'Jane' },
409
+ * { name: 'New User' }
410
+ * ], { conflictKeys: ['email'], updateKeys: ['name'] });
411
+ * ```
412
+ */
413
+ bulkUpsert<T extends ModelStatic<any>>(this: T, records: Record<string, any>[], options?: {
414
+ conflictKeys?: string[];
415
+ updateKeys?: string[];
416
+ }): Promise<number>;
417
+ };
418
+ };
419
+ export default _default;
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Model Manager Module
3
+ * Manages model registry and tracking all defined models
4
+ */
5
+ import { ModelStatic, Model, AttributeOptions, ModelOptions } from '../types';
6
+ /**
7
+ * Model definition entry
8
+ */
9
+ export interface ModelDefinition {
10
+ name: string;
11
+ attributes: Record<string, AttributeOptions>;
12
+ options: ModelOptions;
13
+ }
14
+ /**
15
+ * ModelManager class to track all models
16
+ */
17
+ export declare class ModelManager {
18
+ private models;
19
+ private modelDefinitions;
20
+ /**
21
+ * Get a model by name
22
+ * @param name - Model name
23
+ */
24
+ getModel<T extends Model = any>(name: string): ModelStatic<T> | undefined;
25
+ /**
26
+ * Set a model
27
+ * @param name - Model name
28
+ * @param model - Model static
29
+ */
30
+ setModel<T extends Model = any>(name: string, model: ModelStatic<T>): void;
31
+ /**
32
+ * Check if a model exists
33
+ * @param name - Model name
34
+ */
35
+ hasModel(name: string): boolean;
36
+ /**
37
+ * Remove a model by name
38
+ * @param name - Model name
39
+ */
40
+ removeModel(name: string): boolean;
41
+ /**
42
+ * Get all registered models
43
+ * @returns Map of model name to ModelStatic
44
+ */
45
+ getModels(): Map<string, ModelStatic<any>>;
46
+ /**
47
+ * Get all model names
48
+ * @returns Array of model names
49
+ */
50
+ getModelNames(): string[];
51
+ /**
52
+ * Store a model definition
53
+ * @param name - Model name
54
+ * @param attributes - Model attributes
55
+ * @param options - Model options
56
+ */
57
+ addModelDefinition(name: string, attributes: Record<string, AttributeOptions>, options: ModelOptions): void;
58
+ /**
59
+ * Get a model definition
60
+ * @param name - Model name
61
+ */
62
+ getModelDefinition(name: string): ModelDefinition | undefined;
63
+ /**
64
+ * Get all model definitions
65
+ */
66
+ getAllModelDefinitions(): Map<string, ModelDefinition>;
67
+ /**
68
+ * Clear all models
69
+ */
70
+ clear(): void;
71
+ /**
72
+ * Get the count of registered models
73
+ */
74
+ getModelCount(): number;
75
+ }
76
+ export default ModelManager;