@dotdo/postgres 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 +868 -0
- package/dist/cdc/change-stream.d.ts +44 -0
- package/dist/cdc/change-stream.d.ts.map +1 -0
- package/dist/cdc/change-stream.js +95 -0
- package/dist/cdc/change-stream.js.map +1 -0
- package/dist/cdc/filter.d.ts +58 -0
- package/dist/cdc/filter.d.ts.map +1 -0
- package/dist/cdc/filter.js +520 -0
- package/dist/cdc/filter.js.map +1 -0
- package/dist/cdc/index.d.ts +47 -0
- package/dist/cdc/index.d.ts.map +1 -0
- package/dist/cdc/index.js +50 -0
- package/dist/cdc/index.js.map +1 -0
- package/dist/cdc/resume-token.d.ts +60 -0
- package/dist/cdc/resume-token.d.ts.map +1 -0
- package/dist/cdc/resume-token.js +228 -0
- package/dist/cdc/resume-token.js.map +1 -0
- package/dist/cdc/transport/index.d.ts +7 -0
- package/dist/cdc/transport/index.d.ts.map +1 -0
- package/dist/cdc/transport/index.js +7 -0
- package/dist/cdc/transport/index.js.map +1 -0
- package/dist/cdc/transport/sse.d.ts +120 -0
- package/dist/cdc/transport/sse.d.ts.map +1 -0
- package/dist/cdc/transport/sse.js +590 -0
- package/dist/cdc/transport/sse.js.map +1 -0
- package/dist/cdc/transport/websocket.d.ts +130 -0
- package/dist/cdc/transport/websocket.d.ts.map +1 -0
- package/dist/cdc/transport/websocket.js +688 -0
- package/dist/cdc/transport/websocket.js.map +1 -0
- package/dist/cdc/types.d.ts +306 -0
- package/dist/cdc/types.d.ts.map +1 -0
- package/dist/cdc/types.js +8 -0
- package/dist/cdc/types.js.map +1 -0
- package/dist/config/index.d.ts +25 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +25 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/memory.d.ts +139 -0
- package/dist/config/memory.d.ts.map +1 -0
- package/dist/config/memory.js +157 -0
- package/dist/config/memory.js.map +1 -0
- package/dist/config/storage.d.ts +157 -0
- package/dist/config/storage.d.ts.map +1 -0
- package/dist/config/storage.js +178 -0
- package/dist/config/storage.js.map +1 -0
- package/dist/config/streaming.d.ts +117 -0
- package/dist/config/streaming.d.ts.map +1 -0
- package/dist/config/streaming.js +132 -0
- package/dist/config/streaming.js.map +1 -0
- package/dist/config/timeouts.d.ts +168 -0
- package/dist/config/timeouts.d.ts.map +1 -0
- package/dist/config/timeouts.js +192 -0
- package/dist/config/timeouts.js.map +1 -0
- package/dist/extensions/config.d.ts +89 -0
- package/dist/extensions/config.d.ts.map +1 -0
- package/dist/extensions/config.js +216 -0
- package/dist/extensions/config.js.map +1 -0
- package/dist/extensions/geo.d.ts +452 -0
- package/dist/extensions/geo.d.ts.map +1 -0
- package/dist/extensions/geo.js +583 -0
- package/dist/extensions/geo.js.map +1 -0
- package/dist/extensions/index.d.ts +167 -0
- package/dist/extensions/index.d.ts.map +1 -0
- package/dist/extensions/index.js +99 -0
- package/dist/extensions/index.js.map +1 -0
- package/dist/extensions/loader.d.ts +226 -0
- package/dist/extensions/loader.d.ts.map +1 -0
- package/dist/extensions/loader.js +456 -0
- package/dist/extensions/loader.js.map +1 -0
- package/dist/extensions/pgmq-lite.d.ts +330 -0
- package/dist/extensions/pgmq-lite.d.ts.map +1 -0
- package/dist/extensions/pgmq-lite.js +648 -0
- package/dist/extensions/pgmq-lite.js.map +1 -0
- package/dist/extensions/plugins.d.ts +260 -0
- package/dist/extensions/plugins.d.ts.map +1 -0
- package/dist/extensions/plugins.js +535 -0
- package/dist/extensions/plugins.js.map +1 -0
- package/dist/extensions/registry.d.ts +93 -0
- package/dist/extensions/registry.d.ts.map +1 -0
- package/dist/extensions/registry.js +182 -0
- package/dist/extensions/registry.js.map +1 -0
- package/dist/extensions/vector.d.ts +106 -0
- package/dist/extensions/vector.d.ts.map +1 -0
- package/dist/extensions/vector.js +129 -0
- package/dist/extensions/vector.js.map +1 -0
- package/dist/iceberg/analytics.d.ts +279 -0
- package/dist/iceberg/analytics.d.ts.map +1 -0
- package/dist/iceberg/analytics.js +448 -0
- package/dist/iceberg/analytics.js.map +1 -0
- package/dist/iceberg/catalog-api.d.ts +39 -0
- package/dist/iceberg/catalog-api.d.ts.map +1 -0
- package/dist/iceberg/catalog-api.js +388 -0
- package/dist/iceberg/catalog-api.js.map +1 -0
- package/dist/iceberg/catalog.d.ts +401 -0
- package/dist/iceberg/catalog.d.ts.map +1 -0
- package/dist/iceberg/catalog.js +677 -0
- package/dist/iceberg/catalog.js.map +1 -0
- package/dist/iceberg/duckdb-wasm.d.ts +447 -0
- package/dist/iceberg/duckdb-wasm.d.ts.map +1 -0
- package/dist/iceberg/duckdb-wasm.js +600 -0
- package/dist/iceberg/duckdb-wasm.js.map +1 -0
- package/dist/iceberg/index.d.ts +92 -0
- package/dist/iceberg/index.d.ts.map +1 -0
- package/dist/iceberg/index.js +119 -0
- package/dist/iceberg/index.js.map +1 -0
- package/dist/iceberg/metadata.d.ts +214 -0
- package/dist/iceberg/metadata.d.ts.map +1 -0
- package/dist/iceberg/metadata.js +535 -0
- package/dist/iceberg/metadata.js.map +1 -0
- package/dist/iceberg/optimizer.d.ts +296 -0
- package/dist/iceberg/optimizer.d.ts.map +1 -0
- package/dist/iceberg/optimizer.js +889 -0
- package/dist/iceberg/optimizer.js.map +1 -0
- package/dist/iceberg/parquet.d.ts +447 -0
- package/dist/iceberg/parquet.d.ts.map +1 -0
- package/dist/iceberg/parquet.js +1225 -0
- package/dist/iceberg/parquet.js.map +1 -0
- package/dist/iceberg/r2-organization.d.ts +422 -0
- package/dist/iceberg/r2-organization.d.ts.map +1 -0
- package/dist/iceberg/r2-organization.js +672 -0
- package/dist/iceberg/r2-organization.js.map +1 -0
- package/dist/iceberg/scheduler-do-example.d.ts +158 -0
- package/dist/iceberg/scheduler-do-example.d.ts.map +1 -0
- package/dist/iceberg/scheduler-do-example.js +261 -0
- package/dist/iceberg/scheduler-do-example.js.map +1 -0
- package/dist/iceberg/scheduler.d.ts +434 -0
- package/dist/iceberg/scheduler.d.ts.map +1 -0
- package/dist/iceberg/scheduler.js +818 -0
- package/dist/iceberg/scheduler.js.map +1 -0
- package/dist/iceberg/schema.d.ts +149 -0
- package/dist/iceberg/schema.d.ts.map +1 -0
- package/dist/iceberg/schema.js +525 -0
- package/dist/iceberg/schema.js.map +1 -0
- package/dist/iceberg/snapshot-manager.d.ts +406 -0
- package/dist/iceberg/snapshot-manager.d.ts.map +1 -0
- package/dist/iceberg/snapshot-manager.js +934 -0
- package/dist/iceberg/snapshot-manager.js.map +1 -0
- package/dist/iceberg/sql-router.d.ts +194 -0
- package/dist/iceberg/sql-router.d.ts.map +1 -0
- package/dist/iceberg/sql-router.js +180 -0
- package/dist/iceberg/sql-router.js.map +1 -0
- package/dist/iceberg/test-fixtures.d.ts +151 -0
- package/dist/iceberg/test-fixtures.d.ts.map +1 -0
- package/dist/iceberg/test-fixtures.js +446 -0
- package/dist/iceberg/test-fixtures.js.map +1 -0
- package/dist/iceberg/time-travel-api.d.ts +102 -0
- package/dist/iceberg/time-travel-api.d.ts.map +1 -0
- package/dist/iceberg/time-travel-api.js +437 -0
- package/dist/iceberg/time-travel-api.js.map +1 -0
- package/dist/iceberg/time-travel.d.ts +293 -0
- package/dist/iceberg/time-travel.d.ts.map +1 -0
- package/dist/iceberg/time-travel.js +689 -0
- package/dist/iceberg/time-travel.js.map +1 -0
- package/dist/iceberg/transformer.d.ts +356 -0
- package/dist/iceberg/transformer.d.ts.map +1 -0
- package/dist/iceberg/transformer.js +770 -0
- package/dist/iceberg/transformer.js.map +1 -0
- package/dist/iceberg/types.d.ts +318 -0
- package/dist/iceberg/types.d.ts.map +1 -0
- package/dist/iceberg/types.js +9 -0
- package/dist/iceberg/types.js.map +1 -0
- package/dist/iceberg/writer.d.ts +144 -0
- package/dist/iceberg/writer.d.ts.map +1 -0
- package/dist/iceberg/writer.js +452 -0
- package/dist/iceberg/writer.js.map +1 -0
- package/dist/index.d.ts +50 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +69 -0
- package/dist/index.js.map +1 -0
- package/dist/lineage/index.d.ts +11 -0
- package/dist/lineage/index.d.ts.map +1 -0
- package/dist/lineage/index.js +11 -0
- package/dist/lineage/index.js.map +1 -0
- package/dist/lineage/integration.d.ts +134 -0
- package/dist/lineage/integration.d.ts.map +1 -0
- package/dist/lineage/integration.js +258 -0
- package/dist/lineage/integration.js.map +1 -0
- package/dist/lineage/tracker.d.ts +189 -0
- package/dist/lineage/tracker.d.ts.map +1 -0
- package/dist/lineage/tracker.js +1352 -0
- package/dist/lineage/tracker.js.map +1 -0
- package/dist/lineage/types.d.ts +318 -0
- package/dist/lineage/types.d.ts.map +1 -0
- package/dist/lineage/types.js +9 -0
- package/dist/lineage/types.js.map +1 -0
- package/dist/middleware/index.d.ts +11 -0
- package/dist/middleware/index.d.ts.map +1 -0
- package/dist/middleware/index.js +16 -0
- package/dist/middleware/index.js.map +1 -0
- package/dist/middleware/rate-limit.d.ts +397 -0
- package/dist/middleware/rate-limit.d.ts.map +1 -0
- package/dist/middleware/rate-limit.js +507 -0
- package/dist/middleware/rate-limit.js.map +1 -0
- package/dist/migration-tooling/external-migration.d.ts +601 -0
- package/dist/migration-tooling/external-migration.d.ts.map +1 -0
- package/dist/migration-tooling/external-migration.js +1612 -0
- package/dist/migration-tooling/external-migration.js.map +1 -0
- package/dist/migration-tooling/index.d.ts +19 -0
- package/dist/migration-tooling/index.d.ts.map +1 -0
- package/dist/migration-tooling/index.js +19 -0
- package/dist/migration-tooling/index.js.map +1 -0
- package/dist/migrations/auto-migrator.d.ts +289 -0
- package/dist/migrations/auto-migrator.d.ts.map +1 -0
- package/dist/migrations/auto-migrator.js +396 -0
- package/dist/migrations/auto-migrator.js.map +1 -0
- package/dist/migrations/bulk-orchestrator.d.ts +403 -0
- package/dist/migrations/bulk-orchestrator.d.ts.map +1 -0
- package/dist/migrations/bulk-orchestrator.js +646 -0
- package/dist/migrations/bulk-orchestrator.js.map +1 -0
- package/dist/migrations/compatibility.d.ts +216 -0
- package/dist/migrations/compatibility.d.ts.map +1 -0
- package/dist/migrations/compatibility.js +651 -0
- package/dist/migrations/compatibility.js.map +1 -0
- package/dist/migrations/do-migrations.d.ts +101 -0
- package/dist/migrations/do-migrations.d.ts.map +1 -0
- package/dist/migrations/do-migrations.js +1060 -0
- package/dist/migrations/do-migrations.js.map +1 -0
- package/dist/migrations/do-migrations.types.d.ts +550 -0
- package/dist/migrations/do-migrations.types.d.ts.map +1 -0
- package/dist/migrations/do-migrations.types.js +15 -0
- package/dist/migrations/do-migrations.types.js.map +1 -0
- package/dist/migrations/drizzle-compat.d.ts +163 -0
- package/dist/migrations/drizzle-compat.d.ts.map +1 -0
- package/dist/migrations/drizzle-compat.js +273 -0
- package/dist/migrations/drizzle-compat.js.map +1 -0
- package/dist/migrations/index.d.ts +109 -0
- package/dist/migrations/index.d.ts.map +1 -0
- package/dist/migrations/index.js +127 -0
- package/dist/migrations/index.js.map +1 -0
- package/dist/migrations/migration-api.d.ts +161 -0
- package/dist/migrations/migration-api.d.ts.map +1 -0
- package/dist/migrations/migration-api.js +499 -0
- package/dist/migrations/migration-api.js.map +1 -0
- package/dist/migrations/progress-tracker-do.d.ts +195 -0
- package/dist/migrations/progress-tracker-do.d.ts.map +1 -0
- package/dist/migrations/progress-tracker-do.js +339 -0
- package/dist/migrations/progress-tracker-do.js.map +1 -0
- package/dist/migrations/progress-tracker-kv.d.ts +103 -0
- package/dist/migrations/progress-tracker-kv.d.ts.map +1 -0
- package/dist/migrations/progress-tracker-kv.js +231 -0
- package/dist/migrations/progress-tracker-kv.js.map +1 -0
- package/dist/migrations/progress-tracker.d.ts +320 -0
- package/dist/migrations/progress-tracker.d.ts.map +1 -0
- package/dist/migrations/progress-tracker.js +443 -0
- package/dist/migrations/progress-tracker.js.map +1 -0
- package/dist/migrations/registry.d.ts +231 -0
- package/dist/migrations/registry.d.ts.map +1 -0
- package/dist/migrations/registry.js +376 -0
- package/dist/migrations/registry.js.map +1 -0
- package/dist/migrations/runner.d.ts +197 -0
- package/dist/migrations/runner.d.ts.map +1 -0
- package/dist/migrations/runner.js +1167 -0
- package/dist/migrations/runner.js.map +1 -0
- package/dist/migrations/schema-generator.d.ts +111 -0
- package/dist/migrations/schema-generator.d.ts.map +1 -0
- package/dist/migrations/schema-generator.js +335 -0
- package/dist/migrations/schema-generator.js.map +1 -0
- package/dist/migrations/testing.d.ts +321 -0
- package/dist/migrations/testing.d.ts.map +1 -0
- package/dist/migrations/testing.js +645 -0
- package/dist/migrations/testing.js.map +1 -0
- package/dist/migrations/types.d.ts +503 -0
- package/dist/migrations/types.d.ts.map +1 -0
- package/dist/migrations/types.js +11 -0
- package/dist/migrations/types.js.map +1 -0
- package/dist/migrations/validator.d.ts +215 -0
- package/dist/migrations/validator.d.ts.map +1 -0
- package/dist/migrations/validator.js +494 -0
- package/dist/migrations/validator.js.map +1 -0
- package/dist/observability/alerting.d.ts +116 -0
- package/dist/observability/alerting.d.ts.map +1 -0
- package/dist/observability/alerting.js +353 -0
- package/dist/observability/alerting.js.map +1 -0
- package/dist/observability/analytics-engine.d.ts +357 -0
- package/dist/observability/analytics-engine.d.ts.map +1 -0
- package/dist/observability/analytics-engine.js +430 -0
- package/dist/observability/analytics-engine.js.map +1 -0
- package/dist/observability/cost-metrics.d.ts +269 -0
- package/dist/observability/cost-metrics.d.ts.map +1 -0
- package/dist/observability/cost-metrics.js +560 -0
- package/dist/observability/cost-metrics.js.map +1 -0
- package/dist/observability/cross-do-tracing.d.ts +305 -0
- package/dist/observability/cross-do-tracing.d.ts.map +1 -0
- package/dist/observability/cross-do-tracing.js +431 -0
- package/dist/observability/cross-do-tracing.js.map +1 -0
- package/dist/observability/error-rate-collector.d.ts +163 -0
- package/dist/observability/error-rate-collector.d.ts.map +1 -0
- package/dist/observability/error-rate-collector.js +306 -0
- package/dist/observability/error-rate-collector.js.map +1 -0
- package/dist/observability/exporters.d.ts +231 -0
- package/dist/observability/exporters.d.ts.map +1 -0
- package/dist/observability/exporters.js +479 -0
- package/dist/observability/exporters.js.map +1 -0
- package/dist/observability/health-check.d.ts +106 -0
- package/dist/observability/health-check.d.ts.map +1 -0
- package/dist/observability/health-check.js +243 -0
- package/dist/observability/health-check.js.map +1 -0
- package/dist/observability/index.d.ts +297 -0
- package/dist/observability/index.d.ts.map +1 -0
- package/dist/observability/index.js +455 -0
- package/dist/observability/index.js.map +1 -0
- package/dist/observability/instrumentation.d.ts +222 -0
- package/dist/observability/instrumentation.d.ts.map +1 -0
- package/dist/observability/instrumentation.js +532 -0
- package/dist/observability/instrumentation.js.map +1 -0
- package/dist/observability/memory-metrics.d.ts +227 -0
- package/dist/observability/memory-metrics.d.ts.map +1 -0
- package/dist/observability/memory-metrics.js +688 -0
- package/dist/observability/memory-metrics.js.map +1 -0
- package/dist/observability/metrics-endpoint.d.ts +91 -0
- package/dist/observability/metrics-endpoint.d.ts.map +1 -0
- package/dist/observability/metrics-endpoint.js +246 -0
- package/dist/observability/metrics-endpoint.js.map +1 -0
- package/dist/observability/metrics.d.ts +88 -0
- package/dist/observability/metrics.d.ts.map +1 -0
- package/dist/observability/metrics.js +253 -0
- package/dist/observability/metrics.js.map +1 -0
- package/dist/observability/observability-features.d.ts +488 -0
- package/dist/observability/observability-features.d.ts.map +1 -0
- package/dist/observability/observability-features.js +773 -0
- package/dist/observability/observability-features.js.map +1 -0
- package/dist/observability/prometheus.d.ts +39 -0
- package/dist/observability/prometheus.d.ts.map +1 -0
- package/dist/observability/prometheus.js +120 -0
- package/dist/observability/prometheus.js.map +1 -0
- package/dist/observability/propagation.d.ts +126 -0
- package/dist/observability/propagation.d.ts.map +1 -0
- package/dist/observability/propagation.js +234 -0
- package/dist/observability/propagation.js.map +1 -0
- package/dist/observability/query-latency.d.ts +243 -0
- package/dist/observability/query-latency.d.ts.map +1 -0
- package/dist/observability/query-latency.js +292 -0
- package/dist/observability/query-latency.js.map +1 -0
- package/dist/observability/query-performance.d.ts +169 -0
- package/dist/observability/query-performance.d.ts.map +1 -0
- package/dist/observability/query-performance.js +290 -0
- package/dist/observability/query-performance.js.map +1 -0
- package/dist/observability/storage-tier-metrics.d.ts +174 -0
- package/dist/observability/storage-tier-metrics.d.ts.map +1 -0
- package/dist/observability/storage-tier-metrics.js +306 -0
- package/dist/observability/storage-tier-metrics.js.map +1 -0
- package/dist/observability/tier-cost-optimizer.d.ts +155 -0
- package/dist/observability/tier-cost-optimizer.d.ts.map +1 -0
- package/dist/observability/tier-cost-optimizer.js +536 -0
- package/dist/observability/tier-cost-optimizer.js.map +1 -0
- package/dist/observability/tracer.d.ts +149 -0
- package/dist/observability/tracer.d.ts.map +1 -0
- package/dist/observability/tracer.js +435 -0
- package/dist/observability/tracer.js.map +1 -0
- package/dist/observability/types.d.ts +402 -0
- package/dist/observability/types.d.ts.map +1 -0
- package/dist/observability/types.js +103 -0
- package/dist/observability/types.js.map +1 -0
- package/dist/pglite/workers-pglite.d.ts +138 -0
- package/dist/pglite/workers-pglite.d.ts.map +1 -0
- package/dist/pglite/workers-pglite.js +143 -0
- package/dist/pglite/workers-pglite.js.map +1 -0
- package/dist/pglite-assets/pglite.data +0 -0
- package/dist/pglite-assets/pglite.wasm +0 -0
- package/dist/playground/index.d.ts +52 -0
- package/dist/playground/index.d.ts.map +1 -0
- package/dist/playground/index.js +55 -0
- package/dist/playground/index.js.map +1 -0
- package/dist/playground/keyboard-shortcuts.d.ts +116 -0
- package/dist/playground/keyboard-shortcuts.d.ts.map +1 -0
- package/dist/playground/keyboard-shortcuts.js +588 -0
- package/dist/playground/keyboard-shortcuts.js.map +1 -0
- package/dist/playground/playground.d.ts +82 -0
- package/dist/playground/playground.d.ts.map +1 -0
- package/dist/playground/playground.js +271 -0
- package/dist/playground/playground.js.map +1 -0
- package/dist/playground/query-executor.d.ts +115 -0
- package/dist/playground/query-executor.d.ts.map +1 -0
- package/dist/playground/query-executor.js +558 -0
- package/dist/playground/query-executor.js.map +1 -0
- package/dist/playground/query-history.d.ts +92 -0
- package/dist/playground/query-history.d.ts.map +1 -0
- package/dist/playground/query-history.js +259 -0
- package/dist/playground/query-history.js.map +1 -0
- package/dist/playground/result-formatter.d.ts +59 -0
- package/dist/playground/result-formatter.d.ts.map +1 -0
- package/dist/playground/result-formatter.js +341 -0
- package/dist/playground/result-formatter.js.map +1 -0
- package/dist/playground/sample-datasets.d.ts +77 -0
- package/dist/playground/sample-datasets.d.ts.map +1 -0
- package/dist/playground/sample-datasets.js +641 -0
- package/dist/playground/sample-datasets.js.map +1 -0
- package/dist/playground/sample-queries.d.ts +73 -0
- package/dist/playground/sample-queries.d.ts.map +1 -0
- package/dist/playground/sample-queries.js +1095 -0
- package/dist/playground/sample-queries.js.map +1 -0
- package/dist/playground/schema-explorer.d.ts +55 -0
- package/dist/playground/schema-explorer.d.ts.map +1 -0
- package/dist/playground/schema-explorer.js +473 -0
- package/dist/playground/schema-explorer.js.map +1 -0
- package/dist/playground/types.d.ts +430 -0
- package/dist/playground/types.d.ts.map +1 -0
- package/dist/playground/types.js +10 -0
- package/dist/playground/types.js.map +1 -0
- package/dist/readonly/cache-reader.d.ts +145 -0
- package/dist/readonly/cache-reader.d.ts.map +1 -0
- package/dist/readonly/cache-reader.js +198 -0
- package/dist/readonly/cache-reader.js.map +1 -0
- package/dist/readonly/config.d.ts +74 -0
- package/dist/readonly/config.d.ts.map +1 -0
- package/dist/readonly/config.js +67 -0
- package/dist/readonly/config.js.map +1 -0
- package/dist/readonly/index.d.ts +22 -0
- package/dist/readonly/index.d.ts.map +1 -0
- package/dist/readonly/index.js +17 -0
- package/dist/readonly/index.js.map +1 -0
- package/dist/readonly/pglite-wrapper.d.ts +82 -0
- package/dist/readonly/pglite-wrapper.d.ts.map +1 -0
- package/dist/readonly/pglite-wrapper.js +123 -0
- package/dist/readonly/pglite-wrapper.js.map +1 -0
- package/dist/readonly/worker.d.ts +142 -0
- package/dist/readonly/worker.d.ts.map +1 -0
- package/dist/readonly/worker.js +187 -0
- package/dist/readonly/worker.js.map +1 -0
- package/dist/readonly/write-blocker.d.ts +47 -0
- package/dist/readonly/write-blocker.d.ts.map +1 -0
- package/dist/readonly/write-blocker.js +136 -0
- package/dist/readonly/write-blocker.js.map +1 -0
- package/dist/recovery/disaster-recovery.d.ts +326 -0
- package/dist/recovery/disaster-recovery.d.ts.map +1 -0
- package/dist/recovery/disaster-recovery.js +799 -0
- package/dist/recovery/disaster-recovery.js.map +1 -0
- package/dist/recovery/index.d.ts +12 -0
- package/dist/recovery/index.d.ts.map +1 -0
- package/dist/recovery/index.js +12 -0
- package/dist/recovery/index.js.map +1 -0
- package/dist/recovery/parquet-parser.d.ts +321 -0
- package/dist/recovery/parquet-parser.d.ts.map +1 -0
- package/dist/recovery/parquet-parser.js +797 -0
- package/dist/recovery/parquet-parser.js.map +1 -0
- package/dist/retention/index.d.ts +50 -0
- package/dist/retention/index.d.ts.map +1 -0
- package/dist/retention/index.js +50 -0
- package/dist/retention/index.js.map +1 -0
- package/dist/retention/policy.d.ts +344 -0
- package/dist/retention/policy.d.ts.map +1 -0
- package/dist/retention/policy.js +472 -0
- package/dist/retention/policy.js.map +1 -0
- package/dist/retention/purger.d.ts +187 -0
- package/dist/retention/purger.d.ts.map +1 -0
- package/dist/retention/purger.js +411 -0
- package/dist/retention/purger.js.map +1 -0
- package/dist/rls/auth-integration.d.ts +280 -0
- package/dist/rls/auth-integration.d.ts.map +1 -0
- package/dist/rls/auth-integration.js +399 -0
- package/dist/rls/auth-integration.js.map +1 -0
- package/dist/rls/generator.d.ts +249 -0
- package/dist/rls/generator.d.ts.map +1 -0
- package/dist/rls/generator.js +495 -0
- package/dist/rls/generator.js.map +1 -0
- package/dist/rls/index.d.ts +26 -0
- package/dist/rls/index.d.ts.map +1 -0
- package/dist/rls/index.js +58 -0
- package/dist/rls/index.js.map +1 -0
- package/dist/rls/policy.d.ts +116 -0
- package/dist/rls/policy.d.ts.map +1 -0
- package/dist/rls/policy.js +77 -0
- package/dist/rls/policy.js.map +1 -0
- package/dist/rls/validator.d.ts +155 -0
- package/dist/rls/validator.d.ts.map +1 -0
- package/dist/rls/validator.js +792 -0
- package/dist/rls/validator.js.map +1 -0
- package/dist/routing/adaptive-router.d.ts +317 -0
- package/dist/routing/adaptive-router.d.ts.map +1 -0
- package/dist/routing/adaptive-router.js +554 -0
- package/dist/routing/adaptive-router.js.map +1 -0
- package/dist/routing/circuit-breaker.d.ts +339 -0
- package/dist/routing/circuit-breaker.d.ts.map +1 -0
- package/dist/routing/circuit-breaker.js +620 -0
- package/dist/routing/circuit-breaker.js.map +1 -0
- package/dist/routing/cost-metrics.d.ts +133 -0
- package/dist/routing/cost-metrics.d.ts.map +1 -0
- package/dist/routing/cost-metrics.js +259 -0
- package/dist/routing/cost-metrics.js.map +1 -0
- package/dist/routing/do-connection-pool.d.ts +243 -0
- package/dist/routing/do-connection-pool.d.ts.map +1 -0
- package/dist/routing/do-connection-pool.js +572 -0
- package/dist/routing/do-connection-pool.js.map +1 -0
- package/dist/routing/index.d.ts +59 -0
- package/dist/routing/index.d.ts.map +1 -0
- package/dist/routing/index.js +59 -0
- package/dist/routing/index.js.map +1 -0
- package/dist/routing/query-complexity-estimator.d.ts +73 -0
- package/dist/routing/query-complexity-estimator.d.ts.map +1 -0
- package/dist/routing/query-complexity-estimator.js +327 -0
- package/dist/routing/query-complexity-estimator.js.map +1 -0
- package/dist/routing/request-coalescing.d.ts +178 -0
- package/dist/routing/request-coalescing.d.ts.map +1 -0
- package/dist/routing/request-coalescing.js +325 -0
- package/dist/routing/request-coalescing.js.map +1 -0
- package/dist/routing/runtime-router.d.ts +107 -0
- package/dist/routing/runtime-router.d.ts.map +1 -0
- package/dist/routing/runtime-router.js +246 -0
- package/dist/routing/runtime-router.js.map +1 -0
- package/dist/routing/tenant-router.d.ts +848 -0
- package/dist/routing/tenant-router.d.ts.map +1 -0
- package/dist/routing/tenant-router.js +1056 -0
- package/dist/routing/tenant-router.js.map +1 -0
- package/dist/routing/websocket-pool.d.ts +119 -0
- package/dist/routing/websocket-pool.d.ts.map +1 -0
- package/dist/routing/websocket-pool.js +436 -0
- package/dist/routing/websocket-pool.js.map +1 -0
- package/dist/storage/cache-layer.d.ts +159 -0
- package/dist/storage/cache-layer.d.ts.map +1 -0
- package/dist/storage/cache-layer.js +245 -0
- package/dist/storage/cache-layer.js.map +1 -0
- package/dist/storage/cost-aware-tiering.d.ts +258 -0
- package/dist/storage/cost-aware-tiering.d.ts.map +1 -0
- package/dist/storage/cost-aware-tiering.js +526 -0
- package/dist/storage/cost-aware-tiering.js.map +1 -0
- package/dist/storage/index.d.ts +87 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +78 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage/interfaces.d.ts +856 -0
- package/dist/storage/interfaces.d.ts.map +1 -0
- package/dist/storage/interfaces.js +69 -0
- package/dist/storage/interfaces.js.map +1 -0
- package/dist/storage/r2-layer.d.ts +226 -0
- package/dist/storage/r2-layer.d.ts.map +1 -0
- package/dist/storage/r2-layer.js +307 -0
- package/dist/storage/r2-layer.js.map +1 -0
- package/dist/storage/r2-overflow.d.ts +344 -0
- package/dist/storage/r2-overflow.d.ts.map +1 -0
- package/dist/storage/r2-overflow.js +730 -0
- package/dist/storage/r2-overflow.js.map +1 -0
- package/dist/storage/r2-page-vfs.d.ts +374 -0
- package/dist/storage/r2-page-vfs.d.ts.map +1 -0
- package/dist/storage/r2-page-vfs.js +754 -0
- package/dist/storage/r2-page-vfs.js.map +1 -0
- package/dist/storage/swr-cache.d.ts +181 -0
- package/dist/storage/swr-cache.d.ts.map +1 -0
- package/dist/storage/swr-cache.js +295 -0
- package/dist/storage/swr-cache.js.map +1 -0
- package/dist/storage/tiered-orchestrator.d.ts +951 -0
- package/dist/storage/tiered-orchestrator.d.ts.map +1 -0
- package/dist/storage/tiered-orchestrator.js +1731 -0
- package/dist/storage/tiered-orchestrator.js.map +1 -0
- package/dist/storage/tiered-vfs-swr.d.ts +279 -0
- package/dist/storage/tiered-vfs-swr.d.ts.map +1 -0
- package/dist/storage/tiered-vfs-swr.js +584 -0
- package/dist/storage/tiered-vfs-swr.js.map +1 -0
- package/dist/storage/tiered-vfs.d.ts +405 -0
- package/dist/storage/tiered-vfs.d.ts.map +1 -0
- package/dist/storage/tiered-vfs.js +833 -0
- package/dist/storage/tiered-vfs.js.map +1 -0
- package/dist/streaming/backpressure-controller.d.ts +173 -0
- package/dist/streaming/backpressure-controller.d.ts.map +1 -0
- package/dist/streaming/backpressure-controller.js +344 -0
- package/dist/streaming/backpressure-controller.js.map +1 -0
- package/dist/streaming/buffer-pool.d.ts +241 -0
- package/dist/streaming/buffer-pool.d.ts.map +1 -0
- package/dist/streaming/buffer-pool.js +381 -0
- package/dist/streaming/buffer-pool.js.map +1 -0
- package/dist/streaming/cdc-iceberg-connector.d.ts +272 -0
- package/dist/streaming/cdc-iceberg-connector.d.ts.map +1 -0
- package/dist/streaming/cdc-iceberg-connector.js +408 -0
- package/dist/streaming/cdc-iceberg-connector.js.map +1 -0
- package/dist/streaming/index.d.ts +111 -0
- package/dist/streaming/index.d.ts.map +1 -0
- package/dist/streaming/index.js +128 -0
- package/dist/streaming/index.js.map +1 -0
- package/dist/streaming/live-cdc-stream.d.ts +400 -0
- package/dist/streaming/live-cdc-stream.d.ts.map +1 -0
- package/dist/streaming/live-cdc-stream.js +703 -0
- package/dist/streaming/live-cdc-stream.js.map +1 -0
- package/dist/streaming/memory-bounded-stream.d.ts +207 -0
- package/dist/streaming/memory-bounded-stream.d.ts.map +1 -0
- package/dist/streaming/memory-bounded-stream.js +340 -0
- package/dist/streaming/memory-bounded-stream.js.map +1 -0
- package/dist/streaming/query-streamer.d.ts +379 -0
- package/dist/streaming/query-streamer.d.ts.map +1 -0
- package/dist/streaming/query-streamer.js +495 -0
- package/dist/streaming/query-streamer.js.map +1 -0
- package/dist/streaming/response-streaming.d.ts +203 -0
- package/dist/streaming/response-streaming.d.ts.map +1 -0
- package/dist/streaming/response-streaming.js +449 -0
- package/dist/streaming/response-streaming.js.map +1 -0
- package/dist/types/branded.d.ts +859 -0
- package/dist/types/branded.d.ts.map +1 -0
- package/dist/types/branded.js +891 -0
- package/dist/types/branded.js.map +1 -0
- package/dist/types/utilities.d.ts +757 -0
- package/dist/types/utilities.d.ts.map +1 -0
- package/dist/types/utilities.js +447 -0
- package/dist/types/utilities.js.map +1 -0
- package/dist/wal/replay-engine.d.ts +344 -0
- package/dist/wal/replay-engine.d.ts.map +1 -0
- package/dist/wal/replay-engine.js +975 -0
- package/dist/wal/replay-engine.js.map +1 -0
- package/dist/worker/__mocks__/capnweb.d.ts +13 -0
- package/dist/worker/__mocks__/capnweb.d.ts.map +1 -0
- package/dist/worker/__mocks__/capnweb.js +15 -0
- package/dist/worker/__mocks__/capnweb.js.map +1 -0
- package/dist/worker/__mocks__/cloudflare-workers.d.ts +31 -0
- package/dist/worker/__mocks__/cloudflare-workers.d.ts.map +1 -0
- package/dist/worker/__mocks__/cloudflare-workers.js +33 -0
- package/dist/worker/__mocks__/cloudflare-workers.js.map +1 -0
- package/dist/worker/__mocks__/pglite.data.d.ts +3 -0
- package/dist/worker/__mocks__/pglite.data.d.ts.map +1 -0
- package/dist/worker/__mocks__/pglite.data.js +20 -0
- package/dist/worker/__mocks__/pglite.data.js.map +1 -0
- package/dist/worker/__mocks__/pglite.wasm.d.ts +3 -0
- package/dist/worker/__mocks__/pglite.wasm.d.ts.map +1 -0
- package/dist/worker/__mocks__/pglite.wasm.js +30 -0
- package/dist/worker/__mocks__/pglite.wasm.js.map +1 -0
- package/dist/worker/auth-rate-limiter.d.ts +270 -0
- package/dist/worker/auth-rate-limiter.d.ts.map +1 -0
- package/dist/worker/auth-rate-limiter.js +332 -0
- package/dist/worker/auth-rate-limiter.js.map +1 -0
- package/dist/worker/auth.d.ts +345 -0
- package/dist/worker/auth.d.ts.map +1 -0
- package/dist/worker/auth.js +837 -0
- package/dist/worker/auth.js.map +1 -0
- package/dist/worker/cdc-backpressure.d.ts +338 -0
- package/dist/worker/cdc-backpressure.d.ts.map +1 -0
- package/dist/worker/cdc-backpressure.js +619 -0
- package/dist/worker/cdc-backpressure.js.map +1 -0
- package/dist/worker/cdc-sse.d.ts +277 -0
- package/dist/worker/cdc-sse.d.ts.map +1 -0
- package/dist/worker/cdc-sse.js +528 -0
- package/dist/worker/cdc-sse.js.map +1 -0
- package/dist/worker/cdc-websocket.d.ts +252 -0
- package/dist/worker/cdc-websocket.d.ts.map +1 -0
- package/dist/worker/cdc-websocket.js +940 -0
- package/dist/worker/cdc-websocket.js.map +1 -0
- package/dist/worker/cdc.d.ts +95 -0
- package/dist/worker/cdc.d.ts.map +1 -0
- package/dist/worker/cdc.js +211 -0
- package/dist/worker/cdc.js.map +1 -0
- package/dist/worker/concerns/auth-concern.d.ts +50 -0
- package/dist/worker/concerns/auth-concern.d.ts.map +1 -0
- package/dist/worker/concerns/auth-concern.js +131 -0
- package/dist/worker/concerns/auth-concern.js.map +1 -0
- package/dist/worker/concerns/cdc-concern.d.ts +99 -0
- package/dist/worker/concerns/cdc-concern.d.ts.map +1 -0
- package/dist/worker/concerns/cdc-concern.js +137 -0
- package/dist/worker/concerns/cdc-concern.js.map +1 -0
- package/dist/worker/concerns/index.d.ts +22 -0
- package/dist/worker/concerns/index.d.ts.map +1 -0
- package/dist/worker/concerns/index.js +13 -0
- package/dist/worker/concerns/index.js.map +1 -0
- package/dist/worker/concerns/query-execution-concern.d.ts +104 -0
- package/dist/worker/concerns/query-execution-concern.d.ts.map +1 -0
- package/dist/worker/concerns/query-execution-concern.js +95 -0
- package/dist/worker/concerns/query-execution-concern.js.map +1 -0
- package/dist/worker/concerns/storage-orchestration-concern.d.ts +78 -0
- package/dist/worker/concerns/storage-orchestration-concern.d.ts.map +1 -0
- package/dist/worker/concerns/storage-orchestration-concern.js +240 -0
- package/dist/worker/concerns/storage-orchestration-concern.js.map +1 -0
- package/dist/worker/do-auth-manager.d.ts +108 -0
- package/dist/worker/do-auth-manager.d.ts.map +1 -0
- package/dist/worker/do-auth-manager.js +212 -0
- package/dist/worker/do-auth-manager.js.map +1 -0
- package/dist/worker/do-pglite-manager.d.ts +137 -0
- package/dist/worker/do-pglite-manager.d.ts.map +1 -0
- package/dist/worker/do-pglite-manager.js +228 -0
- package/dist/worker/do-pglite-manager.js.map +1 -0
- package/dist/worker/do.d.ts +556 -0
- package/dist/worker/do.d.ts.map +1 -0
- package/dist/worker/do.js +1441 -0
- package/dist/worker/do.js.map +1 -0
- package/dist/worker/entry.d.ts +23 -0
- package/dist/worker/entry.d.ts.map +1 -0
- package/dist/worker/entry.js +362 -0
- package/dist/worker/entry.js.map +1 -0
- package/dist/worker/errors.d.ts +106 -0
- package/dist/worker/errors.d.ts.map +1 -0
- package/dist/worker/errors.js +178 -0
- package/dist/worker/errors.js.map +1 -0
- package/dist/worker/health-check-manager.d.ts +141 -0
- package/dist/worker/health-check-manager.d.ts.map +1 -0
- package/dist/worker/health-check-manager.js +145 -0
- package/dist/worker/health-check-manager.js.map +1 -0
- package/dist/worker/index.d.ts +60 -0
- package/dist/worker/index.d.ts.map +1 -0
- package/dist/worker/index.js +67 -0
- package/dist/worker/index.js.map +1 -0
- package/dist/worker/memory-pressure.d.ts +892 -0
- package/dist/worker/memory-pressure.d.ts.map +1 -0
- package/dist/worker/memory-pressure.js +1990 -0
- package/dist/worker/memory-pressure.js.map +1 -0
- package/dist/worker/migration-manager.d.ts +153 -0
- package/dist/worker/migration-manager.d.ts.map +1 -0
- package/dist/worker/migration-manager.js +461 -0
- package/dist/worker/migration-manager.js.map +1 -0
- package/dist/worker/plugin-manager.d.ts +147 -0
- package/dist/worker/plugin-manager.d.ts.map +1 -0
- package/dist/worker/plugin-manager.js +408 -0
- package/dist/worker/plugin-manager.js.map +1 -0
- package/dist/worker/proxy.d.ts +330 -0
- package/dist/worker/proxy.d.ts.map +1 -0
- package/dist/worker/proxy.js +504 -0
- package/dist/worker/proxy.js.map +1 -0
- package/dist/worker/query-execution-manager.d.ts +107 -0
- package/dist/worker/query-execution-manager.d.ts.map +1 -0
- package/dist/worker/query-execution-manager.js +155 -0
- package/dist/worker/query-execution-manager.js.map +1 -0
- package/dist/worker/query-executor.d.ts +163 -0
- package/dist/worker/query-executor.d.ts.map +1 -0
- package/dist/worker/query-executor.js +413 -0
- package/dist/worker/query-executor.js.map +1 -0
- package/dist/worker/query-stats-manager.d.ts +117 -0
- package/dist/worker/query-stats-manager.d.ts.map +1 -0
- package/dist/worker/query-stats-manager.js +162 -0
- package/dist/worker/query-stats-manager.js.map +1 -0
- package/dist/worker/result-handler.d.ts +192 -0
- package/dist/worker/result-handler.d.ts.map +1 -0
- package/dist/worker/result-handler.js +346 -0
- package/dist/worker/result-handler.js.map +1 -0
- package/dist/worker/routes.d.ts +135 -0
- package/dist/worker/routes.d.ts.map +1 -0
- package/dist/worker/routes.js +460 -0
- package/dist/worker/routes.js.map +1 -0
- package/dist/worker/rpc-methods-manager.d.ts +142 -0
- package/dist/worker/rpc-methods-manager.d.ts.map +1 -0
- package/dist/worker/rpc-methods-manager.js +195 -0
- package/dist/worker/rpc-methods-manager.js.map +1 -0
- package/dist/worker/rpc.d.ts +259 -0
- package/dist/worker/rpc.d.ts.map +1 -0
- package/dist/worker/rpc.js +398 -0
- package/dist/worker/rpc.js.map +1 -0
- package/dist/worker/schema-version.d.ts +209 -0
- package/dist/worker/schema-version.d.ts.map +1 -0
- package/dist/worker/schema-version.js +450 -0
- package/dist/worker/schema-version.js.map +1 -0
- package/dist/worker/session-manager.d.ts +282 -0
- package/dist/worker/session-manager.d.ts.map +1 -0
- package/dist/worker/session-manager.js +523 -0
- package/dist/worker/session-manager.js.map +1 -0
- package/dist/worker/shutdown-manager.d.ts +188 -0
- package/dist/worker/shutdown-manager.d.ts.map +1 -0
- package/dist/worker/shutdown-manager.js +347 -0
- package/dist/worker/shutdown-manager.js.map +1 -0
- package/dist/worker/sql-transform.d.ts +61 -0
- package/dist/worker/sql-transform.d.ts.map +1 -0
- package/dist/worker/sql-transform.js +312 -0
- package/dist/worker/sql-transform.js.map +1 -0
- package/dist/worker/types.d.ts +738 -0
- package/dist/worker/types.d.ts.map +1 -0
- package/dist/worker/types.js +6 -0
- package/dist/worker/types.js.map +1 -0
- package/dist/worker/user-routes.d.ts +76 -0
- package/dist/worker/user-routes.d.ts.map +1 -0
- package/dist/worker/user-routes.js +188 -0
- package/dist/worker/user-routes.js.map +1 -0
- package/dist/worker/wal-facade.d.ts +138 -0
- package/dist/worker/wal-facade.d.ts.map +1 -0
- package/dist/worker/wal-facade.js +184 -0
- package/dist/worker/wal-facade.js.map +1 -0
- package/dist/worker/wal-r2.d.ts +271 -0
- package/dist/worker/wal-r2.d.ts.map +1 -0
- package/dist/worker/wal-r2.js +689 -0
- package/dist/worker/wal-r2.js.map +1 -0
- package/dist/worker/wal-replay.d.ts +361 -0
- package/dist/worker/wal-replay.d.ts.map +1 -0
- package/dist/worker/wal-replay.js +628 -0
- package/dist/worker/wal-replay.js.map +1 -0
- package/dist/worker/wal-retention.d.ts +389 -0
- package/dist/worker/wal-retention.d.ts.map +1 -0
- package/dist/worker/wal-retention.js +763 -0
- package/dist/worker/wal-retention.js.map +1 -0
- package/dist/worker/wal.d.ts +278 -0
- package/dist/worker/wal.d.ts.map +1 -0
- package/dist/worker/wal.js +467 -0
- package/dist/worker/wal.js.map +1 -0
- package/dist/worker/websocket.d.ts +85 -0
- package/dist/worker/websocket.d.ts.map +1 -0
- package/dist/worker/websocket.js +227 -0
- package/dist/worker/websocket.js.map +1 -0
- package/package.json +108 -0
- package/src/cdc/change-stream.ts +137 -0
- package/src/cdc/filter.ts +646 -0
- package/src/cdc/index.ts +112 -0
- package/src/cdc/resume-token.ts +280 -0
- package/src/cdc/transport/index.ts +7 -0
- package/src/cdc/transport/sse.ts +723 -0
- package/src/cdc/transport/websocket.ts +873 -0
- package/src/cdc/types.ts +346 -0
- package/src/config/index.ts +25 -0
- package/src/config/memory.ts +177 -0
- package/src/config/storage.ts +204 -0
- package/src/config/streaming.ts +147 -0
- package/src/config/timeouts.ts +221 -0
- package/src/extensions/config.test.ts +187 -0
- package/src/extensions/config.ts +278 -0
- package/src/extensions/geo.test.ts +455 -0
- package/src/extensions/geo.ts +858 -0
- package/src/extensions/index.test.ts +259 -0
- package/src/extensions/index.ts +227 -0
- package/src/extensions/loader.test.ts +555 -0
- package/src/extensions/loader.ts +588 -0
- package/src/extensions/pgmq-lite.test.ts +727 -0
- package/src/extensions/pgmq-lite.ts +770 -0
- package/src/extensions/plugins.test.ts +528 -0
- package/src/extensions/plugins.ts +718 -0
- package/src/extensions/registry.test.ts +202 -0
- package/src/extensions/registry.ts +267 -0
- package/src/extensions/vector.test.ts +195 -0
- package/src/extensions/vector.ts +217 -0
- package/src/iceberg/SCHEDULER.md +580 -0
- package/src/iceberg/analytics.test.ts +703 -0
- package/src/iceberg/analytics.ts +727 -0
- package/src/iceberg/catalog-api.test.ts +838 -0
- package/src/iceberg/catalog-api.ts +520 -0
- package/src/iceberg/catalog.test.ts +680 -0
- package/src/iceberg/catalog.ts +1007 -0
- package/src/iceberg/iceberg.test.ts +705 -0
- package/src/iceberg/index.ts +406 -0
- package/src/iceberg/metadata.test.ts +632 -0
- package/src/iceberg/metadata.ts +649 -0
- package/src/iceberg/optimizer.test.ts +868 -0
- package/src/iceberg/optimizer.ts +1287 -0
- package/src/iceberg/parquet.test.ts +899 -0
- package/src/iceberg/parquet.ts +1640 -0
- package/src/iceberg/r2-organization.test.ts +615 -0
- package/src/iceberg/r2-organization.ts +951 -0
- package/src/iceberg/scheduler-do-example.ts +364 -0
- package/src/iceberg/scheduler.test.ts +861 -0
- package/src/iceberg/scheduler.ts +1201 -0
- package/src/iceberg/schema.test.ts +547 -0
- package/src/iceberg/schema.ts +616 -0
- package/src/iceberg/snapshot-manager.test.ts +919 -0
- package/src/iceberg/snapshot-manager.ts +1369 -0
- package/src/iceberg/sql-router.test.ts +334 -0
- package/src/iceberg/sql-router.ts +337 -0
- package/src/iceberg/test-fixtures.ts +605 -0
- package/src/iceberg/time-travel-api.test.ts +1029 -0
- package/src/iceberg/time-travel-api.ts +731 -0
- package/src/iceberg/time-travel.test.ts +1218 -0
- package/src/iceberg/time-travel.ts +1052 -0
- package/src/iceberg/transformer.test.ts +689 -0
- package/src/iceberg/transformer.ts +1029 -0
- package/src/iceberg/types.ts +373 -0
- package/src/iceberg/writer.test.ts +716 -0
- package/src/iceberg/writer.ts +590 -0
- package/src/index.ts +212 -0
- package/src/lineage/index.ts +42 -0
- package/src/lineage/integration.ts +334 -0
- package/src/lineage/tracker.ts +1618 -0
- package/src/lineage/types.ts +354 -0
- package/src/middleware/index.ts +36 -0
- package/src/middleware/rate-limit-concurrent.test.ts +794 -0
- package/src/middleware/rate-limit.test.ts +1568 -0
- package/src/middleware/rate-limit.ts +840 -0
- package/src/migration-tooling/external-migration.test.ts +1864 -0
- package/src/migration-tooling/external-migration.ts +2355 -0
- package/src/migration-tooling/index.ts +19 -0
- package/src/migrations/ARCHITECTURE.md +474 -0
- package/src/migrations/PROGRESS_TRACKING.md +485 -0
- package/src/migrations/auto-migrator.test.ts +732 -0
- package/src/migrations/auto-migrator.ts +531 -0
- package/src/migrations/bulk-orchestrator.test.ts +801 -0
- package/src/migrations/bulk-orchestrator.ts +1039 -0
- package/src/migrations/compatibility.test.ts +958 -0
- package/src/migrations/compatibility.ts +902 -0
- package/src/migrations/do-migrations.test.ts +2620 -0
- package/src/migrations/do-migrations.ts +1289 -0
- package/src/migrations/do-migrations.types.ts +715 -0
- package/src/migrations/drizzle-compat.test.ts +210 -0
- package/src/migrations/drizzle-compat.ts +337 -0
- package/src/migrations/index.ts +334 -0
- package/src/migrations/migration-api.test.ts +438 -0
- package/src/migrations/migration-api.ts +704 -0
- package/src/migrations/progress-tracker-do.ts +518 -0
- package/src/migrations/progress-tracker-kv.ts +305 -0
- package/src/migrations/progress-tracker.test.ts +937 -0
- package/src/migrations/progress-tracker.ts +665 -0
- package/src/migrations/registry.test.ts +331 -0
- package/src/migrations/registry.ts +468 -0
- package/src/migrations/rollback.test.ts +644 -0
- package/src/migrations/runner.test.ts +807 -0
- package/src/migrations/runner.test.ts.backup +759 -0
- package/src/migrations/runner.ts +1459 -0
- package/src/migrations/schema-generator.test.ts +649 -0
- package/src/migrations/schema-generator.ts +513 -0
- package/src/migrations/testing.ts +1037 -0
- package/src/migrations/types.ts +573 -0
- package/src/migrations/validator.test.ts +660 -0
- package/src/migrations/validator.ts +741 -0
- package/src/observability/alerting.test.ts +1133 -0
- package/src/observability/alerting.ts +455 -0
- package/src/observability/analytics-engine.ts +733 -0
- package/src/observability/cost-metrics.ts +804 -0
- package/src/observability/cross-do-tracing.test.ts +516 -0
- package/src/observability/cross-do-tracing.ts +588 -0
- package/src/observability/dashboards/postgres-do-overview.json +1656 -0
- package/src/observability/error-rate-collector.test.ts +977 -0
- package/src/observability/error-rate-collector.ts +518 -0
- package/src/observability/exporters.test.ts +365 -0
- package/src/observability/exporters.ts +650 -0
- package/src/observability/health-check.test.ts +353 -0
- package/src/observability/health-check.ts +341 -0
- package/src/observability/index.test.ts +298 -0
- package/src/observability/index.ts +885 -0
- package/src/observability/instrumentation.test.ts +428 -0
- package/src/observability/instrumentation.ts +788 -0
- package/src/observability/memory-metrics.test.ts +355 -0
- package/src/observability/memory-metrics.ts +990 -0
- package/src/observability/metrics-endpoint.test.ts +402 -0
- package/src/observability/metrics-endpoint.ts +374 -0
- package/src/observability/metrics.test.ts +291 -0
- package/src/observability/metrics.ts +315 -0
- package/src/observability/observability-features.ts +1296 -0
- package/src/observability/prometheus.test.ts +292 -0
- package/src/observability/prometheus.ts +170 -0
- package/src/observability/propagation.test.ts +417 -0
- package/src/observability/propagation.ts +294 -0
- package/src/observability/query-latency.ts +586 -0
- package/src/observability/query-performance.test.ts +406 -0
- package/src/observability/query-performance.ts +491 -0
- package/src/observability/storage-tier-metrics.test.ts +633 -0
- package/src/observability/storage-tier-metrics.ts +570 -0
- package/src/observability/tier-cost-optimizer.ts +740 -0
- package/src/observability/tracer.test.ts +346 -0
- package/src/observability/tracer.ts +585 -0
- package/src/observability/types.test.ts +726 -0
- package/src/observability/types.ts +434 -0
- package/src/pglite/auto-demotion.test.ts +477 -0
- package/src/pglite/auto-demotion.ts +385 -0
- package/src/pglite/auto-promotion.test.ts +824 -0
- package/src/pglite/auto-promotion.ts +547 -0
- package/src/pglite/cache-layer.test.ts +469 -0
- package/src/pglite/cache-layer.ts +271 -0
- package/src/pglite/cold-start-manager.ts +1260 -0
- package/src/pglite/cold-start-optimizer.test.ts +937 -0
- package/src/pglite/cold-start-optimizer.ts +1895 -0
- package/src/pglite/dovfs-adapter.ts +1122 -0
- package/src/pglite/dovfs.ts +1258 -0
- package/src/pglite/etag-cache.test.ts +844 -0
- package/src/pglite/etag-cache.ts +526 -0
- package/src/pglite/index.ts +442 -0
- package/src/pglite/init.test.ts +455 -0
- package/src/pglite/init.ts +574 -0
- package/src/pglite/lifecycle.test.ts +599 -0
- package/src/pglite/lifecycle.ts +704 -0
- package/src/pglite/parallel-loader.test.ts +586 -0
- package/src/pglite/parallel-loader.ts +481 -0
- package/src/pglite/production-pglite.test.ts +666 -0
- package/src/pglite/production-pglite.ts +537 -0
- package/src/pglite/query-executor.ts +614 -0
- package/src/pglite/r2-layer.test.ts +501 -0
- package/src/pglite/r2-layer.ts +322 -0
- package/src/pglite/tiered-init.test.ts +725 -0
- package/src/pglite/tiered-init.ts +556 -0
- package/src/pglite/tiered-vfs.test.ts +726 -0
- package/src/pglite/tiered-vfs.ts +33 -0
- package/src/pglite/tiering-stats.test.ts +531 -0
- package/src/pglite/tiering-stats.ts +407 -0
- package/src/pglite/transaction-hooks.ts +343 -0
- package/src/pglite/warm-loader.test.ts +1701 -0
- package/src/pglite/warm-loader.ts +528 -0
- package/src/pglite/workers-pglite.ts +224 -0
- package/src/pglite-assets/pglite.data +0 -0
- package/src/pglite-assets/pglite.wasm +0 -0
- package/src/pglite.d.ts +47 -0
- package/src/playground/index.ts +137 -0
- package/src/playground/keyboard-shortcuts.ts +677 -0
- package/src/playground/playground.ts +323 -0
- package/src/playground/query-executor.ts +669 -0
- package/src/playground/query-history.ts +328 -0
- package/src/playground/result-formatter.ts +420 -0
- package/src/playground/sample-datasets.ts +674 -0
- package/src/playground/sample-queries.ts +1168 -0
- package/src/playground/schema-explorer.ts +558 -0
- package/src/playground/types.ts +518 -0
- package/src/readonly/cache-reader.test.ts +460 -0
- package/src/readonly/cache-reader.ts +313 -0
- package/src/readonly/config.test.ts +187 -0
- package/src/readonly/config.ts +128 -0
- package/src/readonly/index.ts +50 -0
- package/src/readonly/pglite-wrapper.test.ts +278 -0
- package/src/readonly/pglite-wrapper.ts +184 -0
- package/src/readonly/worker.test.ts +533 -0
- package/src/readonly/worker.ts +341 -0
- package/src/readonly/write-blocker.test.ts +459 -0
- package/src/readonly/write-blocker.ts +175 -0
- package/src/recovery/disaster-recovery.test.ts +618 -0
- package/src/recovery/disaster-recovery.ts +1181 -0
- package/src/recovery/index.ts +43 -0
- package/src/recovery/parquet-parser.ts +974 -0
- package/src/retention/index.ts +74 -0
- package/src/retention/policy.test.ts +571 -0
- package/src/retention/policy.ts +774 -0
- package/src/retention/purger.test.ts +465 -0
- package/src/retention/purger.ts +558 -0
- package/src/rls/auth-integration.test.ts +752 -0
- package/src/rls/auth-integration.ts +533 -0
- package/src/rls/generator.test.ts +829 -0
- package/src/rls/generator.ts +573 -0
- package/src/rls/index.ts +128 -0
- package/src/rls/policy.ts +208 -0
- package/src/rls/rls.test.ts +1071 -0
- package/src/rls/validator.test.ts +930 -0
- package/src/rls/validator.ts +895 -0
- package/src/routing/adaptive-router.test.ts +884 -0
- package/src/routing/adaptive-router.ts +845 -0
- package/src/routing/circuit-breaker.test.ts +1505 -0
- package/src/routing/circuit-breaker.ts +852 -0
- package/src/routing/cost-metrics.test.ts +565 -0
- package/src/routing/cost-metrics.ts +408 -0
- package/src/routing/do-connection-pool.test.ts +1109 -0
- package/src/routing/do-connection-pool.ts +828 -0
- package/src/routing/index.ts +158 -0
- package/src/routing/query-complexity-estimator.test.ts +356 -0
- package/src/routing/query-complexity-estimator.ts +444 -0
- package/src/routing/request-coalescing.test.ts +738 -0
- package/src/routing/request-coalescing.ts +475 -0
- package/src/routing/runtime-router.test.ts +436 -0
- package/src/routing/runtime-router.ts +357 -0
- package/src/routing/tenant-router.test.ts +2493 -0
- package/src/routing/tenant-router.ts +1908 -0
- package/src/routing/websocket-pool.test.ts +551 -0
- package/src/routing/websocket-pool.ts +577 -0
- package/src/storage/access-pattern-tracker.test.ts +874 -0
- package/src/storage/cache-layer.test.ts +560 -0
- package/src/storage/cache-layer.ts +328 -0
- package/src/storage/cost-aware-tiering.test.ts +652 -0
- package/src/storage/cost-aware-tiering.ts +794 -0
- package/src/storage/do-sqlite-blobs.test.ts +937 -0
- package/src/storage/index.ts +272 -0
- package/src/storage/interfaces.ts +974 -0
- package/src/storage/r2-layer.test.ts +653 -0
- package/src/storage/r2-layer.ts +434 -0
- package/src/storage/r2-overflow.ts +920 -0
- package/src/storage/r2-page-vfs.test.ts +2348 -0
- package/src/storage/r2-page-vfs.ts +1054 -0
- package/src/storage/swr-cache.test.ts +832 -0
- package/src/storage/swr-cache.ts +398 -0
- package/src/storage/swr-tiered-integration.test.ts +617 -0
- package/src/storage/tiered-orchestrator.test.ts +2441 -0
- package/src/storage/tiered-orchestrator.ts +2081 -0
- package/src/storage/tiered-vfs-swr.test.ts +736 -0
- package/src/storage/tiered-vfs-swr.ts +735 -0
- package/src/storage/tiered-vfs.test.ts +793 -0
- package/src/storage/tiered-vfs.ts +1082 -0
- package/src/streaming/backpressure-controller.ts +452 -0
- package/src/streaming/buffer-pool.ts +484 -0
- package/src/streaming/cdc-iceberg-connector.ts +605 -0
- package/src/streaming/index.ts +225 -0
- package/src/streaming/live-cdc-stream.ts +985 -0
- package/src/streaming/memory-bounded-stream.ts +443 -0
- package/src/streaming/query-streamer.ts +662 -0
- package/src/streaming/response-streaming.ts +557 -0
- package/src/types/branded.ts +1075 -0
- package/src/types/branded.ts.backup +273 -0
- package/src/types/utilities.ts +1023 -0
- package/src/types/wasm.d.ts +30 -0
- package/src/validation/typed-errors.test.ts +420 -0
- package/src/wal/replay-engine.ts +1264 -0
- package/src/worker/__mocks__/capnweb.ts +15 -0
- package/src/worker/__mocks__/pglite.data.ts +22 -0
- package/src/worker/__mocks__/pglite.wasm.ts +33 -0
- package/src/worker/auth-rate-limiter.test.ts +272 -0
- package/src/worker/auth-rate-limiter.ts +448 -0
- package/src/worker/auth.security-red.test.ts +1236 -0
- package/src/worker/auth.security.test.ts +822 -0
- package/src/worker/auth.test.ts +469 -0
- package/src/worker/auth.ts +1104 -0
- package/src/worker/cdc-backpressure.test.ts +726 -0
- package/src/worker/cdc-backpressure.ts +866 -0
- package/src/worker/cdc-sse.test.ts +780 -0
- package/src/worker/cdc-sse.ts +728 -0
- package/src/worker/cdc-websocket.ts +1229 -0
- package/src/worker/cdc-ws.test.ts +1009 -0
- package/src/worker/cdc.test.ts +327 -0
- package/src/worker/cdc.ts +289 -0
- package/src/worker/concerns/auth-concern.ts +179 -0
- package/src/worker/concerns/cdc-concern.ts +247 -0
- package/src/worker/concerns/index.ts +58 -0
- package/src/worker/concerns/query-execution-concern.ts +194 -0
- package/src/worker/concerns/storage-orchestration-concern.ts +373 -0
- package/src/worker/discriminated-types.test.ts +280 -0
- package/src/worker/do-auth-manager.ts +257 -0
- package/src/worker/do-decomposition.test.ts +1236 -0
- package/src/worker/do-pglite-manager.ts +302 -0
- package/src/worker/do.test.ts +2254 -0
- package/src/worker/do.ts +1878 -0
- package/src/worker/entry.ts +417 -0
- package/src/worker/errors.ts +285 -0
- package/src/worker/health-check-manager.test.ts +261 -0
- package/src/worker/health-check-manager.ts +231 -0
- package/src/worker/index.ts +389 -0
- package/src/worker/memory-pressure.test.ts +1460 -0
- package/src/worker/memory-pressure.ts +2650 -0
- package/src/worker/migration-manager.ts +582 -0
- package/src/worker/neon-compat.test.ts +332 -0
- package/src/worker/plugin-manager.ts +485 -0
- package/src/worker/postgres.do-rpc.d.ts +76 -0
- package/src/worker/proxy.ts +694 -0
- package/src/worker/query-execution-manager.test.ts +303 -0
- package/src/worker/query-execution-manager.ts +219 -0
- package/src/worker/query-executor.test.ts +282 -0
- package/src/worker/query-executor.ts +560 -0
- package/src/worker/query-stats-manager.ts +229 -0
- package/src/worker/result-handler.test.ts +364 -0
- package/src/worker/result-handler.ts +510 -0
- package/src/worker/routes.test.ts +795 -0
- package/src/worker/routes.ts +650 -0
- package/src/worker/rpc-methods-manager.test.ts +326 -0
- package/src/worker/rpc-methods-manager.ts +276 -0
- package/src/worker/rpc.ts +524 -0
- package/src/worker/schema-version.ts +605 -0
- package/src/worker/session-manager.test.ts +506 -0
- package/src/worker/session-manager.ts +732 -0
- package/src/worker/shutdown-manager.ts +469 -0
- package/src/worker/sql-transform.test.ts +286 -0
- package/src/worker/sql-transform.ts +368 -0
- package/src/worker/supabase-compat.test.ts +621 -0
- package/src/worker/types.test.ts +292 -0
- package/src/worker/types.ts +873 -0
- package/src/worker/user-routes.test.ts +703 -0
- package/src/worker/user-routes.ts +303 -0
- package/src/worker/wal-facade.ts +235 -0
- package/src/worker/wal-r2.test.ts +570 -0
- package/src/worker/wal-r2.ts +930 -0
- package/src/worker/wal-replay.test.ts +845 -0
- package/src/worker/wal-replay.ts +897 -0
- package/src/worker/wal-retention.test.ts +758 -0
- package/src/worker/wal-retention.ts +1075 -0
- package/src/worker/wal.test.ts +618 -0
- package/src/worker/wal.ts +697 -0
- package/src/worker/websocket.test.ts +296 -0
- package/src/worker/websocket.ts +284 -0
|
@@ -0,0 +1,873 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Worker Types for PostgresDO
|
|
3
|
+
* Task: postgres-6u6.1 - Worker Types (Env, QueryRequest, QueryResponse, WSMessage, PostgresConfig)
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Environment bindings for the Cloudflare Worker
|
|
8
|
+
*/
|
|
9
|
+
export interface Env {
|
|
10
|
+
POSTGRES_DO: DurableObjectNamespace
|
|
11
|
+
POSTGRES_DEFAULT_DB?: string
|
|
12
|
+
POSTGRES_MAX_CONNECTIONS?: string
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* SQL query parameter types
|
|
17
|
+
*/
|
|
18
|
+
export type QueryParam = string | number | boolean | null | Uint8Array | Date
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Query method hints
|
|
22
|
+
*/
|
|
23
|
+
export type QueryMethod = 'all' | 'one' | 'run' | 'exec'
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Request to execute a SQL query
|
|
27
|
+
*/
|
|
28
|
+
export interface QueryRequest {
|
|
29
|
+
sql: string
|
|
30
|
+
params?: QueryParam[] | undefined
|
|
31
|
+
preserveCase?: boolean | undefined
|
|
32
|
+
method?: QueryMethod | undefined
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Field metadata from query results
|
|
37
|
+
*/
|
|
38
|
+
export interface QueryField {
|
|
39
|
+
name: string
|
|
40
|
+
dataTypeID: number
|
|
41
|
+
tableID?: number | undefined
|
|
42
|
+
columnID?: number | undefined
|
|
43
|
+
dataTypeSize?: number | undefined
|
|
44
|
+
dataTypeModifier?: number | undefined
|
|
45
|
+
format?: string | undefined
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Generic row type for query results
|
|
50
|
+
*/
|
|
51
|
+
export type QueryResultRow = Record<string, unknown>
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Response from a SQL query
|
|
55
|
+
*/
|
|
56
|
+
export interface QueryResponse<T extends QueryResultRow = QueryResultRow> {
|
|
57
|
+
rows: T[]
|
|
58
|
+
fields: QueryField[]
|
|
59
|
+
rowCount: number
|
|
60
|
+
durationMs?: number | undefined
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Batch query request
|
|
65
|
+
*/
|
|
66
|
+
export interface BatchRequest {
|
|
67
|
+
queries: QueryRequest[]
|
|
68
|
+
transaction?: boolean | undefined
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Batch query response
|
|
73
|
+
*/
|
|
74
|
+
export interface BatchResponse {
|
|
75
|
+
results: QueryResponse[]
|
|
76
|
+
durationMs?: number | undefined
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Transaction isolation levels
|
|
81
|
+
*/
|
|
82
|
+
export type IsolationLevel = 'READ UNCOMMITTED' | 'READ COMMITTED' | 'REPEATABLE READ' | 'SERIALIZABLE'
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Transaction actions
|
|
86
|
+
*/
|
|
87
|
+
export type TransactionAction = 'begin' | 'commit' | 'rollback'
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Transaction request
|
|
91
|
+
*/
|
|
92
|
+
export interface TransactionRequest {
|
|
93
|
+
action: TransactionAction
|
|
94
|
+
transactionId?: string | undefined
|
|
95
|
+
isolationLevel?: IsolationLevel | undefined
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Error response structure
|
|
100
|
+
*/
|
|
101
|
+
export interface ErrorResponse {
|
|
102
|
+
error: true
|
|
103
|
+
code: string
|
|
104
|
+
message: string
|
|
105
|
+
details?: Record<string, unknown> | undefined
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* WebSocket message types
|
|
110
|
+
*/
|
|
111
|
+
export type WSMessageType =
|
|
112
|
+
| 'query'
|
|
113
|
+
| 'subscribe'
|
|
114
|
+
| 'unsubscribe'
|
|
115
|
+
| 'ping'
|
|
116
|
+
| 'pong'
|
|
117
|
+
| 'result'
|
|
118
|
+
| 'error'
|
|
119
|
+
| 'change'
|
|
120
|
+
| 'subscribed'
|
|
121
|
+
| 'unsubscribed'
|
|
122
|
+
| 'heartbeat'
|
|
123
|
+
| 'heartbeat_ack'
|
|
124
|
+
| 'reconnect'
|
|
125
|
+
| 'welcome'
|
|
126
|
+
|
|
127
|
+
/**
|
|
128
|
+
* CDC event types
|
|
129
|
+
*/
|
|
130
|
+
export type CDCEventType = 'INSERT' | 'UPDATE' | 'DELETE'
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* Subscription payload
|
|
134
|
+
*/
|
|
135
|
+
export interface SubscribePayload {
|
|
136
|
+
table: string
|
|
137
|
+
events?: CDCEventType[] | undefined
|
|
138
|
+
filter?: string | undefined
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
/**
|
|
142
|
+
* Unsubscription payload
|
|
143
|
+
*/
|
|
144
|
+
export interface UnsubscribePayload {
|
|
145
|
+
subscriptionId: string
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
/**
|
|
149
|
+
* Change notification payload (CDC)
|
|
150
|
+
*/
|
|
151
|
+
export interface ChangePayload {
|
|
152
|
+
table: string
|
|
153
|
+
operation: CDCEventType
|
|
154
|
+
newRow?: QueryResultRow | undefined
|
|
155
|
+
oldRow?: QueryResultRow | undefined
|
|
156
|
+
timestamp?: number | undefined
|
|
157
|
+
/** Subscription ID that matched this change */
|
|
158
|
+
subscriptionId?: string | undefined
|
|
159
|
+
/** Log Sequence Number for ordering */
|
|
160
|
+
lsn?: string | undefined
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* Heartbeat payload for connection keepalive
|
|
165
|
+
*/
|
|
166
|
+
export interface HeartbeatPayload {
|
|
167
|
+
/** Timestamp when heartbeat was sent */
|
|
168
|
+
timestamp: number
|
|
169
|
+
/** Server-side sequence number for ordering */
|
|
170
|
+
seq?: number | undefined
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
/**
|
|
174
|
+
* Welcome payload sent on initial connection
|
|
175
|
+
*/
|
|
176
|
+
export interface WelcomePayload {
|
|
177
|
+
/** Connection ID for reconnection */
|
|
178
|
+
connectionId: string
|
|
179
|
+
/** Server timestamp */
|
|
180
|
+
timestamp: number
|
|
181
|
+
/** Heartbeat interval in milliseconds */
|
|
182
|
+
heartbeatInterval: number
|
|
183
|
+
/** Server version */
|
|
184
|
+
version: string
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
/**
|
|
188
|
+
* Reconnect payload for restoring subscriptions
|
|
189
|
+
*/
|
|
190
|
+
export interface ReconnectPayload {
|
|
191
|
+
/** Previous connection ID */
|
|
192
|
+
connectionId: string
|
|
193
|
+
/** Last received LSN for resumption */
|
|
194
|
+
lastLsn?: string | undefined
|
|
195
|
+
/** Subscription IDs to restore */
|
|
196
|
+
subscriptionIds?: string[] | undefined
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
/**
|
|
200
|
+
* Subscribed payload confirming subscription
|
|
201
|
+
*/
|
|
202
|
+
export interface SubscribedPayload {
|
|
203
|
+
/** Generated subscription ID */
|
|
204
|
+
subscriptionId: string
|
|
205
|
+
/** Table being subscribed to */
|
|
206
|
+
table: string
|
|
207
|
+
/** Events being subscribed to */
|
|
208
|
+
events: CDCEventType[]
|
|
209
|
+
/** Filter expression if provided */
|
|
210
|
+
filter?: string | undefined
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
/**
|
|
214
|
+
* Unsubscribed payload confirming unsubscription
|
|
215
|
+
*/
|
|
216
|
+
export interface UnsubscribedPayload {
|
|
217
|
+
/** Subscription ID that was removed */
|
|
218
|
+
subscriptionId: string
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
/**
|
|
222
|
+
* Error payload
|
|
223
|
+
*/
|
|
224
|
+
export interface ErrorPayload {
|
|
225
|
+
code: string
|
|
226
|
+
message: string
|
|
227
|
+
details?: Record<string, unknown> | undefined
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
/**
|
|
231
|
+
* WebSocket message structure
|
|
232
|
+
*/
|
|
233
|
+
export interface WSMessage {
|
|
234
|
+
type: WSMessageType
|
|
235
|
+
id: string
|
|
236
|
+
payload?: QueryRequest | QueryResponse | SubscribePayload | UnsubscribePayload | ChangePayload | ErrorPayload | HeartbeatPayload | WelcomePayload | ReconnectPayload | SubscribedPayload | UnsubscribedPayload | Record<string, unknown> | undefined
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
/**
|
|
240
|
+
* CDC WebSocket configuration
|
|
241
|
+
*/
|
|
242
|
+
export interface CDCWebSocketConfig {
|
|
243
|
+
/** Heartbeat interval in milliseconds (default: 30000) */
|
|
244
|
+
heartbeatInterval?: number
|
|
245
|
+
/** Heartbeat timeout - close connection if no response (default: 10000) */
|
|
246
|
+
heartbeatTimeout?: number
|
|
247
|
+
/** Max reconnection attempts (default: 5) */
|
|
248
|
+
maxReconnectAttempts?: number
|
|
249
|
+
/** Reconnection delay in milliseconds (default: 1000) */
|
|
250
|
+
reconnectDelay?: number
|
|
251
|
+
/** Max subscriptions per connection (default: 100) */
|
|
252
|
+
maxSubscriptions?: number
|
|
253
|
+
/** Enable change buffering during reconnection (default: true) */
|
|
254
|
+
bufferChanges?: boolean
|
|
255
|
+
/** Max buffered changes per subscription (default: 1000) */
|
|
256
|
+
maxBufferedChanges?: number
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
/**
|
|
260
|
+
* Plugin configuration value - boolean or options object
|
|
261
|
+
*/
|
|
262
|
+
export type PluginValue = boolean | {
|
|
263
|
+
enabled: boolean
|
|
264
|
+
autoCreate?: boolean
|
|
265
|
+
config?: Record<string, unknown>
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
/**
|
|
269
|
+
* Supported plugin names for PostgresDO
|
|
270
|
+
*/
|
|
271
|
+
export type SupportedPlugin =
|
|
272
|
+
| 'vector'
|
|
273
|
+
| 'pgsearch'
|
|
274
|
+
| 'postgis'
|
|
275
|
+
| 'pg_lake'
|
|
276
|
+
| 'pgmq'
|
|
277
|
+
| 'pg_trgm'
|
|
278
|
+
| 'hstore'
|
|
279
|
+
| 'citext'
|
|
280
|
+
| 'uuid_ossp'
|
|
281
|
+
| 'pgcrypto'
|
|
282
|
+
| 'btree_gin'
|
|
283
|
+
| 'btree_gist'
|
|
284
|
+
| 'fuzzystrmatch'
|
|
285
|
+
| 'intarray'
|
|
286
|
+
| 'ltree'
|
|
287
|
+
| 'tablefunc'
|
|
288
|
+
| 'unaccent'
|
|
289
|
+
|
|
290
|
+
/**
|
|
291
|
+
* PostgreSQL configuration for PGlite
|
|
292
|
+
*/
|
|
293
|
+
export interface PostgresConfig {
|
|
294
|
+
database: string
|
|
295
|
+
extensions?: string[]
|
|
296
|
+
memoryLimitMB?: number
|
|
297
|
+
preserveCase?: boolean
|
|
298
|
+
dataDir?: string
|
|
299
|
+
debug?: boolean
|
|
300
|
+
/** Migration configuration for automatic schema management */
|
|
301
|
+
migrations?: MigrationConfig
|
|
302
|
+
|
|
303
|
+
/**
|
|
304
|
+
* Plugin/extension configuration for PGLite
|
|
305
|
+
*
|
|
306
|
+
* Enable extensions using simple flags or configuration objects.
|
|
307
|
+
* Extensions are loaded during PGLite initialization.
|
|
308
|
+
*
|
|
309
|
+
* @example
|
|
310
|
+
* ```typescript
|
|
311
|
+
* // Simple boolean flags
|
|
312
|
+
* plugins: {
|
|
313
|
+
* vector: true,
|
|
314
|
+
* pg_trgm: true,
|
|
315
|
+
* }
|
|
316
|
+
*
|
|
317
|
+
* // With auto-create option
|
|
318
|
+
* plugins: {
|
|
319
|
+
* vector: { enabled: true, autoCreate: true },
|
|
320
|
+
* hstore: { enabled: true, autoCreate: true },
|
|
321
|
+
* }
|
|
322
|
+
* ```
|
|
323
|
+
*/
|
|
324
|
+
plugins?: Partial<Record<SupportedPlugin, PluginValue>>
|
|
325
|
+
|
|
326
|
+
/**
|
|
327
|
+
* Injected concerns for dependency injection and testing.
|
|
328
|
+
* Each concern can be independently instantiated and injected
|
|
329
|
+
* for modularity and testability.
|
|
330
|
+
*/
|
|
331
|
+
concerns?: {
|
|
332
|
+
auth?: unknown
|
|
333
|
+
queryExecution?: unknown
|
|
334
|
+
cdc?: unknown
|
|
335
|
+
storageOrchestration?: unknown
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
// ============================================================================
|
|
340
|
+
// Schema Versioning Types
|
|
341
|
+
// ============================================================================
|
|
342
|
+
|
|
343
|
+
/**
|
|
344
|
+
* Migration status values
|
|
345
|
+
*/
|
|
346
|
+
export type MigrationStatus = 'pending' | 'applied' | 'failed' | 'rolled_back'
|
|
347
|
+
|
|
348
|
+
/**
|
|
349
|
+
* Individual migration record stored in the migrations table
|
|
350
|
+
*/
|
|
351
|
+
export interface MigrationRecord {
|
|
352
|
+
/** Migration identifier (e.g., '0001_initial') */
|
|
353
|
+
id: string
|
|
354
|
+
/** Human-readable name */
|
|
355
|
+
name: string
|
|
356
|
+
/** Numeric version for ordering */
|
|
357
|
+
version: number
|
|
358
|
+
/** SHA-256 checksum of migration content */
|
|
359
|
+
checksum: string
|
|
360
|
+
/** ISO timestamp when migration was applied */
|
|
361
|
+
applied_at: string
|
|
362
|
+
/** Execution time in milliseconds */
|
|
363
|
+
execution_time_ms: number
|
|
364
|
+
/** Current status of the migration */
|
|
365
|
+
status: MigrationStatus
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
/**
|
|
369
|
+
* Schema version metadata for a DO instance
|
|
370
|
+
*/
|
|
371
|
+
export interface SchemaVersion {
|
|
372
|
+
/** Current schema version number (highest applied migration) */
|
|
373
|
+
currentVersion: number
|
|
374
|
+
/** Total number of applied migrations */
|
|
375
|
+
appliedCount: number
|
|
376
|
+
/** Timestamp of last migration */
|
|
377
|
+
lastMigrationAt: string | null
|
|
378
|
+
/** List of all migration records */
|
|
379
|
+
migrations: MigrationRecord[]
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
/**
|
|
383
|
+
* Migration input for applying a new migration
|
|
384
|
+
*/
|
|
385
|
+
export interface MigrationInput {
|
|
386
|
+
/** Migration identifier (e.g., '0001_initial') */
|
|
387
|
+
id: string
|
|
388
|
+
/** Human-readable name */
|
|
389
|
+
name: string
|
|
390
|
+
/** Numeric version for ordering */
|
|
391
|
+
version: number
|
|
392
|
+
/** SQL to execute for this migration */
|
|
393
|
+
sql: string
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
/**
|
|
397
|
+
* Result of applying a migration
|
|
398
|
+
*/
|
|
399
|
+
export interface MigrationResult {
|
|
400
|
+
/** Whether the migration was successful */
|
|
401
|
+
success: boolean
|
|
402
|
+
/** Migration ID */
|
|
403
|
+
id: string
|
|
404
|
+
/** Execution time in milliseconds */
|
|
405
|
+
executionTimeMs: number
|
|
406
|
+
/** Error message if failed */
|
|
407
|
+
error?: string
|
|
408
|
+
/** Whether this migration was already applied (skipped) */
|
|
409
|
+
skipped?: boolean
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
/**
|
|
413
|
+
* Version comparison result
|
|
414
|
+
*/
|
|
415
|
+
export interface VersionComparison {
|
|
416
|
+
/** Current schema version in the DO */
|
|
417
|
+
current: number
|
|
418
|
+
/** Target version being compared against */
|
|
419
|
+
target: number
|
|
420
|
+
/** Whether the schema needs migration */
|
|
421
|
+
needsMigration: boolean
|
|
422
|
+
/** Number of migrations needed to reach target */
|
|
423
|
+
pendingCount: number
|
|
424
|
+
/** List of missing migration versions */
|
|
425
|
+
missingVersions: number[]
|
|
426
|
+
}
|
|
427
|
+
|
|
428
|
+
/**
|
|
429
|
+
* Migration progress event for callbacks
|
|
430
|
+
*/
|
|
431
|
+
export interface MigrationProgressEvent {
|
|
432
|
+
/** The migration being processed */
|
|
433
|
+
migration: MigrationInput
|
|
434
|
+
/** Zero-based index of current migration */
|
|
435
|
+
index: number
|
|
436
|
+
/** Total number of migrations to run */
|
|
437
|
+
total: number
|
|
438
|
+
/** Phase of the migration */
|
|
439
|
+
phase: 'starting' | 'executing' | 'completed' | 'failed'
|
|
440
|
+
/** Duration in milliseconds (only set on completion) */
|
|
441
|
+
durationMs?: number
|
|
442
|
+
/** Error message if failed */
|
|
443
|
+
error?: string
|
|
444
|
+
}
|
|
445
|
+
|
|
446
|
+
/**
|
|
447
|
+
* Migration timing strategy
|
|
448
|
+
*
|
|
449
|
+
* - 'on-create': Run migrations during DO initialization (default)
|
|
450
|
+
* - 'on-demand': Defer migrations until first query (lazy migration)
|
|
451
|
+
*/
|
|
452
|
+
export type MigrationStrategy = 'on-create' | 'on-demand'
|
|
453
|
+
|
|
454
|
+
/**
|
|
455
|
+
* Migration state tracked in DO storage
|
|
456
|
+
*/
|
|
457
|
+
export interface MigrationState {
|
|
458
|
+
/** Current migration status */
|
|
459
|
+
status: 'pending' | 'in-progress' | 'completed' | 'failed'
|
|
460
|
+
/** Schema version after migrations */
|
|
461
|
+
version: number
|
|
462
|
+
/** Last migration attempt timestamp (ISO string) */
|
|
463
|
+
lastAttemptAt?: string
|
|
464
|
+
/** Error message if failed */
|
|
465
|
+
error?: string
|
|
466
|
+
/** Duration of last migration run in ms */
|
|
467
|
+
durationMs?: number
|
|
468
|
+
}
|
|
469
|
+
|
|
470
|
+
/**
|
|
471
|
+
* Migration configuration for PostgresDO
|
|
472
|
+
*/
|
|
473
|
+
export interface MigrationConfig {
|
|
474
|
+
/** Migrations to run (will be sorted by version) */
|
|
475
|
+
migrations: MigrationInput[]
|
|
476
|
+
/** Callback when migration progress changes */
|
|
477
|
+
onProgress?: (event: MigrationProgressEvent) => void
|
|
478
|
+
/** Timeout for each individual migration in milliseconds (default: 30000) */
|
|
479
|
+
migrationTimeoutMs?: number
|
|
480
|
+
/** Whether to run migrations automatically on first connection (default: true) */
|
|
481
|
+
autoMigrate?: boolean
|
|
482
|
+
/**
|
|
483
|
+
* Migration timing strategy (default: 'on-create')
|
|
484
|
+
*
|
|
485
|
+
* - 'on-create': Run migrations during DO initialization (immediate)
|
|
486
|
+
* - 'on-demand': Defer migrations until first query (lazy)
|
|
487
|
+
*
|
|
488
|
+
* Use 'on-demand' to reduce cold start latency when migrations are expensive.
|
|
489
|
+
* The first query will incur the migration cost.
|
|
490
|
+
*/
|
|
491
|
+
strategy?: MigrationStrategy
|
|
492
|
+
}
|
|
493
|
+
|
|
494
|
+
/**
|
|
495
|
+
* Batch migration result
|
|
496
|
+
*/
|
|
497
|
+
export interface BatchMigrationResult {
|
|
498
|
+
/** Whether all migrations completed successfully */
|
|
499
|
+
success: boolean
|
|
500
|
+
/** Starting schema version */
|
|
501
|
+
fromVersion: number
|
|
502
|
+
/** Ending schema version */
|
|
503
|
+
toVersion: number
|
|
504
|
+
/** Total duration in milliseconds */
|
|
505
|
+
durationMs: number
|
|
506
|
+
/** Individual migration results */
|
|
507
|
+
results: MigrationResult[]
|
|
508
|
+
/** Number of migrations executed */
|
|
509
|
+
migrationsRun: number
|
|
510
|
+
/** Number of migrations skipped (already applied) */
|
|
511
|
+
migrationsSkipped: number
|
|
512
|
+
}
|
|
513
|
+
|
|
514
|
+
// ============================================================================
|
|
515
|
+
// Plugin Management Types
|
|
516
|
+
// ============================================================================
|
|
517
|
+
|
|
518
|
+
/**
|
|
519
|
+
* Plugin status information
|
|
520
|
+
*/
|
|
521
|
+
export interface PluginStatus {
|
|
522
|
+
/** Plugin name */
|
|
523
|
+
name: string
|
|
524
|
+
/** Display name for UI */
|
|
525
|
+
displayName: string
|
|
526
|
+
/** Plugin description */
|
|
527
|
+
description: string
|
|
528
|
+
/** Plugin category */
|
|
529
|
+
category: string
|
|
530
|
+
/** Whether the plugin is available in PGLite WASM */
|
|
531
|
+
available: boolean
|
|
532
|
+
/** Whether the plugin is enabled in configuration */
|
|
533
|
+
enabled: boolean
|
|
534
|
+
/** Whether the extension has been created in the database */
|
|
535
|
+
created: boolean
|
|
536
|
+
/** PostgreSQL extension name */
|
|
537
|
+
extensionName: string
|
|
538
|
+
/** Dependencies on other plugins */
|
|
539
|
+
dependencies?: string[]
|
|
540
|
+
}
|
|
541
|
+
|
|
542
|
+
/**
|
|
543
|
+
* Response for listing all plugins
|
|
544
|
+
*/
|
|
545
|
+
export interface PluginListResponse {
|
|
546
|
+
/** All available plugins with their status */
|
|
547
|
+
plugins: PluginStatus[]
|
|
548
|
+
/** Number of enabled plugins */
|
|
549
|
+
enabledCount: number
|
|
550
|
+
/** Number of available plugins */
|
|
551
|
+
availableCount: number
|
|
552
|
+
/** Timestamp of the response */
|
|
553
|
+
timestamp: string
|
|
554
|
+
}
|
|
555
|
+
|
|
556
|
+
/**
|
|
557
|
+
* Request to enable or disable a plugin
|
|
558
|
+
*/
|
|
559
|
+
export interface PluginToggleRequest {
|
|
560
|
+
/** Plugin name to enable/disable */
|
|
561
|
+
name: string
|
|
562
|
+
/** Whether to enable or disable */
|
|
563
|
+
enabled: boolean
|
|
564
|
+
/** Whether to auto-create the extension */
|
|
565
|
+
autoCreate?: boolean
|
|
566
|
+
}
|
|
567
|
+
|
|
568
|
+
/**
|
|
569
|
+
* Response for plugin toggle operation
|
|
570
|
+
*/
|
|
571
|
+
export interface PluginToggleResponse {
|
|
572
|
+
/** Whether the operation was successful */
|
|
573
|
+
success: boolean
|
|
574
|
+
/** Plugin name */
|
|
575
|
+
name: string
|
|
576
|
+
/** New enabled state */
|
|
577
|
+
enabled: boolean
|
|
578
|
+
/** Whether the extension was created */
|
|
579
|
+
created?: boolean
|
|
580
|
+
/** Error message if failed */
|
|
581
|
+
error?: string
|
|
582
|
+
/** Timestamp of the response */
|
|
583
|
+
timestamp: string
|
|
584
|
+
}
|
|
585
|
+
|
|
586
|
+
/**
|
|
587
|
+
* Request to enable multiple plugins
|
|
588
|
+
*/
|
|
589
|
+
export interface PluginBatchToggleRequest {
|
|
590
|
+
/** Plugins to enable */
|
|
591
|
+
enable?: string[]
|
|
592
|
+
/** Plugins to disable */
|
|
593
|
+
disable?: string[]
|
|
594
|
+
/** Whether to auto-create enabled extensions */
|
|
595
|
+
autoCreate?: boolean
|
|
596
|
+
}
|
|
597
|
+
|
|
598
|
+
/**
|
|
599
|
+
* Response for batch plugin toggle operation
|
|
600
|
+
*/
|
|
601
|
+
export interface PluginBatchToggleResponse {
|
|
602
|
+
/** Whether all operations were successful */
|
|
603
|
+
success: boolean
|
|
604
|
+
/** Results for each plugin */
|
|
605
|
+
results: PluginToggleResponse[]
|
|
606
|
+
/** Timestamp of the response */
|
|
607
|
+
timestamp: string
|
|
608
|
+
}
|
|
609
|
+
|
|
610
|
+
// ============================================================================
|
|
611
|
+
// Memory Pressure Monitoring Types
|
|
612
|
+
// ============================================================================
|
|
613
|
+
|
|
614
|
+
/**
|
|
615
|
+
* Memory pressure levels for OOM protection
|
|
616
|
+
*
|
|
617
|
+
* - 'normal': Memory usage is within acceptable bounds
|
|
618
|
+
* - 'warning': Memory usage is elevated, consider reducing allocations
|
|
619
|
+
* - 'critical': Memory usage is near the limit, take immediate action
|
|
620
|
+
* - 'oom': Out of memory - operations may fail
|
|
621
|
+
*/
|
|
622
|
+
export type MemoryPressureLevel = 'normal' | 'warning' | 'critical' | 'oom'
|
|
623
|
+
|
|
624
|
+
/**
|
|
625
|
+
* Memory usage statistics
|
|
626
|
+
*/
|
|
627
|
+
export interface MemoryStats {
|
|
628
|
+
/** Estimated WASM heap size in bytes */
|
|
629
|
+
heapUsed: number
|
|
630
|
+
/** Maximum heap size in bytes (Cloudflare Workers: 128MB) */
|
|
631
|
+
heapLimit: number
|
|
632
|
+
/** Memory usage as a percentage (0-100) */
|
|
633
|
+
usagePercent: number
|
|
634
|
+
/** Current memory pressure level */
|
|
635
|
+
pressureLevel: MemoryPressureLevel
|
|
636
|
+
/** Timestamp of measurement */
|
|
637
|
+
timestamp: Date
|
|
638
|
+
}
|
|
639
|
+
|
|
640
|
+
/**
|
|
641
|
+
* Memory pressure event for callbacks
|
|
642
|
+
*/
|
|
643
|
+
export interface MemoryPressureEvent {
|
|
644
|
+
/** Previous pressure level */
|
|
645
|
+
previousLevel: MemoryPressureLevel
|
|
646
|
+
/** Current pressure level */
|
|
647
|
+
currentLevel: MemoryPressureLevel
|
|
648
|
+
/** Memory statistics at time of event */
|
|
649
|
+
stats: MemoryStats
|
|
650
|
+
/** Actions taken in response to pressure */
|
|
651
|
+
actionsTaken: MemoryPressureAction[]
|
|
652
|
+
/** Timestamp of event */
|
|
653
|
+
timestamp: Date
|
|
654
|
+
}
|
|
655
|
+
|
|
656
|
+
/**
|
|
657
|
+
* Actions that can be taken under memory pressure
|
|
658
|
+
*/
|
|
659
|
+
export type MemoryPressureAction =
|
|
660
|
+
| 'extension_unloaded'
|
|
661
|
+
| 'cache_cleared'
|
|
662
|
+
| 'query_cancelled'
|
|
663
|
+
| 'gc_triggered'
|
|
664
|
+
| 'warning_emitted'
|
|
665
|
+
|
|
666
|
+
/**
|
|
667
|
+
* Result of a memory pressure action
|
|
668
|
+
*/
|
|
669
|
+
export interface MemoryPressureActionResult {
|
|
670
|
+
/** Action type */
|
|
671
|
+
action: MemoryPressureAction
|
|
672
|
+
/** Whether the action was successful */
|
|
673
|
+
success: boolean
|
|
674
|
+
/** Bytes freed (if applicable) */
|
|
675
|
+
bytesFreed?: number
|
|
676
|
+
/** Extension name (if action was extension_unloaded) */
|
|
677
|
+
extensionName?: string
|
|
678
|
+
/** Error message if action failed */
|
|
679
|
+
error?: string
|
|
680
|
+
}
|
|
681
|
+
|
|
682
|
+
/**
|
|
683
|
+
* Memory pressure configuration
|
|
684
|
+
*/
|
|
685
|
+
export interface MemoryPressureConfig {
|
|
686
|
+
/** Enable memory pressure monitoring (default: true) */
|
|
687
|
+
enabled?: boolean
|
|
688
|
+
/** Memory limit in bytes (default: 128MB for Cloudflare Workers) */
|
|
689
|
+
memoryLimitBytes?: number
|
|
690
|
+
/** Warning threshold as percentage (default: 70) */
|
|
691
|
+
warningThresholdPercent?: number
|
|
692
|
+
/** Critical threshold as percentage (default: 85) */
|
|
693
|
+
criticalThresholdPercent?: number
|
|
694
|
+
/** OOM threshold as percentage (default: 95) */
|
|
695
|
+
oomThresholdPercent?: number
|
|
696
|
+
/** How often to check memory pressure in ms (default: 5000) */
|
|
697
|
+
checkIntervalMs?: number
|
|
698
|
+
/** Auto-unload extensions under critical pressure (default: true) */
|
|
699
|
+
autoUnloadExtensions?: boolean
|
|
700
|
+
/** Extensions to prioritize for unloading (lowest priority first) */
|
|
701
|
+
extensionUnloadPriority?: string[]
|
|
702
|
+
/** Maximum number of listeners (default: 50) */
|
|
703
|
+
maxListeners?: number
|
|
704
|
+
}
|
|
705
|
+
|
|
706
|
+
/**
|
|
707
|
+
* Listener for memory pressure events
|
|
708
|
+
*/
|
|
709
|
+
export type MemoryPressureListener = (event: MemoryPressureEvent) => void
|
|
710
|
+
|
|
711
|
+
// ============================================================================
|
|
712
|
+
// Discriminated Union Types for WebSocket Messages
|
|
713
|
+
// ============================================================================
|
|
714
|
+
|
|
715
|
+
/**
|
|
716
|
+
* Query message - client requests SQL execution
|
|
717
|
+
*/
|
|
718
|
+
export interface WSQueryMessage {
|
|
719
|
+
type: 'query'
|
|
720
|
+
id: string
|
|
721
|
+
payload: QueryRequest
|
|
722
|
+
}
|
|
723
|
+
|
|
724
|
+
/**
|
|
725
|
+
* Subscribe message - client subscribes to CDC events
|
|
726
|
+
*/
|
|
727
|
+
export interface WSSubscribeMessage {
|
|
728
|
+
type: 'subscribe'
|
|
729
|
+
id: string
|
|
730
|
+
payload: SubscribePayload
|
|
731
|
+
}
|
|
732
|
+
|
|
733
|
+
/**
|
|
734
|
+
* Unsubscribe message - client unsubscribes from CDC events
|
|
735
|
+
*/
|
|
736
|
+
export interface WSUnsubscribeMessage {
|
|
737
|
+
type: 'unsubscribe'
|
|
738
|
+
id: string
|
|
739
|
+
payload: UnsubscribePayload
|
|
740
|
+
}
|
|
741
|
+
|
|
742
|
+
/**
|
|
743
|
+
* Ping message - client keepalive
|
|
744
|
+
*/
|
|
745
|
+
export interface WSPingMessage {
|
|
746
|
+
type: 'ping'
|
|
747
|
+
id: string
|
|
748
|
+
payload?: undefined
|
|
749
|
+
}
|
|
750
|
+
|
|
751
|
+
/**
|
|
752
|
+
* Pong message - server response to ping
|
|
753
|
+
*/
|
|
754
|
+
export interface WSPongMessage {
|
|
755
|
+
type: 'pong'
|
|
756
|
+
id: string
|
|
757
|
+
payload?: undefined
|
|
758
|
+
}
|
|
759
|
+
|
|
760
|
+
/**
|
|
761
|
+
* Result message - server response with query results
|
|
762
|
+
*/
|
|
763
|
+
export interface WSResultMessage {
|
|
764
|
+
type: 'result'
|
|
765
|
+
id: string
|
|
766
|
+
payload: QueryResponse
|
|
767
|
+
}
|
|
768
|
+
|
|
769
|
+
/**
|
|
770
|
+
* Error message - server error response
|
|
771
|
+
*/
|
|
772
|
+
export interface WSErrorMessage {
|
|
773
|
+
type: 'error'
|
|
774
|
+
id: string
|
|
775
|
+
payload: ErrorPayload
|
|
776
|
+
}
|
|
777
|
+
|
|
778
|
+
/**
|
|
779
|
+
* Change message - CDC change notification
|
|
780
|
+
*/
|
|
781
|
+
export interface WSChangeMessage {
|
|
782
|
+
type: 'change'
|
|
783
|
+
id: string
|
|
784
|
+
payload: ChangePayload
|
|
785
|
+
}
|
|
786
|
+
|
|
787
|
+
/**
|
|
788
|
+
* Subscribed message - confirmation of subscription
|
|
789
|
+
*/
|
|
790
|
+
export interface WSSubscribedMessage {
|
|
791
|
+
type: 'subscribed'
|
|
792
|
+
id: string
|
|
793
|
+
payload: SubscribedPayload
|
|
794
|
+
}
|
|
795
|
+
|
|
796
|
+
/**
|
|
797
|
+
* Unsubscribed message - confirmation of unsubscription
|
|
798
|
+
*/
|
|
799
|
+
export interface WSUnsubscribedMessage {
|
|
800
|
+
type: 'unsubscribed'
|
|
801
|
+
id: string
|
|
802
|
+
payload?: UnsubscribedPayload
|
|
803
|
+
}
|
|
804
|
+
|
|
805
|
+
/**
|
|
806
|
+
* Heartbeat message - server keepalive
|
|
807
|
+
*/
|
|
808
|
+
export interface WSHeartbeatMessage {
|
|
809
|
+
type: 'heartbeat'
|
|
810
|
+
id: string
|
|
811
|
+
payload?: HeartbeatPayload
|
|
812
|
+
}
|
|
813
|
+
|
|
814
|
+
/**
|
|
815
|
+
* Heartbeat acknowledgment message - client response to heartbeat
|
|
816
|
+
*/
|
|
817
|
+
export interface WSHeartbeatAckMessage {
|
|
818
|
+
type: 'heartbeat_ack'
|
|
819
|
+
id: string
|
|
820
|
+
payload?: HeartbeatPayload
|
|
821
|
+
}
|
|
822
|
+
|
|
823
|
+
/**
|
|
824
|
+
* Reconnect message - client reconnection request
|
|
825
|
+
*/
|
|
826
|
+
export interface WSReconnectMessage {
|
|
827
|
+
type: 'reconnect'
|
|
828
|
+
id: string
|
|
829
|
+
payload: ReconnectPayload
|
|
830
|
+
}
|
|
831
|
+
|
|
832
|
+
/**
|
|
833
|
+
* Welcome message - server greeting on connection
|
|
834
|
+
*/
|
|
835
|
+
export interface WSWelcomeMessage {
|
|
836
|
+
type: 'welcome'
|
|
837
|
+
id: string
|
|
838
|
+
payload: WelcomePayload
|
|
839
|
+
}
|
|
840
|
+
|
|
841
|
+
/**
|
|
842
|
+
* Discriminated union of all WebSocket message types
|
|
843
|
+
*
|
|
844
|
+
* This enables exhaustive switch checking and clean type narrowing:
|
|
845
|
+
* ```typescript
|
|
846
|
+
* function handleMessage(msg: WSTypedMessage) {
|
|
847
|
+
* switch (msg.type) {
|
|
848
|
+
* case 'query':
|
|
849
|
+
* // TypeScript knows msg.payload is QueryRequest
|
|
850
|
+
* return handleQuery(msg.payload)
|
|
851
|
+
* case 'result':
|
|
852
|
+
* // TypeScript knows msg.payload is QueryResponse
|
|
853
|
+
* return handleResult(msg.payload)
|
|
854
|
+
* // ... other cases
|
|
855
|
+
* }
|
|
856
|
+
* }
|
|
857
|
+
* ```
|
|
858
|
+
*/
|
|
859
|
+
export type WSTypedMessage =
|
|
860
|
+
| WSQueryMessage
|
|
861
|
+
| WSSubscribeMessage
|
|
862
|
+
| WSUnsubscribeMessage
|
|
863
|
+
| WSPingMessage
|
|
864
|
+
| WSPongMessage
|
|
865
|
+
| WSResultMessage
|
|
866
|
+
| WSErrorMessage
|
|
867
|
+
| WSChangeMessage
|
|
868
|
+
| WSSubscribedMessage
|
|
869
|
+
| WSUnsubscribedMessage
|
|
870
|
+
| WSHeartbeatMessage
|
|
871
|
+
| WSHeartbeatAckMessage
|
|
872
|
+
| WSReconnectMessage
|
|
873
|
+
| WSWelcomeMessage
|