@resonatehq/sdk 0.6.2 → 0.7.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.
Files changed (202) hide show
  1. package/README.md +24 -45
  2. package/dist/dev/network.d.ts +16 -0
  3. package/dist/dev/network.d.ts.map +1 -0
  4. package/dist/dev/network.js +89 -0
  5. package/dist/dev/network.js.map +1 -0
  6. package/dist/dev/server.d.ts +87 -0
  7. package/dist/dev/server.d.ts.map +1 -0
  8. package/dist/dev/server.js +891 -0
  9. package/dist/dev/server.js.map +1 -0
  10. package/dist/sim/example-1.d.ts +2 -0
  11. package/dist/sim/example-1.d.ts.map +1 -0
  12. package/dist/sim/example-1.js +94 -0
  13. package/dist/sim/example-1.js.map +1 -0
  14. package/dist/sim/example-2.d.ts +2 -0
  15. package/dist/sim/example-2.d.ts.map +1 -0
  16. package/dist/sim/example-2.js +95 -0
  17. package/dist/sim/example-2.js.map +1 -0
  18. package/dist/sim/example-3.d.ts +2 -0
  19. package/dist/sim/example-3.d.ts.map +1 -0
  20. package/dist/sim/example-3.js +95 -0
  21. package/dist/sim/example-3.js.map +1 -0
  22. package/dist/sim/main.d.ts +14 -0
  23. package/dist/sim/main.d.ts.map +1 -0
  24. package/dist/sim/main.js +206 -0
  25. package/dist/sim/main.js.map +1 -0
  26. package/dist/sim/src/server.d.ts +15 -0
  27. package/dist/sim/src/server.d.ts.map +1 -0
  28. package/dist/sim/src/server.js +85 -0
  29. package/dist/sim/src/server.js.map +1 -0
  30. package/dist/sim/src/simulator.d.ts +65 -0
  31. package/dist/sim/src/simulator.d.ts.map +1 -0
  32. package/dist/sim/src/simulator.js +235 -0
  33. package/dist/sim/src/simulator.js.map +1 -0
  34. package/dist/sim/src/worker.d.ts +22 -0
  35. package/dist/sim/src/worker.d.ts.map +1 -0
  36. package/dist/sim/src/worker.js +175 -0
  37. package/dist/sim/src/worker.js.map +1 -0
  38. package/dist/src/clock.d.ts +11 -0
  39. package/dist/src/clock.d.ts.map +1 -0
  40. package/dist/src/clock.js +17 -0
  41. package/dist/src/clock.js.map +1 -0
  42. package/dist/src/computation.d.ts +40 -0
  43. package/dist/src/computation.d.ts.map +1 -0
  44. package/dist/src/computation.js +225 -0
  45. package/dist/src/computation.js.map +1 -0
  46. package/dist/src/context.d.ts +120 -0
  47. package/dist/src/context.d.ts.map +1 -0
  48. package/dist/src/context.js +288 -0
  49. package/dist/src/context.js.map +1 -0
  50. package/dist/src/coroutine.d.ts +35 -0
  51. package/dist/src/coroutine.d.ts.map +1 -0
  52. package/dist/src/coroutine.js +251 -0
  53. package/dist/src/coroutine.js.map +1 -0
  54. package/dist/src/decorator.d.ts +14 -0
  55. package/dist/src/decorator.d.ts.map +1 -0
  56. package/dist/src/decorator.js +208 -0
  57. package/dist/src/decorator.js.map +1 -0
  58. package/dist/src/handler.d.ts +40 -0
  59. package/dist/src/handler.d.ts.map +1 -0
  60. package/dist/src/handler.js +198 -0
  61. package/dist/src/handler.js.map +1 -0
  62. package/dist/src/heartbeat.d.ts +22 -0
  63. package/dist/src/heartbeat.d.ts.map +1 -0
  64. package/dist/src/heartbeat.js +87 -0
  65. package/dist/src/heartbeat.js.map +1 -0
  66. package/dist/src/index.d.ts +8 -0
  67. package/dist/src/index.d.ts.map +1 -0
  68. package/dist/src/index.js +25 -0
  69. package/dist/src/index.js.map +1 -0
  70. package/dist/src/network/network.d.ts +216 -0
  71. package/dist/src/network/network.d.ts.map +1 -0
  72. package/dist/{core/logger.js → src/network/network.js} +2 -1
  73. package/dist/src/network/network.js.map +1 -0
  74. package/dist/src/network/remote.d.ts +67 -0
  75. package/dist/src/network/remote.d.ts.map +1 -0
  76. package/dist/src/network/remote.js +514 -0
  77. package/dist/src/network/remote.js.map +1 -0
  78. package/dist/src/nursery.d.ts +19 -0
  79. package/dist/src/nursery.d.ts.map +1 -0
  80. package/dist/src/nursery.js +102 -0
  81. package/dist/src/nursery.js.map +1 -0
  82. package/dist/src/processor/processor.d.ts +11 -0
  83. package/dist/src/processor/processor.d.ts.map +1 -0
  84. package/dist/src/processor/processor.js +24 -0
  85. package/dist/src/processor/processor.js.map +1 -0
  86. package/dist/src/promises.d.ts +23 -0
  87. package/dist/src/promises.d.ts.map +1 -0
  88. package/dist/src/promises.js +157 -0
  89. package/dist/src/promises.js.map +1 -0
  90. package/dist/src/registry.d.ts +15 -0
  91. package/dist/src/registry.d.ts.map +1 -0
  92. package/dist/src/registry.js +26 -0
  93. package/dist/src/registry.js.map +1 -0
  94. package/dist/src/resonate-inner.d.ts +45 -0
  95. package/dist/src/resonate-inner.d.ts.map +1 -0
  96. package/dist/src/resonate-inner.js +157 -0
  97. package/dist/src/resonate-inner.js.map +1 -0
  98. package/dist/src/resonate.d.ts +92 -0
  99. package/dist/src/resonate.d.ts.map +1 -0
  100. package/dist/src/resonate.js +240 -0
  101. package/dist/src/resonate.js.map +1 -0
  102. package/dist/src/schedules.d.ts +9 -0
  103. package/dist/src/schedules.d.ts.map +1 -0
  104. package/dist/src/schedules.js +65 -0
  105. package/dist/src/schedules.js.map +1 -0
  106. package/dist/src/tasks.d.ts +9 -0
  107. package/dist/src/tasks.d.ts.map +1 -0
  108. package/dist/src/tasks.js +61 -0
  109. package/dist/src/tasks.js.map +1 -0
  110. package/dist/src/types.d.ts +86 -0
  111. package/dist/src/types.d.ts.map +1 -0
  112. package/dist/src/types.js +14 -0
  113. package/dist/src/types.js.map +1 -0
  114. package/dist/src/util.d.ts +14 -0
  115. package/dist/src/util.d.ts.map +1 -0
  116. package/dist/src/util.js +69 -0
  117. package/dist/src/util.js.map +1 -0
  118. package/dist/tsconfig.build.tsbuildinfo +1 -0
  119. package/package.json +51 -52
  120. package/dist/core/encoder.d.ts +0 -5
  121. package/dist/core/encoder.d.ts.map +0 -1
  122. package/dist/core/encoder.js +0 -3
  123. package/dist/core/encoder.js.map +0 -1
  124. package/dist/core/encoders/base64.d.ts +0 -6
  125. package/dist/core/encoders/base64.d.ts.map +0 -1
  126. package/dist/core/encoders/base64.js +0 -13
  127. package/dist/core/encoders/base64.js.map +0 -1
  128. package/dist/core/encoders/json.d.ts +0 -6
  129. package/dist/core/encoders/json.d.ts.map +0 -1
  130. package/dist/core/encoders/json.js +0 -77
  131. package/dist/core/encoders/json.js.map +0 -1
  132. package/dist/core/errors.d.ts +0 -24
  133. package/dist/core/errors.d.ts.map +0 -1
  134. package/dist/core/errors.js +0 -42
  135. package/dist/core/errors.js.map +0 -1
  136. package/dist/core/logger.d.ts +0 -10
  137. package/dist/core/logger.d.ts.map +0 -1
  138. package/dist/core/logger.js.map +0 -1
  139. package/dist/core/loggers/logger.d.ts +0 -13
  140. package/dist/core/loggers/logger.d.ts.map +0 -1
  141. package/dist/core/loggers/logger.js +0 -48
  142. package/dist/core/loggers/logger.js.map +0 -1
  143. package/dist/core/options.d.ts +0 -160
  144. package/dist/core/options.d.ts.map +0 -1
  145. package/dist/core/options.js +0 -18
  146. package/dist/core/options.js.map +0 -1
  147. package/dist/core/promises/promises.d.ts +0 -210
  148. package/dist/core/promises/promises.d.ts.map +0 -1
  149. package/dist/core/promises/promises.js +0 -300
  150. package/dist/core/promises/promises.js.map +0 -1
  151. package/dist/core/promises/types.d.ts +0 -26
  152. package/dist/core/promises/types.d.ts.map +0 -1
  153. package/dist/core/promises/types.js +0 -37
  154. package/dist/core/promises/types.js.map +0 -1
  155. package/dist/core/retry.d.ts +0 -37
  156. package/dist/core/retry.d.ts.map +0 -1
  157. package/dist/core/retry.js +0 -141
  158. package/dist/core/retry.js.map +0 -1
  159. package/dist/core/schedules/schedules.d.ts +0 -22
  160. package/dist/core/schedules/schedules.d.ts.map +0 -1
  161. package/dist/core/schedules/schedules.js +0 -29
  162. package/dist/core/schedules/schedules.js.map +0 -1
  163. package/dist/core/schedules/types.d.ts +0 -19
  164. package/dist/core/schedules/types.d.ts.map +0 -1
  165. package/dist/core/schedules/types.js +0 -8
  166. package/dist/core/schedules/types.js.map +0 -1
  167. package/dist/core/storage.d.ts +0 -6
  168. package/dist/core/storage.d.ts.map +0 -1
  169. package/dist/core/storage.js +0 -3
  170. package/dist/core/storage.js.map +0 -1
  171. package/dist/core/storages/memory.d.ts +0 -8
  172. package/dist/core/storages/memory.d.ts.map +0 -1
  173. package/dist/core/storages/memory.js +0 -29
  174. package/dist/core/storages/memory.js.map +0 -1
  175. package/dist/core/storages/withTimeout.d.ts +0 -10
  176. package/dist/core/storages/withTimeout.d.ts.map +0 -1
  177. package/dist/core/storages/withTimeout.js +0 -44
  178. package/dist/core/storages/withTimeout.js.map +0 -1
  179. package/dist/core/store.d.ts +0 -142
  180. package/dist/core/store.d.ts.map +0 -1
  181. package/dist/core/store.js +0 -3
  182. package/dist/core/store.js.map +0 -1
  183. package/dist/core/stores/local.d.ts +0 -57
  184. package/dist/core/stores/local.d.ts.map +0 -1
  185. package/dist/core/stores/local.js +0 -405
  186. package/dist/core/stores/local.js.map +0 -1
  187. package/dist/core/stores/remote.d.ts +0 -51
  188. package/dist/core/stores/remote.d.ts.map +0 -1
  189. package/dist/core/stores/remote.js +0 -431
  190. package/dist/core/stores/remote.js.map +0 -1
  191. package/dist/core/utils.d.ts +0 -85
  192. package/dist/core/utils.d.ts.map +0 -1
  193. package/dist/core/utils.js +0 -121
  194. package/dist/core/utils.js.map +0 -1
  195. package/dist/index.d.ts +0 -19
  196. package/dist/index.d.ts.map +0 -1
  197. package/dist/index.js +0 -57
  198. package/dist/index.js.map +0 -1
  199. package/dist/resonate.d.ts +0 -312
  200. package/dist/resonate.d.ts.map +0 -1
  201. package/dist/resonate.js +0 -718
  202. package/dist/resonate.js.map +0 -1
