/** * Delta-polling helpers for the v-next Postgres observability domain. * * Cursor model * ------------ * Each signal table stores both: * - `xactId xid8 DEFAULT pg_current_xact_id()` * - `cursorId bigserial` * * `bigserial` values are allocated before commit, so a later `cursorId` can * become visible before an earlier one. Delta reads therefore order by the * pair `(xactId, cursorId)` and cap reads at PostgreSQL's safe transaction * horizon: `pg_snapshot_xmin(pg_current_snapshot())`. Rows with `xactId` * below that horizon cannot still be in flight, so advancing the cursor there * cannot skip a late-committing row. */ import type { DbClient } from '../../../client.js'; export declare const OBSERVABILITY_DELTA_POLLING_FEATURE = "observability-delta-polling"; export declare function deltaPollingFeatureEnabled(): boolean; export declare function assertDeltaPollingEnabled(): void; export interface DeltaCursorParts { xactId: string; cursorId: string; } export declare function encodeDeltaCursor(xactId: unknown, cursorId?: unknown): string; export declare function decodeDeltaCursor(cursor: string): DeltaCursorParts; export declare function readSafeXactHorizon(client: DbClient): Promise; //# sourceMappingURL=polling.d.ts.map