@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,402 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module observability/types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for the OpenTelemetry-compatible observability layer.
|
|
5
|
+
* Follows standard OTel patterns adapted for Cloudflare Workers.
|
|
6
|
+
*
|
|
7
|
+
* ## Core Concepts
|
|
8
|
+
*
|
|
9
|
+
* - **Spans**: Represent a single operation within a trace. Each span has a name,
|
|
10
|
+
* start/end time, attributes, events, and status.
|
|
11
|
+
* - **Traces**: A collection of spans that share a common trace ID, representing
|
|
12
|
+
* an end-to-end request flow.
|
|
13
|
+
* - **Metrics**: Numerical measurements like counters, gauges, and histograms.
|
|
14
|
+
* - **Context**: Propagated state (trace ID, span ID) that links operations together.
|
|
15
|
+
*
|
|
16
|
+
* ## Memory Considerations for Cloudflare Workers
|
|
17
|
+
*
|
|
18
|
+
* All types are designed to minimize memory allocation within the 128MB Worker limit:
|
|
19
|
+
* - Use primitive types where possible
|
|
20
|
+
* - Avoid deep nesting in attribute values
|
|
21
|
+
* - Span events and links are optional to reduce memory when not needed
|
|
22
|
+
*
|
|
23
|
+
* @example Basic Usage
|
|
24
|
+
* ```typescript
|
|
25
|
+
* import type { Span, SpanContext, SpanAttributes } from '@dotdo/postgres/observability'
|
|
26
|
+
* import { SpanStatusCode, SpanKind } from '@dotdo/postgres/observability'
|
|
27
|
+
*
|
|
28
|
+
* // Type-safe span attributes
|
|
29
|
+
* const attributes: SpanAttributes = {
|
|
30
|
+
* 'db.system': 'postgresql',
|
|
31
|
+
* 'db.statement': 'SELECT * FROM users',
|
|
32
|
+
* 'db.rows_returned': 10,
|
|
33
|
+
* }
|
|
34
|
+
*
|
|
35
|
+
* // Span context for distributed tracing
|
|
36
|
+
* const context: SpanContext = {
|
|
37
|
+
* traceId: '0af7651916cd43dd8448eb211c80319c',
|
|
38
|
+
* spanId: 'b7ad6b7169203331',
|
|
39
|
+
* traceFlags: 1, // Sampled
|
|
40
|
+
* }
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
/**
|
|
44
|
+
* Span status codes following OpenTelemetry conventions.
|
|
45
|
+
*
|
|
46
|
+
* Used to indicate the outcome of a span's operation:
|
|
47
|
+
* - `OK`: Operation completed successfully
|
|
48
|
+
* - `UNSET`: Status not set (default for new spans)
|
|
49
|
+
* - `ERROR`: Operation failed with an error
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* ```typescript
|
|
53
|
+
* span.setStatus({ code: SpanStatusCode.OK })
|
|
54
|
+
* span.setStatus({ code: SpanStatusCode.ERROR, message: 'Query timeout' })
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
export declare enum SpanStatusCode {
|
|
58
|
+
/** The operation completed without errors */
|
|
59
|
+
OK = 0,
|
|
60
|
+
/** The operation was not executed */
|
|
61
|
+
UNSET = 1,
|
|
62
|
+
/** The operation contained an error */
|
|
63
|
+
ERROR = 2
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Span kind following OpenTelemetry conventions.
|
|
67
|
+
*
|
|
68
|
+
* Indicates the relationship between the span and its parent:
|
|
69
|
+
* - `INTERNAL`: Default kind for internal operations
|
|
70
|
+
* - `SERVER`: Handling an incoming request (e.g., HTTP server, RPC handler)
|
|
71
|
+
* - `CLIENT`: Initiating an outgoing request (e.g., database query, HTTP client)
|
|
72
|
+
* - `PRODUCER`: Creating a message for async processing
|
|
73
|
+
* - `CONSUMER`: Processing a message from a queue
|
|
74
|
+
*
|
|
75
|
+
* For postgres.do operations:
|
|
76
|
+
* - Use `CLIENT` for database queries
|
|
77
|
+
* - Use `SERVER` for Durable Object fetch handlers
|
|
78
|
+
* - Use `INTERNAL` for cache operations and internal processing
|
|
79
|
+
*
|
|
80
|
+
* @example
|
|
81
|
+
* ```typescript
|
|
82
|
+
* // Database query span
|
|
83
|
+
* const span = tracer.startSpan('postgres.query', {
|
|
84
|
+
* kind: SpanKind.CLIENT,
|
|
85
|
+
* attributes: { 'db.system': 'postgresql' },
|
|
86
|
+
* })
|
|
87
|
+
* ```
|
|
88
|
+
*/
|
|
89
|
+
export declare enum SpanKind {
|
|
90
|
+
/** Default span kind - internal operation */
|
|
91
|
+
INTERNAL = 0,
|
|
92
|
+
/** Server-side handling of an incoming request */
|
|
93
|
+
SERVER = 1,
|
|
94
|
+
/** Client-side operation initiating a request */
|
|
95
|
+
CLIENT = 2,
|
|
96
|
+
/** Producer of a message */
|
|
97
|
+
PRODUCER = 3,
|
|
98
|
+
/** Consumer of a message */
|
|
99
|
+
CONSUMER = 4
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Attribute value types supported in spans.
|
|
103
|
+
*
|
|
104
|
+
* Following OpenTelemetry semantic conventions, attribute values can be:
|
|
105
|
+
* - Primitive types: `string`, `number`, `boolean`
|
|
106
|
+
* - Homogeneous arrays: `string[]`, `number[]`, `boolean[]`
|
|
107
|
+
*
|
|
108
|
+
* **Memory Note**: For Cloudflare Workers, prefer simple values over arrays
|
|
109
|
+
* when possible to minimize memory allocation.
|
|
110
|
+
*/
|
|
111
|
+
export type AttributeValue = string | number | boolean | string[] | number[] | boolean[];
|
|
112
|
+
/**
|
|
113
|
+
* Span attributes as key-value pairs.
|
|
114
|
+
*
|
|
115
|
+
* Keys should follow OpenTelemetry semantic conventions where applicable:
|
|
116
|
+
* - `db.*` for database operations
|
|
117
|
+
* - `http.*` for HTTP operations
|
|
118
|
+
* - `cache.*` for cache operations
|
|
119
|
+
* - `do.*` for Durable Object operations (postgres.do specific)
|
|
120
|
+
*
|
|
121
|
+
* **Note**: Optional properties in extending interfaces use `AttributeValue | undefined`
|
|
122
|
+
*/
|
|
123
|
+
export type SpanAttributes = Record<string, AttributeValue | undefined>;
|
|
124
|
+
/**
|
|
125
|
+
* Span context for distributed tracing.
|
|
126
|
+
*
|
|
127
|
+
* Contains the identifiers needed to correlate spans across services and
|
|
128
|
+
* propagate trace context through headers (W3C Trace Context format).
|
|
129
|
+
*
|
|
130
|
+
* @example Creating a child context
|
|
131
|
+
* ```typescript
|
|
132
|
+
* import { createChildContext } from '@dotdo/postgres/observability'
|
|
133
|
+
*
|
|
134
|
+
* const parentContext = extractSpanContext(request.headers)
|
|
135
|
+
* const childContext = createChildContext(parentContext)
|
|
136
|
+
* ```
|
|
137
|
+
*/
|
|
138
|
+
export interface SpanContext {
|
|
139
|
+
/**
|
|
140
|
+
* Unique trace identifier (16 bytes = 32 hex characters).
|
|
141
|
+
* All spans in a trace share this ID.
|
|
142
|
+
*/
|
|
143
|
+
traceId: string;
|
|
144
|
+
/**
|
|
145
|
+
* Unique span identifier (8 bytes = 16 hex characters).
|
|
146
|
+
*/
|
|
147
|
+
spanId: string;
|
|
148
|
+
/**
|
|
149
|
+
* Parent span identifier (optional).
|
|
150
|
+
*/
|
|
151
|
+
parentSpanId?: string | undefined;
|
|
152
|
+
/**
|
|
153
|
+
* Trace flags controlling sampling and other behaviors.
|
|
154
|
+
* Bit 0: Sampled flag (1 = sampled, 0 = not sampled)
|
|
155
|
+
*/
|
|
156
|
+
traceFlags: number;
|
|
157
|
+
/**
|
|
158
|
+
* Trace state for vendor-specific data.
|
|
159
|
+
*/
|
|
160
|
+
traceState?: string | undefined;
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Span event representing a point-in-time occurrence
|
|
164
|
+
*/
|
|
165
|
+
export interface SpanEvent {
|
|
166
|
+
/** Event name */
|
|
167
|
+
name: string;
|
|
168
|
+
/** Timestamp in milliseconds */
|
|
169
|
+
timestamp: number;
|
|
170
|
+
/** Event attributes */
|
|
171
|
+
attributes?: SpanAttributes | undefined;
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Span link to other spans
|
|
175
|
+
*/
|
|
176
|
+
export interface SpanLink {
|
|
177
|
+
/** Linked span context */
|
|
178
|
+
context: SpanContext;
|
|
179
|
+
/** Link attributes */
|
|
180
|
+
attributes?: SpanAttributes | undefined;
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Span representing a single operation
|
|
184
|
+
*/
|
|
185
|
+
export interface Span {
|
|
186
|
+
/** Span name */
|
|
187
|
+
name: string;
|
|
188
|
+
/** Span context */
|
|
189
|
+
context: SpanContext;
|
|
190
|
+
/** Span kind */
|
|
191
|
+
kind: SpanKind;
|
|
192
|
+
/** Start timestamp in milliseconds */
|
|
193
|
+
startTime: number;
|
|
194
|
+
/** End timestamp in milliseconds (set when span ends) */
|
|
195
|
+
endTime?: number | undefined;
|
|
196
|
+
/** Span status */
|
|
197
|
+
status: SpanStatus;
|
|
198
|
+
/** Span attributes */
|
|
199
|
+
attributes: SpanAttributes;
|
|
200
|
+
/** Span events */
|
|
201
|
+
events: SpanEvent[];
|
|
202
|
+
/** Span links */
|
|
203
|
+
links: SpanLink[];
|
|
204
|
+
/** Resource attributes (service info) */
|
|
205
|
+
resource: SpanAttributes;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Span status
|
|
209
|
+
*/
|
|
210
|
+
export interface SpanStatus {
|
|
211
|
+
/** Status code */
|
|
212
|
+
code: SpanStatusCode;
|
|
213
|
+
/** Optional status message (for errors) */
|
|
214
|
+
message?: string | undefined;
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* Options for creating a span
|
|
218
|
+
*/
|
|
219
|
+
export interface SpanOptions {
|
|
220
|
+
/** Span kind (default: INTERNAL) */
|
|
221
|
+
kind?: SpanKind | undefined;
|
|
222
|
+
/** Initial attributes */
|
|
223
|
+
attributes?: SpanAttributes | undefined;
|
|
224
|
+
/** Parent span context */
|
|
225
|
+
parent?: SpanContext | undefined;
|
|
226
|
+
/** Span links */
|
|
227
|
+
links?: SpanLink[] | undefined;
|
|
228
|
+
/** Custom start time in milliseconds */
|
|
229
|
+
startTime?: number | undefined;
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Active span interface for manipulation
|
|
233
|
+
*/
|
|
234
|
+
export interface ActiveSpan {
|
|
235
|
+
/** Set an attribute on the span */
|
|
236
|
+
setAttribute(key: string, value: AttributeValue): this;
|
|
237
|
+
/** Set multiple attributes on the span */
|
|
238
|
+
setAttributes(attributes: SpanAttributes): this;
|
|
239
|
+
/** Add an event to the span */
|
|
240
|
+
addEvent(name: string, attributes?: SpanAttributes, timestamp?: number): this;
|
|
241
|
+
/** Set the span status */
|
|
242
|
+
setStatus(status: SpanStatus): this;
|
|
243
|
+
/** Record an exception */
|
|
244
|
+
recordException(error: Error | string, attributes?: SpanAttributes): this;
|
|
245
|
+
/** End the span */
|
|
246
|
+
end(endTime?: number): void;
|
|
247
|
+
/** Get the span context */
|
|
248
|
+
getContext(): SpanContext;
|
|
249
|
+
/** Check if the span is recording */
|
|
250
|
+
isRecording(): boolean;
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Tracer interface for creating spans.
|
|
254
|
+
*
|
|
255
|
+
* The primary entry point for distributed tracing. Use a tracer to create spans
|
|
256
|
+
* that track operations in your application.
|
|
257
|
+
*
|
|
258
|
+
* @example Basic tracing
|
|
259
|
+
* ```typescript
|
|
260
|
+
* const result = await tracer.startActiveSpan('postgres.query', async (span) => {
|
|
261
|
+
* span.setAttribute('db.statement', sql)
|
|
262
|
+
* const result = await pg.query(sql)
|
|
263
|
+
* span.setAttribute('db.rows_returned', result.rowCount)
|
|
264
|
+
* return result
|
|
265
|
+
* })
|
|
266
|
+
* ```
|
|
267
|
+
*/
|
|
268
|
+
export interface Tracer {
|
|
269
|
+
/** Start a new span */
|
|
270
|
+
startSpan(name: string, options?: SpanOptions): ActiveSpan;
|
|
271
|
+
/** Start a span and run a callback with it active */
|
|
272
|
+
startActiveSpan<T>(name: string, fn: (span: ActiveSpan) => T | Promise<T>): T | Promise<T>;
|
|
273
|
+
/** Start a span and run a callback with it active (with options) */
|
|
274
|
+
startActiveSpan<T>(name: string, options: SpanOptions, fn: (span: ActiveSpan) => T | Promise<T>): T | Promise<T>;
|
|
275
|
+
}
|
|
276
|
+
/**
|
|
277
|
+
* Tracer provider configuration
|
|
278
|
+
*/
|
|
279
|
+
export interface TracerConfig {
|
|
280
|
+
/** Service name */
|
|
281
|
+
serviceName: string;
|
|
282
|
+
/** Service version */
|
|
283
|
+
serviceVersion?: string | undefined;
|
|
284
|
+
/** Environment (production, staging, etc.) */
|
|
285
|
+
environment?: string | undefined;
|
|
286
|
+
/** Sampling rate (0.0 to 1.0) */
|
|
287
|
+
samplingRate?: number | undefined;
|
|
288
|
+
/** Additional resource attributes */
|
|
289
|
+
resourceAttributes?: SpanAttributes | undefined;
|
|
290
|
+
}
|
|
291
|
+
/**
|
|
292
|
+
* Span exporter interface
|
|
293
|
+
*/
|
|
294
|
+
export interface SpanExporter {
|
|
295
|
+
/** Export spans */
|
|
296
|
+
export(spans: Span[]): Promise<void>;
|
|
297
|
+
/** Shutdown the exporter */
|
|
298
|
+
shutdown(): Promise<void>;
|
|
299
|
+
}
|
|
300
|
+
/**
|
|
301
|
+
* Console exporter configuration
|
|
302
|
+
*/
|
|
303
|
+
export interface ConsoleExporterConfig {
|
|
304
|
+
/** Log level (debug, info, warn, error) */
|
|
305
|
+
logLevel?: 'debug' | 'info' | 'warn' | 'error';
|
|
306
|
+
/** Pretty print output */
|
|
307
|
+
prettyPrint?: boolean | undefined;
|
|
308
|
+
}
|
|
309
|
+
/**
|
|
310
|
+
* Query execution span attributes
|
|
311
|
+
*/
|
|
312
|
+
export interface QuerySpanAttributes extends SpanAttributes {
|
|
313
|
+
'db.system': 'postgresql';
|
|
314
|
+
'db.operation'?: string | undefined;
|
|
315
|
+
'db.statement'?: string | undefined;
|
|
316
|
+
'db.name'?: string | undefined;
|
|
317
|
+
'db.rows_affected'?: number | undefined;
|
|
318
|
+
'db.rows_returned'?: number | undefined;
|
|
319
|
+
'db.duration_ms': number;
|
|
320
|
+
'db.cached'?: boolean | undefined;
|
|
321
|
+
}
|
|
322
|
+
/**
|
|
323
|
+
* Cache operation span attributes
|
|
324
|
+
*/
|
|
325
|
+
export interface CacheSpanAttributes extends SpanAttributes {
|
|
326
|
+
'cache.operation': 'get' | 'put' | 'delete' | 'has';
|
|
327
|
+
'cache.hit'?: boolean | undefined;
|
|
328
|
+
'cache.key'?: string | undefined;
|
|
329
|
+
'cache.tier'?: 'cache' | 'do' | 'r2';
|
|
330
|
+
'cache.bytes'?: number | undefined;
|
|
331
|
+
'cache.duration_ms': number;
|
|
332
|
+
}
|
|
333
|
+
/**
|
|
334
|
+
* Durable Object lifecycle span attributes
|
|
335
|
+
*/
|
|
336
|
+
export interface DOLifecycleSpanAttributes extends SpanAttributes {
|
|
337
|
+
'do.operation': 'activation' | 'hibernation' | 'fetch' | 'alarm';
|
|
338
|
+
'do.id': string;
|
|
339
|
+
'do.name'?: string | undefined;
|
|
340
|
+
'do.duration_ms': number;
|
|
341
|
+
'do.storage_used'?: number | undefined;
|
|
342
|
+
}
|
|
343
|
+
/**
|
|
344
|
+
* Error tracking attributes
|
|
345
|
+
*/
|
|
346
|
+
export interface ErrorSpanAttributes extends SpanAttributes {
|
|
347
|
+
'error.type': string;
|
|
348
|
+
'error.message': string;
|
|
349
|
+
'error.stack'?: string | undefined;
|
|
350
|
+
'error.code'?: string | undefined;
|
|
351
|
+
'error.recoverable'?: boolean | undefined;
|
|
352
|
+
}
|
|
353
|
+
/**
|
|
354
|
+
* Metrics collector interface for tracking counters, gauges, and histograms.
|
|
355
|
+
*
|
|
356
|
+
* Provides three metric types:
|
|
357
|
+
* - **Counters**: Monotonically increasing values (e.g., request count)
|
|
358
|
+
* - **Gauges**: Point-in-time values (e.g., memory usage)
|
|
359
|
+
* - **Histograms**: Distribution of values (e.g., latency)
|
|
360
|
+
*
|
|
361
|
+
* @example
|
|
362
|
+
* ```typescript
|
|
363
|
+
* const metrics = createMetricsCollector()
|
|
364
|
+
* metrics.increment('postgres.query.count', 1, { operation: 'SELECT' })
|
|
365
|
+
* metrics.gauge('postgres.memory.heap_bytes', heapUsage)
|
|
366
|
+
* metrics.histogram('postgres.query.duration_ms', durationMs)
|
|
367
|
+
* ```
|
|
368
|
+
*/
|
|
369
|
+
export interface MetricsCollector {
|
|
370
|
+
/** Increment a counter */
|
|
371
|
+
increment(name: string, value?: number, tags?: Record<string, string>): void;
|
|
372
|
+
/** Record a gauge value */
|
|
373
|
+
gauge(name: string, value: number, tags?: Record<string, string>): void;
|
|
374
|
+
/** Record a histogram value */
|
|
375
|
+
histogram(name: string, value: number, tags?: Record<string, string>): void;
|
|
376
|
+
/** Get current metrics */
|
|
377
|
+
getMetrics(): MetricSnapshot[];
|
|
378
|
+
/** Reset all metrics */
|
|
379
|
+
reset(): void;
|
|
380
|
+
}
|
|
381
|
+
/**
|
|
382
|
+
* Metric snapshot
|
|
383
|
+
*/
|
|
384
|
+
export interface MetricSnapshot {
|
|
385
|
+
name: string;
|
|
386
|
+
type: 'counter' | 'gauge' | 'histogram';
|
|
387
|
+
value: number;
|
|
388
|
+
tags: Record<string, string>;
|
|
389
|
+
timestamp: number;
|
|
390
|
+
}
|
|
391
|
+
/**
|
|
392
|
+
* Observability context for request propagation
|
|
393
|
+
*/
|
|
394
|
+
export interface ObservabilityContext {
|
|
395
|
+
/** Current tracer */
|
|
396
|
+
tracer: Tracer;
|
|
397
|
+
/** Current metrics collector */
|
|
398
|
+
metrics: MetricsCollector;
|
|
399
|
+
/** Current span context (if any) */
|
|
400
|
+
currentSpan?: SpanContext | undefined;
|
|
401
|
+
}
|
|
402
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/observability/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module observability/types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for the OpenTelemetry-compatible observability layer.
|
|
5
|
+
* Follows standard OTel patterns adapted for Cloudflare Workers.
|
|
6
|
+
*
|
|
7
|
+
* ## Core Concepts
|
|
8
|
+
*
|
|
9
|
+
* - **Spans**: Represent a single operation within a trace. Each span has a name,
|
|
10
|
+
* start/end time, attributes, events, and status.
|
|
11
|
+
* - **Traces**: A collection of spans that share a common trace ID, representing
|
|
12
|
+
* an end-to-end request flow.
|
|
13
|
+
* - **Metrics**: Numerical measurements like counters, gauges, and histograms.
|
|
14
|
+
* - **Context**: Propagated state (trace ID, span ID) that links operations together.
|
|
15
|
+
*
|
|
16
|
+
* ## Memory Considerations for Cloudflare Workers
|
|
17
|
+
*
|
|
18
|
+
* All types are designed to minimize memory allocation within the 128MB Worker limit:
|
|
19
|
+
* - Use primitive types where possible
|
|
20
|
+
* - Avoid deep nesting in attribute values
|
|
21
|
+
* - Span events and links are optional to reduce memory when not needed
|
|
22
|
+
*
|
|
23
|
+
* @example Basic Usage
|
|
24
|
+
* ```typescript
|
|
25
|
+
* import type { Span, SpanContext, SpanAttributes } from '@dotdo/postgres/observability'
|
|
26
|
+
* import { SpanStatusCode, SpanKind } from '@dotdo/postgres/observability'
|
|
27
|
+
*
|
|
28
|
+
* // Type-safe span attributes
|
|
29
|
+
* const attributes: SpanAttributes = {
|
|
30
|
+
* 'db.system': 'postgresql',
|
|
31
|
+
* 'db.statement': 'SELECT * FROM users',
|
|
32
|
+
* 'db.rows_returned': 10,
|
|
33
|
+
* }
|
|
34
|
+
*
|
|
35
|
+
* // Span context for distributed tracing
|
|
36
|
+
* const context: SpanContext = {
|
|
37
|
+
* traceId: '0af7651916cd43dd8448eb211c80319c',
|
|
38
|
+
* spanId: 'b7ad6b7169203331',
|
|
39
|
+
* traceFlags: 1, // Sampled
|
|
40
|
+
* }
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
/**
|
|
44
|
+
* Span status codes following OpenTelemetry conventions.
|
|
45
|
+
*
|
|
46
|
+
* Used to indicate the outcome of a span's operation:
|
|
47
|
+
* - `OK`: Operation completed successfully
|
|
48
|
+
* - `UNSET`: Status not set (default for new spans)
|
|
49
|
+
* - `ERROR`: Operation failed with an error
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* ```typescript
|
|
53
|
+
* span.setStatus({ code: SpanStatusCode.OK })
|
|
54
|
+
* span.setStatus({ code: SpanStatusCode.ERROR, message: 'Query timeout' })
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
export var SpanStatusCode;
|
|
58
|
+
(function (SpanStatusCode) {
|
|
59
|
+
/** The operation completed without errors */
|
|
60
|
+
SpanStatusCode[SpanStatusCode["OK"] = 0] = "OK";
|
|
61
|
+
/** The operation was not executed */
|
|
62
|
+
SpanStatusCode[SpanStatusCode["UNSET"] = 1] = "UNSET";
|
|
63
|
+
/** The operation contained an error */
|
|
64
|
+
SpanStatusCode[SpanStatusCode["ERROR"] = 2] = "ERROR";
|
|
65
|
+
})(SpanStatusCode || (SpanStatusCode = {}));
|
|
66
|
+
/**
|
|
67
|
+
* Span kind following OpenTelemetry conventions.
|
|
68
|
+
*
|
|
69
|
+
* Indicates the relationship between the span and its parent:
|
|
70
|
+
* - `INTERNAL`: Default kind for internal operations
|
|
71
|
+
* - `SERVER`: Handling an incoming request (e.g., HTTP server, RPC handler)
|
|
72
|
+
* - `CLIENT`: Initiating an outgoing request (e.g., database query, HTTP client)
|
|
73
|
+
* - `PRODUCER`: Creating a message for async processing
|
|
74
|
+
* - `CONSUMER`: Processing a message from a queue
|
|
75
|
+
*
|
|
76
|
+
* For postgres.do operations:
|
|
77
|
+
* - Use `CLIENT` for database queries
|
|
78
|
+
* - Use `SERVER` for Durable Object fetch handlers
|
|
79
|
+
* - Use `INTERNAL` for cache operations and internal processing
|
|
80
|
+
*
|
|
81
|
+
* @example
|
|
82
|
+
* ```typescript
|
|
83
|
+
* // Database query span
|
|
84
|
+
* const span = tracer.startSpan('postgres.query', {
|
|
85
|
+
* kind: SpanKind.CLIENT,
|
|
86
|
+
* attributes: { 'db.system': 'postgresql' },
|
|
87
|
+
* })
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
export var SpanKind;
|
|
91
|
+
(function (SpanKind) {
|
|
92
|
+
/** Default span kind - internal operation */
|
|
93
|
+
SpanKind[SpanKind["INTERNAL"] = 0] = "INTERNAL";
|
|
94
|
+
/** Server-side handling of an incoming request */
|
|
95
|
+
SpanKind[SpanKind["SERVER"] = 1] = "SERVER";
|
|
96
|
+
/** Client-side operation initiating a request */
|
|
97
|
+
SpanKind[SpanKind["CLIENT"] = 2] = "CLIENT";
|
|
98
|
+
/** Producer of a message */
|
|
99
|
+
SpanKind[SpanKind["PRODUCER"] = 3] = "PRODUCER";
|
|
100
|
+
/** Consumer of a message */
|
|
101
|
+
SpanKind[SpanKind["CONSUMER"] = 4] = "CONSUMER";
|
|
102
|
+
})(SpanKind || (SpanKind = {}));
|
|
103
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/observability/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAN,IAAY,cAOX;AAPD,WAAY,cAAc;IACxB,6CAA6C;IAC7C,+CAAM,CAAA;IACN,qCAAqC;IACrC,qDAAS,CAAA;IACT,uCAAuC;IACvC,qDAAS,CAAA;AACX,CAAC,EAPW,cAAc,KAAd,cAAc,QAOzB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAN,IAAY,QAWX;AAXD,WAAY,QAAQ;IAClB,6CAA6C;IAC7C,+CAAY,CAAA;IACZ,kDAAkD;IAClD,2CAAU,CAAA;IACV,iDAAiD;IACjD,2CAAU,CAAA;IACV,4BAA4B;IAC5B,+CAAY,CAAA;IACZ,4BAA4B;IAC5B,+CAAY,CAAA;AACd,CAAC,EAXW,QAAQ,KAAR,QAAQ,QAWnB"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Workers-Compatible PGLite Wrapper
|
|
3
|
+
*
|
|
4
|
+
* This module provides a production-grade PGLite implementation for Cloudflare Workers
|
|
5
|
+
* that works around the `addFunction` limitation by using the trampoline-based
|
|
6
|
+
* implementation from @dotdo/pglite/workers.
|
|
7
|
+
*
|
|
8
|
+
* Key features:
|
|
9
|
+
* - Uses pre-compiled WASM modules (no runtime compilation)
|
|
10
|
+
* - Uses EM_JS trampolines instead of addFunction (no CSP violations)
|
|
11
|
+
* - Properly handles fsBundle as ArrayBuffer or Blob
|
|
12
|
+
* - Provides query/exec/transaction interface compatible with PostgresDO
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* import { createWorkersPGLite } from './workers-pglite'
|
|
17
|
+
* import pgliteWasm from '../pglite-assets/pglite.wasm'
|
|
18
|
+
* import pgliteData from '../pglite-assets/pglite.data'
|
|
19
|
+
*
|
|
20
|
+
* const db = await createWorkersPGLite({
|
|
21
|
+
* wasmModule: pgliteWasm,
|
|
22
|
+
* fsBundle: pgliteData,
|
|
23
|
+
* debug: true,
|
|
24
|
+
* })
|
|
25
|
+
*
|
|
26
|
+
* const result = await db.query('SELECT 1 + 1 AS sum')
|
|
27
|
+
* console.log(result.rows[0].sum) // 2
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
import { type PGliteOptions, type DebugLevel } from '@dotdo/pglite';
|
|
31
|
+
type PGliteWorkersOptions = PGliteOptions;
|
|
32
|
+
type QueryResult<T = unknown> = {
|
|
33
|
+
rows: T[];
|
|
34
|
+
fields: {
|
|
35
|
+
name: string;
|
|
36
|
+
dataTypeID: number;
|
|
37
|
+
}[];
|
|
38
|
+
affectedRows?: number;
|
|
39
|
+
};
|
|
40
|
+
export type { DebugLevel };
|
|
41
|
+
/**
|
|
42
|
+
* Configuration options for Workers PGLite
|
|
43
|
+
*/
|
|
44
|
+
export interface WorkersPGLiteOptions {
|
|
45
|
+
/**
|
|
46
|
+
* Pre-compiled WASM module
|
|
47
|
+
* Import this at bundle time: import pgliteWasm from './pglite.wasm'
|
|
48
|
+
*/
|
|
49
|
+
wasmModule: WebAssembly.Module;
|
|
50
|
+
/**
|
|
51
|
+
* Filesystem bundle (pglite.data)
|
|
52
|
+
* Can be ArrayBuffer, Blob, ReadableStream, or typed array (Uint8Array)
|
|
53
|
+
* Import at bundle time: import pgliteData from './pglite.data'
|
|
54
|
+
*/
|
|
55
|
+
fsBundle: ArrayBuffer | Blob | ReadableStream<Uint8Array> | ArrayBufferView;
|
|
56
|
+
/**
|
|
57
|
+
* Database name (default: 'postgres')
|
|
58
|
+
*/
|
|
59
|
+
database?: string;
|
|
60
|
+
/**
|
|
61
|
+
* Enable debug logging (0-5 levels)
|
|
62
|
+
*/
|
|
63
|
+
debug?: DebugLevel;
|
|
64
|
+
/**
|
|
65
|
+
* Extensions to load (for future extension support)
|
|
66
|
+
*/
|
|
67
|
+
extensions?: Record<string, unknown>;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* PGLite-compatible interface for use in PostgresDO
|
|
71
|
+
* Matches the PGliteLike interface expected by do.ts
|
|
72
|
+
*/
|
|
73
|
+
export interface WorkersPGLiteLike {
|
|
74
|
+
query<T = unknown>(sql: string, params?: unknown[]): Promise<{
|
|
75
|
+
rows: T[];
|
|
76
|
+
fields: {
|
|
77
|
+
name: string;
|
|
78
|
+
dataTypeID: number;
|
|
79
|
+
}[];
|
|
80
|
+
affectedRows?: number;
|
|
81
|
+
}>;
|
|
82
|
+
exec?(sql: string): Promise<void>;
|
|
83
|
+
close?(): Promise<void>;
|
|
84
|
+
waitReady?: Promise<void>;
|
|
85
|
+
ready?: boolean;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Wrapper around PGliteWorkers that provides a compatible interface
|
|
89
|
+
* for PostgresDO and handles fsBundle conversion
|
|
90
|
+
*/
|
|
91
|
+
export declare class WorkersPGLite implements WorkersPGLiteLike {
|
|
92
|
+
private pglite;
|
|
93
|
+
private _ready;
|
|
94
|
+
private constructor();
|
|
95
|
+
/**
|
|
96
|
+
* Create a new WorkersPGLite instance
|
|
97
|
+
*/
|
|
98
|
+
static create(options: WorkersPGLiteOptions): Promise<WorkersPGLite>;
|
|
99
|
+
/**
|
|
100
|
+
* Check if the database is ready
|
|
101
|
+
*/
|
|
102
|
+
get ready(): boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Promise that resolves when database is ready
|
|
105
|
+
* (already resolved for this implementation)
|
|
106
|
+
*/
|
|
107
|
+
get waitReady(): Promise<void>;
|
|
108
|
+
/**
|
|
109
|
+
* Execute a SQL query with optional parameters
|
|
110
|
+
* Uses PGlite's native parameterized query support for SQL injection safety
|
|
111
|
+
*/
|
|
112
|
+
query<T = unknown>(sql: string, params?: unknown[]): Promise<{
|
|
113
|
+
rows: T[];
|
|
114
|
+
fields: {
|
|
115
|
+
name: string;
|
|
116
|
+
dataTypeID: number;
|
|
117
|
+
}[];
|
|
118
|
+
affectedRows?: number;
|
|
119
|
+
}>;
|
|
120
|
+
/**
|
|
121
|
+
* Execute SQL without returning results
|
|
122
|
+
*/
|
|
123
|
+
exec(sql: string): Promise<void>;
|
|
124
|
+
/**
|
|
125
|
+
* Close the database connection
|
|
126
|
+
*/
|
|
127
|
+
close(): Promise<void>;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Factory function to create a WorkersPGLite instance
|
|
131
|
+
*/
|
|
132
|
+
export declare function createWorkersPGLite(options: WorkersPGLiteOptions): Promise<WorkersPGLite>;
|
|
133
|
+
/**
|
|
134
|
+
* Type guard to check if a value is a WorkersPGLite instance
|
|
135
|
+
*/
|
|
136
|
+
export declare function isWorkersPGLite(value: unknown): value is WorkersPGLite;
|
|
137
|
+
export type { PGliteWorkersOptions, QueryResult };
|
|
138
|
+
//# sourceMappingURL=workers-pglite.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workers-pglite.d.ts","sourceRoot":"","sources":["../../src/pglite/workers-pglite.ts"],"names":[],"mappings":"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"}
|