UNPKG

pg-transactional-outbox

Version:

A PostgreSQL based transactional outbox and inbox pattern implementation to support exactly once message processing (with at least once message delivery).

18 lines 1.25 kB
import { TransactionalLogger } from '../common/logger'; import { GeneralMessageHandler } from '../handler/general-message-handler'; import { TransactionalMessageHandler } from '../handler/transactional-message-handler'; import { ReplicationListenerConfig } from './config'; import { ReplicationMessageStrategies } from './replication-strategies'; /** * Initialize the listener to watch for outbox or inbox table inserts via * PostgreSQL logical replication. * @param config The configuration object with required values to connect to the WAL. * @param messageHandlers A list of message handlers to handle specific messages or a single general message handler that handles all messages. * @param logger A logger instance for logging trace up to error logs * @param strategies Strategies to provide custom logic for handling specific scenarios * @returns Functions for a clean shutdown. */ export declare const initializeReplicationMessageListener: (config: ReplicationListenerConfig, messageHandlers: TransactionalMessageHandler[] | GeneralMessageHandler, logger: TransactionalLogger, strategies?: Partial<ReplicationMessageStrategies>) => [shutdown: { (): Promise<void>; }]; //# sourceMappingURL=replication-message-listener.d.ts.map