declare module '@tmcp/session-manager-postgres' { import type { StreamSessionManager, InfoSessionManager, SubscriptionManager } from '@tmcp/session-manager'; export class PostgresStreamSessionManager implements StreamSessionManager { constructor({ connectionString: connection_string, tableName: table_name, create, }: { connectionString: string; tableName?: string | undefined; create?: boolean | undefined; }); create(id: string, controller: ReadableStreamDefaultController): Promise; delete(id: string): Promise; has(id: string): Promise; send(sessions: string[] | undefined, data: string): Promise; #private; } export class PostgresInfoSessionManager implements InfoSessionManager { constructor({ connectionString: connection_string, tableNames: table_names, create, }: { connectionString: string; tableNames?: { clientCapabilities: string; clientInfo: string; logLevel: string; subscriptions: string; } | undefined; create?: boolean | undefined; }); getClientInfo(id: string): Promise["clientInfo"]>; setClientInfo(id: string, client_info: NonNullable["clientInfo"]): void; getClientCapabilities(id: string): Promise["clientCapabilities"]>; setClientCapabilities(id: string, client_capabilities: NonNullable["clientCapabilities"]): void; getLogLevel(id: string): Promise["logLevel"]>; setLogLevel(id: string, log_level: NonNullable["logLevel"]): void; getSubscriptions(uri: string): Promise; addSubscription(id: string, uri: string): void; removeSubscription(id: string, uri: string): void; delete(id: string): Promise; #private; } /** * Broker-only per-request subscription fanout backed by LISTEN/NOTIFY. * */ export class PostgresSubscriptionManager implements SubscriptionManager { constructor({ connectionString: connection_string, tableName: table_name, create, }: { connectionString: string; tableName?: string | undefined; create?: boolean | undefined; }); create(subscription: import("@tmcp/session-manager").Subscription, callbacks: import("@tmcp/session-manager").SubscriptionCallbacks): boolean | Promise; send(notification: import("json-rpc-2.0").JSONRPCRequest): void | Promise; close(id: string | number, origin: string, reason: "closed" | "cancelled"): boolean | Promise; closeAll(origin?: string, reason?: "closed" | "cancelled"): void | Promise; #private; } export {}; } //# sourceMappingURL=index.d.ts.map