dynamo-document-builder 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (310) hide show
  1. package/README.md +367 -0
  2. package/dist/attributes/attribute-map.cjs +52 -0
  3. package/dist/attributes/attribute-map.cjs.map +1 -1
  4. package/dist/attributes/attribute-map.d.ts +67 -0
  5. package/dist/attributes/attribute-map.mjs +52 -0
  6. package/dist/attributes/attribute-map.mjs.map +1 -1
  7. package/dist/commands/batch-get.cjs +43 -0
  8. package/dist/commands/batch-get.cjs.map +1 -1
  9. package/dist/commands/batch-get.d.ts +51 -3
  10. package/dist/commands/batch-get.mjs +44 -1
  11. package/dist/commands/batch-get.mjs.map +1 -1
  12. package/dist/commands/batch-projected-get.cjs +42 -0
  13. package/dist/commands/batch-projected-get.cjs.map +1 -1
  14. package/dist/commands/batch-projected-get.d.ts +56 -3
  15. package/dist/commands/batch-projected-get.mjs +42 -0
  16. package/dist/commands/batch-projected-get.mjs.map +1 -1
  17. package/dist/commands/batch-write.cjs +44 -0
  18. package/dist/commands/batch-write.cjs.map +1 -1
  19. package/dist/commands/batch-write.d.ts +54 -4
  20. package/dist/commands/batch-write.mjs +45 -1
  21. package/dist/commands/batch-write.mjs.map +1 -1
  22. package/dist/commands/condition-check.cjs +37 -0
  23. package/dist/commands/condition-check.cjs.map +1 -1
  24. package/dist/commands/condition-check.d.ts +45 -3
  25. package/dist/commands/condition-check.mjs +37 -0
  26. package/dist/commands/condition-check.mjs.map +1 -1
  27. package/dist/commands/conditional-delete.cjs +33 -0
  28. package/dist/commands/conditional-delete.cjs.map +1 -1
  29. package/dist/commands/conditional-delete.d.ts +46 -3
  30. package/dist/commands/conditional-delete.mjs +33 -0
  31. package/dist/commands/conditional-delete.mjs.map +1 -1
  32. package/dist/commands/conditional-put.cjs +34 -0
  33. package/dist/commands/conditional-put.cjs.map +1 -1
  34. package/dist/commands/conditional-put.d.ts +48 -4
  35. package/dist/commands/conditional-put.mjs +34 -0
  36. package/dist/commands/conditional-put.mjs.map +1 -1
  37. package/dist/commands/conditional-update.cjs +35 -0
  38. package/dist/commands/conditional-update.cjs.map +1 -1
  39. package/dist/commands/conditional-update.d.ts +48 -3
  40. package/dist/commands/conditional-update.mjs +35 -0
  41. package/dist/commands/conditional-update.mjs.map +1 -1
  42. package/dist/commands/delete.cjs +32 -0
  43. package/dist/commands/delete.cjs.map +1 -1
  44. package/dist/commands/delete.d.ts +44 -2
  45. package/dist/commands/delete.mjs +32 -0
  46. package/dist/commands/delete.mjs.map +1 -1
  47. package/dist/commands/get.cjs +33 -0
  48. package/dist/commands/get.cjs.map +1 -1
  49. package/dist/commands/get.d.ts +45 -2
  50. package/dist/commands/get.mjs +33 -0
  51. package/dist/commands/get.mjs.map +1 -1
  52. package/dist/commands/index.cjs +8 -0
  53. package/dist/commands/index.cjs.map +1 -1
  54. package/dist/commands/index.d.ts +160 -1
  55. package/dist/commands/index.mjs +4 -0
  56. package/dist/commands/index.mjs.map +1 -1
  57. package/dist/commands/projected-get.cjs +40 -0
  58. package/dist/commands/projected-get.cjs.map +1 -1
  59. package/dist/commands/projected-get.d.ts +54 -3
  60. package/dist/commands/projected-get.mjs +40 -0
  61. package/dist/commands/projected-get.mjs.map +1 -1
  62. package/dist/commands/projected-query.cjs +41 -0
  63. package/dist/commands/projected-query.cjs.map +1 -1
  64. package/dist/commands/projected-query.d.ts +56 -3
  65. package/dist/commands/projected-query.mjs +41 -0
  66. package/dist/commands/projected-query.mjs.map +1 -1
  67. package/dist/commands/projected-scan.cjs +41 -0
  68. package/dist/commands/projected-scan.cjs.map +1 -1
  69. package/dist/commands/projected-scan.d.ts +55 -3
  70. package/dist/commands/projected-scan.mjs +41 -0
  71. package/dist/commands/projected-scan.mjs.map +1 -1
  72. package/dist/commands/put.cjs +37 -0
  73. package/dist/commands/put.cjs.map +1 -1
  74. package/dist/commands/put.d.ts +50 -3
  75. package/dist/commands/put.mjs +37 -0
  76. package/dist/commands/put.mjs.map +1 -1
  77. package/dist/commands/query.cjs +35 -0
  78. package/dist/commands/query.cjs.map +1 -1
  79. package/dist/commands/query.d.ts +48 -3
  80. package/dist/commands/query.mjs +35 -0
  81. package/dist/commands/query.mjs.map +1 -1
  82. package/dist/commands/scan.cjs +33 -0
  83. package/dist/commands/scan.cjs.map +1 -1
  84. package/dist/commands/scan.d.ts +46 -3
  85. package/dist/commands/scan.mjs +33 -0
  86. package/dist/commands/scan.mjs.map +1 -1
  87. package/dist/commands/table-batch-get.cjs +123 -0
  88. package/dist/commands/table-batch-get.cjs.map +1 -0
  89. package/dist/commands/table-batch-get.d.ts +86 -0
  90. package/dist/commands/table-batch-get.mjs +121 -0
  91. package/dist/commands/table-batch-get.mjs.map +1 -0
  92. package/dist/commands/table-batch-write.cjs +119 -0
  93. package/dist/commands/table-batch-write.cjs.map +1 -0
  94. package/dist/commands/table-batch-write.d.ts +79 -0
  95. package/dist/commands/table-batch-write.mjs +117 -0
  96. package/dist/commands/table-batch-write.mjs.map +1 -0
  97. package/dist/commands/table-transact-get.cjs +73 -0
  98. package/dist/commands/table-transact-get.cjs.map +1 -0
  99. package/dist/commands/table-transact-get.d.ts +60 -0
  100. package/dist/commands/table-transact-get.mjs +71 -0
  101. package/dist/commands/table-transact-get.mjs.map +1 -0
  102. package/dist/commands/table-transact-write.cjs +76 -0
  103. package/dist/commands/table-transact-write.cjs.map +1 -0
  104. package/dist/commands/table-transact-write.d.ts +51 -0
  105. package/dist/commands/table-transact-write.mjs +74 -0
  106. package/dist/commands/table-transact-write.mjs.map +1 -0
  107. package/dist/commands/transact-get.cjs +38 -0
  108. package/dist/commands/transact-get.cjs.map +1 -1
  109. package/dist/commands/transact-get.d.ts +49 -3
  110. package/dist/commands/transact-get.mjs +39 -1
  111. package/dist/commands/transact-get.mjs.map +1 -1
  112. package/dist/commands/transact-write.cjs +37 -0
  113. package/dist/commands/transact-write.cjs.map +1 -1
  114. package/dist/commands/transact-write.d.ts +46 -1
  115. package/dist/commands/transact-write.mjs +37 -0
  116. package/dist/commands/transact-write.mjs.map +1 -1
  117. package/dist/commands/update.cjs +37 -0
  118. package/dist/commands/update.cjs.map +1 -1
  119. package/dist/commands/update.d.ts +50 -3
  120. package/dist/commands/update.mjs +37 -0
  121. package/dist/commands/update.mjs.map +1 -1
  122. package/dist/conditions/and.cjs +3 -0
  123. package/dist/conditions/and.cjs.map +1 -1
  124. package/dist/conditions/and.d.ts +4 -1
  125. package/dist/conditions/and.mjs +3 -0
  126. package/dist/conditions/and.mjs.map +1 -1
  127. package/dist/conditions/begins-with.cjs +3 -0
  128. package/dist/conditions/begins-with.cjs.map +1 -1
  129. package/dist/conditions/begins-with.d.ts +4 -1
  130. package/dist/conditions/begins-with.mjs +3 -0
  131. package/dist/conditions/begins-with.mjs.map +1 -1
  132. package/dist/conditions/between.cjs +3 -0
  133. package/dist/conditions/between.cjs.map +1 -1
  134. package/dist/conditions/between.d.ts +4 -1
  135. package/dist/conditions/between.mjs +3 -0
  136. package/dist/conditions/between.mjs.map +1 -1
  137. package/dist/conditions/condition-parser.d.ts +1 -1
  138. package/dist/conditions/contains.cjs +3 -0
  139. package/dist/conditions/contains.cjs.map +1 -1
  140. package/dist/conditions/contains.d.ts +4 -1
  141. package/dist/conditions/contains.mjs +3 -0
  142. package/dist/conditions/contains.mjs.map +1 -1
  143. package/dist/conditions/equals.cjs +3 -0
  144. package/dist/conditions/equals.cjs.map +1 -1
  145. package/dist/conditions/equals.d.ts +4 -1
  146. package/dist/conditions/equals.mjs +3 -0
  147. package/dist/conditions/equals.mjs.map +1 -1
  148. package/dist/conditions/exists.cjs +3 -0
  149. package/dist/conditions/exists.cjs.map +1 -1
  150. package/dist/conditions/exists.d.ts +4 -1
  151. package/dist/conditions/exists.mjs +3 -0
  152. package/dist/conditions/exists.mjs.map +1 -1
  153. package/dist/conditions/greater-than-or-equal.cjs +3 -0
  154. package/dist/conditions/greater-than-or-equal.cjs.map +1 -1
  155. package/dist/conditions/greater-than-or-equal.d.ts +4 -1
  156. package/dist/conditions/greater-than-or-equal.mjs +3 -0
  157. package/dist/conditions/greater-than-or-equal.mjs.map +1 -1
  158. package/dist/conditions/greater-than.cjs +3 -0
  159. package/dist/conditions/greater-than.cjs.map +1 -1
  160. package/dist/conditions/greater-than.d.ts +4 -1
  161. package/dist/conditions/greater-than.mjs +3 -0
  162. package/dist/conditions/greater-than.mjs.map +1 -1
  163. package/dist/conditions/index.cjs +2 -2
  164. package/dist/conditions/index.d.ts +185 -2
  165. package/dist/conditions/index.mjs +1 -1
  166. package/dist/conditions/is-in.cjs +3 -0
  167. package/dist/conditions/is-in.cjs.map +1 -1
  168. package/dist/conditions/is-in.d.ts +4 -1
  169. package/dist/conditions/is-in.mjs +3 -0
  170. package/dist/conditions/is-in.mjs.map +1 -1
  171. package/dist/conditions/less-than-or-equal.cjs +3 -0
  172. package/dist/conditions/less-than-or-equal.cjs.map +1 -1
  173. package/dist/conditions/less-than-or-equal.d.ts +4 -1
  174. package/dist/conditions/less-than-or-equal.mjs +3 -0
  175. package/dist/conditions/less-than-or-equal.mjs.map +1 -1
  176. package/dist/conditions/less-than.cjs +3 -0
  177. package/dist/conditions/less-than.cjs.map +1 -1
  178. package/dist/conditions/less-than.d.ts +4 -1
  179. package/dist/conditions/less-than.mjs +3 -0
  180. package/dist/conditions/less-than.mjs.map +1 -1
  181. package/dist/conditions/not-equals.cjs +3 -0
  182. package/dist/conditions/not-equals.cjs.map +1 -1
  183. package/dist/conditions/not-equals.d.ts +4 -1
  184. package/dist/conditions/not-equals.mjs +3 -0
  185. package/dist/conditions/not-equals.mjs.map +1 -1
  186. package/dist/conditions/not-exists.cjs +3 -0
  187. package/dist/conditions/not-exists.cjs.map +1 -1
  188. package/dist/conditions/not-exists.d.ts +4 -1
  189. package/dist/conditions/not-exists.mjs +3 -0
  190. package/dist/conditions/not-exists.mjs.map +1 -1
  191. package/dist/conditions/not.cjs +3 -0
  192. package/dist/conditions/not.cjs.map +1 -1
  193. package/dist/conditions/not.d.ts +4 -1
  194. package/dist/conditions/not.mjs +3 -0
  195. package/dist/conditions/not.mjs.map +1 -1
  196. package/dist/conditions/or.cjs +3 -0
  197. package/dist/conditions/or.cjs.map +1 -1
  198. package/dist/conditions/or.d.ts +4 -1
  199. package/dist/conditions/or.mjs +3 -0
  200. package/dist/conditions/or.mjs.map +1 -1
  201. package/dist/conditions/size.cjs +3 -0
  202. package/dist/conditions/size.cjs.map +1 -1
  203. package/dist/conditions/size.d.ts +4 -1
  204. package/dist/conditions/size.mjs +3 -0
  205. package/dist/conditions/size.mjs.map +1 -1
  206. package/dist/conditions/type-is.cjs +3 -0
  207. package/dist/conditions/type-is.cjs.map +1 -1
  208. package/dist/conditions/type-is.d.ts +4 -1
  209. package/dist/conditions/type-is.mjs +3 -0
  210. package/dist/conditions/type-is.mjs.map +1 -1
  211. package/dist/core/entity.cjs +171 -0
  212. package/dist/core/entity.cjs.map +1 -1
  213. package/dist/core/entity.d.ts +99 -4
  214. package/dist/core/entity.mjs +171 -0
  215. package/dist/core/entity.mjs.map +1 -1
  216. package/dist/core/index.d.ts +139 -2
  217. package/dist/core/key.cjs +1 -1
  218. package/dist/core/key.cjs.map +1 -1
  219. package/dist/core/key.d.ts +26 -2
  220. package/dist/core/key.mjs +1 -1
  221. package/dist/core/key.mjs.map +1 -1
  222. package/dist/core/table.cjs +30 -0
  223. package/dist/core/table.cjs.map +1 -1
  224. package/dist/core/table.d.ts +40 -1
  225. package/dist/core/table.mjs +31 -1
  226. package/dist/core/table.mjs.map +1 -1
  227. package/dist/errors.cjs +3 -0
  228. package/dist/errors.cjs.map +1 -1
  229. package/dist/errors.d.ts +3 -0
  230. package/dist/errors.mjs +3 -0
  231. package/dist/errors.mjs.map +1 -1
  232. package/dist/index.cjs +10 -2
  233. package/dist/index.cjs.map +1 -1
  234. package/dist/index.d.ts +11 -7
  235. package/dist/index.mjs +5 -1
  236. package/dist/index.mjs.map +1 -1
  237. package/dist/projections/index.d.ts +7 -1
  238. package/dist/projections/projection-parser.d.ts +1 -1
  239. package/dist/updates/add-to-set.cjs +5 -0
  240. package/dist/updates/add-to-set.cjs.map +1 -1
  241. package/dist/updates/add-to-set.d.ts +6 -1
  242. package/dist/updates/add-to-set.mjs +5 -0
  243. package/dist/updates/add-to-set.mjs.map +1 -1
  244. package/dist/updates/add.cjs +5 -0
  245. package/dist/updates/add.cjs.map +1 -1
  246. package/dist/updates/add.d.ts +6 -1
  247. package/dist/updates/add.mjs +5 -0
  248. package/dist/updates/add.mjs.map +1 -1
  249. package/dist/updates/append.cjs +5 -0
  250. package/dist/updates/append.cjs.map +1 -1
  251. package/dist/updates/append.d.ts +6 -1
  252. package/dist/updates/append.mjs +5 -0
  253. package/dist/updates/append.mjs.map +1 -1
  254. package/dist/updates/index.d.ts +78 -1
  255. package/dist/updates/prepend.cjs +5 -0
  256. package/dist/updates/prepend.cjs.map +1 -1
  257. package/dist/updates/prepend.d.ts +6 -1
  258. package/dist/updates/prepend.mjs +5 -0
  259. package/dist/updates/prepend.mjs.map +1 -1
  260. package/dist/updates/ref.cjs +6 -0
  261. package/dist/updates/ref.cjs.map +1 -1
  262. package/dist/updates/ref.d.ts +7 -1
  263. package/dist/updates/ref.mjs +6 -0
  264. package/dist/updates/ref.mjs.map +1 -1
  265. package/dist/updates/remove-from-set.cjs +5 -0
  266. package/dist/updates/remove-from-set.cjs.map +1 -1
  267. package/dist/updates/remove-from-set.d.ts +6 -1
  268. package/dist/updates/remove-from-set.mjs +5 -0
  269. package/dist/updates/remove-from-set.mjs.map +1 -1
  270. package/dist/updates/remove.cjs +3 -0
  271. package/dist/updates/remove.cjs.map +1 -1
  272. package/dist/updates/remove.d.ts +4 -1
  273. package/dist/updates/remove.mjs +3 -0
  274. package/dist/updates/remove.mjs.map +1 -1
  275. package/dist/updates/subtract.cjs +5 -0
  276. package/dist/updates/subtract.cjs.map +1 -1
  277. package/dist/updates/subtract.d.ts +6 -1
  278. package/dist/updates/subtract.mjs +5 -0
  279. package/dist/updates/subtract.mjs.map +1 -1
  280. package/dist/updates/update-parser.cjs +10 -0
  281. package/dist/updates/update-parser.cjs.map +1 -1
  282. package/dist/updates/update-parser.d.ts +17 -1
  283. package/dist/updates/update-parser.mjs +10 -0
  284. package/dist/updates/update-parser.mjs.map +1 -1
  285. package/package.json +2 -1
  286. package/dist/commands/base-command.cjs +0 -3
  287. package/dist/commands/base-command.cjs.map +0 -1
  288. package/dist/commands/base-command.d.ts +0 -27
  289. package/dist/commands/base-command.mjs +0 -2
  290. package/dist/commands/base-command.mjs.map +0 -1
  291. package/dist/conditions/condition-types.cjs +0 -3
  292. package/dist/conditions/condition-types.cjs.map +0 -1
  293. package/dist/conditions/condition-types.d.ts +0 -95
  294. package/dist/conditions/condition-types.mjs +0 -2
  295. package/dist/conditions/condition-types.mjs.map +0 -1
  296. package/dist/core/core-types.cjs +0 -3
  297. package/dist/core/core-types.cjs.map +0 -1
  298. package/dist/core/core-types.d.ts +0 -44
  299. package/dist/core/core-types.mjs +0 -2
  300. package/dist/core/core-types.mjs.map +0 -1
  301. package/dist/projections/projection-types.cjs +0 -3
  302. package/dist/projections/projection-types.cjs.map +0 -1
  303. package/dist/projections/projection-types.d.ts +0 -3
  304. package/dist/projections/projection-types.mjs +0 -2
  305. package/dist/projections/projection-types.mjs.map +0 -1
  306. package/dist/updates/update-types.cjs +0 -3
  307. package/dist/updates/update-types.cjs.map +0 -1
  308. package/dist/updates/update-types.d.ts +0 -45
  309. package/dist/updates/update-types.mjs +0 -2
  310. package/dist/updates/update-types.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"not-exists.mjs","sources":["../../src/conditions/not-exists.ts"],"sourcesContent":[null],"names":[],"mappings":";;SAGgB,SAAS,GAAA;IACvB,OAAO;AACL,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,GAAG,EAAE,IAAI;KACV;AACH;;;;"}
