@cleverbrush/scheduler 1.0.0-beta.0

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,577 @@
1
+ import { InferType, SchemaRegistry } from '@cleverbrush/schema';
2
+ import { IJobRepository } from './jobRepository.js';
3
+ export declare const schemaRegistry: SchemaRegistry<{
4
+ "Common.Date": ["object", true, false, true, {}, Date];
5
+ } & {
6
+ "Templates.Schedule": ["object", true, false, true, {
7
+ interval: ["number", true, false, 1, 356, undefined, true, true, undefined];
8
+ hour: ["number", false, false, 0, 23, undefined, true, true, undefined];
9
+ minute: ["number", false, false, 0, 59, undefined, true, true, undefined];
10
+ startsOn: ["alias", "Common.Date", false, false, Date];
11
+ endsOn: ["alias", "Common.Date", false, false, Date];
12
+ maxOccurences: ["number", false, false, 1, undefined, undefined, true, true, undefined];
13
+ startingFromIndex: ["number", false, false, 1, undefined, undefined, true, true, undefined];
14
+ }, undefined];
15
+ } & {
16
+ "Models.TaskScheduleMinute": ["object", true, false, true, {
17
+ interval: ["number", true, false, 1, 356, undefined, true, true, undefined];
18
+ startsOn: ["alias", "Common.Date", false, false, any];
19
+ endsOn: ["alias", "Common.Date", false, false, any];
20
+ maxOccurences: ["number", false, false, 1, undefined, undefined, true, true, undefined];
21
+ startingFromIndex: ["number", false, false, 1, undefined, undefined, true, true, undefined];
22
+ every: ["string", true, false, undefined, undefined, "minute"];
23
+ }, undefined];
24
+ } & {
25
+ "Models.TaskScheduleDay": ["object", true, false, true, {
26
+ interval: ["number", true, false, 1, 356, undefined, true, true, undefined];
27
+ hour: ["number", false, false, 0, 23, undefined, true, true, undefined];
28
+ minute: ["number", false, false, 0, 59, undefined, true, true, undefined];
29
+ startsOn: ["alias", "Common.Date", false, false, any];
30
+ endsOn: ["alias", "Common.Date", false, false, any];
31
+ maxOccurences: ["number", false, false, 1, undefined, undefined, true, true, undefined];
32
+ startingFromIndex: ["number", false, false, 1, undefined, undefined, true, true, undefined];
33
+ every: ["string", true, false, undefined, undefined, "day"];
34
+ }, undefined];
35
+ } & {
36
+ "Models.TaskScheduleWeek": ["object", true, false, true, {
37
+ interval: ["number", true, false, 1, 356, undefined, true, true, undefined];
38
+ hour: ["number", false, false, 0, 23, undefined, true, true, undefined];
39
+ minute: ["number", false, false, 0, 59, undefined, true, true, undefined];
40
+ startsOn: ["alias", "Common.Date", false, false, any];
41
+ endsOn: ["alias", "Common.Date", false, false, any];
42
+ maxOccurences: ["number", false, false, 1, undefined, undefined, true, true, undefined];
43
+ startingFromIndex: ["number", false, false, 1, undefined, undefined, true, true, undefined];
44
+ every: ["string", true, false, undefined, undefined, "week"];
45
+ dayOfWeek: ["array", true, false, ["number", true, false, 1, 7, undefined, true, true, undefined], 7, 1];
46
+ }, undefined];
47
+ } & {
48
+ "Models.TaskScheduleMonth": ["object", true, false, true, {
49
+ interval: ["number", true, false, 1, 356, undefined, true, true, undefined];
50
+ hour: ["number", false, false, 0, 23, undefined, true, true, undefined];
51
+ minute: ["number", false, false, 0, 59, undefined, true, true, undefined];
52
+ startsOn: ["alias", "Common.Date", false, false, any];
53
+ endsOn: ["alias", "Common.Date", false, false, any];
54
+ maxOccurences: ["number", false, false, 1, undefined, undefined, true, true, undefined];
55
+ startingFromIndex: ["number", false, false, 1, undefined, undefined, true, true, undefined];
56
+ every: ["string", true, false, undefined, undefined, "month"];
57
+ day: ["union", true, false, [["string", true, false, undefined, undefined, "last"], ["number", true, false, 1, 28, undefined, true, true, undefined]]];
58
+ }, undefined];
59
+ } & {
60
+ "Models.TaskScheduleYear": ["object", true, false, true, {
61
+ interval: ["number", true, false, 1, 356, undefined, true, true, undefined];
62
+ hour: ["number", false, false, 0, 23, undefined, true, true, undefined];
63
+ minute: ["number", false, false, 0, 59, undefined, true, true, undefined];
64
+ startsOn: ["alias", "Common.Date", false, false, any];
65
+ endsOn: ["alias", "Common.Date", false, false, any];
66
+ maxOccurences: ["number", false, false, 1, undefined, undefined, true, true, undefined];
67
+ startingFromIndex: ["number", false, false, 1, undefined, undefined, true, true, undefined];
68
+ every: ["string", true, false, undefined, undefined, "year"];
69
+ day: ["union", true, false, [["string", true, false, undefined, undefined, "last"], ["number", true, false, 1, 28, undefined, true, true, undefined]]];
70
+ month: ["number", true, false, 1, 12, undefined, true, true, undefined];
71
+ }, undefined];
72
+ } & {
73
+ "Models.Schedule": ["union", true, false, [["alias", "Models.TaskScheduleMinute", true, false, Pick<Partial<{
74
+ interval: number;
75
+ startsOn: any;
76
+ endsOn: any;
77
+ maxOccurences: number;
78
+ startingFromIndex: number;
79
+ every: "minute";
80
+ }>, "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
81
+ interval: number;
82
+ startsOn: any;
83
+ endsOn: any;
84
+ maxOccurences: number;
85
+ startingFromIndex: number;
86
+ every: "minute";
87
+ }, "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">], ["alias", "Models.TaskScheduleDay", true, false, Pick<Partial<{
88
+ interval: number;
89
+ hour: number;
90
+ minute: number;
91
+ startsOn: any;
92
+ endsOn: any;
93
+ maxOccurences: number;
94
+ startingFromIndex: number;
95
+ every: "day";
96
+ }>, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
97
+ interval: number;
98
+ hour: number;
99
+ minute: number;
100
+ startsOn: any;
101
+ endsOn: any;
102
+ maxOccurences: number;
103
+ startingFromIndex: number;
104
+ every: "day";
105
+ }, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">], ["alias", "Models.TaskScheduleWeek", true, false, Pick<Partial<{
106
+ interval: number;
107
+ hour: number;
108
+ minute: number;
109
+ startsOn: any;
110
+ endsOn: any;
111
+ maxOccurences: number;
112
+ startingFromIndex: number;
113
+ every: "week";
114
+ dayOfWeek: number[];
115
+ }>, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
116
+ interval: number;
117
+ hour: number;
118
+ minute: number;
119
+ startsOn: any;
120
+ endsOn: any;
121
+ maxOccurences: number;
122
+ startingFromIndex: number;
123
+ every: "week";
124
+ dayOfWeek: number[];
125
+ }, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">], ["alias", "Models.TaskScheduleMonth", true, false, Pick<Partial<{
126
+ interval: number;
127
+ hour: number;
128
+ minute: number;
129
+ startsOn: any;
130
+ endsOn: any;
131
+ maxOccurences: number;
132
+ startingFromIndex: number;
133
+ every: "month";
134
+ day: number | "last";
135
+ }>, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
136
+ interval: number;
137
+ hour: number;
138
+ minute: number;
139
+ startsOn: any;
140
+ endsOn: any;
141
+ maxOccurences: number;
142
+ startingFromIndex: number;
143
+ every: "month";
144
+ day: number | "last";
145
+ }, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">], ["alias", "Models.TaskScheduleYear", true, false, Pick<Partial<{
146
+ interval: number;
147
+ hour: number;
148
+ minute: number;
149
+ startsOn: any;
150
+ endsOn: any;
151
+ maxOccurences: number;
152
+ startingFromIndex: number;
153
+ every: "year";
154
+ day: number | "last";
155
+ month: number;
156
+ }>, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
157
+ interval: number;
158
+ hour: number;
159
+ minute: number;
160
+ startsOn: any;
161
+ endsOn: any;
162
+ maxOccurences: number;
163
+ startingFromIndex: number;
164
+ every: "year";
165
+ day: number | "last";
166
+ month: number;
167
+ }, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">]]];
168
+ } & {
169
+ "Models.CreateJobRequest": ["object", true, false, true, {
170
+ id: ["string", true, false, undefined, undefined, undefined];
171
+ path: ["string", true, false, 1, undefined, undefined];
172
+ schedule: ["alias", "Models.Schedule", true, false, (Pick<Partial<{
173
+ interval: number;
174
+ startsOn: any;
175
+ endsOn: any;
176
+ maxOccurences: number;
177
+ startingFromIndex: number;
178
+ every: "minute";
179
+ }>, "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
180
+ interval: number;
181
+ startsOn: any;
182
+ endsOn: any;
183
+ maxOccurences: number;
184
+ startingFromIndex: number;
185
+ every: "minute";
186
+ }, "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">) | (Pick<Partial<{
187
+ interval: number;
188
+ hour: number;
189
+ minute: number;
190
+ startsOn: any;
191
+ endsOn: any;
192
+ maxOccurences: number;
193
+ startingFromIndex: number;
194
+ every: "day";
195
+ }>, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
196
+ interval: number;
197
+ hour: number;
198
+ minute: number;
199
+ startsOn: any;
200
+ endsOn: any;
201
+ maxOccurences: number;
202
+ startingFromIndex: number;
203
+ every: "day";
204
+ }, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">) | (Pick<Partial<{
205
+ interval: number;
206
+ hour: number;
207
+ minute: number;
208
+ startsOn: any;
209
+ endsOn: any;
210
+ maxOccurences: number;
211
+ startingFromIndex: number;
212
+ every: "week";
213
+ dayOfWeek: number[];
214
+ }>, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
215
+ interval: number;
216
+ hour: number;
217
+ minute: number;
218
+ startsOn: any;
219
+ endsOn: any;
220
+ maxOccurences: number;
221
+ startingFromIndex: number;
222
+ every: "week";
223
+ dayOfWeek: number[];
224
+ }, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">) | (Pick<Partial<{
225
+ interval: number;
226
+ hour: number;
227
+ minute: number;
228
+ startsOn: any;
229
+ endsOn: any;
230
+ maxOccurences: number;
231
+ startingFromIndex: number;
232
+ every: "month";
233
+ day: number | "last";
234
+ }>, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
235
+ interval: number;
236
+ hour: number;
237
+ minute: number;
238
+ startsOn: any;
239
+ endsOn: any;
240
+ maxOccurences: number;
241
+ startingFromIndex: number;
242
+ every: "month";
243
+ day: number | "last";
244
+ }, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">) | (Pick<Partial<{
245
+ interval: number;
246
+ hour: number;
247
+ minute: number;
248
+ startsOn: any;
249
+ endsOn: any;
250
+ maxOccurences: number;
251
+ startingFromIndex: number;
252
+ every: "year";
253
+ day: number | "last";
254
+ month: number;
255
+ }>, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
256
+ interval: number;
257
+ hour: number;
258
+ minute: number;
259
+ startsOn: any;
260
+ endsOn: any;
261
+ maxOccurences: number;
262
+ startingFromIndex: number;
263
+ every: "year";
264
+ day: number | "last";
265
+ month: number;
266
+ }, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">)];
267
+ timeout: ["number", false, false, 0, undefined, undefined, true, true, undefined];
268
+ props: ["union", false, false, [["object", true, false, false, {}, undefined], ["function", true, false]]];
269
+ maxConsequentFails: ["number", false, false, 0, undefined, undefined, true, true, undefined];
270
+ }, undefined];
271
+ }>;
272
+ export declare type Schedule = InferType<typeof schemaRegistry.schemas.Models.Schedule.schema>;
273
+ export declare type CreateJobRequest = InferType<typeof schemaRegistry.schemas.Models.CreateJobRequest.schema>;
274
+ export declare const Schemas: SchemaRegistry<{
275
+ "Common.Date": ["object", true, false, true, {}, Date];
276
+ } & {
277
+ "Templates.Schedule": ["object", true, false, true, {
278
+ interval: ["number", true, false, 1, 356, undefined, true, true, undefined];
279
+ hour: ["number", false, false, 0, 23, undefined, true, true, undefined];
280
+ minute: ["number", false, false, 0, 59, undefined, true, true, undefined];
281
+ startsOn: ["alias", "Common.Date", false, false, Date];
282
+ endsOn: ["alias", "Common.Date", false, false, Date];
283
+ maxOccurences: ["number", false, false, 1, undefined, undefined, true, true, undefined];
284
+ startingFromIndex: ["number", false, false, 1, undefined, undefined, true, true, undefined];
285
+ }, undefined];
286
+ } & {
287
+ "Models.TaskScheduleMinute": ["object", true, false, true, {
288
+ interval: ["number", true, false, 1, 356, undefined, true, true, undefined];
289
+ startsOn: ["alias", "Common.Date", false, false, any];
290
+ endsOn: ["alias", "Common.Date", false, false, any];
291
+ maxOccurences: ["number", false, false, 1, undefined, undefined, true, true, undefined];
292
+ startingFromIndex: ["number", false, false, 1, undefined, undefined, true, true, undefined];
293
+ every: ["string", true, false, undefined, undefined, "minute"];
294
+ }, undefined];
295
+ } & {
296
+ "Models.TaskScheduleDay": ["object", true, false, true, {
297
+ interval: ["number", true, false, 1, 356, undefined, true, true, undefined];
298
+ hour: ["number", false, false, 0, 23, undefined, true, true, undefined];
299
+ minute: ["number", false, false, 0, 59, undefined, true, true, undefined];
300
+ startsOn: ["alias", "Common.Date", false, false, any];
301
+ endsOn: ["alias", "Common.Date", false, false, any];
302
+ maxOccurences: ["number", false, false, 1, undefined, undefined, true, true, undefined];
303
+ startingFromIndex: ["number", false, false, 1, undefined, undefined, true, true, undefined];
304
+ every: ["string", true, false, undefined, undefined, "day"];
305
+ }, undefined];
306
+ } & {
307
+ "Models.TaskScheduleWeek": ["object", true, false, true, {
308
+ interval: ["number", true, false, 1, 356, undefined, true, true, undefined];
309
+ hour: ["number", false, false, 0, 23, undefined, true, true, undefined];
310
+ minute: ["number", false, false, 0, 59, undefined, true, true, undefined];
311
+ startsOn: ["alias", "Common.Date", false, false, any];
312
+ endsOn: ["alias", "Common.Date", false, false, any];
313
+ maxOccurences: ["number", false, false, 1, undefined, undefined, true, true, undefined];
314
+ startingFromIndex: ["number", false, false, 1, undefined, undefined, true, true, undefined];
315
+ every: ["string", true, false, undefined, undefined, "week"];
316
+ dayOfWeek: ["array", true, false, ["number", true, false, 1, 7, undefined, true, true, undefined], 7, 1];
317
+ }, undefined];
318
+ } & {
319
+ "Models.TaskScheduleMonth": ["object", true, false, true, {
320
+ interval: ["number", true, false, 1, 356, undefined, true, true, undefined];
321
+ hour: ["number", false, false, 0, 23, undefined, true, true, undefined];
322
+ minute: ["number", false, false, 0, 59, undefined, true, true, undefined];
323
+ startsOn: ["alias", "Common.Date", false, false, any];
324
+ endsOn: ["alias", "Common.Date", false, false, any];
325
+ maxOccurences: ["number", false, false, 1, undefined, undefined, true, true, undefined];
326
+ startingFromIndex: ["number", false, false, 1, undefined, undefined, true, true, undefined];
327
+ every: ["string", true, false, undefined, undefined, "month"];
328
+ day: ["union", true, false, [["string", true, false, undefined, undefined, "last"], ["number", true, false, 1, 28, undefined, true, true, undefined]]];
329
+ }, undefined];
330
+ } & {
331
+ "Models.TaskScheduleYear": ["object", true, false, true, {
332
+ interval: ["number", true, false, 1, 356, undefined, true, true, undefined];
333
+ hour: ["number", false, false, 0, 23, undefined, true, true, undefined];
334
+ minute: ["number", false, false, 0, 59, undefined, true, true, undefined];
335
+ startsOn: ["alias", "Common.Date", false, false, any];
336
+ endsOn: ["alias", "Common.Date", false, false, any];
337
+ maxOccurences: ["number", false, false, 1, undefined, undefined, true, true, undefined];
338
+ startingFromIndex: ["number", false, false, 1, undefined, undefined, true, true, undefined];
339
+ every: ["string", true, false, undefined, undefined, "year"];
340
+ day: ["union", true, false, [["string", true, false, undefined, undefined, "last"], ["number", true, false, 1, 28, undefined, true, true, undefined]]];
341
+ month: ["number", true, false, 1, 12, undefined, true, true, undefined];
342
+ }, undefined];
343
+ } & {
344
+ "Models.Schedule": ["union", true, false, [["alias", "Models.TaskScheduleMinute", true, false, Pick<Partial<{
345
+ interval: number;
346
+ startsOn: any;
347
+ endsOn: any;
348
+ maxOccurences: number;
349
+ startingFromIndex: number;
350
+ every: "minute";
351
+ }>, "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
352
+ interval: number;
353
+ startsOn: any;
354
+ endsOn: any;
355
+ maxOccurences: number;
356
+ startingFromIndex: number;
357
+ every: "minute";
358
+ }, "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">], ["alias", "Models.TaskScheduleDay", true, false, Pick<Partial<{
359
+ interval: number;
360
+ hour: number;
361
+ minute: number;
362
+ startsOn: any;
363
+ endsOn: any;
364
+ maxOccurences: number;
365
+ startingFromIndex: number;
366
+ every: "day";
367
+ }>, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
368
+ interval: number;
369
+ hour: number;
370
+ minute: number;
371
+ startsOn: any;
372
+ endsOn: any;
373
+ maxOccurences: number;
374
+ startingFromIndex: number;
375
+ every: "day";
376
+ }, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">], ["alias", "Models.TaskScheduleWeek", true, false, Pick<Partial<{
377
+ interval: number;
378
+ hour: number;
379
+ minute: number;
380
+ startsOn: any;
381
+ endsOn: any;
382
+ maxOccurences: number;
383
+ startingFromIndex: number;
384
+ every: "week";
385
+ dayOfWeek: number[];
386
+ }>, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
387
+ interval: number;
388
+ hour: number;
389
+ minute: number;
390
+ startsOn: any;
391
+ endsOn: any;
392
+ maxOccurences: number;
393
+ startingFromIndex: number;
394
+ every: "week";
395
+ dayOfWeek: number[];
396
+ }, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">], ["alias", "Models.TaskScheduleMonth", true, false, Pick<Partial<{
397
+ interval: number;
398
+ hour: number;
399
+ minute: number;
400
+ startsOn: any;
401
+ endsOn: any;
402
+ maxOccurences: number;
403
+ startingFromIndex: number;
404
+ every: "month";
405
+ day: number | "last";
406
+ }>, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
407
+ interval: number;
408
+ hour: number;
409
+ minute: number;
410
+ startsOn: any;
411
+ endsOn: any;
412
+ maxOccurences: number;
413
+ startingFromIndex: number;
414
+ every: "month";
415
+ day: number | "last";
416
+ }, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">], ["alias", "Models.TaskScheduleYear", true, false, Pick<Partial<{
417
+ interval: number;
418
+ hour: number;
419
+ minute: number;
420
+ startsOn: any;
421
+ endsOn: any;
422
+ maxOccurences: number;
423
+ startingFromIndex: number;
424
+ every: "year";
425
+ day: number | "last";
426
+ month: number;
427
+ }>, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
428
+ interval: number;
429
+ hour: number;
430
+ minute: number;
431
+ startsOn: any;
432
+ endsOn: any;
433
+ maxOccurences: number;
434
+ startingFromIndex: number;
435
+ every: "year";
436
+ day: number | "last";
437
+ month: number;
438
+ }, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">]]];
439
+ } & {
440
+ "Models.CreateJobRequest": ["object", true, false, true, {
441
+ id: ["string", true, false, undefined, undefined, undefined];
442
+ path: ["string", true, false, 1, undefined, undefined];
443
+ schedule: ["alias", "Models.Schedule", true, false, (Pick<Partial<{
444
+ interval: number;
445
+ startsOn: any;
446
+ endsOn: any;
447
+ maxOccurences: number;
448
+ startingFromIndex: number;
449
+ every: "minute";
450
+ }>, "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
451
+ interval: number;
452
+ startsOn: any;
453
+ endsOn: any;
454
+ maxOccurences: number;
455
+ startingFromIndex: number;
456
+ every: "minute";
457
+ }, "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">) | (Pick<Partial<{
458
+ interval: number;
459
+ hour: number;
460
+ minute: number;
461
+ startsOn: any;
462
+ endsOn: any;
463
+ maxOccurences: number;
464
+ startingFromIndex: number;
465
+ every: "day";
466
+ }>, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
467
+ interval: number;
468
+ hour: number;
469
+ minute: number;
470
+ startsOn: any;
471
+ endsOn: any;
472
+ maxOccurences: number;
473
+ startingFromIndex: number;
474
+ every: "day";
475
+ }, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">) | (Pick<Partial<{
476
+ interval: number;
477
+ hour: number;
478
+ minute: number;
479
+ startsOn: any;
480
+ endsOn: any;
481
+ maxOccurences: number;
482
+ startingFromIndex: number;
483
+ every: "week";
484
+ dayOfWeek: number[];
485
+ }>, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
486
+ interval: number;
487
+ hour: number;
488
+ minute: number;
489
+ startsOn: any;
490
+ endsOn: any;
491
+ maxOccurences: number;
492
+ startingFromIndex: number;
493
+ every: "week";
494
+ dayOfWeek: number[];
495
+ }, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">) | (Pick<Partial<{
496
+ interval: number;
497
+ hour: number;
498
+ minute: number;
499
+ startsOn: any;
500
+ endsOn: any;
501
+ maxOccurences: number;
502
+ startingFromIndex: number;
503
+ every: "month";
504
+ day: number | "last";
505
+ }>, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
506
+ interval: number;
507
+ hour: number;
508
+ minute: number;
509
+ startsOn: any;
510
+ endsOn: any;
511
+ maxOccurences: number;
512
+ startingFromIndex: number;
513
+ every: "month";
514
+ day: number | "last";
515
+ }, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">) | (Pick<Partial<{
516
+ interval: number;
517
+ hour: number;
518
+ minute: number;
519
+ startsOn: any;
520
+ endsOn: any;
521
+ maxOccurences: number;
522
+ startingFromIndex: number;
523
+ every: "year";
524
+ day: number | "last";
525
+ month: number;
526
+ }>, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex"> & Omit<{
527
+ interval: number;
528
+ hour: number;
529
+ minute: number;
530
+ startsOn: any;
531
+ endsOn: any;
532
+ maxOccurences: number;
533
+ startingFromIndex: number;
534
+ every: "year";
535
+ day: number | "last";
536
+ month: number;
537
+ }, "hour" | "minute" | "startsOn" | "endsOn" | "maxOccurences" | "startingFromIndex">)];
538
+ timeout: ["number", false, false, 0, undefined, undefined, true, true, undefined];
539
+ props: ["union", false, false, [["object", true, false, false, {}, undefined], ["function", true, false]]];
540
+ maxConsequentFails: ["number", false, false, 0, undefined, undefined, true, true, undefined];
541
+ }, undefined];
542
+ }>;
543
+ export declare type Job = {
544
+ id: string;
545
+ status: JobStatus;
546
+ schedule: Schedule;
547
+ path: string;
548
+ timeout: number;
549
+ createdAt: Date;
550
+ startedAt?: Date;
551
+ firstInstanceEndedAt?: Date;
552
+ timesRunned?: number;
553
+ successfullTimesRunned?: number;
554
+ consequentFailsCount: number;
555
+ maxConsequentFails: number;
556
+ };
557
+ export declare type JobInstance = {
558
+ id: number;
559
+ jobId: string;
560
+ index: number;
561
+ status: JobInstanceStatus;
562
+ timeout: number;
563
+ scheduledTo: Date;
564
+ startDate?: Date;
565
+ endDate?: Date;
566
+ stdOut?: string;
567
+ stdErr?: string;
568
+ exitCode?: number;
569
+ };
570
+ export declare type JobSchedulerProps = {
571
+ rootFolder: string;
572
+ defaultTimeZone?: string;
573
+ persistRepository?: IJobRepository;
574
+ };
575
+ export declare type JobStatus = 'active' | 'disabled' | 'finished';
576
+ export declare type SchedulerStatus = 'started' | 'stopped';
577
+ export declare type JobInstanceStatus = 'running' | 'errored' | 'succeeded' | 'scheduled' | 'timedout' | 'canceled';
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAsIpD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2BtB,CAAC;AAEN,oBAAY,QAAQ,GAAG,SAAS,CAC5B,OAAO,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CACvD,CAAC;AAEF,oBAAY,gBAAgB,GAAG,SAAS,CACpC,OAAO,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAC/D,CAAC;AAEF,oBAAY,GAAG,GAAG;IACd,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,QAAQ,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,oBAAoB,CAAC,EAAE,IAAI,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,oBAAY,WAAW,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,IAAI,CAAC;IAClB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,oBAAY,iBAAiB,GAAG;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,cAAc,CAAC;CACtC,CAAC;AAEF,oBAAY,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,UAAU,CAAC;AAC3D,oBAAY,eAAe,GAAG,SAAS,GAAG,SAAS,CAAC;AACpD,oBAAY,iBAAiB,GACvB,SAAS,GACT,SAAS,GACT,WAAW,GACX,WAAW,GACX,UAAU,GACV,UAAU,CAAC"}