package/dist/index.d.ts DELETED
@@ -1,19 +0,0 @@
1
- export * from "./resonate";
2
- export * from "./core/errors";
3
- export * from "./core/options";
4
- export * as promises from "./core/promises/promises";
5
- export * as schedules from "./core/schedules/schedules";
6
- export * from "./core/retry";
7
- export * from "./core/encoder";
8
- export * from "./core/logger";
9
- export * from "./core/storage";
10
- export * from "./core/store";
11
- export * from "./core/encoders/base64";
12
- export * from "./core/encoders/json";
13
- export * from "./core/loggers/logger";
14
- export * from "./core/storages/memory";
15
- export * from "./core/storages/withTimeout";
16
- export * from "./core/stores/local";
17
- export * from "./core/stores/remote";
18
- export * as utils from "./core/utils";
19
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"AACA,cAAc,YAAY,CAAC;AAG3B,cAAc,eAAe,CAAC;AAG9B,cAAc,gBAAgB,CAAC;AAG/B,OAAO,KAAK,QAAQ,MAAM,0BAA0B,CAAC;AAGrD,OAAO,KAAK,SAAS,MAAM,4BAA4B,CAAC;AAGxD,cAAc,cAAc,CAAC;AAG7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAG7B,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AAGrC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC"}
package/dist/index.js DELETED
@@ -1,57 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
19
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
20
- };
21
- var __importStar = (this && this.__importStar) || function (mod) {
22
- if (mod && mod.__esModule) return mod;
23
- var result = {};
24
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
- __setModuleDefault(result, mod);
26
- return result;
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.utils = exports.schedules = exports.promises = void 0;
30
- // invok
31
- __exportStar(require("./resonate"), exports);
32
- // errors
33
- __exportStar(require("./core/errors"), exports);
34
- // options
35
- __exportStar(require("./core/options"), exports);
36
- // promises
37
- exports.promises = __importStar(require("./core/promises/promises"));
38
- // schedules
39
- exports.schedules = __importStar(require("./core/schedules/schedules"));
40
- // retry policies
41
- __exportStar(require("./core/retry"), exports);
42
- // interfaces
43
- __exportStar(require("./core/encoder"), exports);
44
- __exportStar(require("./core/logger"), exports);
45
- __exportStar(require("./core/storage"), exports);
46
- __exportStar(require("./core/store"), exports);
47
- // implementations
48
- __exportStar(require("./core/encoders/base64"), exports);
49
- __exportStar(require("./core/encoders/json"), exports);
50
- __exportStar(require("./core/loggers/logger"), exports);
51
- __exportStar(require("./core/storages/memory"), exports);
52
- __exportStar(require("./core/storages/withTimeout"), exports);
53
- __exportStar(require("./core/stores/local"), exports);
54
- __exportStar(require("./core/stores/remote"), exports);
55
- // utils
56
- exports.utils = __importStar(require("./core/utils"));
57
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,QAAQ;AACR,6CAA2B;AAE3B,SAAS;AACT,gDAA8B;AAE9B,UAAU;AACV,iDAA+B;AAE/B,WAAW;AACX,qEAAqD;AAErD,YAAY;AACZ,wEAAwD;AAExD,iBAAiB;AACjB,+CAA6B;AAE7B,aAAa;AACb,iDAA+B;AAC/B,gDAA8B;AAC9B,iDAA+B;AAC/B,+CAA6B;AAE7B,kBAAkB;AAClB,yDAAuC;AACvC,uDAAqC;AACrC,wDAAsC;AACtC,yDAAuC;AACvC,8DAA4C;AAC5C,sDAAoC;AACpC,uDAAqC;AAErC,QAAQ;AACR,sDAAsC"}
@@ -1,312 +0,0 @@
1
- import { ILogger } from "./core/logger";
2
- import { PartialOptions, Options, InvocationOverrides, ResonateOptions } from "./core/options";
3
- import * as durablePromises from "./core/promises/promises";
4
- import * as schedules from "./core/schedules/schedules";
5
- import { ILockStore, IPromiseStore, IStore } from "./core/store";
6
- type InvocationData = {
7
- id: string;
8
- eid: string;
9
- name: string;
10
- opts: Options;
11
- };
12
- export type Func = (ctx: Context, ...args: any[]) => any;
13
- export type Params<F> = F extends (ctx: any, ...args: infer P) => any ? P : never;
14
- export type Return<F> = F extends (...args: any[]) => infer T ? Awaited<T> : never;
15
- export declare class Resonate {
16
- #private;
17
- readonly store: IStore;
18
- readonly logger: ILogger;
19
- readonly defaultInvocationOptions: Options;
20
- readonly promises: ResonatePromises;
21
- readonly schedules: ResonateSchedules;
22
- constructor({ auth, encoder, heartbeat, // 15s
23
- logger, pid, pollFrequency, // 5s
24
- retryPolicy, store, tags, timeout, // 10s
25
- url, }?: Partial<ResonateOptions>);
26
- get promisesStore(): IPromiseStore;
27
- get locksStore(): ILockStore;
28
- options(opts: Partial<Options>): PartialOptions;
29
- registeredFunction(funcName: string, version: number): {
30
- func: Func;
31
- opts: Options;
32
- };
33
- register(name: string, func: Func, opts?: Partial<Options>): void;
34
- registerModule(module: Record<string, Func>, opts?: Partial<Options>): void;
35
- /**
36
- * Start the resonate service which continually checks for pending promises
37
- * every `delay` ms.
38
- *
39
- * @param delay Frequency in ms to check for pending promises.
40
- */
41
- start(delay?: number): Promise<void>;
42
- /**
43
- * Stop the resonate service.
44
- */
45
- stop(): Promise<void>;
46
- run<R>(name: string, id: string, ...argsWithOverrides: [...any, InvocationOverrides?]): Promise<R>;
47
- invokeLocal<R>(name: string, id: string, ...argsWithOverrides: [...any, InvocationOverrides?]): Promise<InvocationHandle<R>>;
48
- /**
49
- * Schedule a resonate function.
50
- *
51
- * @param name The schedule name.
52
- * @param cron The schedule cron expression.
53
- * @param func The function to schedule.
54
- * @param args The function arguments.
55
- * @returns The schedule object.
56
- */
57
- schedule<F extends Func>(name: string, cron: string, func: F, ...args: [...Params<F>, PartialOptions?]): Promise<schedules.Schedule>;
58
- /**
59
- * Schedule a resonate function that is already registered.
60
- *
61
- * @param name The schedule name.
62
- * @param cron The schedule cron expression.
63
- * @param func The registered function name.
64
- * @param args The function arguments.
65
- * @returns The schedule object.
66
- */
67
- schedule(name: string, cron: string, func: string, ...args: [...any, PartialOptions?]): Promise<schedules.Schedule>;
68
- withDefaultOpts(givenOpts?: Partial<Options>): Options;
69
- }
70
- export declare class Context {
71
- #private;
72
- childrenCount: number;
73
- readonly invocationData: InvocationData;
74
- parent: Context | undefined;
75
- root: Context;
76
- private constructor();
77
- static createRootContext(resonate: Resonate, invocationData: InvocationData): Context;
78
- static createChildrenContext(parentCtx: Context, invocationData: InvocationData): Context;
79
- onRetry(): Promise<void>;
80
- finalize(): Promise<void>;
81
- abort(cause: any): void;
82
- get aborted(): boolean;
83
- get abortCause(): any;
84
- /**
85
- * Adds a finalizer function to be executed at the end of the current context.
86
- * Finalizers are run in reverse order of their definition (last-in, first-out).
87
- *
88
- * @param fn - An asynchronous function to be executed as a finalizer.
89
- * It should return a Promise that resolves to void.
90
- *
91
- * @remarks
92
- * Finalizer functions must be non fallible.
93
- */
94
- addFinalizer(fn: () => Promise<void>): void;
95
- /**
96
- * Sets a named resource for the current context and optionally adds a finalizer.
97
- *
98
- * @param name - A unique string identifier for the resource.
99
- * @param resource - The resource to be stored. Can be of any type.
100
- * @param finalizer - Optional. An asynchronous function to be executed when the context ends.
101
- * Finalizers are run in reverse order of their addition to the context and
102
- * must not fail.
103
- * @throws {Error} Throws an error if a resource with the same name already exists in the current context.
104
- *
105
- * This method associates a resource with a unique name in the current context.
106
- * If a finalizer is provided, it will be executed when the context ends.
107
- * Finalizers are useful for cleanup operations, such as closing connections or freeing resources.
108
- */
109
- setResource(name: string, resource: any, finalizer?: () => Promise<void>): void;
110
- /**
111
- * Retrieves a resource by name from the current context or its parent contexts.
112
- *
113
- * @template R - The expected type of the resource.
114
- * @param name - The unique string identifier of the resource to retrieve.
115
- * @returns The resource of type R if found, or undefined if not found.
116
- *
117
- * This method searches for a resource in the following order:
118
- * 1. In the current context.
119
- * 2. If not found, it recursively searches in parent contexts.
120
- * 3. Returns undefined if the resource is not found in any context.
121
- *
122
- * @remarks
123
- * The method uses type assertion to cast the resource to type R.
124
- * Ensure that the type parameter R matches the actual type of the stored resource
125
- * to avoid runtime type errors.
126
- */
127
- getResource<R>(name: string): R | undefined;
128
- options(opts: Partial<Options>): PartialOptions;
129
- /**
130
- * Invoke a remote function.
131
- *
132
- * @template R The return type of the remote function.
133
- * @param func The id of the remote function.
134
- * @param args The arguments to pass to the remote function.
135
- * @param opts Optional {@link options}.
136
- * @returns A promise that resolves to the resolved value of the remote function.
137
- */
138
- run<R>(funcId: string, args: any, opts?: PartialOptions): Promise<R>;
139
- /**
140
- * Invoke a function.
141
- *
142
- * @template F The type of the function.
143
- * @param func The function to invoke.
144
- * @param args The function arguments, optionally followed by {@link options}.
145
- * @returns A promise that resolves to the return value of the function.
146
- */
147
- run<F extends Func>(func: F, ...argsWithOpts: [...Params<F>, PartialOptions?]): Promise<Return<F>>;
148
- invokeRemote<R>(funcId: string, ...argsWithOpts: [...any, PartialOptions?]): Promise<InvocationHandle<R>>;
149
- invokeLocal<F extends Func, R>(func: F, ...argsWithOpts: [...Params<F>, PartialOptions?]): Promise<InvocationHandle<R>>;
150
- /**
151
- * Durable version of sleep.
152
- * Sleep for the specified time (ms).
153
- *
154
- * @param ms Amount of time to sleep in milliseconds.
155
- * @returns A Promise that resolves after the specified time has elapsed.
156
- */
157
- sleep(ms: number): Promise<void>;
158
- /**
159
- * Creates a Promise that is resolved with an array of results when all of the provided Promises
160
- * resolve, or rejected when any Promise is rejected.
161
- *
162
- * @param values An array of Promises.
163
- * @param opts Optional {@link options}.
164
- * @returns A new ResonatePromise.
165
- */
166
- all<T extends readonly unknown[] | []>(values: T, opts?: Partial<Options>): Promise<{
167
- -readonly [P in keyof T]: Awaited<T[P]>;
168
- }>;
169
- /**
170
- * Creates a Promise that is fulfilled by the first given promise to be fulfilled, or rejected
171
- * with an AggregateError.
172
- *
173
- * @param values An array of Promises.
174
- * @param opts Optional {@link options}.
175
- * @returns A new ResonatePromise.
176
- */
177
- any<T extends readonly unknown[] | []>(values: T, opts?: Partial<Options>): Promise<Awaited<Awaited<T[number]>>>;
178
- /**
179
- * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
180
- * or rejected.
181
- *
182
- * @param values An array of Promises.
183
- * @param opts Optional {@link options}.
184
- * @returns A new ResonatePromise.
185
- */
186
- race<T extends readonly unknown[] | []>(values: T, opts?: Partial<Options>): Promise<Awaited<T[number]>>;
187
- /**
188
- * Creates a Promise that is resolved with an array of results when all of the provided Promises
189
- * resolve or reject.
190
- *
191
- * @param values An array of Promises.
192
- * @param opts Optional {@link options}.
193
- * @returns A new Promise.
194
- */
195
- allSettled<T extends readonly unknown[] | []>(values: T, opts?: Partial<Options>): Promise<{
196
- -readonly [P in keyof T]: PromiseSettledResult<Awaited<T[P]>>;
197
- }>;
198
- /**
199
- * Invoke a Resonate function in detached mode. Functions must first be registered with Resonate.
200
- * a detached invocation will not be implecitly awaited at the end of the current context, instead
201
- * it will be "supervised" as a top level invocation.
202
- *
203
- * @template R The return type of the function.
204
- * @param id A unique id for the function invocation.
205
- * @param name The function name.
206
- * @param argsWithOverrides The function arguments and options overrides.
207
- * @returns A Res.
208
- */
209
- detached<R>(name: string, id: string, ...argsWithOverrides: [...any, InvocationOverrides?]): Promise<InvocationHandle<R>>;
210
- }
211
- export interface ResonatePromises {
212
- /**
213
- * Create a durable promise.
214
- *
215
- * @template T The type of the promise.
216
- * @param id Unique identifier for the promise.
217
- * @param timeout Time (in milliseconds) after which the promise is considered expired.
218
- * @param opts Additional options.
219
- * @returns A durable promise.
220
- */
221
- create<T>(id: string, timeout: number, opts?: Partial<durablePromises.CreateOptions>): Promise<durablePromises.DurablePromise<T>>;
222
- /**
223
- * Resolve a durable promise.
224
- *
225
- * @template T The type of the promise.
226
- * @param id Unique identifier for the promise.
227
- * @param value The resolved value.
228
- * @param opts Additional options.
229
- * @returns A durable promise.
230
- */
231
- resolve<T>(id: string, value: T, opts?: Partial<durablePromises.CompleteOptions>): Promise<durablePromises.DurablePromise<T>>;
232
- /**
233
- * Reject a durable promise.
234
- *
235
- * @template T The type of the promise.
236
- * @param id Unique identifier for the promise.
237
- * @param error The reject value.
238
- * @param opts Additional options.
239
- * @returns A durable promise.
240
- */
241
- reject<T>(id: string, error: any, opts?: Partial<durablePromises.CompleteOptions>): Promise<durablePromises.DurablePromise<T>>;
242
- /**
243
- * Cancel a durable promise.
244
- *
245
- * @template T The type of the promise.
246
- * @param id Unique identifier for the promise.
247
- * @param error The cancel value.
248
- * @param opts Additional options.
249
- * @returns A durable promise.
250
- */
251
- cancel<T>(id: string, error: any, opts?: Partial<durablePromises.CompleteOptions>): Promise<durablePromises.DurablePromise<T>>;
252
- /**
253
- * Get a durable promise.
254
- *
255
- * @template T The type of the promise.
256
- * @param id Id of the promise.
257
- * @returns A durable promise.
258
- */
259
- get<T>(id: string): Promise<durablePromises.DurablePromise<T>>;
260
- /**
261
- * Search durable promises.
262
- *
263
- * @param id Ids to match, can include wildcards.
264
- * @param state State to match.
265
- * @param tags Tags to match.
266
- * @param limit Maximum number of durablePromises to return.
267
- * @returns A generator that yields durable durablePromises.
268
- */
269
- search(id: string, state?: string, tags?: Record<string, string>, limit?: number): AsyncGenerator<durablePromises.DurablePromise<any>[]>;
270
- }
271
- export interface ResonateSchedules {
272
- /**
273
- * Create a new schedule.
274
- *
275
- * @param id Unique identifier for the schedule.
276
- * @param cron CRON expression defining the schedule's execution time.
277
- * @param promiseId Unique identifier for the associated promise.
278
- * @param promiseTimeout Timeout for the associated promise in milliseconds.
279
- * @param opts Additional options.
280
- * @returns A schedule.
281
- */
282
- create(id: string, cron: string, promiseId: string, promiseTimeout: number, opts?: Partial<schedules.Options>): Promise<schedules.Schedule>;
283
- /**
284
- * Get a schedule.
285
- *
286
- * @param id Id of the schedule.
287
- * @returns A schedule.
288
- */
289
- get(id: string): Promise<schedules.Schedule>;
290
- /**
291
- * Search for schedules.
292
- *
293
- * @param id Ids to match, can include wildcards.
294
- * @param tags Tags to match.
295
- * @param limit Maximum number of schedules to return.
296
- * @returns A generator that yields schedules.
297
- */
298
- search(id: string, tags: Record<string, string> | undefined, limit?: number): AsyncGenerator<schedules.Schedule[], void>;
299
- }
300
- export declare class InvocationHandle<R> {
301
- readonly invocationId: string;
302
- readonly resultPromise: Promise<R>;
303
- constructor(invocationId: string, resultPromise: Promise<R>);
304
- /**
305
- * get the current state of the resultPromise.
306
- *
307
- */
308
- state(): Promise<"pending" | "resolved" | "rejected">;
309
- result(): Promise<R>;
310
- }
311
- export {};
312
- //# sourceMappingURL=resonate.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resonate.d.ts","sourceRoot":"","sources":["../lib/resonate.ts"],"names":[],"mappings":"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"}