@dotdo/do 0.1.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.
- package/README.md +400 -0
- package/dist/ai/embeddings.d.ts +129 -0
- package/dist/ai/embeddings.d.ts.map +1 -0
- package/dist/ai/embeddings.js +217 -0
- package/dist/ai/embeddings.js.map +1 -0
- package/dist/ai/gateway.d.ts +139 -0
- package/dist/ai/gateway.d.ts.map +1 -0
- package/dist/ai/gateway.js +179 -0
- package/dist/ai/gateway.js.map +1 -0
- package/dist/ai/image.d.ts +140 -0
- package/dist/ai/image.d.ts.map +1 -0
- package/dist/ai/image.js +199 -0
- package/dist/ai/image.js.map +1 -0
- package/dist/ai/index.d.ts +98 -0
- package/dist/ai/index.d.ts.map +1 -0
- package/dist/ai/index.js +223 -0
- package/dist/ai/index.js.map +1 -0
- package/dist/ai/models.d.ts +81 -0
- package/dist/ai/models.d.ts.map +1 -0
- package/dist/ai/models.js +537 -0
- package/dist/ai/models.js.map +1 -0
- package/dist/ai/text.d.ts +176 -0
- package/dist/ai/text.d.ts.map +1 -0
- package/dist/ai/text.js +253 -0
- package/dist/ai/text.js.map +1 -0
- package/dist/ai/voice/agents.d.ts +224 -0
- package/dist/ai/voice/agents.d.ts.map +1 -0
- package/dist/ai/voice/agents.js +375 -0
- package/dist/ai/voice/agents.js.map +1 -0
- package/dist/ai/voice/campaigns.d.ts +307 -0
- package/dist/ai/voice/campaigns.d.ts.map +1 -0
- package/dist/ai/voice/campaigns.js +739 -0
- package/dist/ai/voice/campaigns.js.map +1 -0
- package/dist/ai/voice/index.d.ts +21 -0
- package/dist/ai/voice/index.d.ts.map +1 -0
- package/dist/ai/voice/index.js +42 -0
- package/dist/ai/voice/index.js.map +1 -0
- package/dist/ai/voice/providers.d.ts +283 -0
- package/dist/ai/voice/providers.d.ts.map +1 -0
- package/dist/ai/voice/providers.js +286 -0
- package/dist/ai/voice/providers.js.map +1 -0
- package/dist/ai/voice/sessions.d.ts +294 -0
- package/dist/ai/voice/sessions.d.ts.map +1 -0
- package/dist/ai/voice/sessions.js +531 -0
- package/dist/ai/voice/sessions.js.map +1 -0
- package/dist/ai/voice/tools.d.ts +242 -0
- package/dist/ai/voice/tools.d.ts.map +1 -0
- package/dist/ai/voice/tools.js +370 -0
- package/dist/ai/voice/tools.js.map +1 -0
- package/dist/ai/voice/tts.d.ts +173 -0
- package/dist/ai/voice/tts.d.ts.map +1 -0
- package/dist/ai/voice/tts.js +252 -0
- package/dist/ai/voice/tts.js.map +1 -0
- package/dist/ai/voice/webrtc.d.ts +228 -0
- package/dist/ai/voice/webrtc.d.ts.map +1 -0
- package/dist/ai/voice/webrtc.js +372 -0
- package/dist/ai/voice/webrtc.js.map +1 -0
- package/dist/api/index.d.ts +103 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +191 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/mcp/handlers.d.ts +25 -0
- package/dist/api/mcp/handlers.d.ts.map +1 -0
- package/dist/api/mcp/handlers.js +422 -0
- package/dist/api/mcp/handlers.js.map +1 -0
- package/dist/api/mcp/index.d.ts +113 -0
- package/dist/api/mcp/index.d.ts.map +1 -0
- package/dist/api/mcp/index.js +141 -0
- package/dist/api/mcp/index.js.map +1 -0
- package/dist/api/middleware/auth.d.ts +65 -0
- package/dist/api/middleware/auth.d.ts.map +1 -0
- package/dist/api/middleware/auth.js +271 -0
- package/dist/api/middleware/auth.js.map +1 -0
- package/dist/api/middleware/cors.d.ts +62 -0
- package/dist/api/middleware/cors.d.ts.map +1 -0
- package/dist/api/middleware/cors.js +225 -0
- package/dist/api/middleware/cors.js.map +1 -0
- package/dist/api/middleware/index.d.ts +60 -0
- package/dist/api/middleware/index.d.ts.map +1 -0
- package/dist/api/middleware/index.js +175 -0
- package/dist/api/middleware/index.js.map +1 -0
- package/dist/api/middleware/rateLimit.d.ts +84 -0
- package/dist/api/middleware/rateLimit.d.ts.map +1 -0
- package/dist/api/middleware/rateLimit.js +321 -0
- package/dist/api/middleware/rateLimit.js.map +1 -0
- package/dist/api/routes/ai.d.ts +17 -0
- package/dist/api/routes/ai.d.ts.map +1 -0
- package/dist/api/routes/ai.js +430 -0
- package/dist/api/routes/ai.js.map +1 -0
- package/dist/api/routes/do.d.ts +17 -0
- package/dist/api/routes/do.d.ts.map +1 -0
- package/dist/api/routes/do.js +458 -0
- package/dist/api/routes/do.js.map +1 -0
- package/dist/api/routes/functions.d.ts +111 -0
- package/dist/api/routes/functions.d.ts.map +1 -0
- package/dist/api/routes/functions.js +548 -0
- package/dist/api/routes/functions.js.map +1 -0
- package/dist/api/routes/health.d.ts +16 -0
- package/dist/api/routes/health.d.ts.map +1 -0
- package/dist/api/routes/health.js +163 -0
- package/dist/api/routes/health.js.map +1 -0
- package/dist/api/routes/index.d.ts +41 -0
- package/dist/api/routes/index.d.ts.map +1 -0
- package/dist/api/routes/index.js +275 -0
- package/dist/api/routes/index.js.map +1 -0
- package/dist/api/routes/nouns.d.ts +26 -0
- package/dist/api/routes/nouns.d.ts.map +1 -0
- package/dist/api/routes/nouns.js +456 -0
- package/dist/api/routes/nouns.js.map +1 -0
- package/dist/api/routes/orgs.d.ts +17 -0
- package/dist/api/routes/orgs.d.ts.map +1 -0
- package/dist/api/routes/orgs.js +560 -0
- package/dist/api/routes/orgs.js.map +1 -0
- package/dist/api/routes/relationships.d.ts +30 -0
- package/dist/api/routes/relationships.d.ts.map +1 -0
- package/dist/api/routes/relationships.js +360 -0
- package/dist/api/routes/relationships.js.map +1 -0
- package/dist/api/routes/roles.d.ts +17 -0
- package/dist/api/routes/roles.d.ts.map +1 -0
- package/dist/api/routes/roles.js +721 -0
- package/dist/api/routes/roles.js.map +1 -0
- package/dist/api/routes/things.d.ts +27 -0
- package/dist/api/routes/things.d.ts.map +1 -0
- package/dist/api/routes/things.js +568 -0
- package/dist/api/routes/things.js.map +1 -0
- package/dist/api/routes/users.d.ts +17 -0
- package/dist/api/routes/users.d.ts.map +1 -0
- package/dist/api/routes/users.js +401 -0
- package/dist/api/routes/users.js.map +1 -0
- package/dist/api/routes/verbs.d.ts +31 -0
- package/dist/api/routes/verbs.d.ts.map +1 -0
- package/dist/api/routes/verbs.js +505 -0
- package/dist/api/routes/verbs.js.map +1 -0
- package/dist/api/routes/workflows.d.ts +44 -0
- package/dist/api/routes/workflows.d.ts.map +1 -0
- package/dist/api/routes/workflows.js +521 -0
- package/dist/api/routes/workflows.js.map +1 -0
- package/dist/api/types.d.ts +370 -0
- package/dist/api/types.d.ts.map +1 -0
- package/dist/api/types.js +11 -0
- package/dist/api/types.js.map +1 -0
- package/dist/db/cdc/events.d.ts +201 -0
- package/dist/db/cdc/events.d.ts.map +1 -0
- package/dist/db/cdc/events.js +271 -0
- package/dist/db/cdc/events.js.map +1 -0
- package/dist/db/cdc/index.d.ts +13 -0
- package/dist/db/cdc/index.d.ts.map +1 -0
- package/dist/db/cdc/index.js +16 -0
- package/dist/db/cdc/index.js.map +1 -0
- package/dist/db/cdc/replay.d.ts +388 -0
- package/dist/db/cdc/replay.d.ts.map +1 -0
- package/dist/db/cdc/replay.js +469 -0
- package/dist/db/cdc/replay.js.map +1 -0
- package/dist/db/cdc/storage.d.ts +567 -0
- package/dist/db/cdc/storage.d.ts.map +1 -0
- package/dist/db/cdc/storage.js +856 -0
- package/dist/db/cdc/storage.js.map +1 -0
- package/dist/db/cdc/streaming.d.ts +459 -0
- package/dist/db/cdc/streaming.d.ts.map +1 -0
- package/dist/db/cdc/streaming.js +636 -0
- package/dist/db/cdc/streaming.js.map +1 -0
- package/dist/db/collections/actions.d.ts +440 -0
- package/dist/db/collections/actions.d.ts.map +1 -0
- package/dist/db/collections/actions.js +631 -0
- package/dist/db/collections/actions.js.map +1 -0
- package/dist/db/collections/base.d.ts +342 -0
- package/dist/db/collections/base.d.ts.map +1 -0
- package/dist/db/collections/base.js +510 -0
- package/dist/db/collections/base.js.map +1 -0
- package/dist/db/collections/index.d.ts +50 -0
- package/dist/db/collections/index.d.ts.map +1 -0
- package/dist/db/collections/index.js +48 -0
- package/dist/db/collections/index.js.map +1 -0
- package/dist/db/collections/nouns.d.ts +260 -0
- package/dist/db/collections/nouns.d.ts.map +1 -0
- package/dist/db/collections/nouns.js +273 -0
- package/dist/db/collections/nouns.js.map +1 -0
- package/dist/db/collections/relationships.d.ts +484 -0
- package/dist/db/collections/relationships.d.ts.map +1 -0
- package/dist/db/collections/relationships.js +815 -0
- package/dist/db/collections/relationships.js.map +1 -0
- package/dist/db/collections/things.d.ts +439 -0
- package/dist/db/collections/things.d.ts.map +1 -0
- package/dist/db/collections/things.js +603 -0
- package/dist/db/collections/things.js.map +1 -0
- package/dist/db/collections/verbs.d.ts +308 -0
- package/dist/db/collections/verbs.d.ts.map +1 -0
- package/dist/db/collections/verbs.js +480 -0
- package/dist/db/collections/verbs.js.map +1 -0
- package/dist/db/index.d.ts +14 -0
- package/dist/db/index.d.ts.map +1 -0
- package/dist/db/index.js +23 -0
- package/dist/db/index.js.map +1 -0
- package/dist/db/storage/cold.d.ts +313 -0
- package/dist/db/storage/cold.d.ts.map +1 -0
- package/dist/db/storage/cold.js +319 -0
- package/dist/db/storage/cold.js.map +1 -0
- package/dist/db/storage/hot.d.ts +340 -0
- package/dist/db/storage/hot.d.ts.map +1 -0
- package/dist/db/storage/hot.js +333 -0
- package/dist/db/storage/hot.js.map +1 -0
- package/dist/db/storage/index.d.ts +242 -0
- package/dist/db/storage/index.d.ts.map +1 -0
- package/dist/db/storage/index.js +109 -0
- package/dist/db/storage/index.js.map +1 -0
- package/dist/db/storage/snapshots.d.ts +342 -0
- package/dist/db/storage/snapshots.d.ts.map +1 -0
- package/dist/db/storage/snapshots.js +298 -0
- package/dist/db/storage/snapshots.js.map +1 -0
- package/dist/db/storage/vortex.d.ts +324 -0
- package/dist/db/storage/vortex.d.ts.map +1 -0
- package/dist/db/storage/vortex.js +365 -0
- package/dist/db/storage/vortex.js.map +1 -0
- package/dist/db/storage/warm.d.ts +306 -0
- package/dist/db/storage/warm.d.ts.map +1 -0
- package/dist/db/storage/warm.js +339 -0
- package/dist/db/storage/warm.js.map +1 -0
- package/dist/do/DigitalObject.d.ts +595 -0
- package/dist/do/DigitalObject.d.ts.map +1 -0
- package/dist/do/DigitalObject.js +971 -0
- package/dist/do/DigitalObject.js.map +1 -0
- package/dist/do/business/financial/accounting.d.ts +436 -0
- package/dist/do/business/financial/accounting.d.ts.map +1 -0
- package/dist/do/business/financial/accounting.js +476 -0
- package/dist/do/business/financial/accounting.js.map +1 -0
- package/dist/do/business/financial/index.d.ts +15 -0
- package/dist/do/business/financial/index.d.ts.map +1 -0
- package/dist/do/business/financial/index.js +20 -0
- package/dist/do/business/financial/index.js.map +1 -0
- package/dist/do/business/financial/metrics.d.ts +370 -0
- package/dist/do/business/financial/metrics.d.ts.map +1 -0
- package/dist/do/business/financial/metrics.js +376 -0
- package/dist/do/business/financial/metrics.js.map +1 -0
- package/dist/do/business/financial/payments.d.ts +397 -0
- package/dist/do/business/financial/payments.d.ts.map +1 -0
- package/dist/do/business/financial/payments.js +395 -0
- package/dist/do/business/financial/payments.js.map +1 -0
- package/dist/do/business/financial/reports.d.ts +284 -0
- package/dist/do/business/financial/reports.d.ts.map +1 -0
- package/dist/do/business/financial/reports.js +347 -0
- package/dist/do/business/financial/reports.js.map +1 -0
- package/dist/do/business/financial/stripe.d.ts +254 -0
- package/dist/do/business/financial/stripe.d.ts.map +1 -0
- package/dist/do/business/financial/stripe.js +261 -0
- package/dist/do/business/financial/stripe.js.map +1 -0
- package/dist/do/business/financial/subscriptions.d.ts +402 -0
- package/dist/do/business/financial/subscriptions.d.ts.map +1 -0
- package/dist/do/business/financial/subscriptions.js +349 -0
- package/dist/do/business/financial/subscriptions.js.map +1 -0
- package/dist/do/business/index.d.ts +9 -0
- package/dist/do/business/index.d.ts.map +1 -0
- package/dist/do/business/index.js +10 -0
- package/dist/do/business/index.js.map +1 -0
- package/dist/do/colo/followers.d.ts +194 -0
- package/dist/do/colo/followers.d.ts.map +1 -0
- package/dist/do/colo/followers.js +224 -0
- package/dist/do/colo/followers.js.map +1 -0
- package/dist/do/colo/fork.d.ts +103 -0
- package/dist/do/colo/fork.d.ts.map +1 -0
- package/dist/do/colo/fork.js +143 -0
- package/dist/do/colo/fork.js.map +1 -0
- package/dist/do/colo/index.d.ts +181 -0
- package/dist/do/colo/index.d.ts.map +1 -0
- package/dist/do/colo/index.js +145 -0
- package/dist/do/colo/index.js.map +1 -0
- package/dist/do/colo/info.d.ts +106 -0
- package/dist/do/colo/info.d.ts.map +1 -0
- package/dist/do/colo/info.js +196 -0
- package/dist/do/colo/info.js.map +1 -0
- package/dist/do/colo/migrate.d.ts +161 -0
- package/dist/do/colo/migrate.d.ts.map +1 -0
- package/dist/do/colo/migrate.js +190 -0
- package/dist/do/colo/migrate.js.map +1 -0
- package/dist/do/colo/routing.d.ts +182 -0
- package/dist/do/colo/routing.d.ts.map +1 -0
- package/dist/do/colo/routing.js +254 -0
- package/dist/do/colo/routing.js.map +1 -0
- package/dist/do/domains/dns.d.ts +269 -0
- package/dist/do/domains/dns.d.ts.map +1 -0
- package/dist/do/domains/dns.js +215 -0
- package/dist/do/domains/dns.js.map +1 -0
- package/dist/do/domains/index.d.ts +40 -0
- package/dist/do/domains/index.d.ts.map +1 -0
- package/dist/do/domains/index.js +61 -0
- package/dist/do/domains/index.js.map +1 -0
- package/dist/do/domains/routing.d.ts +263 -0
- package/dist/do/domains/routing.d.ts.map +1 -0
- package/dist/do/domains/routing.js +362 -0
- package/dist/do/domains/routing.js.map +1 -0
- package/dist/do/domains/ssl.d.ts +217 -0
- package/dist/do/domains/ssl.d.ts.map +1 -0
- package/dist/do/domains/ssl.js +231 -0
- package/dist/do/domains/ssl.js.map +1 -0
- package/dist/do/domains/subdomains.d.ts +207 -0
- package/dist/do/domains/subdomains.d.ts.map +1 -0
- package/dist/do/domains/subdomains.js +223 -0
- package/dist/do/domains/subdomains.js.map +1 -0
- package/dist/do/domains/tlds.d.ts +175 -0
- package/dist/do/domains/tlds.d.ts.map +1 -0
- package/dist/do/domains/tlds.js +188 -0
- package/dist/do/domains/tlds.js.map +1 -0
- package/dist/do/domains/validation.d.ts +164 -0
- package/dist/do/domains/validation.d.ts.map +1 -0
- package/dist/do/domains/validation.js +290 -0
- package/dist/do/domains/validation.js.map +1 -0
- package/dist/do/hibernation.d.ts +385 -0
- package/dist/do/hibernation.d.ts.map +1 -0
- package/dist/do/hibernation.js +518 -0
- package/dist/do/hibernation.js.map +1 -0
- package/dist/do/index.d.ts +19 -0
- package/dist/do/index.d.ts.map +1 -0
- package/dist/do/index.js +23 -0
- package/dist/do/index.js.map +1 -0
- package/dist/do/state.d.ts +336 -0
- package/dist/do/state.d.ts.map +1 -0
- package/dist/do/state.js +290 -0
- package/dist/do/state.js.map +1 -0
- package/dist/index.d.ts +44 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +89 -0
- package/dist/index.js.map +1 -0
- package/dist/rpc/client.d.ts +426 -0
- package/dist/rpc/client.d.ts.map +1 -0
- package/dist/rpc/client.js +826 -0
- package/dist/rpc/client.js.map +1 -0
- package/dist/rpc/index.d.ts +19 -0
- package/dist/rpc/index.d.ts.map +1 -0
- package/dist/rpc/index.js +23 -0
- package/dist/rpc/index.js.map +1 -0
- package/dist/rpc/methods.d.ts +364 -0
- package/dist/rpc/methods.d.ts.map +1 -0
- package/dist/rpc/methods.js +557 -0
- package/dist/rpc/methods.js.map +1 -0
- package/dist/rpc/protocol.d.ts +310 -0
- package/dist/rpc/protocol.d.ts.map +1 -0
- package/dist/rpc/protocol.js +672 -0
- package/dist/rpc/protocol.js.map +1 -0
- package/dist/rpc/routes.d.ts +332 -0
- package/dist/rpc/routes.d.ts.map +1 -0
- package/dist/rpc/routes.js +633 -0
- package/dist/rpc/routes.js.map +1 -0
- package/dist/rpc/server.d.ts +380 -0
- package/dist/rpc/server.d.ts.map +1 -0
- package/dist/rpc/server.js +850 -0
- package/dist/rpc/server.js.map +1 -0
- package/dist/sdk/auth.d.ts +201 -0
- package/dist/sdk/auth.d.ts.map +1 -0
- package/dist/sdk/auth.js +343 -0
- package/dist/sdk/auth.js.map +1 -0
- package/dist/sdk/client.d.ts +123 -0
- package/dist/sdk/client.d.ts.map +1 -0
- package/dist/sdk/client.js +403 -0
- package/dist/sdk/client.js.map +1 -0
- package/dist/sdk/index.d.ts +123 -0
- package/dist/sdk/index.d.ts.map +1 -0
- package/dist/sdk/index.js +230 -0
- package/dist/sdk/index.js.map +1 -0
- package/dist/sdk/rpc.d.ts +275 -0
- package/dist/sdk/rpc.d.ts.map +1 -0
- package/dist/sdk/rpc.js +249 -0
- package/dist/sdk/rpc.js.map +1 -0
- package/dist/sdk/transport.d.ts +283 -0
- package/dist/sdk/transport.d.ts.map +1 -0
- package/dist/sdk/transport.js +661 -0
- package/dist/sdk/transport.js.map +1 -0
- package/dist/sdk/types.d.ts +265 -0
- package/dist/sdk/types.d.ts.map +1 -0
- package/dist/sdk/types.js +27 -0
- package/dist/sdk/types.js.map +1 -0
- package/dist/types/ai.d.ts +533 -0
- package/dist/types/ai.d.ts.map +1 -0
- package/dist/types/ai.js +18 -0
- package/dist/types/ai.js.map +1 -0
- package/dist/types/app.d.ts +371 -0
- package/dist/types/app.d.ts.map +1 -0
- package/dist/types/app.js +151 -0
- package/dist/types/app.js.map +1 -0
- package/dist/types/business.d.ts +482 -0
- package/dist/types/business.d.ts.map +1 -0
- package/dist/types/business.js +60 -0
- package/dist/types/business.js.map +1 -0
- package/dist/types/cascade.d.ts +323 -0
- package/dist/types/cascade.d.ts.map +1 -0
- package/dist/types/cascade.js +82 -0
- package/dist/types/cascade.js.map +1 -0
- package/dist/types/collections.d.ts +704 -0
- package/dist/types/collections.d.ts.map +1 -0
- package/dist/types/collections.js +23 -0
- package/dist/types/collections.js.map +1 -0
- package/dist/types/colo.d.ts +171 -0
- package/dist/types/colo.d.ts.map +1 -0
- package/dist/types/colo.js +63 -0
- package/dist/types/colo.js.map +1 -0
- package/dist/types/communication.d.ts +595 -0
- package/dist/types/communication.d.ts.map +1 -0
- package/dist/types/communication.js +16 -0
- package/dist/types/communication.js.map +1 -0
- package/dist/types/content.d.ts +286 -0
- package/dist/types/content.d.ts.map +1 -0
- package/dist/types/content.js +8 -0
- package/dist/types/content.js.map +1 -0
- package/dist/types/context.d.ts +407 -0
- package/dist/types/context.d.ts.map +1 -0
- package/dist/types/context.js +36 -0
- package/dist/types/context.js.map +1 -0
- package/dist/types/databases.d.ts +377 -0
- package/dist/types/databases.d.ts.map +1 -0
- package/dist/types/databases.js +14 -0
- package/dist/types/databases.js.map +1 -0
- package/dist/types/domains.d.ts +132 -0
- package/dist/types/domains.d.ts.map +1 -0
- package/dist/types/domains.js +107 -0
- package/dist/types/domains.js.map +1 -0
- package/dist/types/execution.d.ts +381 -0
- package/dist/types/execution.d.ts.map +1 -0
- package/dist/types/execution.js +40 -0
- package/dist/types/execution.js.map +1 -0
- package/dist/types/financial.d.ts +608 -0
- package/dist/types/financial.d.ts.map +1 -0
- package/dist/types/financial.js +12 -0
- package/dist/types/financial.js.map +1 -0
- package/dist/types/functions.d.ts +215 -0
- package/dist/types/functions.d.ts.map +1 -0
- package/dist/types/functions.js +15 -0
- package/dist/types/functions.js.map +1 -0
- package/dist/types/git.d.ts +299 -0
- package/dist/types/git.d.ts.map +1 -0
- package/dist/types/git.js +17 -0
- package/dist/types/git.js.map +1 -0
- package/dist/types/identity.d.ts +141 -0
- package/dist/types/identity.d.ts.map +1 -0
- package/dist/types/identity.js +54 -0
- package/dist/types/identity.js.map +1 -0
- package/dist/types/index.d.ts +40 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +65 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/integrations.d.ts +356 -0
- package/dist/types/integrations.d.ts.map +1 -0
- package/dist/types/integrations.js +19 -0
- package/dist/types/integrations.js.map +1 -0
- package/dist/types/mdxui.d.ts +1955 -0
- package/dist/types/mdxui.d.ts.map +1 -0
- package/dist/types/mdxui.js +751 -0
- package/dist/types/mdxui.js.map +1 -0
- package/dist/types/observability.d.ts +315 -0
- package/dist/types/observability.d.ts.map +1 -0
- package/dist/types/observability.js +13 -0
- package/dist/types/observability.js.map +1 -0
- package/dist/types/rpc.d.ts +339 -0
- package/dist/types/rpc.d.ts.map +1 -0
- package/dist/types/rpc.js +24 -0
- package/dist/types/rpc.js.map +1 -0
- package/dist/types/saas.d.ts +678 -0
- package/dist/types/saas.d.ts.map +1 -0
- package/dist/types/saas.js +59 -0
- package/dist/types/saas.js.map +1 -0
- package/dist/types/service.d.ts +676 -0
- package/dist/types/service.d.ts.map +1 -0
- package/dist/types/service.js +69 -0
- package/dist/types/service.js.map +1 -0
- package/dist/types/site.d.ts +317 -0
- package/dist/types/site.d.ts.map +1 -0
- package/dist/types/site.js +203 -0
- package/dist/types/site.js.map +1 -0
- package/dist/types/startup.d.ts +576 -0
- package/dist/types/startup.d.ts.map +1 -0
- package/dist/types/startup.js +59 -0
- package/dist/types/startup.js.map +1 -0
- package/dist/types/storage.d.ts +276 -0
- package/dist/types/storage.d.ts.map +1 -0
- package/dist/types/storage.js +35 -0
- package/dist/types/storage.js.map +1 -0
- package/dist/types/telephony.d.ts +458 -0
- package/dist/types/telephony.d.ts.map +1 -0
- package/dist/types/telephony.js +19 -0
- package/dist/types/telephony.js.map +1 -0
- package/dist/types/tenant.d.ts +708 -0
- package/dist/types/tenant.d.ts.map +1 -0
- package/dist/types/tenant.js +103 -0
- package/dist/types/tenant.js.map +1 -0
- package/dist/types/voice-ai.d.ts +459 -0
- package/dist/types/voice-ai.d.ts.map +1 -0
- package/dist/types/voice-ai.js +32 -0
- package/dist/types/voice-ai.js.map +1 -0
- package/package.json +143 -0
|
@@ -0,0 +1,567 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CDC R2/Iceberg Cold Storage
|
|
3
|
+
*
|
|
4
|
+
* Persists CDC events to R2 in Parquet format using Apache Iceberg table format.
|
|
5
|
+
* Supports time-partitioning, schema evolution, and time-travel queries.
|
|
6
|
+
*
|
|
7
|
+
* @module cdc/storage
|
|
8
|
+
*/
|
|
9
|
+
import type { CDCEvent, CDCBatch, R2Storage, IcebergTable, IcebergSnapshot, IcebergSchema } from '../../types/storage';
|
|
10
|
+
/**
|
|
11
|
+
* Configuration for CDC storage
|
|
12
|
+
*/
|
|
13
|
+
export interface CDCStorageOptions {
|
|
14
|
+
/**
|
|
15
|
+
* R2 bucket name for CDC events
|
|
16
|
+
* @default 'do-cdc'
|
|
17
|
+
*/
|
|
18
|
+
bucket?: string;
|
|
19
|
+
/**
|
|
20
|
+
* Base path within the bucket
|
|
21
|
+
* @default 'tables'
|
|
22
|
+
*/
|
|
23
|
+
basePath?: string;
|
|
24
|
+
/**
|
|
25
|
+
* Partition granularity
|
|
26
|
+
* @default 'day'
|
|
27
|
+
*/
|
|
28
|
+
partitionBy?: 'hour' | 'day' | 'month';
|
|
29
|
+
/**
|
|
30
|
+
* Target file size in bytes before rotation
|
|
31
|
+
* @default 134217728 (128MB)
|
|
32
|
+
*/
|
|
33
|
+
targetFileSize?: number;
|
|
34
|
+
/**
|
|
35
|
+
* Minimum events before writing a file
|
|
36
|
+
* @default 1000
|
|
37
|
+
*/
|
|
38
|
+
minEventsPerFile?: number;
|
|
39
|
+
/**
|
|
40
|
+
* Maximum time in ms to buffer before writing
|
|
41
|
+
* @default 60000
|
|
42
|
+
*/
|
|
43
|
+
flushInterval?: number;
|
|
44
|
+
/**
|
|
45
|
+
* Enable Parquet compression
|
|
46
|
+
* @default 'snappy'
|
|
47
|
+
*/
|
|
48
|
+
compression?: 'none' | 'snappy' | 'gzip' | 'zstd';
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Parquet file metadata
|
|
52
|
+
*/
|
|
53
|
+
export interface ParquetFileInfo {
|
|
54
|
+
/**
|
|
55
|
+
* Full path to the file in R2
|
|
56
|
+
*/
|
|
57
|
+
path: string;
|
|
58
|
+
/**
|
|
59
|
+
* Number of rows in the file
|
|
60
|
+
*/
|
|
61
|
+
rowCount: number;
|
|
62
|
+
/**
|
|
63
|
+
* File size in bytes
|
|
64
|
+
*/
|
|
65
|
+
sizeBytes: number;
|
|
66
|
+
/**
|
|
67
|
+
* Minimum timestamp in the file
|
|
68
|
+
*/
|
|
69
|
+
minTimestamp: number;
|
|
70
|
+
/**
|
|
71
|
+
* Maximum timestamp in the file
|
|
72
|
+
*/
|
|
73
|
+
maxTimestamp: number;
|
|
74
|
+
/**
|
|
75
|
+
* Minimum sequence number
|
|
76
|
+
*/
|
|
77
|
+
minSequence: number;
|
|
78
|
+
/**
|
|
79
|
+
* Maximum sequence number
|
|
80
|
+
*/
|
|
81
|
+
maxSequence: number;
|
|
82
|
+
/**
|
|
83
|
+
* When the file was created
|
|
84
|
+
*/
|
|
85
|
+
createdAt: number;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Query options for reading from cold storage
|
|
89
|
+
*/
|
|
90
|
+
export interface ColdQueryOptions {
|
|
91
|
+
/**
|
|
92
|
+
* Start timestamp (inclusive)
|
|
93
|
+
*/
|
|
94
|
+
fromTimestamp?: number;
|
|
95
|
+
/**
|
|
96
|
+
* End timestamp (exclusive)
|
|
97
|
+
*/
|
|
98
|
+
toTimestamp?: number;
|
|
99
|
+
/**
|
|
100
|
+
* Start sequence (inclusive)
|
|
101
|
+
*/
|
|
102
|
+
fromSequence?: number;
|
|
103
|
+
/**
|
|
104
|
+
* End sequence (exclusive)
|
|
105
|
+
*/
|
|
106
|
+
toSequence?: number;
|
|
107
|
+
/**
|
|
108
|
+
* Filter by collections
|
|
109
|
+
*/
|
|
110
|
+
collections?: string[];
|
|
111
|
+
/**
|
|
112
|
+
* Filter by operations
|
|
113
|
+
*/
|
|
114
|
+
operations?: ('INSERT' | 'UPDATE' | 'DELETE')[];
|
|
115
|
+
/**
|
|
116
|
+
* Maximum events to return
|
|
117
|
+
*/
|
|
118
|
+
limit?: number;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* CDCStorage - Persists CDC events to R2/Iceberg
|
|
122
|
+
*
|
|
123
|
+
* @example
|
|
124
|
+
* ```typescript
|
|
125
|
+
* const storage = new CDCStorage(env.R2, {
|
|
126
|
+
* bucket: 'my-cdc-bucket',
|
|
127
|
+
* partitionBy: 'day',
|
|
128
|
+
* compression: 'zstd',
|
|
129
|
+
* })
|
|
130
|
+
*
|
|
131
|
+
* // Archive events
|
|
132
|
+
* await storage.archive(events)
|
|
133
|
+
*
|
|
134
|
+
* // Query cold storage
|
|
135
|
+
* const batch = await storage.query({
|
|
136
|
+
* fromTimestamp: Date.now() - 86400000,
|
|
137
|
+
* collections: ['users'],
|
|
138
|
+
* })
|
|
139
|
+
* ```
|
|
140
|
+
*/
|
|
141
|
+
/**
|
|
142
|
+
* Options for CDCStorage constructor
|
|
143
|
+
*/
|
|
144
|
+
export interface CDCStorageConstructorOptions extends CDCStorageOptions {
|
|
145
|
+
/**
|
|
146
|
+
* R2 storage binding
|
|
147
|
+
*/
|
|
148
|
+
r2: R2Storage;
|
|
149
|
+
/**
|
|
150
|
+
* Prefix for object keys
|
|
151
|
+
*/
|
|
152
|
+
prefix?: string;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Result of a write operation
|
|
156
|
+
*/
|
|
157
|
+
export interface WriteResult {
|
|
158
|
+
/**
|
|
159
|
+
* Whether the write was successful
|
|
160
|
+
*/
|
|
161
|
+
success: boolean;
|
|
162
|
+
/**
|
|
163
|
+
* The object key in R2
|
|
164
|
+
*/
|
|
165
|
+
objectKey: string;
|
|
166
|
+
/**
|
|
167
|
+
* Checksum of the written data
|
|
168
|
+
*/
|
|
169
|
+
checksum?: string;
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Result of a batch write operation
|
|
173
|
+
*/
|
|
174
|
+
export interface BatchWriteResult {
|
|
175
|
+
/**
|
|
176
|
+
* Array of written file keys
|
|
177
|
+
*/
|
|
178
|
+
files: string[];
|
|
179
|
+
/**
|
|
180
|
+
* Total events written
|
|
181
|
+
*/
|
|
182
|
+
totalEvents: number;
|
|
183
|
+
}
|
|
184
|
+
export declare class CDCStorage {
|
|
185
|
+
private r2;
|
|
186
|
+
private bucket;
|
|
187
|
+
private prefix;
|
|
188
|
+
private writer;
|
|
189
|
+
/**
|
|
190
|
+
* Creates a new CDC storage instance
|
|
191
|
+
*
|
|
192
|
+
* @param options - Configuration options including R2 binding
|
|
193
|
+
*/
|
|
194
|
+
constructor(options: CDCStorageConstructorOptions);
|
|
195
|
+
/**
|
|
196
|
+
* Writes CDC events to R2
|
|
197
|
+
*
|
|
198
|
+
* @param events - Events to write
|
|
199
|
+
* @returns Write result with object key
|
|
200
|
+
*/
|
|
201
|
+
write(events: CDCEvent[]): Promise<WriteResult>;
|
|
202
|
+
private calculateChecksum;
|
|
203
|
+
/**
|
|
204
|
+
* Writes a large batch of events, splitting into multiple files
|
|
205
|
+
*
|
|
206
|
+
* @param events - Events to write
|
|
207
|
+
* @param options - Batch write options
|
|
208
|
+
* @returns Batch write result
|
|
209
|
+
*/
|
|
210
|
+
writeBatch(events: CDCEvent[], options?: {
|
|
211
|
+
maxPerFile?: number;
|
|
212
|
+
}): Promise<BatchWriteResult>;
|
|
213
|
+
/**
|
|
214
|
+
* Reads events from an R2 object
|
|
215
|
+
*
|
|
216
|
+
* @param objectKey - Key of the object to read
|
|
217
|
+
* @returns Array of events or null if not found
|
|
218
|
+
*/
|
|
219
|
+
read(objectKey: string): Promise<CDCEvent[] | null>;
|
|
220
|
+
/**
|
|
221
|
+
* Lists objects in R2
|
|
222
|
+
*
|
|
223
|
+
* @param options - List options
|
|
224
|
+
* @returns Array of object references
|
|
225
|
+
*/
|
|
226
|
+
list(options?: {
|
|
227
|
+
prefix?: string;
|
|
228
|
+
}): Promise<Array<{
|
|
229
|
+
key: string;
|
|
230
|
+
size: number;
|
|
231
|
+
}>>;
|
|
232
|
+
/**
|
|
233
|
+
* Deletes an object from R2
|
|
234
|
+
*
|
|
235
|
+
* @param objectKey - Key of the object to delete
|
|
236
|
+
*/
|
|
237
|
+
delete(objectKey: string): Promise<void>;
|
|
238
|
+
/**
|
|
239
|
+
* Archives CDC events to cold storage
|
|
240
|
+
*
|
|
241
|
+
* Events are buffered and written in batches according to configuration.
|
|
242
|
+
*
|
|
243
|
+
* @param events - Events to archive
|
|
244
|
+
* @returns File info if a new file was written
|
|
245
|
+
*
|
|
246
|
+
* @example
|
|
247
|
+
* ```typescript
|
|
248
|
+
* const fileInfo = await storage.archive(events)
|
|
249
|
+
* if (fileInfo) {
|
|
250
|
+
* console.log(`Wrote ${fileInfo.rowCount} events to ${fileInfo.path}`)
|
|
251
|
+
* }
|
|
252
|
+
* ```
|
|
253
|
+
*/
|
|
254
|
+
archive(events: CDCEvent | CDCEvent[]): Promise<ParquetFileInfo | null>;
|
|
255
|
+
/**
|
|
256
|
+
* Forces immediate flush of buffered events to R2
|
|
257
|
+
*
|
|
258
|
+
* @returns File info for the written file
|
|
259
|
+
*/
|
|
260
|
+
flush(): Promise<ParquetFileInfo | null>;
|
|
261
|
+
/**
|
|
262
|
+
* Queries events from cold storage
|
|
263
|
+
*
|
|
264
|
+
* @param options - Query options
|
|
265
|
+
* @returns Batch of matching events (array with cursor and hasMore properties)
|
|
266
|
+
*
|
|
267
|
+
* @example
|
|
268
|
+
* ```typescript
|
|
269
|
+
* const batch = await storage.query({
|
|
270
|
+
* fromTimestamp: Date.now() - 3600000,
|
|
271
|
+
* collections: ['orders'],
|
|
272
|
+
* operations: ['INSERT'],
|
|
273
|
+
* limit: 100,
|
|
274
|
+
* })
|
|
275
|
+
* ```
|
|
276
|
+
*/
|
|
277
|
+
query(options: ColdQueryOptions): Promise<CDCBatch & CDCEvent[]>;
|
|
278
|
+
/**
|
|
279
|
+
* Lists all Parquet files for this DO
|
|
280
|
+
*
|
|
281
|
+
* @param options - Filter options
|
|
282
|
+
* @returns Array of file info
|
|
283
|
+
*/
|
|
284
|
+
listFiles(options?: {
|
|
285
|
+
fromTimestamp?: number;
|
|
286
|
+
toTimestamp?: number;
|
|
287
|
+
}): Promise<ParquetFileInfo[]>;
|
|
288
|
+
/**
|
|
289
|
+
* Gets the Iceberg table metadata
|
|
290
|
+
*
|
|
291
|
+
* @returns Current table metadata
|
|
292
|
+
*/
|
|
293
|
+
getTableMetadata(): Promise<IcebergTable>;
|
|
294
|
+
/**
|
|
295
|
+
* Lists available Iceberg snapshots for time-travel
|
|
296
|
+
*
|
|
297
|
+
* @returns Array of snapshots
|
|
298
|
+
*/
|
|
299
|
+
listSnapshots(): Promise<IcebergSnapshot[]>;
|
|
300
|
+
/**
|
|
301
|
+
* Queries events from a specific snapshot (time-travel)
|
|
302
|
+
*
|
|
303
|
+
* @param snapshotId - Snapshot ID to query
|
|
304
|
+
* @param options - Query options
|
|
305
|
+
* @returns Batch of events from that snapshot
|
|
306
|
+
*/
|
|
307
|
+
querySnapshot(snapshotId: string, options: ColdQueryOptions): Promise<CDCBatch>;
|
|
308
|
+
/**
|
|
309
|
+
* Compacts small files into larger ones
|
|
310
|
+
*
|
|
311
|
+
* Should be run periodically to optimize query performance.
|
|
312
|
+
*
|
|
313
|
+
* @param options - Compaction options
|
|
314
|
+
* @returns Summary of compaction
|
|
315
|
+
*/
|
|
316
|
+
compact(options?: {
|
|
317
|
+
/**
|
|
318
|
+
* Minimum file size to consider for compaction
|
|
319
|
+
* @default 1048576 (1MB)
|
|
320
|
+
*/
|
|
321
|
+
minFileSize?: number;
|
|
322
|
+
/**
|
|
323
|
+
* Maximum files to compact in one run
|
|
324
|
+
* @default 10
|
|
325
|
+
*/
|
|
326
|
+
maxFiles?: number;
|
|
327
|
+
}): Promise<{
|
|
328
|
+
filesCompacted: number;
|
|
329
|
+
bytesReclaimed: number;
|
|
330
|
+
newFileInfo: ParquetFileInfo | null;
|
|
331
|
+
}>;
|
|
332
|
+
/**
|
|
333
|
+
* Expires old snapshots beyond retention period
|
|
334
|
+
*
|
|
335
|
+
* @param retentionDays - Days to retain snapshots
|
|
336
|
+
* @returns Number of snapshots expired
|
|
337
|
+
*/
|
|
338
|
+
expireSnapshots(retentionDays: number): Promise<number>;
|
|
339
|
+
/**
|
|
340
|
+
* Gets storage statistics
|
|
341
|
+
*
|
|
342
|
+
* @returns Storage stats
|
|
343
|
+
*/
|
|
344
|
+
getStats(): Promise<{
|
|
345
|
+
totalFiles: number;
|
|
346
|
+
totalBytes: number;
|
|
347
|
+
totalEvents: number;
|
|
348
|
+
oldestTimestamp: number;
|
|
349
|
+
newestTimestamp: number;
|
|
350
|
+
}>;
|
|
351
|
+
}
|
|
352
|
+
/**
|
|
353
|
+
* Converts CDC events to Parquet format
|
|
354
|
+
*
|
|
355
|
+
* @param events - Events to convert
|
|
356
|
+
* @param schema - Optional Iceberg schema to use
|
|
357
|
+
* @returns Parquet bytes
|
|
358
|
+
*/
|
|
359
|
+
export declare function eventsToParquet(events: CDCEvent[], schema?: IcebergSchema): Promise<ArrayBuffer>;
|
|
360
|
+
/**
|
|
361
|
+
* Parses Parquet bytes to CDC events
|
|
362
|
+
*
|
|
363
|
+
* @param data - Parquet file contents
|
|
364
|
+
* @returns Parsed events
|
|
365
|
+
*/
|
|
366
|
+
export declare function parquetToEvents(data: ArrayBuffer): Promise<CDCEvent[]>;
|
|
367
|
+
/**
|
|
368
|
+
* Generates partition path for a timestamp
|
|
369
|
+
*
|
|
370
|
+
* @param timestamp - Event timestamp
|
|
371
|
+
* @param granularity - Partition granularity
|
|
372
|
+
* @returns Partition path string
|
|
373
|
+
*
|
|
374
|
+
* @example
|
|
375
|
+
* ```typescript
|
|
376
|
+
* getPartitionPath(1705334400000, 'day')
|
|
377
|
+
* // Returns: 'year=2024/month=01/day=15'
|
|
378
|
+
* ```
|
|
379
|
+
*/
|
|
380
|
+
export declare function getPartitionPath(timestamp: number, granularity: 'hour' | 'day' | 'month'): string;
|
|
381
|
+
/**
|
|
382
|
+
* Creates initial Iceberg table metadata
|
|
383
|
+
*
|
|
384
|
+
* @param options - Table options including name and location
|
|
385
|
+
* @returns Initial table metadata
|
|
386
|
+
*/
|
|
387
|
+
export declare function createTableMetadata(options: {
|
|
388
|
+
tableName: string;
|
|
389
|
+
location: string;
|
|
390
|
+
}): IcebergTable;
|
|
391
|
+
/**
|
|
392
|
+
* ParquetWriter - Writes and reads Parquet files
|
|
393
|
+
*
|
|
394
|
+
* Note: This is a simplified JSON-based implementation.
|
|
395
|
+
* A production implementation would use a proper Parquet library.
|
|
396
|
+
*/
|
|
397
|
+
export declare class ParquetWriter {
|
|
398
|
+
private static MAGIC;
|
|
399
|
+
private static COMPRESSED_MAGIC;
|
|
400
|
+
constructor();
|
|
401
|
+
/**
|
|
402
|
+
* Simple compression using deflate-raw
|
|
403
|
+
*/
|
|
404
|
+
private compress;
|
|
405
|
+
/**
|
|
406
|
+
* Simple decompression using inflate-raw
|
|
407
|
+
*/
|
|
408
|
+
private decompress;
|
|
409
|
+
/**
|
|
410
|
+
* Writes events to Parquet format
|
|
411
|
+
*
|
|
412
|
+
* @param events - Events to write
|
|
413
|
+
* @param options - Write options
|
|
414
|
+
* @returns Parquet bytes
|
|
415
|
+
*/
|
|
416
|
+
write(events: CDCEvent[], options?: {
|
|
417
|
+
compression?: 'NONE' | 'SNAPPY' | 'GZIP' | 'ZSTD';
|
|
418
|
+
}): Promise<ArrayBuffer>;
|
|
419
|
+
/**
|
|
420
|
+
* Reads events from Parquet bytes
|
|
421
|
+
*
|
|
422
|
+
* @param buffer - Parquet bytes
|
|
423
|
+
* @returns Array of events
|
|
424
|
+
*/
|
|
425
|
+
read(buffer: ArrayBuffer): Promise<CDCEvent[]>;
|
|
426
|
+
/**
|
|
427
|
+
* Gets statistics about a Parquet file
|
|
428
|
+
*
|
|
429
|
+
* @param buffer - Parquet bytes
|
|
430
|
+
* @returns File statistics
|
|
431
|
+
*/
|
|
432
|
+
getStats(buffer: ArrayBuffer): Promise<{
|
|
433
|
+
columns: Record<string, {
|
|
434
|
+
encoding: string;
|
|
435
|
+
}>;
|
|
436
|
+
}>;
|
|
437
|
+
/**
|
|
438
|
+
* Gets the Parquet schema
|
|
439
|
+
*
|
|
440
|
+
* @returns Schema definition
|
|
441
|
+
*/
|
|
442
|
+
getSchema(): {
|
|
443
|
+
fields: Array<{
|
|
444
|
+
name: string;
|
|
445
|
+
type: string;
|
|
446
|
+
}>;
|
|
447
|
+
};
|
|
448
|
+
}
|
|
449
|
+
/**
|
|
450
|
+
* CDCPartitioner - Partitions CDC events for storage
|
|
451
|
+
*/
|
|
452
|
+
export declare class CDCPartitioner {
|
|
453
|
+
private strategy;
|
|
454
|
+
private granularity;
|
|
455
|
+
constructor(options?: {
|
|
456
|
+
strategy?: 'time' | 'collection';
|
|
457
|
+
granularity?: 'hour' | 'day' | 'month';
|
|
458
|
+
});
|
|
459
|
+
/**
|
|
460
|
+
* Partitions events into groups
|
|
461
|
+
*
|
|
462
|
+
* @param events - Events to partition
|
|
463
|
+
* @returns Map of partition key to events
|
|
464
|
+
*/
|
|
465
|
+
partition(events: CDCEvent[]): Record<string, CDCEvent[]>;
|
|
466
|
+
/**
|
|
467
|
+
* Gets the partition path for an event
|
|
468
|
+
*
|
|
469
|
+
* @param event - Event to get path for
|
|
470
|
+
* @returns Partition path
|
|
471
|
+
*/
|
|
472
|
+
getPath(event: CDCEvent): string;
|
|
473
|
+
/**
|
|
474
|
+
* Lists partitions within a time range
|
|
475
|
+
*
|
|
476
|
+
* @param options - Time range
|
|
477
|
+
* @returns Array of partition keys
|
|
478
|
+
*/
|
|
479
|
+
listPartitions(options: {
|
|
480
|
+
start: Date;
|
|
481
|
+
end: Date;
|
|
482
|
+
}): string[];
|
|
483
|
+
}
|
|
484
|
+
/**
|
|
485
|
+
* CDCCompactor - Compacts small Parquet files
|
|
486
|
+
*/
|
|
487
|
+
export declare class CDCCompactor {
|
|
488
|
+
private storage;
|
|
489
|
+
private targetFileSizeMB;
|
|
490
|
+
private maxFilesToCompact;
|
|
491
|
+
private minFilesToCompact;
|
|
492
|
+
constructor(options: {
|
|
493
|
+
storage: CDCStorage;
|
|
494
|
+
targetFileSizeMB?: number;
|
|
495
|
+
maxFilesToCompact?: number;
|
|
496
|
+
minFilesToCompact?: number;
|
|
497
|
+
});
|
|
498
|
+
/**
|
|
499
|
+
* Compacts multiple files into fewer larger files
|
|
500
|
+
*
|
|
501
|
+
* @param files - Files to compact
|
|
502
|
+
* @param options - Compaction options
|
|
503
|
+
* @returns Compaction result
|
|
504
|
+
*/
|
|
505
|
+
compact(files: Array<{
|
|
506
|
+
key: string;
|
|
507
|
+
size: number;
|
|
508
|
+
}>, options?: {
|
|
509
|
+
deduplicate?: boolean;
|
|
510
|
+
}): Promise<{
|
|
511
|
+
inputFiles: number;
|
|
512
|
+
outputFiles: number;
|
|
513
|
+
totalBytesRead: number;
|
|
514
|
+
duplicatesRemoved?: number;
|
|
515
|
+
skipped?: boolean;
|
|
516
|
+
reason?: string;
|
|
517
|
+
metrics?: {
|
|
518
|
+
durationMs: number;
|
|
519
|
+
bytesRead: number;
|
|
520
|
+
bytesWritten: number;
|
|
521
|
+
compressionRatio: number;
|
|
522
|
+
};
|
|
523
|
+
}>;
|
|
524
|
+
}
|
|
525
|
+
/**
|
|
526
|
+
* CDCRetentionPolicy - Manages CDC data retention
|
|
527
|
+
*/
|
|
528
|
+
export declare class CDCRetentionPolicy {
|
|
529
|
+
private storage;
|
|
530
|
+
private maxAgeDays?;
|
|
531
|
+
private maxStorageGB?;
|
|
532
|
+
private r2;
|
|
533
|
+
constructor(options: {
|
|
534
|
+
storage: CDCStorage;
|
|
535
|
+
maxAgeDays?: number;
|
|
536
|
+
maxStorageGB?: number;
|
|
537
|
+
});
|
|
538
|
+
/**
|
|
539
|
+
* Enforces the retention policy
|
|
540
|
+
*
|
|
541
|
+
* @param options - Enforcement options
|
|
542
|
+
* @returns Enforcement result
|
|
543
|
+
*/
|
|
544
|
+
enforce(options?: {
|
|
545
|
+
dryRun?: boolean;
|
|
546
|
+
}): Promise<{
|
|
547
|
+
deletedFiles: number;
|
|
548
|
+
retainedFiles: number;
|
|
549
|
+
bytesFreed: number;
|
|
550
|
+
dryRun?: boolean;
|
|
551
|
+
wouldDelete?: string[];
|
|
552
|
+
}>;
|
|
553
|
+
/**
|
|
554
|
+
* Generates a retention report
|
|
555
|
+
*
|
|
556
|
+
* @returns Retention report
|
|
557
|
+
*/
|
|
558
|
+
generateReport(): Promise<{
|
|
559
|
+
totalFiles: number;
|
|
560
|
+
totalSizeGB: number;
|
|
561
|
+
oldestEvent: Date;
|
|
562
|
+
newestEvent: Date;
|
|
563
|
+
filesExpiringSoon: string[];
|
|
564
|
+
storageUsagePercent: number;
|
|
565
|
+
}>;
|
|
566
|
+
}
|
|
567
|
+
//# sourceMappingURL=storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../db/cdc/storage.ts"],"names":[],"mappings":"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"}
|