@decaf-ts/integrations 0.1.2 → 0.1.4

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 (289) hide show
  1. package/dist/integrations.cjs +1 -1
  2. package/docker/azure-blob-compose.yml +21 -0
  3. package/docker/gcs-blob-compose.yml +21 -0
  4. package/docker/ipfs-compose.yml +25 -0
  5. package/docker/minio-compose.yml +25 -0
  6. package/lib/cjs/blob/azure/AzureBlobStoreService.cjs +293 -0
  7. package/lib/cjs/blob/azure/AzureBlobStoreService.cjs.map +1 -0
  8. package/lib/cjs/blob/azure/index.cjs +24 -0
  9. package/lib/cjs/blob/azure/index.cjs.map +1 -0
  10. package/lib/cjs/blob/core/BlobErrors.cjs +74 -0
  11. package/lib/cjs/blob/core/BlobErrors.cjs.map +1 -0
  12. package/lib/cjs/blob/core/BlobKey.cjs +37 -0
  13. package/lib/cjs/blob/core/BlobKey.cjs.map +1 -0
  14. package/lib/cjs/blob/core/BlobStoreFactory.cjs +57 -0
  15. package/lib/cjs/blob/core/BlobStoreFactory.cjs.map +1 -0
  16. package/lib/cjs/blob/core/BlobStoreService.cjs +42 -0
  17. package/lib/cjs/blob/core/BlobStoreService.cjs.map +1 -0
  18. package/lib/cjs/blob/core/BlobTypes.cjs +4 -0
  19. package/lib/cjs/blob/core/BlobTypes.cjs.map +1 -0
  20. package/lib/cjs/blob/core/BlobValue.cjs +72 -0
  21. package/lib/cjs/blob/core/BlobValue.cjs.map +1 -0
  22. package/lib/cjs/blob/core/index.cjs +29 -0
  23. package/lib/cjs/blob/core/index.cjs.map +1 -0
  24. package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs +272 -0
  25. package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs.map +1 -0
  26. package/lib/cjs/blob/gcp/index.cjs +24 -0
  27. package/lib/cjs/blob/gcp/index.cjs.map +1 -0
  28. package/lib/cjs/blob/index.cjs +25 -0
  29. package/lib/cjs/blob/index.cjs.map +1 -0
  30. package/lib/cjs/blob/ipfs/IpfsBlobStoreService.cjs +182 -0
  31. package/lib/cjs/blob/ipfs/IpfsBlobStoreService.cjs.map +1 -0
  32. package/lib/cjs/blob/ipfs/IpfsKeyIndex.cjs +27 -0
  33. package/lib/cjs/blob/ipfs/IpfsKeyIndex.cjs.map +1 -0
  34. package/lib/cjs/blob/ipfs/LocalJsonIpfsKeyIndex.cjs +35 -0
  35. package/lib/cjs/blob/ipfs/LocalJsonIpfsKeyIndex.cjs.map +1 -0
  36. package/lib/cjs/blob/ipfs/MemoryIpfsKeyIndex.cjs +45 -0
  37. package/lib/cjs/blob/ipfs/MemoryIpfsKeyIndex.cjs.map +1 -0
  38. package/lib/cjs/blob/ipfs/PostgresIpfsKeyIndex.cjs +35 -0
  39. package/lib/cjs/blob/ipfs/PostgresIpfsKeyIndex.cjs.map +1 -0
  40. package/lib/cjs/blob/ipfs/index.cjs +28 -0
  41. package/lib/cjs/blob/ipfs/index.cjs.map +1 -0
  42. package/lib/cjs/blob/local/LocalBlobStoreService.cjs +288 -0
  43. package/lib/cjs/blob/local/LocalBlobStoreService.cjs.map +1 -0
  44. package/lib/cjs/blob/local/index.cjs +24 -0
  45. package/lib/cjs/blob/local/index.cjs.map +1 -0
  46. package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs +146 -0
  47. package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs.map +1 -0
  48. package/lib/cjs/blob/memory/index.cjs +24 -0
  49. package/lib/cjs/blob/memory/index.cjs.map +1 -0
  50. package/lib/cjs/blob/s3/MinioBlobStoreService.cjs +14 -0
  51. package/lib/cjs/blob/s3/MinioBlobStoreService.cjs.map +1 -0
  52. package/lib/cjs/blob/s3/R2BlobStoreService.cjs +14 -0
  53. package/lib/cjs/blob/s3/R2BlobStoreService.cjs.map +1 -0
  54. package/lib/cjs/blob/s3/S3BlobStoreService.cjs +322 -0
  55. package/lib/cjs/blob/s3/S3BlobStoreService.cjs.map +1 -0
  56. package/lib/cjs/blob/s3/index.cjs +26 -0
  57. package/lib/cjs/blob/s3/index.cjs.map +1 -0
  58. package/lib/cjs/docker/DockerComposeService.cjs +3 -3
  59. package/lib/cjs/docker/DockerComposeService.cjs.map +1 -1
  60. package/lib/cjs/docker/index.cjs +1 -1
  61. package/lib/cjs/docker/index.cjs.map +1 -1
  62. package/lib/cjs/index.cjs +4 -4
  63. package/lib/cjs/index.cjs.map +1 -1
  64. package/lib/cjs/keycloak/index.cjs +1 -1
  65. package/lib/cjs/keycloak/index.cjs.map +1 -1
  66. package/lib/cjs/keycloak/services/KeycloakAuthService.cjs +1 -1
  67. package/lib/cjs/keycloak/services/KeycloakAuthService.cjs.map +1 -1
  68. package/lib/cjs/keycloak/services/KeycloakClientService.cjs +1 -1
  69. package/lib/cjs/keycloak/services/KeycloakClientService.cjs.map +1 -1
  70. package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs +1 -1
  71. package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs.map +1 -1
  72. package/lib/cjs/keycloak/services/KeycloakRealmService.cjs +1 -1
  73. package/lib/cjs/keycloak/services/KeycloakRealmService.cjs.map +1 -1
  74. package/lib/cjs/keycloak/services/KeycloakRoleService.cjs +1 -1
  75. package/lib/cjs/keycloak/services/KeycloakRoleService.cjs.map +1 -1
  76. package/lib/cjs/keycloak/services/KeycloakService.cjs +1 -1
  77. package/lib/cjs/keycloak/services/KeycloakService.cjs.map +1 -1
  78. package/lib/cjs/keycloak/services/KeycloakUserService.cjs +1 -1
  79. package/lib/cjs/keycloak/services/KeycloakUserService.cjs.map +1 -1
  80. package/lib/cjs/keycloak/services/index.cjs +1 -1
  81. package/lib/cjs/keycloak/services/index.cjs.map +1 -1
  82. package/lib/cjs/keycloak/types.cjs +1 -1
  83. package/lib/cjs/keycloak/types.cjs.map +1 -1
  84. package/lib/cjs/kibana/helpers.cjs +1 -1
  85. package/lib/cjs/kibana/helpers.cjs.map +1 -1
  86. package/lib/cjs/kibana/index.cjs +1 -1
  87. package/lib/cjs/kibana/index.cjs.map +1 -1
  88. package/lib/cjs/kibana/services/KibanaAuthService.cjs +1 -1
  89. package/lib/cjs/kibana/services/KibanaAuthService.cjs.map +1 -1
  90. package/lib/cjs/kibana/services/KibanaDashboardService.cjs +1 -1
  91. package/lib/cjs/kibana/services/KibanaDashboardService.cjs.map +1 -1
  92. package/lib/cjs/kibana/services/KibanaDataViewService.cjs +1 -1
  93. package/lib/cjs/kibana/services/KibanaDataViewService.cjs.map +1 -1
  94. package/lib/cjs/kibana/services/KibanaRoleService.cjs +1 -1
  95. package/lib/cjs/kibana/services/KibanaRoleService.cjs.map +1 -1
  96. package/lib/cjs/kibana/services/KibanaService.cjs +1 -1
  97. package/lib/cjs/kibana/services/KibanaService.cjs.map +1 -1
  98. package/lib/cjs/kibana/services/KibanaSpaceService.cjs +1 -1
  99. package/lib/cjs/kibana/services/KibanaSpaceService.cjs.map +1 -1
  100. package/lib/cjs/kibana/services/KibanaUserService.cjs +1 -1
  101. package/lib/cjs/kibana/services/KibanaUserService.cjs.map +1 -1
  102. package/lib/cjs/kibana/services/index.cjs +1 -1
  103. package/lib/cjs/kibana/services/index.cjs.map +1 -1
  104. package/lib/cjs/kibana/types.cjs +1 -1
  105. package/lib/cjs/kibana/types.cjs.map +1 -1
  106. package/lib/cjs/nest/authService.cjs +1 -1
  107. package/lib/cjs/nest/authService.cjs.map +1 -1
  108. package/lib/cjs/nest/index.cjs +1 -1
  109. package/lib/cjs/nest/index.cjs.map +1 -1
  110. package/lib/cjs/nest/keycloakAuthHandler.cjs +1 -1
  111. package/lib/cjs/nest/keycloakAuthHandler.cjs.map +1 -1
  112. package/lib/cjs/nest/keycloakModule.cjs +1 -1
  113. package/lib/cjs/nest/keycloakModule.cjs.map +1 -1
  114. package/lib/cjs/nest/types.cjs +1 -1
  115. package/lib/cjs/nest/types.cjs.map +1 -1
  116. package/lib/cjs/nest/utils.cjs +1 -1
  117. package/lib/cjs/nest/utils.cjs.map +1 -1
  118. package/lib/cjs/secrets/aws/AwsSecretService.cjs +1 -1
  119. package/lib/cjs/secrets/aws/AwsSecretService.cjs.map +1 -1
  120. package/lib/cjs/secrets/aws/AwsSecretServiceConfig.cjs +1 -1
  121. package/lib/cjs/secrets/aws/AwsSecretServiceConfig.cjs.map +1 -1
  122. package/lib/cjs/secrets/aws/index.cjs +1 -1
  123. package/lib/cjs/secrets/aws/index.cjs.map +1 -1
  124. package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs +1 -1
  125. package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs.map +1 -1
  126. package/lib/cjs/secrets/azure/AzureKeyVaultSecretServiceConfig.cjs +1 -1
  127. package/lib/cjs/secrets/azure/AzureKeyVaultSecretServiceConfig.cjs.map +1 -1
  128. package/lib/cjs/secrets/azure/index.cjs +1 -1
  129. package/lib/cjs/secrets/azure/index.cjs.map +1 -1
  130. package/lib/cjs/secrets/core/SecretErrors.cjs +1 -1
  131. package/lib/cjs/secrets/core/SecretErrors.cjs.map +1 -1
  132. package/lib/cjs/secrets/core/SecretName.cjs +1 -1
  133. package/lib/cjs/secrets/core/SecretName.cjs.map +1 -1
  134. package/lib/cjs/secrets/core/SecretReference.cjs +1 -1
  135. package/lib/cjs/secrets/core/SecretReference.cjs.map +1 -1
  136. package/lib/cjs/secrets/core/SecretSerialization.cjs +1 -1
  137. package/lib/cjs/secrets/core/SecretSerialization.cjs.map +1 -1
  138. package/lib/cjs/secrets/core/SecretService.cjs +1 -1
  139. package/lib/cjs/secrets/core/SecretService.cjs.map +1 -1
  140. package/lib/cjs/secrets/core/SecretTypes.cjs +1 -1
  141. package/lib/cjs/secrets/core/SecretTypes.cjs.map +1 -1
  142. package/lib/cjs/secrets/core/index.cjs +1 -1
  143. package/lib/cjs/secrets/core/index.cjs.map +1 -1
  144. package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs +1 -1
  145. package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs.map +1 -1
  146. package/lib/cjs/secrets/gcp/GcpSecretManagerServiceConfig.cjs +1 -1
  147. package/lib/cjs/secrets/gcp/GcpSecretManagerServiceConfig.cjs.map +1 -1
  148. package/lib/cjs/secrets/gcp/index.cjs +1 -1
  149. package/lib/cjs/secrets/gcp/index.cjs.map +1 -1
  150. package/lib/cjs/secrets/index.cjs +1 -1
  151. package/lib/cjs/secrets/index.cjs.map +1 -1
  152. package/lib/cjs/secrets/model/ModelSecretCrypto.cjs +1 -1
  153. package/lib/cjs/secrets/model/ModelSecretCrypto.cjs.map +1 -1
  154. package/lib/cjs/secrets/model/ModelSecretService.cjs +3 -3
  155. package/lib/cjs/secrets/model/ModelSecretService.cjs.map +1 -1
  156. package/lib/cjs/secrets/model/ModelSecretServiceConfig.cjs +1 -1
  157. package/lib/cjs/secrets/model/ModelSecretServiceConfig.cjs.map +1 -1
  158. package/lib/cjs/secrets/model/Secret.cjs +1 -1
  159. package/lib/cjs/secrets/model/Secret.cjs.map +1 -1
  160. package/lib/cjs/secrets/model/index.cjs +1 -1
  161. package/lib/cjs/secrets/model/index.cjs.map +1 -1
  162. package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs +1 -1
  163. package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs.map +1 -1
  164. package/lib/cjs/secrets/onepassword/OnePasswordSecretServiceConfig.cjs +1 -1
  165. package/lib/cjs/secrets/onepassword/OnePasswordSecretServiceConfig.cjs.map +1 -1
  166. package/lib/cjs/secrets/onepassword/index.cjs +1 -1
  167. package/lib/cjs/secrets/onepassword/index.cjs.map +1 -1
  168. package/lib/cjs/secrets/vault/VaultSecretService.cjs +1 -1
  169. package/lib/cjs/secrets/vault/VaultSecretService.cjs.map +1 -1
  170. package/lib/cjs/secrets/vault/VaultSecretServiceConfig.cjs +1 -1
  171. package/lib/cjs/secrets/vault/VaultSecretServiceConfig.cjs.map +1 -1
  172. package/lib/cjs/secrets/vault/index.cjs +1 -1
  173. package/lib/cjs/secrets/vault/index.cjs.map +1 -1
  174. package/lib/cjs/utils.cjs +1 -1
  175. package/lib/cjs/utils.cjs.map +1 -1
  176. package/lib/esm/blob/azure/AzureBlobStoreService.js +288 -0
  177. package/lib/esm/blob/azure/AzureBlobStoreService.js.map +1 -0
  178. package/lib/esm/blob/azure/index.js +7 -0
  179. package/lib/esm/blob/azure/index.js.map +1 -0
  180. package/lib/esm/blob/core/BlobErrors.js +61 -0
  181. package/lib/esm/blob/core/BlobErrors.js.map +1 -0
  182. package/lib/esm/blob/core/BlobKey.js +32 -0
  183. package/lib/esm/blob/core/BlobKey.js.map +1 -0
  184. package/lib/esm/blob/core/BlobStoreFactory.js +52 -0
  185. package/lib/esm/blob/core/BlobStoreFactory.js.map +1 -0
  186. package/lib/esm/blob/core/BlobStoreService.js +37 -0
  187. package/lib/esm/blob/core/BlobStoreService.js.map +1 -0
  188. package/lib/esm/blob/core/BlobTypes.js +2 -0
  189. package/lib/esm/blob/core/BlobTypes.js.map +1 -0
  190. package/lib/esm/blob/core/BlobValue.js +66 -0
  191. package/lib/esm/blob/core/BlobValue.js.map +1 -0
  192. package/lib/esm/blob/core/index.js +12 -0
  193. package/lib/esm/blob/core/index.js.map +1 -0
  194. package/lib/esm/blob/gcp/GcsBlobStoreService.js +267 -0
  195. package/lib/esm/blob/gcp/GcsBlobStoreService.js.map +1 -0
  196. package/lib/esm/blob/gcp/index.js +7 -0
  197. package/lib/esm/blob/gcp/index.js.map +1 -0
  198. package/lib/esm/blob/index.js +8 -0
  199. package/lib/esm/blob/index.js.map +1 -0
  200. package/lib/esm/blob/ipfs/IpfsBlobStoreService.js +177 -0
  201. package/lib/esm/blob/ipfs/IpfsBlobStoreService.js.map +1 -0
  202. package/lib/esm/blob/ipfs/IpfsKeyIndex.js +23 -0
  203. package/lib/esm/blob/ipfs/IpfsKeyIndex.js.map +1 -0
  204. package/lib/esm/blob/ipfs/LocalJsonIpfsKeyIndex.js +30 -0
  205. package/lib/esm/blob/ipfs/LocalJsonIpfsKeyIndex.js.map +1 -0
  206. package/lib/esm/blob/ipfs/MemoryIpfsKeyIndex.js +40 -0
  207. package/lib/esm/blob/ipfs/MemoryIpfsKeyIndex.js.map +1 -0
  208. package/lib/esm/blob/ipfs/PostgresIpfsKeyIndex.js +30 -0
  209. package/lib/esm/blob/ipfs/PostgresIpfsKeyIndex.js.map +1 -0
  210. package/lib/esm/blob/ipfs/index.js +11 -0
  211. package/lib/esm/blob/ipfs/index.js.map +1 -0
  212. package/lib/esm/blob/local/LocalBlobStoreService.js +283 -0
  213. package/lib/esm/blob/local/LocalBlobStoreService.js.map +1 -0
  214. package/lib/esm/blob/local/index.js +7 -0
  215. package/lib/esm/blob/local/index.js.map +1 -0
  216. package/lib/esm/blob/memory/MemoryBlobStoreService.js +141 -0
  217. package/lib/esm/blob/memory/MemoryBlobStoreService.js.map +1 -0
  218. package/lib/esm/blob/memory/index.js +7 -0
  219. package/lib/esm/blob/memory/index.js.map +1 -0
  220. package/lib/esm/blob/s3/MinioBlobStoreService.js +9 -0
  221. package/lib/esm/blob/s3/MinioBlobStoreService.js.map +1 -0
  222. package/lib/esm/blob/s3/R2BlobStoreService.js +9 -0
  223. package/lib/esm/blob/s3/R2BlobStoreService.js.map +1 -0
  224. package/lib/esm/blob/s3/S3BlobStoreService.js +317 -0
  225. package/lib/esm/blob/s3/S3BlobStoreService.js.map +1 -0
  226. package/lib/esm/blob/s3/index.js +9 -0
  227. package/lib/esm/blob/s3/index.js.map +1 -0
  228. package/lib/esm/docker/DockerComposeService.js +2 -2
  229. package/lib/esm/docker/DockerComposeService.js.map +1 -1
  230. package/lib/esm/index.js +3 -3
  231. package/lib/esm/secrets/model/ModelSecretService.js +1 -1
  232. package/lib/esm/secrets/model/ModelSecretService.js.map +1 -1
  233. package/lib/types/blob/azure/AzureBlobStoreService.d.cts +25 -0
  234. package/lib/types/blob/azure/AzureBlobStoreService.d.mts +25 -0
  235. package/lib/types/blob/azure/index.d.cts +6 -0
  236. package/lib/types/blob/azure/index.d.mts +6 -0
  237. package/lib/types/blob/core/BlobErrors.d.cts +14 -0
  238. package/lib/types/blob/core/BlobErrors.d.mts +14 -0
  239. package/lib/types/blob/core/BlobKey.d.cts +9 -0
  240. package/lib/types/blob/core/BlobKey.d.mts +9 -0
  241. package/lib/types/blob/core/BlobStoreFactory.d.cts +5 -0
  242. package/lib/types/blob/core/BlobStoreFactory.d.mts +5 -0
  243. package/lib/types/blob/core/BlobStoreService.d.cts +28 -0
  244. package/lib/types/blob/core/BlobStoreService.d.mts +28 -0
  245. package/lib/types/blob/core/BlobTypes.d.cts +122 -0
  246. package/lib/types/blob/core/BlobTypes.d.mts +122 -0
  247. package/lib/types/blob/core/BlobValue.d.cts +13 -0
  248. package/lib/types/blob/core/BlobValue.d.mts +13 -0
  249. package/lib/types/blob/core/index.d.cts +11 -0
  250. package/lib/types/blob/core/index.d.mts +11 -0
  251. package/lib/types/blob/gcp/GcsBlobStoreService.d.cts +25 -0
  252. package/lib/types/blob/gcp/GcsBlobStoreService.d.mts +25 -0
  253. package/lib/types/blob/gcp/index.d.cts +6 -0
  254. package/lib/types/blob/gcp/index.d.mts +6 -0
  255. package/lib/types/blob/index.d.cts +7 -0
  256. package/lib/types/blob/index.d.mts +7 -0
  257. package/lib/types/blob/ipfs/IpfsBlobStoreService.d.cts +26 -0
  258. package/lib/types/blob/ipfs/IpfsBlobStoreService.d.mts +26 -0
  259. package/lib/types/blob/ipfs/IpfsKeyIndex.d.cts +9 -0
  260. package/lib/types/blob/ipfs/IpfsKeyIndex.d.mts +9 -0
  261. package/lib/types/blob/ipfs/LocalJsonIpfsKeyIndex.d.cts +11 -0
  262. package/lib/types/blob/ipfs/LocalJsonIpfsKeyIndex.d.mts +11 -0
  263. package/lib/types/blob/ipfs/MemoryIpfsKeyIndex.d.cts +15 -0
  264. package/lib/types/blob/ipfs/MemoryIpfsKeyIndex.d.mts +15 -0
  265. package/lib/types/blob/ipfs/PostgresIpfsKeyIndex.d.cts +11 -0
  266. package/lib/types/blob/ipfs/PostgresIpfsKeyIndex.d.mts +11 -0
  267. package/lib/types/blob/ipfs/index.d.cts +10 -0
  268. package/lib/types/blob/ipfs/index.d.mts +10 -0
  269. package/lib/types/blob/local/LocalBlobStoreService.d.cts +30 -0
  270. package/lib/types/blob/local/LocalBlobStoreService.d.mts +30 -0
  271. package/lib/types/blob/local/index.d.cts +6 -0
  272. package/lib/types/blob/local/index.d.mts +6 -0
  273. package/lib/types/blob/memory/MemoryBlobStoreService.d.cts +28 -0
  274. package/lib/types/blob/memory/MemoryBlobStoreService.d.mts +28 -0
  275. package/lib/types/blob/memory/index.d.cts +6 -0
  276. package/lib/types/blob/memory/index.d.mts +6 -0
  277. package/lib/types/blob/s3/MinioBlobStoreService.d.cts +8 -0
  278. package/lib/types/blob/s3/MinioBlobStoreService.d.mts +8 -0
  279. package/lib/types/blob/s3/R2BlobStoreService.d.cts +8 -0
  280. package/lib/types/blob/s3/R2BlobStoreService.d.mts +8 -0
  281. package/lib/types/blob/s3/S3BlobStoreService.d.cts +25 -0
  282. package/lib/types/blob/s3/S3BlobStoreService.d.mts +25 -0
  283. package/lib/types/blob/s3/index.d.cts +8 -0
  284. package/lib/types/blob/s3/index.d.mts +8 -0
  285. package/lib/types/docker/DockerComposeService.d.cts +6 -0
  286. package/lib/types/docker/DockerComposeService.d.mts +6 -0
  287. package/lib/types/index.d.cts +2 -2
  288. package/lib/types/index.d.mts +2 -2
  289. package/package.json +92 -7
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @module integrations/blob/ipfs/service
3
+ * @summary IPFS blob store service.
4
+ * @description Blob store backed by an IPFS (Kubo) node. Because the blob API is key/value CRUD-like
5
+ * and IPFS is content-addressed, an IpfsKeyIndex maps logical keys to CIDs.
6
+ */
7
+ import { type KuboRPCClient } from "kubo-rpc-client";
8
+ import { type ContextualArgs, type MaybeContextualArg } from "@decaf-ts/core";
9
+ import { BlobStoreService } from "../core/BlobStoreService.d.cts";
10
+ import type { BlobGetOptions, BlobGetResult, BlobKey, BlobListOptions, BlobListResult, BlobMetadata, BlobPutOptions, BlobPutResult, BlobUrlOptions, BlobUrlResult, BlobValue, IpfsBlobStoreServiceConfig } from "../core/BlobTypes.d.cts";
11
+ export declare class IpfsBlobStoreService extends BlobStoreService<KuboRPCClient, IpfsBlobStoreServiceConfig> {
12
+ private index;
13
+ initialize(...args: ContextualArgs<any>): Promise<{
14
+ config: IpfsBlobStoreServiceConfig;
15
+ client: KuboRPCClient;
16
+ }>;
17
+ put(key: BlobKey, value: BlobValue, options?: BlobPutOptions, ...args: MaybeContextualArg<any>): Promise<BlobPutResult>;
18
+ get(key: BlobKey, options?: BlobGetOptions, ...args: MaybeContextualArg<any>): Promise<BlobGetResult>;
19
+ has(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<boolean>;
20
+ stat(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<BlobMetadata>;
21
+ delete(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<void>;
22
+ copy(fromKey: BlobKey, toKey: BlobKey, options?: BlobPutOptions, ...args: MaybeContextualArg<any>): Promise<BlobPutResult>;
23
+ list(options?: BlobListOptions, ...args: MaybeContextualArg<any>): Promise<BlobListResult>;
24
+ url(key: BlobKey, options?: BlobUrlOptions, ...args: MaybeContextualArg<any>): Promise<BlobUrlResult>;
25
+ protected parseError(error: unknown): Error;
26
+ }
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @module integrations/blob/ipfs/service
3
+ * @summary IPFS blob store service.
4
+ * @description Blob store backed by an IPFS (Kubo) node. Because the blob API is key/value CRUD-like
5
+ * and IPFS is content-addressed, an IpfsKeyIndex maps logical keys to CIDs.
6
+ */
7
+ import { type KuboRPCClient } from "kubo-rpc-client";
8
+ import { type ContextualArgs, type MaybeContextualArg } from "@decaf-ts/core";
9
+ import { BlobStoreService } from "../core/BlobStoreService.d.mts";
10
+ import type { BlobGetOptions, BlobGetResult, BlobKey, BlobListOptions, BlobListResult, BlobMetadata, BlobPutOptions, BlobPutResult, BlobUrlOptions, BlobUrlResult, BlobValue, IpfsBlobStoreServiceConfig } from "../core/BlobTypes.d.mts";
11
+ export declare class IpfsBlobStoreService extends BlobStoreService<KuboRPCClient, IpfsBlobStoreServiceConfig> {
12
+ private index;
13
+ initialize(...args: ContextualArgs<any>): Promise<{
14
+ config: IpfsBlobStoreServiceConfig;
15
+ client: KuboRPCClient;
16
+ }>;
17
+ put(key: BlobKey, value: BlobValue, options?: BlobPutOptions, ...args: MaybeContextualArg<any>): Promise<BlobPutResult>;
18
+ get(key: BlobKey, options?: BlobGetOptions, ...args: MaybeContextualArg<any>): Promise<BlobGetResult>;
19
+ has(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<boolean>;
20
+ stat(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<BlobMetadata>;
21
+ delete(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<void>;
22
+ copy(fromKey: BlobKey, toKey: BlobKey, options?: BlobPutOptions, ...args: MaybeContextualArg<any>): Promise<BlobPutResult>;
23
+ list(options?: BlobListOptions, ...args: MaybeContextualArg<any>): Promise<BlobListResult>;
24
+ url(key: BlobKey, options?: BlobUrlOptions, ...args: MaybeContextualArg<any>): Promise<BlobUrlResult>;
25
+ protected parseError(error: unknown): Error;
26
+ }
@@ -0,0 +1,9 @@
1
+ import type { BlobListResult, BlobMetadata, IpfsKeyIndexConfig } from "../core/BlobTypes.d.cts";
2
+ export interface IpfsKeyIndex {
3
+ get(key: string): Promise<string | undefined>;
4
+ set(key: string, cid: string, metadata?: BlobMetadata): Promise<void>;
5
+ delete(key: string): Promise<void>;
6
+ list(prefix?: string, limit?: number, cursor?: string): Promise<BlobListResult>;
7
+ stat(key: string): Promise<BlobMetadata>;
8
+ }
9
+ export declare function createIpfsKeyIndex(config: IpfsKeyIndexConfig): IpfsKeyIndex;
@@ -0,0 +1,9 @@
1
+ import type { BlobListResult, BlobMetadata, IpfsKeyIndexConfig } from "../core/BlobTypes.d.mts";
2
+ export interface IpfsKeyIndex {
3
+ get(key: string): Promise<string | undefined>;
4
+ set(key: string, cid: string, metadata?: BlobMetadata): Promise<void>;
5
+ delete(key: string): Promise<void>;
6
+ list(prefix?: string, limit?: number, cursor?: string): Promise<BlobListResult>;
7
+ stat(key: string): Promise<BlobMetadata>;
8
+ }
9
+ export declare function createIpfsKeyIndex(config: IpfsKeyIndexConfig): IpfsKeyIndex;
@@ -0,0 +1,11 @@
1
+ import type { BlobListResult, BlobMetadata } from "../core/BlobTypes.d.cts";
2
+ import type { IpfsKeyIndex } from "./IpfsKeyIndex.d.cts";
3
+ export declare class LocalJsonIpfsKeyIndex implements IpfsKeyIndex {
4
+ private readonly path;
5
+ constructor(path: string);
6
+ get(key: string): Promise<string | undefined>;
7
+ set(key: string, cid: string, metadata?: BlobMetadata): Promise<void>;
8
+ delete(key: string): Promise<void>;
9
+ list(prefix?: string, limit?: number, cursor?: string): Promise<BlobListResult>;
10
+ stat(key: string): Promise<BlobMetadata>;
11
+ }
@@ -0,0 +1,11 @@
1
+ import type { BlobListResult, BlobMetadata } from "../core/BlobTypes.d.mts";
2
+ import type { IpfsKeyIndex } from "./IpfsKeyIndex.d.mts";
3
+ export declare class LocalJsonIpfsKeyIndex implements IpfsKeyIndex {
4
+ private readonly path;
5
+ constructor(path: string);
6
+ get(key: string): Promise<string | undefined>;
7
+ set(key: string, cid: string, metadata?: BlobMetadata): Promise<void>;
8
+ delete(key: string): Promise<void>;
9
+ list(prefix?: string, limit?: number, cursor?: string): Promise<BlobListResult>;
10
+ stat(key: string): Promise<BlobMetadata>;
11
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @module integrations/blob/ipfs/memory-index
3
+ * @summary In-memory IPFS key index.
4
+ * @description Process-local Map-backed key index for tests and examples.
5
+ */
6
+ import type { BlobListResult, BlobMetadata } from "../core/BlobTypes.d.cts";
7
+ import type { IpfsKeyIndex } from "./IpfsKeyIndex.d.cts";
8
+ export declare class MemoryIpfsKeyIndex implements IpfsKeyIndex {
9
+ private readonly values;
10
+ get(key: string): Promise<string | undefined>;
11
+ set(key: string, cid: string, metadata?: BlobMetadata): Promise<void>;
12
+ delete(key: string): Promise<void>;
13
+ list(prefix?: string, limit?: number, cursor?: string): Promise<BlobListResult>;
14
+ stat(key: string): Promise<BlobMetadata>;
15
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @module integrations/blob/ipfs/memory-index
3
+ * @summary In-memory IPFS key index.
4
+ * @description Process-local Map-backed key index for tests and examples.
5
+ */
6
+ import type { BlobListResult, BlobMetadata } from "../core/BlobTypes.d.mts";
7
+ import type { IpfsKeyIndex } from "./IpfsKeyIndex.d.mts";
8
+ export declare class MemoryIpfsKeyIndex implements IpfsKeyIndex {
9
+ private readonly values;
10
+ get(key: string): Promise<string | undefined>;
11
+ set(key: string, cid: string, metadata?: BlobMetadata): Promise<void>;
12
+ delete(key: string): Promise<void>;
13
+ list(prefix?: string, limit?: number, cursor?: string): Promise<BlobListResult>;
14
+ stat(key: string): Promise<BlobMetadata>;
15
+ }
@@ -0,0 +1,11 @@
1
+ import type { BlobListResult, BlobMetadata } from "../core/BlobTypes.d.cts";
2
+ import type { IpfsKeyIndex } from "./IpfsKeyIndex.d.cts";
3
+ export declare class PostgresIpfsKeyIndex implements IpfsKeyIndex {
4
+ private readonly connectionRef;
5
+ constructor(connectionRef: string);
6
+ get(key: string): Promise<string | undefined>;
7
+ set(key: string, cid: string, metadata?: BlobMetadata): Promise<void>;
8
+ delete(key: string): Promise<void>;
9
+ list(prefix?: string, limit?: number, cursor?: string): Promise<BlobListResult>;
10
+ stat(key: string): Promise<BlobMetadata>;
11
+ }
@@ -0,0 +1,11 @@
1
+ import type { BlobListResult, BlobMetadata } from "../core/BlobTypes.d.mts";
2
+ import type { IpfsKeyIndex } from "./IpfsKeyIndex.d.mts";
3
+ export declare class PostgresIpfsKeyIndex implements IpfsKeyIndex {
4
+ private readonly connectionRef;
5
+ constructor(connectionRef: string);
6
+ get(key: string): Promise<string | undefined>;
7
+ set(key: string, cid: string, metadata?: BlobMetadata): Promise<void>;
8
+ delete(key: string): Promise<void>;
9
+ list(prefix?: string, limit?: number, cursor?: string): Promise<BlobListResult>;
10
+ stat(key: string): Promise<BlobMetadata>;
11
+ }
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @module integrations/blob/ipfs
3
+ * @summary IPFS blob store exports.
4
+ * @description Re-exports the IPFS blob store service and key-index abstraction.
5
+ */
6
+ export * from "./IpfsBlobStoreService.d.cts";
7
+ export * from "./IpfsKeyIndex.d.cts";
8
+ export * from "./MemoryIpfsKeyIndex.d.cts";
9
+ export * from "./PostgresIpfsKeyIndex.d.cts";
10
+ export * from "./LocalJsonIpfsKeyIndex.d.cts";
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @module integrations/blob/ipfs
3
+ * @summary IPFS blob store exports.
4
+ * @description Re-exports the IPFS blob store service and key-index abstraction.
5
+ */
6
+ export * from "./IpfsBlobStoreService.d.mts";
7
+ export * from "./IpfsKeyIndex.d.mts";
8
+ export * from "./MemoryIpfsKeyIndex.d.mts";
9
+ export * from "./PostgresIpfsKeyIndex.d.mts";
10
+ export * from "./LocalJsonIpfsKeyIndex.d.mts";
@@ -0,0 +1,30 @@
1
+ /**
2
+ * @module integrations/blob/local/service
3
+ * @summary Local filesystem blob store service.
4
+ * @description Filesystem-backed blob store wrapping node:fs with atomic writes and path-traversal protection.
5
+ */
6
+ import { type ContextualArgs, type MaybeContextualArg } from "@decaf-ts/core";
7
+ import { BlobStoreService } from "../core/BlobStoreService.d.cts";
8
+ import type { BlobGetOptions, BlobGetResult, BlobKey, BlobListOptions, BlobListResult, BlobMetadata, BlobPutOptions, BlobPutResult, BlobUrlOptions, BlobUrlResult, BlobValue, LocalBlobStoreServiceConfig } from "../core/BlobTypes.d.cts";
9
+ interface LocalFsClient {
10
+ root: string;
11
+ }
12
+ export declare class LocalBlobStoreService extends BlobStoreService<LocalFsClient, LocalBlobStoreServiceConfig> {
13
+ initialize(...args: ContextualArgs<any>): Promise<{
14
+ config: LocalBlobStoreServiceConfig;
15
+ client: LocalFsClient;
16
+ }>;
17
+ put(key: BlobKey, value: BlobValue, options?: BlobPutOptions, ...args: MaybeContextualArg<any>): Promise<BlobPutResult>;
18
+ get(key: BlobKey, options?: BlobGetOptions, ...args: MaybeContextualArg<any>): Promise<BlobGetResult>;
19
+ has(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<boolean>;
20
+ stat(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<BlobMetadata>;
21
+ delete(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<void>;
22
+ copy(fromKey: BlobKey, toKey: BlobKey, options?: BlobPutOptions, ...args: MaybeContextualArg<any>): Promise<BlobPutResult>;
23
+ list(options?: BlobListOptions, ...args: MaybeContextualArg<any>): Promise<BlobListResult>;
24
+ url(key: BlobKey, options?: BlobUrlOptions, ...args: MaybeContextualArg<any>): Promise<BlobUrlResult>;
25
+ protected parseError(error: unknown): Error;
26
+ private safePath;
27
+ private safeStat;
28
+ private atomicWrite;
29
+ }
30
+ export {};
@@ -0,0 +1,30 @@
1
+ /**
2
+ * @module integrations/blob/local/service
3
+ * @summary Local filesystem blob store service.
4
+ * @description Filesystem-backed blob store wrapping node:fs with atomic writes and path-traversal protection.
5
+ */
6
+ import { type ContextualArgs, type MaybeContextualArg } from "@decaf-ts/core";
7
+ import { BlobStoreService } from "../core/BlobStoreService.d.mts";
8
+ import type { BlobGetOptions, BlobGetResult, BlobKey, BlobListOptions, BlobListResult, BlobMetadata, BlobPutOptions, BlobPutResult, BlobUrlOptions, BlobUrlResult, BlobValue, LocalBlobStoreServiceConfig } from "../core/BlobTypes.d.mts";
9
+ interface LocalFsClient {
10
+ root: string;
11
+ }
12
+ export declare class LocalBlobStoreService extends BlobStoreService<LocalFsClient, LocalBlobStoreServiceConfig> {
13
+ initialize(...args: ContextualArgs<any>): Promise<{
14
+ config: LocalBlobStoreServiceConfig;
15
+ client: LocalFsClient;
16
+ }>;
17
+ put(key: BlobKey, value: BlobValue, options?: BlobPutOptions, ...args: MaybeContextualArg<any>): Promise<BlobPutResult>;
18
+ get(key: BlobKey, options?: BlobGetOptions, ...args: MaybeContextualArg<any>): Promise<BlobGetResult>;
19
+ has(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<boolean>;
20
+ stat(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<BlobMetadata>;
21
+ delete(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<void>;
22
+ copy(fromKey: BlobKey, toKey: BlobKey, options?: BlobPutOptions, ...args: MaybeContextualArg<any>): Promise<BlobPutResult>;
23
+ list(options?: BlobListOptions, ...args: MaybeContextualArg<any>): Promise<BlobListResult>;
24
+ url(key: BlobKey, options?: BlobUrlOptions, ...args: MaybeContextualArg<any>): Promise<BlobUrlResult>;
25
+ protected parseError(error: unknown): Error;
26
+ private safePath;
27
+ private safeStat;
28
+ private atomicWrite;
29
+ }
30
+ export {};
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @module integrations/blob/local
3
+ * @summary Local filesystem blob store exports.
4
+ * @description Re-exports the local filesystem blob store service.
5
+ */
6
+ export * from "./LocalBlobStoreService.d.cts";
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @module integrations/blob/local
3
+ * @summary Local filesystem blob store exports.
4
+ * @description Re-exports the local filesystem blob store service.
5
+ */
6
+ export * from "./LocalBlobStoreService.d.mts";
@@ -0,0 +1,28 @@
1
+ /**
2
+ * @module integrations/blob/memory/service
3
+ * @summary In-memory blob store service.
4
+ * @description Process-local Map-backed blob store for tests and examples. No SDK dependency.
5
+ */
6
+ import { type ContextualArgs, type MaybeContextualArg } from "@decaf-ts/core";
7
+ import { BlobStoreService } from "../core/BlobStoreService.d.cts";
8
+ import type { BlobGetOptions, BlobGetResult, BlobKey, BlobListOptions, BlobListResult, BlobMetadata, BlobPutOptions, BlobPutResult, BlobStoreServiceConfig, BlobUrlOptions, BlobUrlResult, BlobValue } from "../core/BlobTypes.d.cts";
9
+ interface MemoryEntry {
10
+ value: Buffer;
11
+ metadata: BlobMetadata;
12
+ }
13
+ export declare class MemoryBlobStoreService extends BlobStoreService<Map<string, MemoryEntry>, BlobStoreServiceConfig> {
14
+ initialize(...args: ContextualArgs<any>): Promise<{
15
+ config: BlobStoreServiceConfig;
16
+ client: Map<string, MemoryEntry>;
17
+ }>;
18
+ put(key: BlobKey, value: BlobValue, options?: BlobPutOptions, ...args: MaybeContextualArg<any>): Promise<BlobPutResult>;
19
+ get(key: BlobKey, options?: BlobGetOptions, ...args: MaybeContextualArg<any>): Promise<BlobGetResult>;
20
+ has(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<boolean>;
21
+ stat(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<BlobMetadata>;
22
+ delete(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<void>;
23
+ copy(fromKey: BlobKey, toKey: BlobKey, options?: BlobPutOptions, ...args: MaybeContextualArg<any>): Promise<BlobPutResult>;
24
+ list(options?: BlobListOptions, ...args: MaybeContextualArg<any>): Promise<BlobListResult>;
25
+ url(key: BlobKey, options?: BlobUrlOptions, ...args: MaybeContextualArg<any>): Promise<BlobUrlResult>;
26
+ protected parseError(error: unknown): Error;
27
+ }
28
+ export {};
@@ -0,0 +1,28 @@
1
+ /**
2
+ * @module integrations/blob/memory/service
3
+ * @summary In-memory blob store service.
4
+ * @description Process-local Map-backed blob store for tests and examples. No SDK dependency.
5
+ */
6
+ import { type ContextualArgs, type MaybeContextualArg } from "@decaf-ts/core";
7
+ import { BlobStoreService } from "../core/BlobStoreService.d.mts";
8
+ import type { BlobGetOptions, BlobGetResult, BlobKey, BlobListOptions, BlobListResult, BlobMetadata, BlobPutOptions, BlobPutResult, BlobStoreServiceConfig, BlobUrlOptions, BlobUrlResult, BlobValue } from "../core/BlobTypes.d.mts";
9
+ interface MemoryEntry {
10
+ value: Buffer;
11
+ metadata: BlobMetadata;
12
+ }
13
+ export declare class MemoryBlobStoreService extends BlobStoreService<Map<string, MemoryEntry>, BlobStoreServiceConfig> {
14
+ initialize(...args: ContextualArgs<any>): Promise<{
15
+ config: BlobStoreServiceConfig;
16
+ client: Map<string, MemoryEntry>;
17
+ }>;
18
+ put(key: BlobKey, value: BlobValue, options?: BlobPutOptions, ...args: MaybeContextualArg<any>): Promise<BlobPutResult>;
19
+ get(key: BlobKey, options?: BlobGetOptions, ...args: MaybeContextualArg<any>): Promise<BlobGetResult>;
20
+ has(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<boolean>;
21
+ stat(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<BlobMetadata>;
22
+ delete(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<void>;
23
+ copy(fromKey: BlobKey, toKey: BlobKey, options?: BlobPutOptions, ...args: MaybeContextualArg<any>): Promise<BlobPutResult>;
24
+ list(options?: BlobListOptions, ...args: MaybeContextualArg<any>): Promise<BlobListResult>;
25
+ url(key: BlobKey, options?: BlobUrlOptions, ...args: MaybeContextualArg<any>): Promise<BlobUrlResult>;
26
+ protected parseError(error: unknown): Error;
27
+ }
28
+ export {};
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @module integrations/blob/memory
3
+ * @summary In-memory blob store exports.
4
+ * @description Re-exports the in-memory blob store service.
5
+ */
6
+ export * from "./MemoryBlobStoreService.d.cts";
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @module integrations/blob/memory
3
+ * @summary In-memory blob store exports.
4
+ * @description Re-exports the in-memory blob store service.
5
+ */
6
+ export * from "./MemoryBlobStoreService.d.mts";
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @module integrations/blob/s3/minio
3
+ * @summary MinIO blob store service.
4
+ * @description S3-compatible blob store for MinIO. Extends S3BlobStoreService.
5
+ */
6
+ import { S3BlobStoreService } from "./S3BlobStoreService.d.cts";
7
+ export declare class MinioBlobStoreService extends S3BlobStoreService {
8
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @module integrations/blob/s3/minio
3
+ * @summary MinIO blob store service.
4
+ * @description S3-compatible blob store for MinIO. Extends S3BlobStoreService.
5
+ */
6
+ import { S3BlobStoreService } from "./S3BlobStoreService.d.mts";
7
+ export declare class MinioBlobStoreService extends S3BlobStoreService {
8
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @module integrations/blob/s3/r2
3
+ * @summary Cloudflare R2 blob store service.
4
+ * @description S3-compatible blob store for Cloudflare R2. Extends S3BlobStoreService.
5
+ */
6
+ import { S3BlobStoreService } from "./S3BlobStoreService.d.cts";
7
+ export declare class R2BlobStoreService extends S3BlobStoreService {
8
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @module integrations/blob/s3/r2
3
+ * @summary Cloudflare R2 blob store service.
4
+ * @description S3-compatible blob store for Cloudflare R2. Extends S3BlobStoreService.
5
+ */
6
+ import { S3BlobStoreService } from "./S3BlobStoreService.d.mts";
7
+ export declare class R2BlobStoreService extends S3BlobStoreService {
8
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * @module integrations/blob/s3/service
3
+ * @summary S3-compatible blob store service.
4
+ * @description Blob store backed by AWS S3, MinIO, and Cloudflare R2 via the AWS SDK v3 S3Client.
5
+ */
6
+ import { S3Client } from "@aws-sdk/client-s3";
7
+ import { type ContextualArgs, type MaybeContextualArg } from "@decaf-ts/core";
8
+ import { BlobStoreService } from "../core/BlobStoreService.d.cts";
9
+ import type { BlobGetOptions, BlobGetResult, BlobKey, BlobListOptions, BlobListResult, BlobMetadata, BlobPutOptions, BlobPutResult, BlobUrlOptions, BlobUrlResult, BlobValue, S3BlobStoreServiceConfig } from "../core/BlobTypes.d.cts";
10
+ export declare class S3BlobStoreService extends BlobStoreService<S3Client, S3BlobStoreServiceConfig> {
11
+ initialize(...args: ContextualArgs<any>): Promise<{
12
+ config: S3BlobStoreServiceConfig;
13
+ client: S3Client;
14
+ }>;
15
+ put(key: BlobKey, value: BlobValue, options?: BlobPutOptions, ...args: MaybeContextualArg<any>): Promise<BlobPutResult>;
16
+ get(key: BlobKey, options?: BlobGetOptions, ...args: MaybeContextualArg<any>): Promise<BlobGetResult>;
17
+ has(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<boolean>;
18
+ stat(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<BlobMetadata>;
19
+ delete(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<void>;
20
+ copy(fromKey: BlobKey, toKey: BlobKey, options?: BlobPutOptions, ...args: MaybeContextualArg<any>): Promise<BlobPutResult>;
21
+ list(options?: BlobListOptions, ...args: MaybeContextualArg<any>): Promise<BlobListResult>;
22
+ url(key: BlobKey, options?: BlobUrlOptions, ...args: MaybeContextualArg<any>): Promise<BlobUrlResult>;
23
+ protected parseError(error: unknown): Error;
24
+ private ensureBucket;
25
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * @module integrations/blob/s3/service
3
+ * @summary S3-compatible blob store service.
4
+ * @description Blob store backed by AWS S3, MinIO, and Cloudflare R2 via the AWS SDK v3 S3Client.
5
+ */
6
+ import { S3Client } from "@aws-sdk/client-s3";
7
+ import { type ContextualArgs, type MaybeContextualArg } from "@decaf-ts/core";
8
+ import { BlobStoreService } from "../core/BlobStoreService.d.mts";
9
+ import type { BlobGetOptions, BlobGetResult, BlobKey, BlobListOptions, BlobListResult, BlobMetadata, BlobPutOptions, BlobPutResult, BlobUrlOptions, BlobUrlResult, BlobValue, S3BlobStoreServiceConfig } from "../core/BlobTypes.d.mts";
10
+ export declare class S3BlobStoreService extends BlobStoreService<S3Client, S3BlobStoreServiceConfig> {
11
+ initialize(...args: ContextualArgs<any>): Promise<{
12
+ config: S3BlobStoreServiceConfig;
13
+ client: S3Client;
14
+ }>;
15
+ put(key: BlobKey, value: BlobValue, options?: BlobPutOptions, ...args: MaybeContextualArg<any>): Promise<BlobPutResult>;
16
+ get(key: BlobKey, options?: BlobGetOptions, ...args: MaybeContextualArg<any>): Promise<BlobGetResult>;
17
+ has(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<boolean>;
18
+ stat(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<BlobMetadata>;
19
+ delete(key: BlobKey, ...args: MaybeContextualArg<any>): Promise<void>;
20
+ copy(fromKey: BlobKey, toKey: BlobKey, options?: BlobPutOptions, ...args: MaybeContextualArg<any>): Promise<BlobPutResult>;
21
+ list(options?: BlobListOptions, ...args: MaybeContextualArg<any>): Promise<BlobListResult>;
22
+ url(key: BlobKey, options?: BlobUrlOptions, ...args: MaybeContextualArg<any>): Promise<BlobUrlResult>;
23
+ protected parseError(error: unknown): Error;
24
+ private ensureBucket;
25
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @module integrations/blob/s3
3
+ * @summary S3-compatible blob store exports.
4
+ * @description Re-exports the S3, MinIO, and R2 blob store services.
5
+ */
6
+ export * from "./S3BlobStoreService.d.cts";
7
+ export * from "./MinioBlobStoreService.d.cts";
8
+ export * from "./R2BlobStoreService.d.cts";
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @module integrations/blob/s3
3
+ * @summary S3-compatible blob store exports.
4
+ * @description Re-exports the S3, MinIO, and R2 blob store services.
5
+ */
6
+ export * from "./S3BlobStoreService.d.mts";
7
+ export * from "./MinioBlobStoreService.d.mts";
8
+ export * from "./R2BlobStoreService.d.mts";
@@ -6,6 +6,12 @@ interface DockerComposeServiceConfig {
6
6
  interface DockerHealthCheckOptions {
7
7
  maxAttempts?: number;
8
8
  interval?: number;
9
+ /**
10
+ * When true (default), only HTTP 2xx responses count as healthy.
11
+ * When false, any HTTP response (i.e. the port is accepting connections) counts as healthy.
12
+ * Set to false for emulators that do not expose an unauthenticated 2xx health endpoint.
13
+ */
14
+ requireOk?: boolean;
9
15
  }
10
16
  export declare class DockerComposeService extends ClientBasedService<void, DockerComposeServiceConfig> {
11
17
  constructor();
@@ -6,6 +6,12 @@ interface DockerComposeServiceConfig {
6
6
  interface DockerHealthCheckOptions {
7
7
  maxAttempts?: number;
8
8
  interval?: number;
9
+ /**
10
+ * When true (default), only HTTP 2xx responses count as healthy.
11
+ * When false, any HTTP response (i.e. the port is accepting connections) counts as healthy.
12
+ * Set to false for emulators that do not expose an unauthenticated 2xx health endpoint.
13
+ */
14
+ requireOk?: boolean;
9
15
  }
10
16
  export declare class DockerComposeService extends ClientBasedService<void, DockerComposeServiceConfig> {
11
17
  constructor();
@@ -5,6 +5,6 @@
5
5
  */
6
6
  export * from "./utils.d.cts";
7
7
  export declare const VERSION: string;
8
- export declare const COMMIT = "3666be9";
9
- export declare const FULL_VERSION = "0.1.1-3666be9";
8
+ export declare const COMMIT = "35fecfa";
9
+ export declare const FULL_VERSION = "0.1.3-35fecfa";
10
10
  export declare const PACKAGE_NAME: string;
@@ -5,6 +5,6 @@
5
5
  */
6
6
  export * from "./utils.d.mts";
7
7
  export declare const VERSION: string;
8
- export declare const COMMIT = "3666be9";
9
- export declare const FULL_VERSION = "0.1.1-3666be9";
8
+ export declare const COMMIT = "35fecfa";
9
+ export declare const FULL_VERSION = "0.1.3-35fecfa";
10
10
  export declare const PACKAGE_NAME: string;