@farukada/aws-langgraph-dynamodb-ts 0.9.0 → 1.0.0-rc.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 (512) hide show
  1. package/README.md +1720 -154
  2. package/dist/backfill/backfill.d.ts +168 -0
  3. package/dist/backfill/backfill.js +393 -0
  4. package/dist/checkpointer/actions/delete-thread.d.ts +47 -6
  5. package/dist/checkpointer/actions/delete-thread.js +58 -21
  6. package/dist/checkpointer/actions/get-tuple.d.ts +29 -4
  7. package/dist/checkpointer/actions/get-tuple.js +44 -10
  8. package/dist/checkpointer/actions/list.d.ts +46 -4
  9. package/dist/checkpointer/actions/list.js +121 -66
  10. package/dist/checkpointer/actions/put-writes.d.ts +41 -9
  11. package/dist/checkpointer/actions/put-writes.js +62 -77
  12. package/dist/checkpointer/actions/put.d.ts +83 -4
  13. package/dist/checkpointer/actions/put.js +177 -25
  14. package/dist/checkpointer/internal/delta-history.d.ts +112 -0
  15. package/dist/checkpointer/internal/delta-history.js +252 -0
  16. package/dist/checkpointer/internal/listing.d.ts +149 -0
  17. package/dist/checkpointer/internal/listing.js +245 -0
  18. package/dist/checkpointer/internal/parse.d.ts +262 -0
  19. package/dist/checkpointer/internal/parse.js +372 -0
  20. package/dist/checkpointer/internal/pending-writes.d.ts +275 -0
  21. package/dist/checkpointer/internal/pending-writes.js +588 -0
  22. package/dist/checkpointer/internal/read.d.ts +130 -0
  23. package/dist/checkpointer/internal/read.js +264 -0
  24. package/dist/checkpointer/internal/rows.d.ts +571 -0
  25. package/dist/checkpointer/internal/rows.js +834 -0
  26. package/dist/checkpointer/internal/setup.d.ts +42 -19
  27. package/dist/checkpointer/internal/setup.js +65 -29
  28. package/dist/checkpointer/saver.d.ts +256 -16
  29. package/dist/checkpointer/saver.js +275 -29
  30. package/dist/checkpointer/types.d.ts +39 -39
  31. package/dist/checkpointer/types.js +10 -1
  32. package/dist/factory/factory.d.ts +134 -28
  33. package/dist/factory/factory.js +240 -21
  34. package/dist/factory/types.d.ts +76 -0
  35. package/dist/factory/types.js +10 -0
  36. package/dist/history/actions/add-messages.d.ts +31 -4
  37. package/dist/history/actions/add-messages.js +38 -58
  38. package/dist/history/actions/clear.d.ts +49 -6
  39. package/dist/history/actions/clear.js +66 -14
  40. package/dist/history/actions/get-messages.d.ts +54 -6
  41. package/dist/history/actions/get-messages.js +126 -43
  42. package/dist/history/actions/list-sessions.d.ts +52 -10
  43. package/dist/history/actions/list-sessions.js +139 -40
  44. package/dist/history/actions/reconcile-count.d.ts +42 -10
  45. package/dist/history/actions/reconcile-count.js +45 -45
  46. package/dist/history/chat-message-history.d.ts +220 -33
  47. package/dist/history/chat-message-history.js +240 -43
  48. package/dist/history/internal/append.d.ts +212 -0
  49. package/dist/history/internal/append.js +500 -0
  50. package/dist/history/internal/message-read.d.ts +84 -0
  51. package/dist/history/internal/message-read.js +204 -0
  52. package/dist/history/internal/parse.d.ts +153 -0
  53. package/dist/history/internal/parse.js +252 -0
  54. package/dist/history/internal/rows.d.ts +195 -0
  55. package/dist/history/internal/rows.js +250 -0
  56. package/dist/history/internal/session.d.ts +331 -0
  57. package/dist/history/internal/session.js +628 -0
  58. package/dist/history/internal/setup.d.ts +52 -17
  59. package/dist/history/internal/setup.js +92 -21
  60. package/dist/history/session-adapter.d.ts +102 -7
  61. package/dist/history/session-adapter.js +103 -9
  62. package/dist/history/types.d.ts +80 -29
  63. package/dist/history/types.js +10 -1
  64. package/dist/index.d.ts +42 -11
  65. package/dist/index.js +33 -12
  66. package/dist/shared/adapter.d.ts +135 -0
  67. package/dist/shared/adapter.js +143 -0
  68. package/dist/shared/clock.d.ts +51 -2
  69. package/dist/shared/clock.js +57 -2
  70. package/dist/shared/codec/codec.d.ts +288 -13
  71. package/dist/shared/codec/codec.js +416 -19
  72. package/dist/shared/codec/compression.d.ts +43 -7
  73. package/dist/shared/codec/compression.js +53 -13
  74. package/dist/shared/codec/json-serde.d.ts +76 -4
  75. package/dist/shared/codec/json-serde.js +181 -8
  76. package/dist/shared/codec/s3/client-types.d.ts +53 -0
  77. package/dist/shared/codec/s3/client-types.js +26 -0
  78. package/dist/shared/codec/s3/client.d.ts +43 -10
  79. package/dist/shared/codec/s3/client.js +82 -9
  80. package/dist/shared/codec/s3/config.d.ts +242 -11
  81. package/dist/shared/codec/s3/config.js +293 -11
  82. package/dist/shared/codec/s3/lifecycle.d.ts +164 -6
  83. package/dist/shared/codec/s3/lifecycle.js +335 -27
  84. package/dist/shared/codec/s3/offloader.d.ts +393 -18
  85. package/dist/shared/codec/s3/offloader.js +595 -37
  86. package/dist/shared/concurrency.d.ts +43 -0
  87. package/dist/shared/concurrency.js +78 -0
  88. package/dist/shared/dynamodb/abort.d.ts +47 -0
  89. package/dist/shared/dynamodb/abort.js +59 -0
  90. package/dist/shared/dynamodb/batch-write.d.ts +77 -14
  91. package/dist/shared/dynamodb/batch-write.js +146 -27
  92. package/dist/shared/dynamodb/cancellation.d.ts +121 -4
  93. package/dist/shared/dynamodb/cancellation.js +147 -3
  94. package/dist/shared/dynamodb/client.d.ts +162 -8
  95. package/dist/shared/dynamodb/client.js +153 -5
  96. package/dist/shared/dynamodb/idempotent-write.d.ts +551 -0
  97. package/dist/shared/dynamodb/idempotent-write.js +593 -0
  98. package/dist/shared/dynamodb/paginate.d.ts +105 -9
  99. package/dist/shared/dynamodb/paginate.js +175 -7
  100. package/dist/shared/dynamodb/partition-delete.d.ts +185 -14
  101. package/dist/shared/dynamodb/partition-delete.js +314 -44
  102. package/dist/shared/dynamodb/recency-index.d.ts +231 -0
  103. package/dist/shared/dynamodb/recency-index.js +377 -0
  104. package/dist/shared/dynamodb/retry.d.ts +276 -8
  105. package/dist/shared/dynamodb/retry.js +433 -23
  106. package/dist/shared/dynamodb/table-schema.d.ts +190 -0
  107. package/dist/shared/dynamodb/table-schema.js +209 -0
  108. package/dist/shared/errors/base-error.d.ts +184 -10
  109. package/dist/shared/errors/base-error.js +160 -14
  110. package/dist/shared/errors/boundary.d.ts +71 -0
  111. package/dist/shared/errors/boundary.js +143 -0
  112. package/dist/shared/errors/classify.d.ts +97 -0
  113. package/dist/shared/errors/classify.js +257 -0
  114. package/dist/shared/errors/error-code.d.ts +77 -2
  115. package/dist/shared/errors/error-code.js +83 -1
  116. package/dist/shared/errors/errors.d.ts +158 -59
  117. package/dist/shared/errors/errors.js +219 -92
  118. package/dist/shared/logging/logger.d.ts +69 -3
  119. package/dist/shared/logging/logger.js +97 -3
  120. package/dist/shared/logging/redaction.d.ts +92 -8
  121. package/dist/shared/logging/redaction.js +273 -17
  122. package/dist/shared/logging/secret-patterns.d.ts +149 -19
  123. package/dist/shared/logging/secret-patterns.js +188 -27
  124. package/dist/shared/logging/truncate.d.ts +197 -0
  125. package/dist/shared/logging/truncate.js +231 -0
  126. package/dist/shared/options.d.ts +59 -7
  127. package/dist/shared/options.js +9 -1
  128. package/dist/shared/ulid.d.ts +77 -7
  129. package/dist/shared/ulid.js +103 -8
  130. package/dist/shared/validation/collaborators.d.ts +141 -0
  131. package/dist/shared/validation/collaborators.js +188 -0
  132. package/dist/shared/validation/option-shape.d.ts +89 -0
  133. package/dist/shared/validation/option-shape.js +113 -0
  134. package/dist/shared/validation/options.d.ts +145 -0
  135. package/dist/shared/validation/options.js +328 -0
  136. package/dist/shared/validation/primitives.d.ts +288 -21
  137. package/dist/shared/validation/primitives.js +353 -50
  138. package/dist/shared/validation/ttl.d.ts +66 -10
  139. package/dist/shared/validation/ttl.js +113 -15
  140. package/dist/store/actions/list-namespaces.d.ts +76 -6
  141. package/dist/store/actions/list-namespaces.js +166 -24
  142. package/dist/store/actions/put.d.ts +33 -8
  143. package/dist/store/actions/put.js +53 -60
  144. package/dist/store/actions/reconcile-vector-index.d.ts +31 -10
  145. package/dist/store/actions/reconcile-vector-index.js +34 -15
  146. package/dist/store/actions/search.d.ts +34 -6
  147. package/dist/store/actions/search.js +56 -51
  148. package/dist/store/internal/batch-plan.d.ts +26 -0
  149. package/dist/store/internal/batch-plan.js +109 -0
  150. package/dist/store/internal/filter.d.ts +36 -3
  151. package/dist/store/internal/filter.js +66 -15
  152. package/dist/store/internal/get-item.d.ts +45 -0
  153. package/dist/store/internal/get-item.js +115 -0
  154. package/dist/store/internal/item-write.d.ts +230 -0
  155. package/dist/store/internal/item-write.js +463 -0
  156. package/dist/store/internal/parse.d.ts +225 -0
  157. package/dist/store/internal/parse.js +350 -0
  158. package/dist/store/internal/rows.d.ts +355 -0
  159. package/dist/store/internal/rows.js +447 -0
  160. package/dist/store/internal/semantic-search.d.ts +161 -6
  161. package/dist/store/internal/semantic-search.js +360 -18
  162. package/dist/store/internal/setup.d.ts +77 -20
  163. package/dist/store/internal/setup.js +178 -47
  164. package/dist/store/internal/table-search.d.ts +100 -0
  165. package/dist/store/internal/table-search.js +213 -0
  166. package/dist/store/internal/vector-index.d.ts +247 -0
  167. package/dist/store/internal/vector-index.js +546 -0
  168. package/dist/store/store.d.ts +270 -17
  169. package/dist/store/store.js +329 -38
  170. package/dist/store/types.d.ts +76 -26
  171. package/dist/store/types.js +13 -1
  172. package/dist/store/vector-backend.d.ts +64 -4
  173. package/dist/store/vector-backend.js +15 -1
  174. package/package.json +58 -36
  175. package/dist/checkpointer/actions/delete-thread.d.ts.map +0 -1
  176. package/dist/checkpointer/actions/delete-thread.js.map +0 -1
  177. package/dist/checkpointer/actions/get-tuple.d.ts.map +0 -1
  178. package/dist/checkpointer/actions/get-tuple.js.map +0 -1
  179. package/dist/checkpointer/actions/list.d.ts.map +0 -1
  180. package/dist/checkpointer/actions/list.js.map +0 -1
  181. package/dist/checkpointer/actions/put-writes.d.ts.map +0 -1
  182. package/dist/checkpointer/actions/put-writes.js.map +0 -1
  183. package/dist/checkpointer/actions/put.d.ts.map +0 -1
  184. package/dist/checkpointer/actions/put.js.map +0 -1
  185. package/dist/checkpointer/internal/assemble.d.ts +0 -10
  186. package/dist/checkpointer/internal/assemble.d.ts.map +0 -1
  187. package/dist/checkpointer/internal/assemble.js +0 -37
  188. package/dist/checkpointer/internal/assemble.js.map +0 -1
  189. package/dist/checkpointer/internal/configurable.d.ts +0 -13
  190. package/dist/checkpointer/internal/configurable.d.ts.map +0 -1
  191. package/dist/checkpointer/internal/configurable.js +0 -23
  192. package/dist/checkpointer/internal/configurable.js.map +0 -1
  193. package/dist/checkpointer/internal/fetch.d.ts +0 -10
  194. package/dist/checkpointer/internal/fetch.d.ts.map +0 -1
  195. package/dist/checkpointer/internal/fetch.js +0 -46
  196. package/dist/checkpointer/internal/fetch.js.map +0 -1
  197. package/dist/checkpointer/internal/filter-match.d.ts +0 -12
  198. package/dist/checkpointer/internal/filter-match.d.ts.map +0 -1
  199. package/dist/checkpointer/internal/filter-match.js +0 -14
  200. package/dist/checkpointer/internal/filter-match.js.map +0 -1
  201. package/dist/checkpointer/internal/item-reader.d.ts +0 -55
  202. package/dist/checkpointer/internal/item-reader.d.ts.map +0 -1
  203. package/dist/checkpointer/internal/item-reader.js +0 -88
  204. package/dist/checkpointer/internal/item-reader.js.map +0 -1
  205. package/dist/checkpointer/internal/item-writer.d.ts +0 -26
  206. package/dist/checkpointer/internal/item-writer.d.ts.map +0 -1
  207. package/dist/checkpointer/internal/item-writer.js +0 -92
  208. package/dist/checkpointer/internal/item-writer.js.map +0 -1
  209. package/dist/checkpointer/internal/keys.d.ts +0 -31
  210. package/dist/checkpointer/internal/keys.d.ts.map +0 -1
  211. package/dist/checkpointer/internal/keys.js +0 -87
  212. package/dist/checkpointer/internal/keys.js.map +0 -1
  213. package/dist/checkpointer/internal/query.d.ts +0 -20
  214. package/dist/checkpointer/internal/query.d.ts.map +0 -1
  215. package/dist/checkpointer/internal/query.js +0 -36
  216. package/dist/checkpointer/internal/query.js.map +0 -1
  217. package/dist/checkpointer/internal/setup.d.ts.map +0 -1
  218. package/dist/checkpointer/internal/setup.js.map +0 -1
  219. package/dist/checkpointer/internal/special-write-cas.d.ts +0 -30
  220. package/dist/checkpointer/internal/special-write-cas.d.ts.map +0 -1
  221. package/dist/checkpointer/internal/special-write-cas.js +0 -104
  222. package/dist/checkpointer/internal/special-write-cas.js.map +0 -1
  223. package/dist/checkpointer/internal/special-write-cleanup.d.ts +0 -24
  224. package/dist/checkpointer/internal/special-write-cleanup.d.ts.map +0 -1
  225. package/dist/checkpointer/internal/special-write-cleanup.js +0 -47
  226. package/dist/checkpointer/internal/special-write-cleanup.js.map +0 -1
  227. package/dist/checkpointer/internal/special-write-verify.d.ts +0 -54
  228. package/dist/checkpointer/internal/special-write-verify.d.ts.map +0 -1
  229. package/dist/checkpointer/internal/special-write-verify.js +0 -65
  230. package/dist/checkpointer/internal/special-write-verify.js.map +0 -1
  231. package/dist/checkpointer/internal/validation.d.ts +0 -13
  232. package/dist/checkpointer/internal/validation.d.ts.map +0 -1
  233. package/dist/checkpointer/internal/validation.js +0 -30
  234. package/dist/checkpointer/internal/validation.js.map +0 -1
  235. package/dist/checkpointer/internal/write-guard.d.ts +0 -13
  236. package/dist/checkpointer/internal/write-guard.d.ts.map +0 -1
  237. package/dist/checkpointer/internal/write-guard.js +0 -39
  238. package/dist/checkpointer/internal/write-guard.js.map +0 -1
  239. package/dist/checkpointer/internal/write-index.d.ts +0 -37
  240. package/dist/checkpointer/internal/write-index.d.ts.map +0 -1
  241. package/dist/checkpointer/internal/write-index.js +0 -42
  242. package/dist/checkpointer/internal/write-index.js.map +0 -1
  243. package/dist/checkpointer/saver.d.ts.map +0 -1
  244. package/dist/checkpointer/saver.js.map +0 -1
  245. package/dist/checkpointer/types.d.ts.map +0 -1
  246. package/dist/checkpointer/types.js.map +0 -1
  247. package/dist/factory/factory.d.ts.map +0 -1
  248. package/dist/factory/factory.js.map +0 -1
  249. package/dist/history/actions/add-messages.d.ts.map +0 -1
  250. package/dist/history/actions/add-messages.js.map +0 -1
  251. package/dist/history/actions/clear.d.ts.map +0 -1
  252. package/dist/history/actions/clear.js.map +0 -1
  253. package/dist/history/actions/get-messages.d.ts.map +0 -1
  254. package/dist/history/actions/get-messages.js.map +0 -1
  255. package/dist/history/actions/list-sessions.d.ts.map +0 -1
  256. package/dist/history/actions/list-sessions.js.map +0 -1
  257. package/dist/history/actions/reconcile-count.d.ts.map +0 -1
  258. package/dist/history/actions/reconcile-count.js.map +0 -1
  259. package/dist/history/chat-message-history.d.ts.map +0 -1
  260. package/dist/history/chat-message-history.js.map +0 -1
  261. package/dist/history/internal/append-saga.d.ts +0 -20
  262. package/dist/history/internal/append-saga.d.ts.map +0 -1
  263. package/dist/history/internal/append-saga.js +0 -35
  264. package/dist/history/internal/append-saga.js.map +0 -1
  265. package/dist/history/internal/compensation.d.ts +0 -21
  266. package/dist/history/internal/compensation.d.ts.map +0 -1
  267. package/dist/history/internal/compensation.js +0 -84
  268. package/dist/history/internal/compensation.js.map +0 -1
  269. package/dist/history/internal/item-mapper.d.ts +0 -12
  270. package/dist/history/internal/item-mapper.d.ts.map +0 -1
  271. package/dist/history/internal/item-mapper.js +0 -33
  272. package/dist/history/internal/item-mapper.js.map +0 -1
  273. package/dist/history/internal/keys.d.ts +0 -17
  274. package/dist/history/internal/keys.d.ts.map +0 -1
  275. package/dist/history/internal/keys.js +0 -49
  276. package/dist/history/internal/keys.js.map +0 -1
  277. package/dist/history/internal/message-chunker.d.ts +0 -14
  278. package/dist/history/internal/message-chunker.d.ts.map +0 -1
  279. package/dist/history/internal/message-chunker.js +0 -68
  280. package/dist/history/internal/message-chunker.js.map +0 -1
  281. package/dist/history/internal/message-transaction.d.ts +0 -26
  282. package/dist/history/internal/message-transaction.d.ts.map +0 -1
  283. package/dist/history/internal/message-transaction.js +0 -60
  284. package/dist/history/internal/message-transaction.js.map +0 -1
  285. package/dist/history/internal/query.d.ts +0 -10
  286. package/dist/history/internal/query.d.ts.map +0 -1
  287. package/dist/history/internal/query.js +0 -31
  288. package/dist/history/internal/query.js.map +0 -1
  289. package/dist/history/internal/session-count.d.ts +0 -41
  290. package/dist/history/internal/session-count.d.ts.map +0 -1
  291. package/dist/history/internal/session-count.js +0 -109
  292. package/dist/history/internal/session-count.js.map +0 -1
  293. package/dist/history/internal/session-title.d.ts +0 -20
  294. package/dist/history/internal/session-title.d.ts.map +0 -1
  295. package/dist/history/internal/session-title.js +0 -44
  296. package/dist/history/internal/session-title.js.map +0 -1
  297. package/dist/history/internal/session-update.d.ts +0 -28
  298. package/dist/history/internal/session-update.d.ts.map +0 -1
  299. package/dist/history/internal/session-update.js +0 -70
  300. package/dist/history/internal/session-update.js.map +0 -1
  301. package/dist/history/internal/setup.d.ts.map +0 -1
  302. package/dist/history/internal/setup.js.map +0 -1
  303. package/dist/history/internal/title-generator.d.ts +0 -13
  304. package/dist/history/internal/title-generator.d.ts.map +0 -1
  305. package/dist/history/internal/title-generator.js +0 -25
  306. package/dist/history/internal/title-generator.js.map +0 -1
  307. package/dist/history/internal/ttl-anchor.d.ts +0 -25
  308. package/dist/history/internal/ttl-anchor.d.ts.map +0 -1
  309. package/dist/history/internal/ttl-anchor.js +0 -38
  310. package/dist/history/internal/ttl-anchor.js.map +0 -1
  311. package/dist/history/internal/validation.d.ts +0 -9
  312. package/dist/history/internal/validation.d.ts.map +0 -1
  313. package/dist/history/internal/validation.js +0 -16
  314. package/dist/history/internal/validation.js.map +0 -1
  315. package/dist/history/session-adapter.d.ts.map +0 -1
  316. package/dist/history/session-adapter.js.map +0 -1
  317. package/dist/history/types.d.ts.map +0 -1
  318. package/dist/history/types.js.map +0 -1
  319. package/dist/index.d.ts.map +0 -1
  320. package/dist/index.js.map +0 -1
  321. package/dist/shared/clock.d.ts.map +0 -1
  322. package/dist/shared/clock.js.map +0 -1
  323. package/dist/shared/codec/codec.d.ts.map +0 -1
  324. package/dist/shared/codec/codec.js.map +0 -1
  325. package/dist/shared/codec/compression.d.ts.map +0 -1
  326. package/dist/shared/codec/compression.js.map +0 -1
  327. package/dist/shared/codec/descriptor-keys.d.ts +0 -4
  328. package/dist/shared/codec/descriptor-keys.d.ts.map +0 -1
  329. package/dist/shared/codec/descriptor-keys.js +0 -14
  330. package/dist/shared/codec/descriptor-keys.js.map +0 -1
  331. package/dist/shared/codec/json-serde.d.ts.map +0 -1
  332. package/dist/shared/codec/json-serde.js.map +0 -1
  333. package/dist/shared/codec/s3/client.d.ts.map +0 -1
  334. package/dist/shared/codec/s3/client.js.map +0 -1
  335. package/dist/shared/codec/s3/config.d.ts.map +0 -1
  336. package/dist/shared/codec/s3/config.js.map +0 -1
  337. package/dist/shared/codec/s3/delete.d.ts +0 -8
  338. package/dist/shared/codec/s3/delete.d.ts.map +0 -1
  339. package/dist/shared/codec/s3/delete.js +0 -29
  340. package/dist/shared/codec/s3/delete.js.map +0 -1
  341. package/dist/shared/codec/s3/lifecycle.d.ts.map +0 -1
  342. package/dist/shared/codec/s3/lifecycle.js.map +0 -1
  343. package/dist/shared/codec/s3/offloader.d.ts.map +0 -1
  344. package/dist/shared/codec/s3/offloader.js.map +0 -1
  345. package/dist/shared/codec/s3/orphans.d.ts +0 -18
  346. package/dist/shared/codec/s3/orphans.d.ts.map +0 -1
  347. package/dist/shared/codec/s3/orphans.js +0 -58
  348. package/dist/shared/codec/s3/orphans.js.map +0 -1
  349. package/dist/shared/codec/s3/read-write.d.ts +0 -14
  350. package/dist/shared/codec/s3/read-write.d.ts.map +0 -1
  351. package/dist/shared/codec/s3/read-write.js +0 -43
  352. package/dist/shared/codec/s3/read-write.js.map +0 -1
  353. package/dist/shared/codec/s3/retry.d.ts +0 -5
  354. package/dist/shared/codec/s3/retry.d.ts.map +0 -1
  355. package/dist/shared/codec/s3/retry.js +0 -25
  356. package/dist/shared/codec/s3/retry.js.map +0 -1
  357. package/dist/shared/constants.d.ts +0 -64
  358. package/dist/shared/constants.d.ts.map +0 -1
  359. package/dist/shared/constants.js +0 -67
  360. package/dist/shared/constants.js.map +0 -1
  361. package/dist/shared/dynamodb/backoff.d.ts +0 -15
  362. package/dist/shared/dynamodb/backoff.d.ts.map +0 -1
  363. package/dist/shared/dynamodb/backoff.js +0 -48
  364. package/dist/shared/dynamodb/backoff.js.map +0 -1
  365. package/dist/shared/dynamodb/batch-write.d.ts.map +0 -1
  366. package/dist/shared/dynamodb/batch-write.js.map +0 -1
  367. package/dist/shared/dynamodb/cancellation.d.ts.map +0 -1
  368. package/dist/shared/dynamodb/cancellation.js.map +0 -1
  369. package/dist/shared/dynamodb/client.d.ts.map +0 -1
  370. package/dist/shared/dynamodb/client.js.map +0 -1
  371. package/dist/shared/dynamodb/conditional-put.d.ts +0 -51
  372. package/dist/shared/dynamodb/conditional-put.d.ts.map +0 -1
  373. package/dist/shared/dynamodb/conditional-put.js +0 -59
  374. package/dist/shared/dynamodb/conditional-put.js.map +0 -1
  375. package/dist/shared/dynamodb/drain-unprocessed.d.ts +0 -19
  376. package/dist/shared/dynamodb/drain-unprocessed.d.ts.map +0 -1
  377. package/dist/shared/dynamodb/drain-unprocessed.js +0 -44
  378. package/dist/shared/dynamodb/drain-unprocessed.js.map +0 -1
  379. package/dist/shared/dynamodb/paginate-core.d.ts +0 -22
  380. package/dist/shared/dynamodb/paginate-core.d.ts.map +0 -1
  381. package/dist/shared/dynamodb/paginate-core.js +0 -52
  382. package/dist/shared/dynamodb/paginate-core.js.map +0 -1
  383. package/dist/shared/dynamodb/paginate.d.ts.map +0 -1
  384. package/dist/shared/dynamodb/paginate.js.map +0 -1
  385. package/dist/shared/dynamodb/partition-delete.d.ts.map +0 -1
  386. package/dist/shared/dynamodb/partition-delete.js.map +0 -1
  387. package/dist/shared/dynamodb/retry-classifier.d.ts +0 -9
  388. package/dist/shared/dynamodb/retry-classifier.d.ts.map +0 -1
  389. package/dist/shared/dynamodb/retry-classifier.js +0 -87
  390. package/dist/shared/dynamodb/retry-classifier.js.map +0 -1
  391. package/dist/shared/dynamodb/retry.d.ts.map +0 -1
  392. package/dist/shared/dynamodb/retry.js.map +0 -1
  393. package/dist/shared/dynamodb/scan.d.ts +0 -15
  394. package/dist/shared/dynamodb/scan.d.ts.map +0 -1
  395. package/dist/shared/dynamodb/scan.js +0 -20
  396. package/dist/shared/dynamodb/scan.js.map +0 -1
  397. package/dist/shared/dynamodb/types.d.ts +0 -24
  398. package/dist/shared/dynamodb/types.d.ts.map +0 -1
  399. package/dist/shared/dynamodb/types.js +0 -3
  400. package/dist/shared/dynamodb/types.js.map +0 -1
  401. package/dist/shared/errors/base-error.d.ts.map +0 -1
  402. package/dist/shared/errors/base-error.js.map +0 -1
  403. package/dist/shared/errors/error-code.d.ts.map +0 -1
  404. package/dist/shared/errors/error-code.js.map +0 -1
  405. package/dist/shared/errors/errors.d.ts.map +0 -1
  406. package/dist/shared/errors/errors.js.map +0 -1
  407. package/dist/shared/errors/wrap-error.d.ts +0 -16
  408. package/dist/shared/errors/wrap-error.d.ts.map +0 -1
  409. package/dist/shared/errors/wrap-error.js +0 -30
  410. package/dist/shared/errors/wrap-error.js.map +0 -1
  411. package/dist/shared/logging/logger.d.ts.map +0 -1
  412. package/dist/shared/logging/logger.js.map +0 -1
  413. package/dist/shared/logging/redaction-walk.d.ts +0 -23
  414. package/dist/shared/logging/redaction-walk.d.ts.map +0 -1
  415. package/dist/shared/logging/redaction-walk.js +0 -92
  416. package/dist/shared/logging/redaction-walk.js.map +0 -1
  417. package/dist/shared/logging/redaction.d.ts.map +0 -1
  418. package/dist/shared/logging/redaction.js.map +0 -1
  419. package/dist/shared/logging/secret-patterns.d.ts.map +0 -1
  420. package/dist/shared/logging/secret-patterns.js.map +0 -1
  421. package/dist/shared/options.d.ts.map +0 -1
  422. package/dist/shared/options.js.map +0 -1
  423. package/dist/shared/ulid.d.ts.map +0 -1
  424. package/dist/shared/ulid.js.map +0 -1
  425. package/dist/shared/validation/primitives.d.ts.map +0 -1
  426. package/dist/shared/validation/primitives.js.map +0 -1
  427. package/dist/shared/validation/ttl.d.ts.map +0 -1
  428. package/dist/shared/validation/ttl.js.map +0 -1
  429. package/dist/store/actions/get.d.ts +0 -5
  430. package/dist/store/actions/get.d.ts.map +0 -1
  431. package/dist/store/actions/get.js +0 -35
  432. package/dist/store/actions/get.js.map +0 -1
  433. package/dist/store/actions/list-namespaces.d.ts.map +0 -1
  434. package/dist/store/actions/list-namespaces.js.map +0 -1
  435. package/dist/store/actions/put.d.ts.map +0 -1
  436. package/dist/store/actions/put.js.map +0 -1
  437. package/dist/store/actions/reconcile-vector-index.d.ts.map +0 -1
  438. package/dist/store/actions/reconcile-vector-index.js.map +0 -1
  439. package/dist/store/actions/search.d.ts.map +0 -1
  440. package/dist/store/actions/search.js.map +0 -1
  441. package/dist/store/internal/backend-search.d.ts +0 -5
  442. package/dist/store/internal/backend-search.d.ts.map +0 -1
  443. package/dist/store/internal/backend-search.js +0 -68
  444. package/dist/store/internal/backend-search.js.map +0 -1
  445. package/dist/store/internal/filter.d.ts.map +0 -1
  446. package/dist/store/internal/filter.js.map +0 -1
  447. package/dist/store/internal/index-reconcile.d.ts +0 -22
  448. package/dist/store/internal/index-reconcile.d.ts.map +0 -1
  449. package/dist/store/internal/index-reconcile.js +0 -105
  450. package/dist/store/internal/index-reconcile.js.map +0 -1
  451. package/dist/store/internal/index-sync.d.ts +0 -11
  452. package/dist/store/internal/index-sync.d.ts.map +0 -1
  453. package/dist/store/internal/index-sync.js +0 -26
  454. package/dist/store/internal/index-sync.js.map +0 -1
  455. package/dist/store/internal/item-mapper.d.ts +0 -25
  456. package/dist/store/internal/item-mapper.d.ts.map +0 -1
  457. package/dist/store/internal/item-mapper.js +0 -53
  458. package/dist/store/internal/item-mapper.js.map +0 -1
  459. package/dist/store/internal/keys.d.ts +0 -18
  460. package/dist/store/internal/keys.d.ts.map +0 -1
  461. package/dist/store/internal/keys.js +0 -42
  462. package/dist/store/internal/keys.js.map +0 -1
  463. package/dist/store/internal/namespace-match.d.ts +0 -12
  464. package/dist/store/internal/namespace-match.d.ts.map +0 -1
  465. package/dist/store/internal/namespace-match.js +0 -41
  466. package/dist/store/internal/namespace-match.js.map +0 -1
  467. package/dist/store/internal/overwrite-swap.d.ts +0 -33
  468. package/dist/store/internal/overwrite-swap.d.ts.map +0 -1
  469. package/dist/store/internal/overwrite-swap.js +0 -62
  470. package/dist/store/internal/overwrite-swap.js.map +0 -1
  471. package/dist/store/internal/persist.d.ts +0 -27
  472. package/dist/store/internal/persist.d.ts.map +0 -1
  473. package/dist/store/internal/persist.js +0 -59
  474. package/dist/store/internal/persist.js.map +0 -1
  475. package/dist/store/internal/query.d.ts +0 -6
  476. package/dist/store/internal/query.d.ts.map +0 -1
  477. package/dist/store/internal/query.js +0 -32
  478. package/dist/store/internal/query.js.map +0 -1
  479. package/dist/store/internal/ranker.d.ts +0 -13
  480. package/dist/store/internal/ranker.d.ts.map +0 -1
  481. package/dist/store/internal/ranker.js +0 -31
  482. package/dist/store/internal/ranker.js.map +0 -1
  483. package/dist/store/internal/read-existing.d.ts +0 -19
  484. package/dist/store/internal/read-existing.d.ts.map +0 -1
  485. package/dist/store/internal/read-existing.js +0 -29
  486. package/dist/store/internal/read-existing.js.map +0 -1
  487. package/dist/store/internal/score-direction.d.ts +0 -32
  488. package/dist/store/internal/score-direction.d.ts.map +0 -1
  489. package/dist/store/internal/score-direction.js +0 -39
  490. package/dist/store/internal/score-direction.js.map +0 -1
  491. package/dist/store/internal/search-filter.d.ts +0 -4
  492. package/dist/store/internal/search-filter.d.ts.map +0 -1
  493. package/dist/store/internal/search-filter.js +0 -11
  494. package/dist/store/internal/search-filter.js.map +0 -1
  495. package/dist/store/internal/semantic-search.d.ts.map +0 -1
  496. package/dist/store/internal/semantic-search.js.map +0 -1
  497. package/dist/store/internal/setup.d.ts.map +0 -1
  498. package/dist/store/internal/setup.js.map +0 -1
  499. package/dist/store/internal/validation.d.ts +0 -13
  500. package/dist/store/internal/validation.d.ts.map +0 -1
  501. package/dist/store/internal/validation.js +0 -35
  502. package/dist/store/internal/validation.js.map +0 -1
  503. package/dist/store/internal/write-verify.d.ts +0 -37
  504. package/dist/store/internal/write-verify.d.ts.map +0 -1
  505. package/dist/store/internal/write-verify.js +0 -68
  506. package/dist/store/internal/write-verify.js.map +0 -1
  507. package/dist/store/store.d.ts.map +0 -1
  508. package/dist/store/store.js.map +0 -1
  509. package/dist/store/types.d.ts.map +0 -1
  510. package/dist/store/types.js.map +0 -1
  511. package/dist/store/vector-backend.d.ts.map +0 -1
  512. package/dist/store/vector-backend.js.map +0 -1
