pg-trx-outbox
Version:
Transactional outbox of Postgres for Node.js with little Event Sourcing
45 lines (44 loc) • 1.43 kB
TypeScript
import type { Adapter, OutboxMessage } from '../../types.ts';
import { BaseAdapter } from './base.ts';
export declare abstract class ParallelAdapter extends BaseAdapter implements Adapter {
abstract start(): Promise<void>;
abstract stop(): Promise<void>;
abstract onHandled(messages: readonly OutboxMessage[]): Promise<void>;
send(messages: readonly OutboxMessage[]): Promise<({
meta: {
pgTrxOutbox: {
time: number;
libuv: {
max: number;
min: number;
mean: number;
stddev: number;
};
beforeMemory: NodeJS.MemoryUsage;
afterMemory: NodeJS.MemoryUsage;
uptime: number;
cpuUsage: NodeJS.CpuUsage;
};
};
status: "fulfilled";
value: unknown;
} | {
meta: {
pgTrxOutbox: {
time: number;
libuv: {
max: number;
min: number;
mean: number;
stddev: number;
};
beforeMemory: NodeJS.MemoryUsage;
afterMemory: NodeJS.MemoryUsage;
uptime: number;
cpuUsage: NodeJS.CpuUsage;
};
};
status: "rejected";
reason: any;
})[]>;
}