1
+ {"version":3,"file":"not-exists.mjs","sources":["../../src/conditions/not-exists.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;AAEG;SACa,SAAS,GAAA;IACvB,OAAO;AACL,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,GAAG,EAAE,IAAI;KACV;AACH;;;;"}
@@ -2,6 +2,9 @@
2
2
 
3
3
  var conditions_conditionSymbols = require('./condition-symbols.cjs');
4
4
 
5
+ /**
6
+ * Creates a NOT expression template that negates a given condition expression.
7
+ */
5
8
  function not(condition) {
6
9
  return {
7
10
  type: conditions_conditionSymbols.$not,
@@ -1 +1 @@
1
- {"version":3,"file":"not.cjs","sources":["../../src/conditions/not.ts"],"sourcesContent":[null],"names":["$not"],"mappings":";;;;AAGM,SAAU,GAAG,CAAC,SAAsC,EAAA;IACxD,OAAO;AACL,QAAA,IAAI,EAAEA,gCAAI;QACV,SAAS;KACV;AACH;;;;"}
1
+ {"version":3,"file":"not.cjs","sources":["../../src/conditions/not.ts"],"sourcesContent":[null],"names":["$not"],"mappings":";;;;AAGA;;AAEG;AACG,SAAU,GAAG,CAAC,SAAsC,EAAA;IACxD,OAAO;AACL,QAAA,IAAI,EAAEA,gCAAI;QACV,SAAS;KACV;AACH;;;;"}
@@ -1,5 +1,8 @@
1
- import { ConditionExpressionTemplate, NotExpression } from './condition-types.js';
1
+ import { ConditionExpressionTemplate, NotExpression } from './index.js';
2
2
 
3
+ /**
4
+ * Creates a NOT expression template that negates a given condition expression.
5
+ */
3
6
  declare function not(condition: ConditionExpressionTemplate): NotExpression;
4
7
 
5
8
  export { not };
@@ -1,5 +1,8 @@
1
1
  import { $not } from './condition-symbols.mjs';
2
2
 
3
+ /**
4
+ * Creates a NOT expression template that negates a given condition expression.
5
+ */
3
6
  function not(condition) {
4
7
  return {
5
8
  type: $not,
@@ -1 +1 @@
1
- {"version":3,"file":"not.mjs","sources":["../../src/conditions/not.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGM,SAAU,GAAG,CAAC,SAAsC,EAAA;IACxD,OAAO;AACL,QAAA,IAAI,EAAE,IAAI;QACV,SAAS;KACV;AACH;;;;"}
1
+ {"version":3,"file":"not.mjs","sources":["../../src/conditions/not.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;AAEG;AACG,SAAU,GAAG,CAAC,SAAsC,EAAA;IACxD,OAAO;AACL,QAAA,IAAI,EAAE,IAAI;QACV,SAAS;KACV;AACH;;;;"}
@@ -2,6 +2,9 @@
2
2
 
3
3
  var conditions_conditionSymbols = require('./condition-symbols.cjs');
4
4
 
5
+ /**
6
+ * Creates an OR logical expression template that combines multiple condition expressions.
7
+ */
5
8
  function or(firstCondition, secondCondition, ...additionalConditions) {
6
9
  return {
7
10
  type: conditions_conditionSymbols.$logical,
@@ -1 +1 @@
1
- {"version":3,"file":"or.cjs","sources":["../../src/conditions/or.ts"],"sourcesContent":[null],"names":["$logical"],"mappings":";;;;AAGM,SAAU,EAAE,CAChB,cAA2C,EAC3C,eAA4C,EAC5C,GAAG,oBAAmD,EAAA;IAEtD,OAAO;AACL,QAAA,IAAI,EAAEA,oCAAQ;AACd,QAAA,QAAQ,EAAE,IAAI;QACd,aAAa,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,GAAG,oBAAoB,CAAC;KAC1E;AACH;;;;"}
1
+ {"version":3,"file":"or.cjs","sources":["../../src/conditions/or.ts"],"sourcesContent":[null],"names":["$logical"],"mappings":";;;;AAGA;;AAEG;AACG,SAAU,EAAE,CAChB,cAA2C,EAC3C,eAA4C,EAC5C,GAAG,oBAAmD,EAAA;IAEtD,OAAO;AACL,QAAA,IAAI,EAAEA,oCAAQ;AACd,QAAA,QAAQ,EAAE,IAAI;QACd,aAAa,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,GAAG,oBAAoB,CAAC;KAC1E;AACH;;;;"}
@@ -1,5 +1,8 @@
1
- import { ConditionExpressionTemplate, LogicalExpression } from './condition-types.js';
1
+ import { ConditionExpressionTemplate, LogicalExpression } from './index.js';
2
2
 
3
+ /**
4
+ * Creates an OR logical expression template that combines multiple condition expressions.
5
+ */
3
6
  declare function or(firstCondition: ConditionExpressionTemplate, secondCondition: ConditionExpressionTemplate, ...additionalConditions: ConditionExpressionTemplate[]): LogicalExpression;
4
7
 
5
8
  export { or };
@@ -1,5 +1,8 @@
1
1
  import { $logical } from './condition-symbols.mjs';
2
2
 
3
+ /**
4
+ * Creates an OR logical expression template that combines multiple condition expressions.
5
+ */
3
6
  function or(firstCondition, secondCondition, ...additionalConditions) {
4
7
  return {
5
8
  type: $logical,
@@ -1 +1 @@
1
- {"version":3,"file":"or.mjs","sources":["../../src/conditions/or.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGM,SAAU,EAAE,CAChB,cAA2C,EAC3C,eAA4C,EAC5C,GAAG,oBAAmD,EAAA;IAEtD,OAAO;AACL,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,QAAQ,EAAE,IAAI;QACd,aAAa,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,GAAG,oBAAoB,CAAC;KAC1E;AACH;;;;"}
1
+ {"version":3,"file":"or.mjs","sources":["../../src/conditions/or.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;AAEG;AACG,SAAU,EAAE,CAChB,cAA2C,EAC3C,eAA4C,EAC5C,GAAG,oBAAmD,EAAA;IAEtD,OAAO;AACL,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,QAAQ,EAAE,IAAI;QACd,aAAa,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,GAAG,oBAAoB,CAAC;KAC1E;AACH;;;;"}
@@ -2,6 +2,9 @@
2
2
 
3
3
  var conditions_conditionSymbols = require('./condition-symbols.cjs');
4
4
 
5
+ /**
6
+ * Creates a SIZE condition expression template.
7
+ */
5
8
  function size(valueOrComparison) {
6
9
  if (typeof valueOrComparison === 'number') {
7
10
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"size.cjs","sources":["../../src/conditions/size.ts"],"sourcesContent":[null],"names":["$size"],"mappings":";;;;AAMM,SAAU,IAAI,CAClB,iBAAwD,EAAA;AAExD,IAAA,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;QACzC,OAAO;AACL,YAAA,IAAI,EAAEA,iCAAK;AACX,YAAA,QAAQ,EAAE,GAAG;AACb,YAAA,KAAK,EAAE,iBAAiB;SACzB;IACH;IAEA,OAAO;AACL,QAAA,IAAI,EAAEA,iCAAK;QACX,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;QACpC,KAAK,EAAE,iBAAiB,CAAC,KAAK;KAC/B;AACH;;;;"}
1
+ {"version":3,"file":"size.cjs","sources":["../../src/conditions/size.ts"],"sourcesContent":[null],"names":["$size"],"mappings":";;;;AAGA;;AAEG;AACG,SAAU,IAAI,CAClB,iBAAwD,EAAA;AAExD,IAAA,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;QACzC,OAAO;AACL,YAAA,IAAI,EAAEA,iCAAK;AACX,YAAA,QAAQ,EAAE,GAAG;AACb,YAAA,KAAK,EAAE,iBAAiB;SACzB;IACH;IAEA,OAAO;AACL,QAAA,IAAI,EAAEA,iCAAK;QACX,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;QACpC,KAAK,EAAE,iBAAiB,CAAC,KAAK;KAC/B;AACH;;;;"}
@@ -1,5 +1,8 @@
1
- import { ComparisonExpressionTemplate, SizeConditionExpressionTemplate } from './condition-types.js';
1
+ import { ComparisonExpressionTemplate, SizeConditionExpressionTemplate } from './index.js';
2
2
 
3
+ /**
4
+ * Creates a SIZE condition expression template.
5
+ */
3
6
  declare function size(valueOrComparison: number | ComparisonExpressionTemplate): SizeConditionExpressionTemplate;
4
7
 
5
8
  export { size };
@@ -1,5 +1,8 @@
1
1
  import { $size } from './condition-symbols.mjs';
2
2
 
3
+ /**
4
+ * Creates a SIZE condition expression template.
5
+ */
3
6
  function size(valueOrComparison) {
4
7
  if (typeof valueOrComparison === 'number') {
5
8
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"size.mjs","sources":["../../src/conditions/size.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAMM,SAAU,IAAI,CAClB,iBAAwD,EAAA;AAExD,IAAA,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;QACzC,OAAO;AACL,YAAA,IAAI,EAAE,KAAK;AACX,YAAA,QAAQ,EAAE,GAAG;AACb,YAAA,KAAK,EAAE,iBAAiB;SACzB;IACH;IAEA,OAAO;AACL,QAAA,IAAI,EAAE,KAAK;QACX,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;QACpC,KAAK,EAAE,iBAAiB,CAAC,KAAK;KAC/B;AACH;;;;"}
1
+ {"version":3,"file":"size.mjs","sources":["../../src/conditions/size.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;AAEG;AACG,SAAU,IAAI,CAClB,iBAAwD,EAAA;AAExD,IAAA,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;QACzC,OAAO;AACL,YAAA,IAAI,EAAE,KAAK;AACX,YAAA,QAAQ,EAAE,GAAG;AACb,YAAA,KAAK,EAAE,iBAAiB;SACzB;IACH;IAEA,OAAO;AACL,QAAA,IAAI,EAAE,KAAK;QACX,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;QACpC,KAAK,EAAE,iBAAiB,CAAC,KAAK;KAC/B;AACH;;;;"}
@@ -2,6 +2,9 @@
2
2
 
3
3
  var conditions_conditionSymbols = require('./condition-symbols.cjs');
4
4
 
5
+ /**
6
+ * Creates a type check expression template for the specified DynamoDB attribute type.
7
+ */
5
8
  function typeIs(type) {
6
9
  return {
7
10
  type: conditions_conditionSymbols.$type,
@@ -1 +1 @@
1
- {"version":3,"file":"type-is.cjs","sources":["../../src/conditions/type-is.ts"],"sourcesContent":[null],"names":["$type"],"mappings":";;;;AAGM,SAAU,MAAM,CAAC,IAAyB,EAAA;IAC9C,OAAO;AACL,QAAA,IAAI,EAAEA,iCAAK;AACX,QAAA,aAAa,EAAE,IAAI;KACpB;AACH;;;;"}
1
+ {"version":3,"file":"type-is.cjs","sources":["../../src/conditions/type-is.ts"],"sourcesContent":[null],"names":["$type"],"mappings":";;;;AAGA;;AAEG;AACG,SAAU,MAAM,CAAC,IAAyB,EAAA;IAC9C,OAAO;AACL,QAAA,IAAI,EAAEA,iCAAK;AACX,QAAA,aAAa,EAAE,IAAI;KACpB;AACH;;;;"}
@@ -1,5 +1,8 @@
1
- import { DynamoAttributeType, TypeCheckExpressionTemplate } from './condition-types.js';
1
+ import { DynamoAttributeType, TypeCheckExpressionTemplate } from './index.js';
2
2
 
3
+ /**
4
+ * Creates a type check expression template for the specified DynamoDB attribute type.
5
+ */
3
6
  declare function typeIs(type: DynamoAttributeType): TypeCheckExpressionTemplate;
4
7
 
5
8
  export { typeIs };
@@ -1,5 +1,8 @@
1
1
  import { $type } from './condition-symbols.mjs';
2
2
 
3
+ /**
4
+ * Creates a type check expression template for the specified DynamoDB attribute type.
5
+ */
3
6
  function typeIs(type) {
4
7
  return {
5
8
  type: $type,
@@ -1 +1 @@
1
- {"version":3,"file":"type-is.mjs","sources":["../../src/conditions/type-is.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGM,SAAU,MAAM,CAAC,IAAyB,EAAA;IAC9C,OAAO;AACL,QAAA,IAAI,EAAE,KAAK;AACX,QAAA,aAAa,EAAE,IAAI;KACpB;AACH;;;;"}
1
+ {"version":3,"file":"type-is.mjs","sources":["../../src/conditions/type-is.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;AAEG;AACG,SAAU,MAAM,CAAC,IAAyB,EAAA;IAC9C,OAAO;AACL,QAAA,IAAI,EAAE,KAAK;AACX,QAAA,aAAa,EAAE,IAAI;KACpB;AACH;;;;"}
@@ -4,6 +4,11 @@ var tslib_es6 = require('../node_modules/tslib/tslib.es6.cjs');
4
4
  var errors = require('../errors.cjs');
5
5
 
6
6
  var _DynamoEntity_table, _DynamoEntity_schema, _DynamoEntity_pk, _DynamoEntity_sk, _DynamoEntity_gsi, _DynamoEntity_lsi;
7
+ /**
8
+ * Core class that represents a DynamoDB entity.
9
+ *
10
+ * @template Schema - The Zod schema representing the entity's structure.
11
+ */
7
12
  class DynamoEntity {
8
13
  constructor(config) {
9
14
  var _a, _b;
@@ -20,26 +25,46 @@ class DynamoEntity {
20
25
  tslib_es6.__classPrivateFieldSet(this, _DynamoEntity_gsi, (_a = config.globalSecondaryIndexes) !== null && _a !== void 0 ? _a : {}, "f");
21
26
  tslib_es6.__classPrivateFieldSet(this, _DynamoEntity_lsi, (_b = config.localSecondaryIndexes) !== null && _b !== void 0 ? _b : {}, "f");
22
27
  }
28
+ /**
29
+ * Gets the DynamoDB table associated with this entity.
30
+ */
23
31
  get table() {
24
32
  return tslib_es6.__classPrivateFieldGet(this, _DynamoEntity_table, "f");
25
33
  }
34
+ /**
35
+ * Gets the Zod schema defining the structure of this entity.
36
+ */
26
37
  get schema() {
27
38
  return tslib_es6.__classPrivateFieldGet(this, _DynamoEntity_schema, "f");
28
39
  }
40
+ /**
41
+ * Gets the key builders for the secondary indexes defined on this entity.
42
+ */
29
43
  get secondaryIndexKeyBuilders() {
30
44
  return {
31
45
  gsi: tslib_es6.__classPrivateFieldGet(this, _DynamoEntity_gsi, "f"),
32
46
  lsi: tslib_es6.__classPrivateFieldGet(this, _DynamoEntity_lsi, "f"),
33
47
  };
34
48
  }
49
+ /**
50
+ * Builds the partition key for the given item using the entity's partition key builder.
51
+ */
35
52
  buildPartitionKey(item) {
36
53
  var _a;
37
54
  return (_a = tslib_es6.__classPrivateFieldGet(this, _DynamoEntity_pk, "f")) === null || _a === void 0 ? void 0 : _a.call(this, item);
38
55
  }
56
+ /**
57
+ * Builds the sort key for the given item using the entity's sort key builder.
58
+ */
39
59
  buildSortKey(item) {
40
60
  var _a;
41
61
  return (_a = tslib_es6.__classPrivateFieldGet(this, _DynamoEntity_sk, "f")) === null || _a === void 0 ? void 0 : _a.call(this, item);
42
62
  }
63
+ /**
64
+ * Builds the primary key for the given item, including both partition and sort keys if defined.
65
+ *
66
+ * If the entity does not have partition or sort key builders defined, the item is returned as-is.
67
+ */
43
68
  buildPrimaryKey(item) {
44
69
  if (!tslib_es6.__classPrivateFieldGet(this, _DynamoEntity_pk, "f") && !tslib_es6.__classPrivateFieldGet(this, _DynamoEntity_sk, "f")) {
45
70
  return item;
@@ -59,6 +84,12 @@ class DynamoEntity {
59
84
  }
60
85
  return key;
61
86
  }
87
+ /**
88
+ * Builds the key for a global secondary index for the given item.
89
+ *
90
+ * If the specified index does not exist or its key builders are not defined,
91
+ * the item is returned as-is.
92
+ */
62
93
  buildGlobalSecondaryIndexKey(indexName, item) {
63
94
  const gsiKeyBuilder = tslib_es6.__classPrivateFieldGet(this, _DynamoEntity_gsi, "f")[indexName];
64
95
  const gsiKeyNames = this.table.globalSecondaryIndexKeyNames[indexName];
@@ -83,6 +114,12 @@ class DynamoEntity {
83
114
  }
84
115
  return key;
85
116
  }
117
+ /**
118
+ * Builds the key for a local secondary index for the given item.
119
+ *
120
+ * If the specified index does not exist or its key builders are not defined,
121
+ * the item is returned as-is.
122
+ */
86
123
  buildLocalSecondaryIndexKey(indexName, item) {
87
124
  const lsiKeyBuilder = tslib_es6.__classPrivateFieldGet(this, _DynamoEntity_lsi, "f")[indexName];
88
125
  const lsiKeyNames = this.table.localSecondaryIndexKeyNames[indexName];
@@ -98,6 +135,17 @@ class DynamoEntity {
98
135
  }
99
136
  return key;
100
137
  }
138
+ /**
139
+ * Builds either a primary key or a secondary index key based on the provided input.
140
+ *
141
+ * If the input contains a `key`, the primary key is built.
142
+ * If the input contains an `index`, the corresponding secondary index key is built.
143
+ *
144
+ * Works similarly to the other key building methods and will pass-through the key or index
145
+ * input if the entity does not have the necessary key builders defined.
146
+ *
147
+ * @throws DocumentBuilderError if the index name is missing or not defined on the entity.
148
+ */
101
149
  buildPrimaryOrIndexKey(keyInput) {
102
150
  if ('key' in keyInput) {
103
151
  return this.buildPrimaryKey(keyInput.key);
@@ -118,6 +166,9 @@ class DynamoEntity {
118
166
  }
119
167
  throw new errors.DocumentBuilderError(`Index "${indexName}" is not defined on entity`);
120
168
  }
169
+ /**
170
+ * Builds all keys (primary and secondary index keys) for the given item.
171
+ */
121
172
  buildAllKeys(item) {
122
173
  const allKeys = this.buildPrimaryKey(item);
123
174
  for (const indexName of Object.keys(tslib_es6.__classPrivateFieldGet(this, _DynamoEntity_gsi, "f"))) {
@@ -128,11 +179,17 @@ class DynamoEntity {
128
179
  }
129
180
  return allKeys;
130
181
  }
182
+ /**
183
+ * Sends a command to be executed against this entity's table.
184
+ */
131
185
  send(command) {
132
186
  return tslib_es6.__awaiter(this, void 0, void 0, function* () {
133
187
  return yield command.execute(this);
134
188
  });
135
189
  }
190
+ /**
191
+ * Paginates through results of a paginatable command for this entity's table.
192
+ */
136
193
  paginate(paginatable) {
137
194
  return tslib_es6.__asyncGenerator(this, arguments, function* paginate_1() {
138
195
  var _a, e_1, _b, _c;
@@ -153,6 +210,120 @@ class DynamoEntity {
153
210
  }
154
211
  });
155
212
  }
213
+ prepare(input) {
214
+ var _a;
215
+ // WriteTransactable[] — array of transact write operations
216
+ if (Array.isArray(input)) {
217
+ return {
218
+ entity: this,
219
+ writes: input,
220
+ };
221
+ }
222
+ // BatchWritePreparable — has items and/or deletes, no keys
223
+ if ('items' in input || ('deletes' in input && !('keys' in input))) {
224
+ const batchWrite = input;
225
+ return {
226
+ entity: this,
227
+ buildRequests: (skipValidation, abortSignal) => tslib_es6.__awaiter(this, void 0, void 0, function* () {
228
+ const putRequests = [];
229
+ const deleteRequests = [];
230
+ if (batchWrite.items && batchWrite.items.length > 0) {
231
+ for (const item of batchWrite.items) {
232
+ if (skipValidation) {
233
+ putRequests.push({
234
+ PutRequest: {
235
+ Item: Object.assign(Object.assign({}, item), this.buildAllKeys(item)),
236
+ },
237
+ });
238
+ }
239
+ else {
240
+ const encodedData = yield tslib_es6.__classPrivateFieldGet(this, _DynamoEntity_schema, "f").encodeAsync(item);
241
+ putRequests.push({
242
+ PutRequest: {
243
+ Item: Object.assign(Object.assign({}, encodedData), this.buildAllKeys(item)),
244
+ },
245
+ });
246
+ }
247
+ }
248
+ }
249
+ if (batchWrite.deletes && batchWrite.deletes.length > 0) {
250
+ for (const deleteKey of batchWrite.deletes) {
251
+ deleteRequests.push({
252
+ DeleteRequest: {
253
+ Key: this.buildPrimaryKey(deleteKey),
254
+ },
255
+ });
256
+ }
257
+ }
258
+ return [...putRequests, ...deleteRequests];
259
+ }),
260
+ matchUnprocessedPut: (item) => {
261
+ if (!batchWrite.items)
262
+ return undefined;
263
+ const itemPrimaryKey = this.buildPrimaryKey(item);
264
+ return batchWrite.items.find(original => {
265
+ const originalKey = this.buildPrimaryKey(original);
266
+ return JSON.stringify(originalKey) === JSON.stringify(itemPrimaryKey);
267
+ });
268
+ },
269
+ matchUnprocessedDelete: (key) => {
270
+ if (!batchWrite.deletes)
271
+ return undefined;
272
+ const keyStr = JSON.stringify(key);
273
+ return batchWrite.deletes.find(original => {
274
+ const originalKey = this.buildPrimaryKey(original);
275
+ return JSON.stringify(originalKey) === keyStr;
276
+ });
277
+ },
278
+ };
279
+ }
280
+ // BatchGetPreparable — has keys as entity partials plus consistent flag
281
+ if ('consistent' in input) {
282
+ const batchGet = input;
283
+ const builtKeys = batchGet.keys.map(k => this.buildPrimaryKey(k));
284
+ return {
285
+ entity: this,
286
+ keys: builtKeys,
287
+ consistent: (_a = batchGet.consistent) !== null && _a !== void 0 ? _a : false,
288
+ matchItem: (item) => {
289
+ const itemKey = this.buildPrimaryKey(item);
290
+ const itemKeyStr = JSON.stringify(itemKey);
291
+ return builtKeys.some(k => JSON.stringify(k) === itemKeyStr);
292
+ },
293
+ parseResults: (items, skipValidation) => tslib_es6.__awaiter(this, void 0, void 0, function* () {
294
+ return yield Promise.all(items.map((item) => tslib_es6.__awaiter(this, void 0, void 0, function* () {
295
+ if (skipValidation)
296
+ return item;
297
+ return yield tslib_es6.__classPrivateFieldGet(this, _DynamoEntity_schema, "f").parseAsync(item);
298
+ })));
299
+ }),
300
+ matchUnprocessedKey: (key) => {
301
+ const keyStr = JSON.stringify(key);
302
+ return batchGet.keys.find(original => {
303
+ const originalKey = this.buildPrimaryKey(original);
304
+ return JSON.stringify(originalKey) === keyStr;
305
+ });
306
+ },
307
+ };
308
+ }
309
+ // GetTransactable — has keys as entity partials, no consistent flag
310
+ return {
311
+ entity: this,
312
+ keys: input.keys.map(key => ({
313
+ TableName: tslib_es6.__classPrivateFieldGet(this, _DynamoEntity_table, "f").tableName,
314
+ Key: this.buildPrimaryKey(key),
315
+ })),
316
+ parseResults: (items, skipValidation) => tslib_es6.__awaiter(this, void 0, void 0, function* () {
317
+ return yield Promise.all(items.map((item) => tslib_es6.__awaiter(this, void 0, void 0, function* () {
318
+ if (item === undefined || item === null)
319
+ return undefined;
320
+ if (skipValidation)
321
+ return item;
322
+ return yield tslib_es6.__classPrivateFieldGet(this, _DynamoEntity_schema, "f").parseAsync(item);
323
+ })));
324
+ }),
325
+ };
326
+ }
156
327
  }
157
328
  _DynamoEntity_table = new WeakMap(), _DynamoEntity_schema = new WeakMap(), _DynamoEntity_pk = new WeakMap(), _DynamoEntity_sk = new WeakMap(), _DynamoEntity_gsi = new WeakMap(), _DynamoEntity_lsi = new WeakMap();
158
329
 
@@ -1 +1 @@
1
- {"version":3,"file":"entity.cjs","sources":["../../src/core/entity.ts"],"sourcesContent":[null],"names":["__classPrivateFieldSet","__classPrivateFieldGet","DocumentBuilderError","__asyncValues","__await"],"mappings":"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"}
1
+ {"version":3,"file":"entity.cjs","sources":["../../src/core/entity.ts"],"sourcesContent":[null],"names":["__classPrivateFieldSet","__classPrivateFieldGet","DocumentBuilderError","__asyncValues","__await","__awaiter"],"mappings":"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"}
@@ -1,9 +1,21 @@
1
- import { BaseCommand, BasePaginatable } from '../commands/base-command.js';
1
+ import { BaseCommand, BasePaginatable, WriteTransactable, PreparedWriteTransaction, BatchWritePreparable, PreparedBatchWrite, BatchGetPreparable, PreparedBatchGet, GetTransactable, PreparedGetTransaction } from '../commands/index.js';
2
2
  import { DynamoKeyBuilder, GlobalSecondaryIndexKeyBuilders, LocalSecondaryIndexKeyBuilders, DynamoKeyableValue, DynamoKey, DynamoIndexKey } from './key.js';
3
3
  import { DynamoTable } from './table.js';
4
4
  import { ZodObject } from 'zod/v4';
5
- import { EntitySchema } from './core-types.js';
5
+ import { EntitySchema, IndexName } from './index.js';
6
6
 
7
+ /**
8
+ * Configuration type for creating a DynamoEntity.
9
+ *
10
+ * @template Schema - The Zod schema representing the entity's structure.
11
+ *
12
+ * @property table - The DynamoTable instance associated with the entity.
13
+ * @property schema - The Zod schema defining the entity's structure.
14
+ * @property partitionKey - Key builder function to build the partition key from an entity item.
15
+ * @property sortKey - Key builder function to build the sort key from an entity item.
16
+ * @property globalSecondaryIndexes - Mapping of global secondary index names to their key builders.
17
+ * @property localSecondaryIndexes - Mapping of local secondary index names to their key builders.
18
+ */
7
19
  type DynamoEntityConfig<Schema extends ZodObject> = {
8
20
  table: DynamoTable;
9
21
  schema: Schema;
@@ -12,6 +24,12 @@ type DynamoEntityConfig<Schema extends ZodObject> = {
12
24
  globalSecondaryIndexes?: GlobalSecondaryIndexKeyBuilders<EntitySchema<Schema>>;
13
25
  localSecondaryIndexes?: LocalSecondaryIndexKeyBuilders<EntitySchema<Schema>>;
14
26
  };
27
+ /**
28
+ * Input type for building *either* a DynamoDB primary key or secondary index key.
29
+ *
30
+ * This is used in cases where the user may want to specify either a full primary key
31
+ * or a secondary index key to identify an item.
32
+ */
15
33
  type EntityKeyInput<Item> = {
16
34
  key: Partial<Item>;
17
35
  } | {
@@ -19,24 +37,101 @@ type EntityKeyInput<Item> = {
19
37
  [index: IndexName]: Partial<Item>;
20
38
  };
21
39
  };
40
+ /**
41
+ * Core class that represents a DynamoDB entity.
42
+ *
43
+ * @template Schema - The Zod schema representing the entity's structure.
44
+ */
22
45
  declare class DynamoEntity<Schema extends ZodObject> {
23
46
  #private;
24
47
  constructor(config: DynamoEntityConfig<Schema>);
48
+ /**
49
+ * Gets the DynamoDB table associated with this entity.
50
+ */
25
51
  get table(): DynamoTable;
52
+ /**
53
+ * Gets the Zod schema defining the structure of this entity.
54
+ */
26
55
  get schema(): Schema;
56
+ /**
57
+ * Gets the key builders for the secondary indexes defined on this entity.
58
+ */
27
59
  get secondaryIndexKeyBuilders(): {
28
60
  gsi: GlobalSecondaryIndexKeyBuilders<EntitySchema<Schema>>;
29
61
  lsi: LocalSecondaryIndexKeyBuilders<EntitySchema<Schema>>;
30
62
  };
63
+ /**
64
+ * Builds the partition key for the given item using the entity's partition key builder.
65
+ */
31
66
  buildPartitionKey(item: Partial<EntitySchema<Schema>>): DynamoKeyableValue | undefined;
67
+ /**
68
+ * Builds the sort key for the given item using the entity's sort key builder.
69
+ */
32
70
  buildSortKey(item: Partial<EntitySchema<Schema>>): DynamoKeyableValue | undefined;
71
+ /**
72
+ * Builds the primary key for the given item, including both partition and sort keys if defined.
73
+ *
74
+ * If the entity does not have partition or sort key builders defined, the item is returned as-is.
75
+ */
33
76
  buildPrimaryKey(item: Partial<EntitySchema<Schema>>): DynamoKey;
34
- buildGlobalSecondaryIndexKey(indexName: string, item: Partial<EntitySchema<Schema>>): DynamoIndexKey;
35
- buildLocalSecondaryIndexKey(indexName: string, item: Partial<EntitySchema<Schema>>): DynamoIndexKey;
77
+ /**
78
+ * Builds the key for a global secondary index for the given item.
79
+ *
80
+ * If the specified index does not exist or its key builders are not defined,
81
+ * the item is returned as-is.
82
+ */
83
+ buildGlobalSecondaryIndexKey(indexName: IndexName, item: Partial<EntitySchema<Schema>>): DynamoIndexKey;
84
+ /**
85
+ * Builds the key for a local secondary index for the given item.
86
+ *
87
+ * If the specified index does not exist or its key builders are not defined,
88
+ * the item is returned as-is.
89
+ */
90
+ buildLocalSecondaryIndexKey(indexName: IndexName, item: Partial<EntitySchema<Schema>>): DynamoIndexKey;
91
+ /**
92
+ * Builds either a primary key or a secondary index key based on the provided input.
93
+ *
94
+ * If the input contains a `key`, the primary key is built.
95
+ * If the input contains an `index`, the corresponding secondary index key is built.
96
+ *
97
+ * Works similarly to the other key building methods and will pass-through the key or index
98
+ * input if the entity does not have the necessary key builders defined.
99
+ *
100
+ * @throws DocumentBuilderError if the index name is missing or not defined on the entity.
101
+ */
36
102
  buildPrimaryOrIndexKey(keyInput: EntityKeyInput<EntitySchema<Schema>>): DynamoKey | DynamoIndexKey;
103
+ /**
104
+ * Builds all keys (primary and secondary index keys) for the given item.
105
+ */
37
106
  buildAllKeys(item: Partial<EntitySchema<Schema>>): DynamoKey;
107
+ /**
108
+ * Sends a command to be executed against this entity's table.
109
+ */
38
110
  send<CommandOutput>(command: BaseCommand<CommandOutput, Schema>): Promise<CommandOutput>;
111
+ /**
112
+ * Paginates through results of a paginatable command for this entity's table.
113
+ */
39
114
  paginate<CommandOutput>(paginatable: BasePaginatable<CommandOutput, Schema>): AsyncGenerator<CommandOutput, void, unknown>;
115
+ /**
116
+ * Prepares a set of write operations bound to this entity for use in a table-level
117
+ * `TableTransactWrite` command.
118
+ */
119
+ prepare(writes: WriteTransactable<Schema>[]): PreparedWriteTransaction<Schema>;
120
+ /**
121
+ * Prepares a batch write command bound to this entity for use in a table-level
122
+ * `TableBatchWrite` command.
123
+ */
124
+ prepare(batchWrite: BatchWritePreparable<Schema>): PreparedBatchWrite<Schema>;
125
+ /**
126
+ * Prepares a batch get command bound to this entity for use in a table-level
127
+ * `TableBatchGet` command.
128
+ */
129
+ prepare(batchGet: BatchGetPreparable<Schema>): PreparedBatchGet<Schema>;
130
+ /**
131
+ * Prepares a get command bound to this entity for use in a table-level
132
+ * `TableTransactGet` command.
133
+ */
134
+ prepare(get: GetTransactable<Schema>): PreparedGetTransaction<Schema>;
40
135
  }
41
136
 
42
137
  export { DynamoEntity };