pg-boss 11.1.2 → 12.0.0-beta1

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.
@@ -0,0 +1,269 @@
1
+ import EventEmitter from "node:events";
2
+
3
+ //#region src/types.d.ts
4
+ type JobStates = {
5
+ created: 'created';
6
+ retry: 'retry';
7
+ active: 'active';
8
+ completed: 'completed';
9
+ cancelled: 'cancelled';
10
+ failed: 'failed';
11
+ };
12
+ type QueuePolicies = {
13
+ standard: 'standard';
14
+ short: 'short';
15
+ singleton: 'singleton';
16
+ stately: 'stately';
17
+ };
18
+ interface IDatabase {
19
+ executeSql(text: string, values?: unknown[]): Promise<{
20
+ rows: any[];
21
+ }>;
22
+ }
23
+ interface DatabaseOptions {
24
+ application_name?: string;
25
+ database?: string;
26
+ user?: string;
27
+ password?: string | (() => string) | (() => Promise<string>);
28
+ host?: string;
29
+ port?: number;
30
+ schema?: string;
31
+ ssl?: any;
32
+ connectionString?: string;
33
+ max?: number;
34
+ db?: IDatabase;
35
+ }
36
+ interface SchedulingOptions {
37
+ schedule?: boolean;
38
+ clockMonitorIntervalSeconds?: number;
39
+ cronWorkerIntervalSeconds?: number;
40
+ cronMonitorIntervalSeconds?: number;
41
+ }
42
+ interface MaintenanceOptions {
43
+ supervise?: boolean;
44
+ migrate?: boolean;
45
+ warningSlowQuerySeconds?: number;
46
+ warningQueueSize?: number;
47
+ superviseIntervalSeconds?: number;
48
+ maintenanceIntervalSeconds?: number;
49
+ queueCacheIntervalSeconds?: number;
50
+ monitorIntervalSeconds?: number;
51
+ }
52
+ interface ConstructorOptions extends DatabaseOptions, SchedulingOptions, MaintenanceOptions {}
53
+ interface QueueOptions {
54
+ expireInSeconds?: number;
55
+ retentionSeconds?: number;
56
+ deleteAfterSeconds?: number;
57
+ retryLimit?: number;
58
+ retryDelay?: number;
59
+ retryBackoff?: boolean;
60
+ retryDelayMax?: number;
61
+ }
62
+ interface JobOptions {
63
+ id?: string;
64
+ priority?: number;
65
+ startAfter?: number | string | Date;
66
+ singletonKey?: string;
67
+ singletonSeconds?: number;
68
+ singletonNextSlot?: boolean;
69
+ keepUntil?: number | string | Date;
70
+ }
71
+ interface ConnectionOptions {
72
+ db?: IDatabase;
73
+ }
74
+ type InsertOptions = ConnectionOptions;
75
+ type SendOptions = JobOptions & QueueOptions & ConnectionOptions;
76
+ type QueuePolicy = 'standard' | 'short' | 'singleton' | 'stately' | 'exclusive';
77
+ interface Queue extends QueueOptions {
78
+ name: string;
79
+ policy?: QueuePolicy;
80
+ partition?: boolean;
81
+ deadLetter?: string;
82
+ warningQueueSize?: number;
83
+ }
84
+ interface QueueResult extends Queue {
85
+ deferredCount: number;
86
+ queuedCount: number;
87
+ activeCount: number;
88
+ totalCount: number;
89
+ table: string;
90
+ createdOn: Date;
91
+ updatedOn: Date;
92
+ singletonsActive: string[] | null;
93
+ }
94
+ type ScheduleOptions = SendOptions & {
95
+ tz?: string;
96
+ key?: string;
97
+ };
98
+ interface JobPollingOptions {
99
+ pollingIntervalSeconds?: number;
100
+ }
101
+ interface JobFetchOptions {
102
+ includeMetadata?: boolean;
103
+ priority?: boolean;
104
+ batchSize?: number;
105
+ ignoreStartAfter?: boolean;
106
+ }
107
+ type WorkOptions = JobFetchOptions & JobPollingOptions;
108
+ type FetchOptions = JobFetchOptions & ConnectionOptions;
109
+ interface WorkHandler<ReqData> {
110
+ (job: Job<ReqData>[]): Promise<any>;
111
+ }
112
+ interface WorkWithMetadataHandler<ReqData> {
113
+ (job: JobWithMetadata<ReqData>[]): Promise<any>;
114
+ }
115
+ interface Request {
116
+ name: string;
117
+ data?: object;
118
+ options?: SendOptions;
119
+ }
120
+ interface Schedule {
121
+ name: string;
122
+ key: string;
123
+ cron: string;
124
+ timezone: string;
125
+ data?: object;
126
+ options?: SendOptions;
127
+ }
128
+ interface Job<T = object> {
129
+ id: string;
130
+ name: string;
131
+ data: T;
132
+ expireInSeconds: number;
133
+ }
134
+ interface JobWithMetadata<T = object> extends Job<T> {
135
+ priority: number;
136
+ state: 'created' | 'retry' | 'active' | 'completed' | 'cancelled' | 'failed';
137
+ retryLimit: number;
138
+ retryCount: number;
139
+ retryDelay: number;
140
+ retryBackoff: boolean;
141
+ retryDelayMax?: number;
142
+ startAfter: Date;
143
+ startedOn: Date;
144
+ singletonKey: string | null;
145
+ singletonOn: Date | null;
146
+ expireInSeconds: number;
147
+ deleteAfterSeconds: number;
148
+ createdOn: Date;
149
+ completedOn: Date | null;
150
+ keepUntil: Date;
151
+ policy: QueuePolicy;
152
+ deadLetter: string;
153
+ output: object;
154
+ }
155
+ interface JobInsert<T = object> {
156
+ id?: string;
157
+ data?: T;
158
+ priority?: number;
159
+ retryLimit?: number;
160
+ retryDelay?: number;
161
+ retryBackoff?: boolean;
162
+ retryDelayMax?: number;
163
+ startAfter?: Date | number | string;
164
+ singletonKey?: string;
165
+ singletonSeconds?: number;
166
+ expireInSeconds?: number;
167
+ deleteAfterSeconds?: number;
168
+ retentionSeconds?: number;
169
+ }
170
+ type WorkerState = 'created' | 'active' | 'stopping' | 'stopped';
171
+ interface WipData {
172
+ id: string;
173
+ name: string;
174
+ options: WorkOptions;
175
+ state: WorkerState;
176
+ count: number;
177
+ createdOn: number;
178
+ lastFetchedOn: number | null;
179
+ lastJobStartedOn: number | null;
180
+ lastJobEndedOn: number | null;
181
+ lastJobDuration: number | null;
182
+ lastError: object | null;
183
+ lastErrorOn: number | null;
184
+ }
185
+ interface StopOptions {
186
+ close?: boolean;
187
+ graceful?: boolean;
188
+ timeout?: number;
189
+ wait?: boolean;
190
+ }
191
+ interface OffWorkOptions {
192
+ id: string;
193
+ }
194
+ type UpdateQueueOptions = Omit<Queue, 'name' | 'partition' | 'policy'>;
195
+ interface Warning {
196
+ message: string;
197
+ data: object;
198
+ }
199
+ interface CommandResponse {}
200
+ type PgBossEventMap = {
201
+ error: [error: Error];
202
+ warning: [warning: Warning];
203
+ wip: [data: WipData[]];
204
+ stopped: [];
205
+ };
206
+ //#endregion
207
+ //#region src/index.d.ts
208
+ declare class PgBoss extends EventEmitter<PgBossEventMap> {
209
+ #private;
210
+ constructor(connectionString: string);
211
+ constructor(options: ConstructorOptions);
212
+ static getConstructionPlans(schema?: string): string;
213
+ static getMigrationPlans(schema?: string, version?: number): string;
214
+ static getRollbackPlans(schema?: string, version?: number): string;
215
+ static states: JobStates;
216
+ static policies: QueuePolicies;
217
+ start(): Promise<this>;
218
+ stop(options?: StopOptions): Promise<void>;
219
+ send(request: Request): Promise<string | null>;
220
+ send(name: string, data?: object, options?: SendOptions): Promise<string | null>;
221
+ sendAfter(name: string, data: object, options: SendOptions, date: Date): Promise<string | null>;
222
+ sendAfter(name: string, data: object, options: SendOptions, dateString: string): Promise<string | null>;
223
+ sendAfter(name: string, data: object, options: SendOptions, seconds: number): Promise<string | null>;
224
+ sendThrottled(name: string, data: object, options: SendOptions, seconds: number, key?: string): Promise<string | null>;
225
+ sendDebounced(name: string, data: object, options: SendOptions, seconds: number, key?: string): Promise<string | null>;
226
+ insert(name: string, jobs: JobInsert[], options?: InsertOptions): Promise<string[] | null>;
227
+ fetch<T>(name: string, options: FetchOptions & {
228
+ includeMetadata: true;
229
+ }): Promise<JobWithMetadata<T>[]>;
230
+ fetch<T>(name: string, options?: FetchOptions): Promise<Job<T>[]>;
231
+ work<ReqData>(name: string, handler: WorkHandler<ReqData>): Promise<string>;
232
+ work<ReqData>(name: string, options: WorkOptions & {
233
+ includeMetadata: true;
234
+ }, handler: WorkWithMetadataHandler<ReqData>): Promise<string>;
235
+ work<ReqData>(name: string, options: WorkOptions, handler: WorkHandler<ReqData>): Promise<string>;
236
+ offWork(name: string): Promise<void>;
237
+ offWork(options: OffWorkOptions): Promise<void>;
238
+ notifyWorker(workerId: string): void;
239
+ subscribe(event: string, name: string): Promise<void>;
240
+ unsubscribe(event: string, name: string): Promise<void>;
241
+ publish(event: string, data?: object, options?: SendOptions): Promise<void>;
242
+ cancel(name: string, id: string | string[], options?: ConnectionOptions): Promise<CommandResponse>;
243
+ resume(name: string, id: string | string[], options?: ConnectionOptions): Promise<CommandResponse>;
244
+ retry(name: string, id: string | string[], options?: ConnectionOptions): Promise<CommandResponse>;
245
+ deleteJob(name: string, id: string | string[], options?: ConnectionOptions): Promise<CommandResponse>;
246
+ deleteQueuedJobs(name: string): Promise<void>;
247
+ deleteStoredJobs(name: string): Promise<void>;
248
+ deleteAllJobs(name: string): Promise<void>;
249
+ complete(name: string, id: string | string[], data?: object, options?: ConnectionOptions): Promise<CommandResponse>;
250
+ fail(name: string, id: string | string[], data?: object, options?: ConnectionOptions): Promise<CommandResponse>;
251
+ getJobById<T>(name: string, id: string, options?: ConnectionOptions): Promise<JobWithMetadata<T> | null>;
252
+ createQueue(name: string, options?: Omit<Queue, 'name'>): Promise<void>;
253
+ updateQueue(name: string, options?: UpdateQueueOptions): Promise<void>;
254
+ deleteQueue(name: string): Promise<void>;
255
+ getQueues(names?: string[]): Promise<QueueResult[]>;
256
+ getQueue(name: string): Promise<QueueResult | null>;
257
+ getQueueStats(name: string): Promise<QueueResult>;
258
+ supervise(name?: string): Promise<void>;
259
+ isInstalled(): Promise<boolean>;
260
+ schemaVersion(): Promise<number | null>;
261
+ schedule(name: string, cron: string, data?: object, options?: ScheduleOptions): Promise<void>;
262
+ unschedule(name: string, key?: string): Promise<void>;
263
+ getSchedules(name?: string, key?: string): Promise<Schedule[]>;
264
+ getDb(): IDatabase;
265
+ }
266
+ declare const states: JobStates, policies: QueuePolicies, getConstructionPlans: typeof PgBoss.getConstructionPlans, getMigrationPlans: typeof PgBoss.getMigrationPlans, getRollbackPlans: typeof PgBoss.getRollbackPlans;
267
+ //#endregion
268
+ export { type ConnectionOptions, type ConstructorOptions, type IDatabase as Db, type FetchOptions, type Job, type JobFetchOptions, type JobInsert, type JobPollingOptions, type JobStates, type JobWithMetadata, type MaintenanceOptions, type OffWorkOptions, PgBoss, PgBoss as default, type Queue, type QueuePolicies, type QueueResult, type Request, type Schedule, type ScheduleOptions, type SchedulingOptions, type StopOptions, type WipData, type WorkHandler, type WorkOptions, type WorkWithMetadataHandler, getConstructionPlans, getMigrationPlans, getRollbackPlans, policies, states };
269
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/types.ts","../src/index.ts"],"sourcesContent":[],"mappings":"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"}