@@ -1,33 +1,286 @@
1
- import { BaseStore, type Operation, type OperationResults } from '@langchain/langgraph-checkpoint';
2
- import { type VectorReconcileResult } from './actions/reconcile-vector-index';
3
- import type { DynamoDBStoreOptions } from './types';
1
+ /**
2
+ * Hides which public methods share one guarded dispatch, and which do not.
3
+ *
4
+ * `get`, `put`, `delete`, `listNamespaces` and `batch` parse their arguments
5
+ * and hand the parsed operations to the same batch runner and dispatch, so
6
+ * the five answer and refuse alike. `search` guards the same way but calls
7
+ * its own action directly, to carry a signal that `batch` cannot;
8
+ * `reconcileVectorIndex` and `ensureS3LifecycleRule` guard directly too,
9
+ * since neither is a batchable store operation. Each asynchronous method
10
+ * declared here is also the error boundary (record 13); `stop` and `destroy`
11
+ * are the synchronous exceptions, releasing what the store owns through its
12
+ * shell, and the inherited `start()` no-op — declared by `BaseStore`, not
13
+ * overridden here — is neither guarded nor routed through any of this.
14
+ */
15
+ import { BaseStore, type Item, type Operation, type OperationResults, type SearchItem } from '@langchain/langgraph-checkpoint';
16
+ import type { CancelOptions } from '../shared/options';
17
+ import type { DynamoDBStoreOptions, ListNamespacesOptions, SearchOptions, VectorReconcileResult } from './types';
4
18
  /**
5
19
  * DynamoDB-backed LangGraph store for long-term memory with optional semantic
6
- * search. A thin orchestrator: the base class's get/put/search/delete/
7
- * listNamespaces all funnel into {@link batch}, which dispatches each operation.
20
+ * search. `get`, `put`, `delete` and `listNamespaces` answer and refuse exactly
21
+ * as the same operation inside a {@link batch} does, and `put` keeps upstream's
22
+ * own namespace rules. Every public method rejects only with this library's
23
+ * error.
8
24
  */
9
25
  export declare class DynamoDBStore extends BaseStore {
10
26
  private readonly context;
11
- private readonly ownsClient;
12
- private readonly ddbClient;
27
+ private readonly shell;
28
+ /**
29
+ * Accepts: `options` — validated here, so a misconfiguration surfaces at
30
+ * construction rather than on the first request. A `vectorBackend` without an
31
+ * `index` is refused outright, since every put would then clear the item's
32
+ * vector and every query would answer unranked.
33
+ *
34
+ * Returns: a store that owns the client it built, or borrows the one it was
35
+ * given.
36
+ *
37
+ * Throws: `VALIDATION` naming the offending option.
38
+ *
39
+ * Guarantees: no I/O. Constructing a store issues no request.
40
+ */
13
41
  constructor(options: DynamoDBStoreOptions);
42
+ /**
43
+ * One operation's result: the item for a get, the page for a search, the
44
+ * namespaces for a listing, and `null` for a put or a delete — the value the
45
+ * reference store's `batch` answers a put or a delete with. The kind was
46
+ * decided once, by the parser that built `operation`, so this switches on it
47
+ * instead of asking the operation's shape again.
48
+ */
14
49
  private dispatch;
50
+ /**
51
+ * Run a batch of already-parsed operations, with no boundary of its own.
52
+ *
53
+ * The guard is the caller's method, not this: a nested `guardPublic` keeps
54
+ * the brand the *inner* one assigned, so routing `get`, `put`, `delete` and
55
+ * `listNamespaces` through the public {@link batch} reported all four as
56
+ * `store.batch` and left an operator counting AWS failures by
57
+ * `context.operation` unable to tell them apart.
58
+ */
59
+ private execute;
60
+ /**
61
+ * Execute a batch of operations and return their results in operation
62
+ * order.
63
+ *
64
+ * Accepts: `operations` — an array of operation objects, in the order they
65
+ * are to be observed; an empty batch does nothing and returns `[]`. Every
66
+ * operation is checked before any of them runs. A put carrying a `null`
67
+ * value deletes its item. `get`, `put`, `delete` and `listNamespaces` check
68
+ * their own call by the same rules and run the same dispatch, as upstream's
69
+ * implementations do, so the field a malformed call names is the same
70
+ * whichever of the five reached it — `put` alone adds what is about the
71
+ * method: upstream's own `.` and `"langgraph"` namespace rules, and a refusal
72
+ * of a `null` value, since `delete` is how an item is removed. Each of the
73
+ * four keeps its own name in `context.operation`, so a failure says which
74
+ * method the caller called rather than reporting all five alike.
75
+ *
76
+ * Returns: the results in operation order — an item or `null` for a get,
77
+ * matches for a search, namespaces for a listing, `null` for a put or a
78
+ * delete, as the reference store answers them.
79
+ *
80
+ * Throws: `VALIDATION`, raised for every operation before any operation
81
+ * runs, naming `operations` for a value that is not an array or an entry that
82
+ * is not an object; `namespace`, `namespace element`, `key` or `sortKey` for an
83
+ * item address; `value` or `index` for a put; `namespacePrefix`,
84
+ * `namespacePrefix element`, `filter`, `query`, `offset` or `limit` for a
85
+ * search; `offset`, `limit`, `maxDepth`, `matchConditions`, `prefix`,
86
+ * `prefix element`, `suffix` or `suffix element` for a listing; and later,
87
+ * from a running operation, `value` for one JSON cannot represent,
88
+ * `maxSearchCandidates` or `index.dims`. A classified AWS failure; `RETRY_EXHAUSTED`;
89
+ * `RESULT_TRUNCATED` from a search or a listing that reads past
90
+ * `maxScanItems`. One failing operation rejects the whole batch.
91
+ *
92
+ * Guarantees: the order the caller wrote is the order the caller observes — a
93
+ * get after a put of the same item sees it, a get before one does not, and a
94
+ * search sees every write that precedes it and none that follow. Operations
95
+ * addressing different items run concurrently, so a batch of ten gets costs
96
+ * about one round trip rather than ten.
97
+ */
15
98
  batch<Op extends Operation[]>(operations: Op): Promise<OperationResults<Op>>;
99
+ /**
100
+ * Retrieve one item. Overrides the base implementation so the call is
101
+ * guarded here; the operation is the one upstream builds.
102
+ *
103
+ * Accepts: `namespace` — at least one label, each a non-blank identifier of
104
+ * at most 256 bytes, free of `#` and control characters and well-formed
105
+ * UTF-16. A `.` and a `"langgraph"` root are accepted, as the reference store
106
+ * accepts them. `key` — an identifier by the same rules. Together they may
107
+ * compose a sort key of at most 1024 bytes. **No signal**: upstream's
108
+ * `BaseStore.get` takes no parameter for one, so the S3 download an
109
+ * offloaded value costs is not cancellable here. `store.search` is the read
110
+ * that takes one.
111
+ *
112
+ * Returns: the item, or `null` for one that does not exist or has expired.
113
+ *
114
+ * Throws: `VALIDATION` naming `namespace`, `namespace element`, `key` or
115
+ * `sortKey`, and — from the row rather than from the call — `descriptor` for
116
+ * a payload descriptor no reader could make sense of, `s3` for an offloaded
117
+ * row with no offloader configured, `s3Key` for a row addressing an object
118
+ * outside its own path, or `serde` for a payload the configured serializer
119
+ * refuses to reconstruct; `FORMAT_UNSUPPORTED` for an item, or its payload,
120
+ * written by a newer version, which is reported rather than hidden as
121
+ * absent; `PAYLOAD_CORRUPT` for a payload that is no longer the form its row
122
+ * declares; `S3_OFFLOAD_FAILED` for an offloaded payload that cannot be
123
+ * downloaded; `COMPRESSION_LIMIT` for one whose decompressed size would pass
124
+ * the cap; a classified AWS failure; `RETRY_EXHAUSTED`. Not `ABORTED`: there is no
125
+ * signal to fire.
126
+ */
127
+ get(namespace: string[], key: string): Promise<Item | null>;
128
+ /**
129
+ * Store or replace one item. Overrides the base implementation, whose own
130
+ * namespace check threw an error this package does not brand. The value and
131
+ * index are checked by {@link batch}, so LangGraph's own puts hold them too.
132
+ *
133
+ * Accepts: `namespace` and `key` — as {@link get}, plus upstream
134
+ * `BaseStore.put`'s own two rules, which only this method applies: no label
135
+ * holding `.`, and a root other than `"langgraph"`. `value` — an object; `null`
136
+ * is refused, since {@link delete} is how an item is removed. `index` —
137
+ * absent uses the store's configuration, `false` indexes nothing, and field
138
+ * paths override it for this put.
139
+ *
140
+ * Returns: nothing.
141
+ *
142
+ * Throws: `VALIDATION` naming `namespace`, `namespace element`, `key`,
143
+ * `sortKey`, `value` or `index`; a classified AWS failure; `RETRY_EXHAUSTED`.
144
+ */
145
+ put(namespace: string[], key: string, value: Parameters<BaseStore['put']>[2], index?: Parameters<BaseStore['put']>[3]): Promise<void>;
146
+ /**
147
+ * Remove one item, as upstream does: a put operation carrying `null`.
148
+ *
149
+ * Accepts: `namespace` and `key` — as {@link get}.
150
+ *
151
+ * Returns: nothing. Deleting an item that is not there is not an error —
152
+ * which now describes the outcome rather than the round trip, since the row
153
+ * is read before it is removed.
154
+ *
155
+ * Throws: `VALIDATION` naming `namespace`, `namespace element`, `key` or
156
+ * `sortKey`; a classified AWS failure; `RETRY_EXHAUSTED`. The set of types is
157
+ * unchanged, but the occasions are not: that pre-read is a request like any
158
+ * other, so a delete of a key with **no row** can now fail where it always
159
+ * succeeded. Nothing has been written when it does — no row removed, no
160
+ * object released, no vector touched. A delete the row's revision turns away
161
+ * never reaches a caller at all: it is re-pinned on the row the rejection
162
+ * returned and re-issued, because refusing to remove a row a concurrent put
163
+ * replaced is what stops this call erasing that put.
164
+ *
165
+ * Guarantees: the item is gone, was already gone, or — when three attempts in
166
+ * a row are each turned away by a write that landed since the observation
167
+ * that attempt pinned — is still there and was left alone. That last case
168
+ * **resolves**, logging one `warn` naming the namespace, the key and the
169
+ * attempt count, where the reference store always removes the item;
170
+ * throwing instead would add a failure mode to an interleaving that succeeds
171
+ * today, which every caller deleting in a `finally` would have to handle.
172
+ * Re-run once the key is quiescent. Nothing is released on that path, which
173
+ * is correct: a live row still names the object.
174
+ */
175
+ delete(namespace: string[], key: string): Promise<void>;
176
+ /**
177
+ * List the distinct namespaces, sorted, optionally filtered and truncated.
178
+ *
179
+ * Accepts: `options.prefix`/`suffix` — labels a namespace can hold, where
180
+ * `'*'` matches any one label. `options.maxDepth` — at least 1.
181
+ * `options.limit` — an integer from 0 to `MAX_PAGE_LIMIT` (10,000), defaulting
182
+ * to 100, where `0` returns an empty listing without reading the table.
183
+ * `options.offset` — a non-negative integer, defaulting to 0.
184
+ *
185
+ * Returns: at most `limit` namespaces from `offset`.
186
+ *
187
+ * Throws: `VALIDATION` naming `options`, `options.<key>`, `prefix`,
188
+ * `prefix element`, `suffix`, `suffix element`, `maxDepth`, `limit` or
189
+ * `offset`; `RESULT_TRUNCATED` past `maxScanItems`; `FORMAT_UNSUPPORTED`
190
+ * for an item written by a newer version; a classified AWS failure.
191
+ */
192
+ listNamespaces(options?: ListNamespacesOptions): Promise<string[][]>;
193
+ /**
194
+ * Search with optional cancellation. Overrides the base implementation, which
195
+ * routes through {@link batch} and therefore cannot carry a signal.
196
+ *
197
+ * Accepts: `namespacePrefix` — labels a namespace can hold; empty spans the
198
+ * whole table. `options.query` —
199
+ * absent or empty ranks nothing. `options.filter` — metadata equality on the
200
+ * item's value. `options.offset` — a non-negative integer, defaulting to 0.
201
+ * `options.limit` — an integer from 0 to `MAX_PAGE_LIMIT` (10,000), defaulting
202
+ * to 10, where `0` returns an empty page without a read or an embedding.
203
+ * `options.signal` — aborts the reads.
204
+ *
205
+ * Returns: at most `limit` items from `offset`, each carrying a `score` when
206
+ * a query and an index are configured.
207
+ *
208
+ * Throws: `VALIDATION` naming `namespacePrefix`, `namespacePrefix element`,
209
+ * `filter`, `query`, `offset`, `limit`, `maxSearchCandidates`, `index.dims`,
210
+ * `signal`, or
211
+ * `options.<key>` for a key this package does not read; `ABORTED`;
212
+ * `FORMAT_UNSUPPORTED` for an item, or its payload, written by a newer
213
+ * version — a search reads rows it did not name, so one such row anywhere in
214
+ * the prefix it walks reports rather than being passed over; a classified AWS failure.
215
+ *
216
+ * Guarantees: a plain search stops reading once `offset + limit` matches are
217
+ * in hand; a query ranks in-process up to `maxSearchCandidates`, or through
218
+ * the `vectorBackend` when one is configured.
219
+ */
220
+ search(namespacePrefix: string[], options?: SearchOptions): Promise<SearchItem[]>;
16
221
  /**
17
222
  * Repair the configured vector backend against the canonical items under
18
- * `namespacePrefix`. A maintenance tool; see {@link reconcileVectorIndex}.
223
+ * `namespacePrefix`. A maintenance tool; see the action of the same name.
224
+ *
225
+ * Accepts: `namespacePrefix` — a non-empty namespace. `options.signal` —
226
+ * aborts between pages.
227
+ *
228
+ * Returns: how many vectors were upserted and how many pruned.
229
+ *
230
+ * Throws: `VALIDATION` without both an `index` and a `vectorBackend`, for
231
+ * an empty prefix, for an invalid `signal`, or for `options.<key>` naming a
232
+ * key this package does not read; `RESULT_TRUNCATED` past `maxScanItems`;
233
+ * `FORMAT_UNSUPPORTED` for an item, or its payload, written by a newer
234
+ * version — repairing a backend from a view of the prefix that silently
235
+ * omitted such a row would prune the vectors of items that are still there;
236
+ * a classified AWS failure.
237
+ *
238
+ * Guarantees: DynamoDB is never written — only the backend is repaired — and
239
+ * a vector is deleted only on evidence that its item is gone.
240
+ */
241
+ reconcileVectorIndex(namespacePrefix: string[], options?: CancelOptions): Promise<VectorReconcileResult>;
242
+ /**
243
+ * LangGraph's lifecycle hook.
244
+ *
245
+ * Accepts: nothing.
246
+ *
247
+ * Returns: nothing. A host that manages stores through the upstream
248
+ * `BaseStore` interface calls `stop()`, so it releases the owned client
249
+ * exactly like {@link destroy}, which stays the explicit API. Both are
250
+ * idempotent.
251
+ *
252
+ * Throws: exactly what {@link destroy} throws, since it is that call.
253
+ */
254
+ stop(): void;
255
+ /**
256
+ * Release owned resources.
257
+ *
258
+ * Accepts: nothing.
259
+ *
260
+ * Returns: nothing. Idempotent, and a no-op for a client the caller injected
261
+ * — that one is theirs to close.
262
+ *
263
+ * Throws: whatever a resource's own `destroy` raises — but only after every
264
+ * other one has been released, so a client that fails to close never strands
265
+ * the one behind it.
19
266
  */
20
- reconcileVectorIndex(namespacePrefix: string[]): Promise<VectorReconcileResult>;
21
- /** Release owned resources (the underlying client and any S3 client). */
22
267
  destroy(): void;
23
268
  /**
24
- * Best-effort provision an S3 lifecycle expiration rule matching the
25
- * configured TTL, so offloaded objects don't outlive their DynamoDB item
26
- * forever. No-ops when S3 offload or TTL isn't configured. Requires the
27
- * `s3:GetLifecycleConfiguration`/`s3:PutLifecycleConfiguration` bucket-level
28
- * permissions (broader than the object-level CRUD the rest of S3 offload
29
- * needs) — call this once during deployment/provisioning, not per-request.
269
+ * Provision an S3 lifecycle expiration rule matching the configured TTL, so
270
+ * offloaded objects don't outlive their DynamoDB item forever.
271
+ *
272
+ * Accepts: nothing; the rule follows the configured `s3` and `ttl`. A no-op
273
+ * without both.
274
+ *
275
+ * Returns: nothing. Installing a rule that is already there is a no-op too,
276
+ * so calling it on every deploy is safe.
277
+ *
278
+ * Throws: `VALIDATION` naming `s3.keyPrefix` on a rule-id collision;
279
+ * a classified AWS failure when the bucket's lifecycle cannot be read or written.
280
+ * @remarks Requires the bucket-level `s3:GetLifecycleConfiguration` /
281
+ * `s3:PutLifecycleConfiguration` permissions, broader than the object-level
282
+ * CRUD the rest of S3 offload needs — call it once during provisioning, not
283
+ * per request.
30
284
  */
31
285
  ensureS3LifecycleRule(): Promise<void>;
32
286
  }
33
- //# sourceMappingURL=store.d.ts.map