@restatedev/restate-sdk 1.4.0 → 1.5.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.
- package/README.md +6 -4
- package/dist/cjs/src/common_api.d.ts +5 -5
- package/dist/cjs/src/common_api.d.ts.map +1 -1
- package/dist/cjs/src/common_api.js +2 -1
- package/dist/cjs/src/common_api.js.map +1 -1
- package/dist/cjs/src/context.d.ts +68 -10
- package/dist/cjs/src/context.d.ts.map +1 -1
- package/dist/cjs/src/context.js +21 -9
- package/dist/cjs/src/context.js.map +1 -1
- package/dist/cjs/src/context_impl.d.ts +28 -58
- package/dist/cjs/src/context_impl.d.ts.map +1 -1
- package/dist/cjs/src/context_impl.js +200 -428
- package/dist/cjs/src/context_impl.js.map +1 -1
- package/dist/cjs/src/endpoint/endpoint_builder.d.ts +4 -5
- package/dist/cjs/src/endpoint/endpoint_builder.d.ts.map +1 -1
- package/dist/cjs/src/endpoint/endpoint_builder.js +21 -16
- package/dist/cjs/src/endpoint/endpoint_builder.js.map +1 -1
- package/dist/cjs/src/endpoint/fetch_endpoint.d.ts +3 -4
- package/dist/cjs/src/endpoint/fetch_endpoint.d.ts.map +1 -1
- package/dist/cjs/src/endpoint/fetch_endpoint.js +0 -4
- package/dist/cjs/src/endpoint/fetch_endpoint.js.map +1 -1
- package/dist/cjs/src/endpoint/handlers/fetch.d.ts.map +1 -1
- package/dist/cjs/src/endpoint/handlers/fetch.js +1 -0
- package/dist/cjs/src/endpoint/handlers/fetch.js.map +1 -1
- package/dist/cjs/src/endpoint/handlers/generic.d.ts +7 -13
- package/dist/cjs/src/endpoint/handlers/generic.d.ts.map +1 -1
- package/dist/cjs/src/endpoint/handlers/generic.js +117 -58
- package/dist/cjs/src/endpoint/handlers/generic.js.map +1 -1
- package/dist/cjs/src/endpoint/handlers/lambda.d.ts.map +1 -1
- package/dist/cjs/src/endpoint/handlers/lambda.js +15 -3
- package/dist/cjs/src/endpoint/handlers/lambda.js.map +1 -1
- package/dist/cjs/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts +62 -79
- package/dist/cjs/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts.map +1 -1
- package/dist/cjs/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js +561 -874
- package/dist/cjs/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js.map +1 -1
- package/dist/cjs/src/endpoint/lambda_endpoint.d.ts +3 -4
- package/dist/cjs/src/endpoint/lambda_endpoint.d.ts.map +1 -1
- package/dist/cjs/src/endpoint/lambda_endpoint.js +0 -4
- package/dist/cjs/src/endpoint/lambda_endpoint.js.map +1 -1
- package/dist/cjs/src/endpoint/node_endpoint.d.ts +3 -4
- package/dist/cjs/src/endpoint/node_endpoint.d.ts.map +1 -1
- package/dist/cjs/src/endpoint/node_endpoint.js +12 -4
- package/dist/cjs/src/endpoint/node_endpoint.js.map +1 -1
- package/dist/cjs/src/endpoint.d.ts +6 -37
- package/dist/cjs/src/endpoint.d.ts.map +1 -1
- package/dist/cjs/src/generated/version.d.ts +1 -1
- package/dist/cjs/src/generated/version.js +1 -1
- package/dist/cjs/src/io.d.ts +25 -0
- package/dist/cjs/src/io.d.ts.map +1 -0
- package/dist/cjs/src/io.js +78 -0
- package/dist/cjs/src/io.js.map +1 -0
- package/dist/cjs/src/logging/console_logger_transport.d.ts +5 -0
- package/dist/cjs/src/logging/console_logger_transport.d.ts.map +1 -0
- package/dist/cjs/src/logging/console_logger_transport.js +98 -0
- package/dist/cjs/src/logging/console_logger_transport.js.map +1 -0
- package/dist/cjs/src/logging/logger.d.ts +11 -0
- package/dist/cjs/src/logging/logger.d.ts.map +1 -0
- package/dist/cjs/src/logging/logger.js +61 -0
- package/dist/cjs/src/logging/logger.js.map +1 -0
- package/dist/cjs/src/logging/logger_transport.d.ts +52 -0
- package/dist/cjs/src/logging/logger_transport.d.ts.map +1 -0
- package/dist/cjs/src/logging/logger_transport.js +59 -0
- package/dist/cjs/src/logging/logger_transport.js.map +1 -0
- package/dist/cjs/src/promises.d.ts +110 -0
- package/dist/cjs/src/promises.d.ts.map +1 -0
- package/dist/cjs/src/promises.js +323 -0
- package/dist/cjs/src/promises.js.map +1 -0
- package/dist/cjs/src/types/components.d.ts +11 -3
- package/dist/cjs/src/types/components.d.ts.map +1 -1
- package/dist/cjs/src/types/components.js +36 -3
- package/dist/cjs/src/types/components.js.map +1 -1
- package/dist/cjs/src/types/discovery.d.ts +4 -0
- package/dist/cjs/src/types/discovery.d.ts.map +1 -1
- package/dist/cjs/src/types/errors.d.ts +8 -0
- package/dist/cjs/src/types/errors.d.ts.map +1 -1
- package/dist/cjs/src/types/errors.js +12 -1
- package/dist/cjs/src/types/errors.js.map +1 -1
- package/dist/cjs/src/types/rpc.d.ts +66 -41
- package/dist/cjs/src/types/rpc.d.ts.map +1 -1
- package/dist/cjs/src/types/rpc.js +25 -76
- package/dist/cjs/src/types/rpc.js.map +1 -1
- package/dist/cjs/src/user_agent.d.ts +1 -1
- package/dist/cjs/src/utils/buffer.d.ts +1 -0
- package/dist/cjs/src/utils/buffer.d.ts.map +1 -1
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/src/common_api.d.ts +5 -5
- package/dist/esm/src/common_api.d.ts.map +1 -1
- package/dist/esm/src/common_api.js +1 -1
- package/dist/esm/src/common_api.js.map +1 -1
- package/dist/esm/src/context.d.ts +68 -10
- package/dist/esm/src/context.d.ts.map +1 -1
- package/dist/esm/src/context.js +20 -8
- package/dist/esm/src/context.js.map +1 -1
- package/dist/esm/src/context_impl.d.ts +28 -58
- package/dist/esm/src/context_impl.d.ts.map +1 -1
- package/dist/esm/src/context_impl.js +196 -425
- package/dist/esm/src/context_impl.js.map +1 -1
- package/dist/esm/src/endpoint/endpoint_builder.d.ts +4 -5
- package/dist/esm/src/endpoint/endpoint_builder.d.ts.map +1 -1
- package/dist/esm/src/endpoint/endpoint_builder.js +21 -16
- package/dist/esm/src/endpoint/endpoint_builder.js.map +1 -1
- package/dist/esm/src/endpoint/fetch_endpoint.d.ts +3 -4
- package/dist/esm/src/endpoint/fetch_endpoint.d.ts.map +1 -1
- package/dist/esm/src/endpoint/fetch_endpoint.js +0 -4
- package/dist/esm/src/endpoint/fetch_endpoint.js.map +1 -1
- package/dist/esm/src/endpoint/handlers/fetch.d.ts.map +1 -1
- package/dist/esm/src/endpoint/handlers/fetch.js +1 -0
- package/dist/esm/src/endpoint/handlers/fetch.js.map +1 -1
- package/dist/esm/src/endpoint/handlers/generic.d.ts +7 -13
- package/dist/esm/src/endpoint/handlers/generic.d.ts.map +1 -1
- package/dist/esm/src/endpoint/handlers/generic.js +110 -51
- package/dist/esm/src/endpoint/handlers/generic.js.map +1 -1
- package/dist/esm/src/endpoint/handlers/lambda.d.ts.map +1 -1
- package/dist/esm/src/endpoint/handlers/lambda.js +15 -3
- package/dist/esm/src/endpoint/handlers/lambda.js.map +1 -1
- package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts +62 -79
- package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts.map +1 -1
- package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js +559 -873
- package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js.map +1 -1
- package/dist/esm/src/endpoint/lambda_endpoint.d.ts +3 -4
- package/dist/esm/src/endpoint/lambda_endpoint.d.ts.map +1 -1
- package/dist/esm/src/endpoint/lambda_endpoint.js +0 -4
- package/dist/esm/src/endpoint/lambda_endpoint.js.map +1 -1
- package/dist/esm/src/endpoint/node_endpoint.d.ts +3 -4
- package/dist/esm/src/endpoint/node_endpoint.d.ts.map +1 -1
- package/dist/esm/src/endpoint/node_endpoint.js +12 -4
- package/dist/esm/src/endpoint/node_endpoint.js.map +1 -1
- package/dist/esm/src/endpoint.d.ts +6 -37
- package/dist/esm/src/endpoint.d.ts.map +1 -1
- package/dist/esm/src/generated/version.d.ts +1 -1
- package/dist/esm/src/generated/version.js +1 -1
- package/dist/esm/src/io.d.ts +25 -0
- package/dist/esm/src/io.d.ts.map +1 -0
- package/dist/esm/src/io.js +73 -0
- package/dist/esm/src/io.js.map +1 -0
- package/dist/esm/src/logging/console_logger_transport.d.ts +5 -0
- package/dist/esm/src/logging/console_logger_transport.d.ts.map +1 -0
- package/dist/esm/src/{logger.js → logging/console_logger_transport.js} +40 -90
- package/dist/esm/src/logging/console_logger_transport.js.map +1 -0
- package/dist/esm/src/logging/logger.d.ts +11 -0
- package/dist/esm/src/logging/logger.d.ts.map +1 -0
- package/dist/esm/src/logging/logger.js +57 -0
- package/dist/esm/src/logging/logger.js.map +1 -0
- package/dist/esm/src/logging/logger_transport.d.ts +52 -0
- package/dist/esm/src/logging/logger_transport.d.ts.map +1 -0
- package/dist/esm/src/logging/logger_transport.js +55 -0
- package/dist/esm/src/logging/logger_transport.js.map +1 -0
- package/dist/esm/src/promises.d.ts +110 -0
- package/dist/esm/src/promises.d.ts.map +1 -0
- package/dist/esm/src/promises.js +311 -0
- package/dist/esm/src/promises.js.map +1 -0
- package/dist/esm/src/types/components.d.ts +11 -3
- package/dist/esm/src/types/components.d.ts.map +1 -1
- package/dist/esm/src/types/components.js +36 -3
- package/dist/esm/src/types/components.js.map +1 -1
- package/dist/esm/src/types/discovery.d.ts +4 -0
- package/dist/esm/src/types/discovery.d.ts.map +1 -1
- package/dist/esm/src/types/errors.d.ts +8 -0
- package/dist/esm/src/types/errors.d.ts.map +1 -1
- package/dist/esm/src/types/errors.js +10 -0
- package/dist/esm/src/types/errors.js.map +1 -1
- package/dist/esm/src/types/rpc.d.ts +66 -41
- package/dist/esm/src/types/rpc.d.ts.map +1 -1
- package/dist/esm/src/types/rpc.js +25 -76
- package/dist/esm/src/types/rpc.js.map +1 -1
- package/dist/esm/src/user_agent.d.ts +1 -1
- package/dist/esm/src/utils/buffer.d.ts +1 -0
- package/dist/esm/src/utils/buffer.d.ts.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/dist/cjs/src/logger.d.ts +0 -35
- package/dist/cjs/src/logger.d.ts.map +0 -1
- package/dist/cjs/src/logger.js +0 -151
- package/dist/cjs/src/logger.js.map +0 -1
- package/dist/esm/src/logger.d.ts +0 -35
- package/dist/esm/src/logger.d.ts.map +0 -1
- package/dist/esm/src/logger.js.map +0 -1
package/README.md
CHANGED
|
@@ -53,9 +53,11 @@ This library follows [Semantic Versioning](https://semver.org/).
|
|
|
53
53
|
|
|
54
54
|
The compatibility with Restate is described in the following table:
|
|
55
55
|
|
|
56
|
-
| Restate Server\sdk-typescript | 1.0/1.1/1.2/1.3 | 1.4 |
|
|
57
|
-
|
|
58
|
-
| 1.0 | ✅ | ❌ |
|
|
59
|
-
| 1.1 | ✅ <sup>(1)</sup> | ✅ |
|
|
56
|
+
| Restate Server\sdk-typescript | 1.0/1.1/1.2/1.3 | 1.4 | 1.5 |
|
|
57
|
+
|-------------------------------|------------------|-----|-----|
|
|
58
|
+
| 1.0 | ✅ | ❌ | ❌ |
|
|
59
|
+
| 1.1 | ✅ <sup>(1)</sup> | ✅ | ❌ |
|
|
60
|
+
| 1.2 | ✅ | ✅ | ❌ |
|
|
61
|
+
| 1.3 | ✅ | ✅ | ✅ |
|
|
60
62
|
|
|
61
63
|
<sup>(1)</sup> **Only** when upgrading from 1.0 to 1.1 you MUST rediscover all the existing deployments using `restate dp register <address> --force`. You don't need to update the SDK, nor change the code.
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
export type { Context, ObjectContext, ObjectSharedContext, WorkflowContext, WorkflowSharedContext, Rand, GenericCall, GenericSend, } from "./context.js";
|
|
2
|
-
export { CombineablePromise } from "./context.js";
|
|
1
|
+
export type { Context, ObjectContext, ObjectSharedContext, WorkflowContext, WorkflowSharedContext, Rand, GenericCall, GenericSend, InvocationId, InvocationHandle, InvocationPromise, } from "./context.js";
|
|
2
|
+
export { InvocationIdParser, CombineablePromise } from "./context.js";
|
|
3
3
|
export type { Serde } from "@restatedev/restate-sdk-core";
|
|
4
4
|
export { serde } from "@restatedev/restate-sdk-core";
|
|
5
|
-
export type { Client, SendClient, ClientCallOptions, ClientSendOptions, } from "./types/rpc.js";
|
|
5
|
+
export type { Client, SendClient, ClientCallOptions, ClientSendOptions, RemoveVoidArgument, } from "./types/rpc.js";
|
|
6
6
|
export { service, object, workflow, handlers, Opts, SendOpts, } from "./types/rpc.js";
|
|
7
7
|
export { rpc } from "./types/rpc.js";
|
|
8
8
|
export type { ServiceDefinition, VirtualObjectDefinition, WorkflowDefinition, } from "@restatedev/restate-sdk-core";
|
|
9
|
-
export type {
|
|
9
|
+
export type { RestateEndpoint } from "./endpoint.js";
|
|
10
10
|
export { RestateError, TerminalError, TimeoutError } from "./types/errors.js";
|
|
11
|
-
export type {
|
|
11
|
+
export type { LoggerTransport, LogMetadata, RestateLogLevel, LoggerContext, LogSource, } from "./logging/logger_transport.js";
|
|
12
12
|
//# sourceMappingURL=common_api.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common_api.d.ts","sourceRoot":"","sources":["../../../src/common_api.ts"],"names":[],"mappings":"AAWA,YAAY,EACV,OAAO,EACP,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,qBAAqB,EACrB,IAAI,EACJ,WAAW,EACX,WAAW,
|
|
1
|
+
{"version":3,"file":"common_api.d.ts","sourceRoot":"","sources":["../../../src/common_api.ts"],"names":[],"mappings":"AAWA,YAAY,EACV,OAAO,EACP,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,qBAAqB,EACrB,IAAI,EACJ,WAAW,EACX,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEtE,YAAY,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAErD,YAAY,EACV,MAAM,EACN,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,OAAO,EACP,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,QAAQ,GACT,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAErC,YAAY,EACV,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,8BAA8B,CAAC;AAEtC,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC9E,YAAY,EACV,eAAe,EACf,WAAW,EACX,eAAe,EACf,aAAa,EACb,SAAS,GACV,MAAM,+BAA+B,CAAC"}
|
|
@@ -10,8 +10,9 @@
|
|
|
10
10
|
* https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
|
|
11
11
|
*/
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
exports.TimeoutError = exports.TerminalError = exports.RestateError = exports.rpc = exports.SendOpts = exports.Opts = exports.handlers = exports.workflow = exports.object = exports.service = exports.serde = exports.CombineablePromise = void 0;
|
|
13
|
+
exports.TimeoutError = exports.TerminalError = exports.RestateError = exports.rpc = exports.SendOpts = exports.Opts = exports.handlers = exports.workflow = exports.object = exports.service = exports.serde = exports.CombineablePromise = exports.InvocationIdParser = void 0;
|
|
14
14
|
var context_js_1 = require("./context.js");
|
|
15
|
+
Object.defineProperty(exports, "InvocationIdParser", { enumerable: true, get: function () { return context_js_1.InvocationIdParser; } });
|
|
15
16
|
Object.defineProperty(exports, "CombineablePromise", { enumerable: true, get: function () { return context_js_1.CombineablePromise; } });
|
|
16
17
|
var restate_sdk_core_1 = require("@restatedev/restate-sdk-core");
|
|
17
18
|
Object.defineProperty(exports, "serde", { enumerable: true, get: function () { return restate_sdk_core_1.serde; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common_api.js","sourceRoot":"","sources":["../../../src/common_api.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;
|
|
1
|
+
{"version":3,"file":"common_api.js","sourceRoot":"","sources":["../../../src/common_api.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAeH,2CAAsE;AAA7D,gHAAA,kBAAkB,OAAA;AAAE,gHAAA,kBAAkB,OAAA;AAG/C,iEAAqD;AAA5C,yGAAA,KAAK,OAAA;AASd,yCAOwB;AANtB,iGAAA,OAAO,OAAA;AACP,gGAAA,MAAM,OAAA;AACN,kGAAA,QAAQ,OAAA;AACR,kGAAA,QAAQ,OAAA;AACR,8FAAA,IAAI,OAAA;AACJ,kGAAA,QAAQ,OAAA;AAGV,yCAAqC;AAA5B,6FAAA,GAAG,OAAA;AASZ,+CAA8E;AAArE,yGAAA,YAAY,OAAA;AAAE,0GAAA,aAAa,OAAA;AAAE,yGAAA,YAAY,OAAA"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
2
3
|
import type { Client, SendClient } from "./types/rpc.js";
|
|
3
4
|
import type { RestateContext, RestateObjectContext, RestateObjectSharedContext, RestateWorkflowContext, RestateWorkflowSharedContext, Service, ServiceDefinitionFrom, VirtualObject, VirtualObjectDefinitionFrom, Workflow, WorkflowDefinitionFrom, Serde } from "@restatedev/restate-sdk-core";
|
|
5
|
+
import type { TerminalError } from "./types/errors.js";
|
|
4
6
|
/**
|
|
5
7
|
* Represents the original request as sent to this handler.
|
|
6
8
|
*
|
|
@@ -38,6 +40,12 @@ export interface Request {
|
|
|
38
40
|
* Care should be taken to use them deterministically.
|
|
39
41
|
*/
|
|
40
42
|
readonly extraArgs: unknown[];
|
|
43
|
+
/**
|
|
44
|
+
* This is a signal that is aborted when the current attempt has been completed either successful or unsuccessfully.
|
|
45
|
+
* When the signal is aborted, the current attempt has been completed and the handler should not perform any more work, other
|
|
46
|
+
* than cleanup any external resources that might be shared across attempts (e.g. database connections).
|
|
47
|
+
*/
|
|
48
|
+
readonly attemptCompletedSignal: AbortSignal;
|
|
41
49
|
}
|
|
42
50
|
export type TypedState = Record<string, any>;
|
|
43
51
|
export type UntypedState = {
|
|
@@ -175,8 +183,10 @@ export type GenericCall<REQ, RES> = {
|
|
|
175
183
|
method: string;
|
|
176
184
|
parameter: REQ;
|
|
177
185
|
key?: string;
|
|
186
|
+
headers?: Record<string, string>;
|
|
178
187
|
inputSerde?: Serde<REQ>;
|
|
179
188
|
outputSerde?: Serde<RES>;
|
|
189
|
+
idempotencyKey?: string;
|
|
180
190
|
};
|
|
181
191
|
/**
|
|
182
192
|
* Send a message to an handler directly avoiding restate's type safety checks.
|
|
@@ -188,8 +198,10 @@ export type GenericSend<REQ> = {
|
|
|
188
198
|
method: string;
|
|
189
199
|
parameter: REQ;
|
|
190
200
|
key?: string;
|
|
201
|
+
headers?: Record<string, string>;
|
|
191
202
|
inputSerde?: Serde<REQ>;
|
|
192
203
|
delay?: number;
|
|
204
|
+
idempotencyKey?: string;
|
|
193
205
|
};
|
|
194
206
|
/**
|
|
195
207
|
* The context that gives access to all Restate-backed operations, for example
|
|
@@ -265,7 +277,7 @@ export interface Context extends RestateContext {
|
|
|
265
277
|
*
|
|
266
278
|
* @param action The function to run.
|
|
267
279
|
*/
|
|
268
|
-
run<T>(action: RunAction<T>):
|
|
280
|
+
run<T>(action: RunAction<T>): CombineablePromise<T>;
|
|
269
281
|
/**
|
|
270
282
|
* Run an operation and store the result in Restate. The operation will thus not
|
|
271
283
|
* be re-run during a later replay, but take the durable result from Restate.
|
|
@@ -273,8 +285,8 @@ export interface Context extends RestateContext {
|
|
|
273
285
|
* @param name the action's name
|
|
274
286
|
* @param action the action to run.
|
|
275
287
|
*/
|
|
276
|
-
run<T>(name: string, action: RunAction<T>):
|
|
277
|
-
run<T>(name: string, action: RunAction<T>, options: RunOptions<T>):
|
|
288
|
+
run<T>(name: string, action: RunAction<T>): CombineablePromise<T>;
|
|
289
|
+
run<T>(name: string, action: RunAction<T>, options: RunOptions<T>): CombineablePromise<T>;
|
|
278
290
|
/**
|
|
279
291
|
* Register an awakeable and pause the processing until the awakeable ID (and optional payload) have been returned to the service
|
|
280
292
|
* (via ctx.completeAwakeable(...)). The SDK deserializes the payload with `JSON.parse(result.toString()) as T`.
|
|
@@ -442,13 +454,26 @@ export interface Context extends RestateContext {
|
|
|
442
454
|
* @param opts Send options
|
|
443
455
|
*/
|
|
444
456
|
objectSendClient<D>(obj: VirtualObjectDefinitionFrom<D>, key: string, opts?: SendOptions): SendClient<VirtualObject<D>>;
|
|
445
|
-
genericCall<REQ = Uint8Array, RES = Uint8Array>(call: GenericCall<REQ, RES>):
|
|
446
|
-
genericSend<REQ = Uint8Array>(call: GenericSend<REQ>):
|
|
457
|
+
genericCall<REQ = Uint8Array, RES = Uint8Array>(call: GenericCall<REQ, RES>): InvocationPromise<RES>;
|
|
458
|
+
genericSend<REQ = Uint8Array>(call: GenericSend<REQ>): InvocationHandle;
|
|
447
459
|
/**
|
|
448
460
|
* Returns the raw request that triggered that handler.
|
|
449
461
|
* Use that object to inspect the original request headers
|
|
450
462
|
*/
|
|
451
463
|
request(): Request;
|
|
464
|
+
/**
|
|
465
|
+
* Cancel an invocation
|
|
466
|
+
*
|
|
467
|
+
* @param invocationId the invocation id to cancel
|
|
468
|
+
*/
|
|
469
|
+
cancel(invocationId: InvocationId): void;
|
|
470
|
+
/**
|
|
471
|
+
* Attach to an invocation
|
|
472
|
+
*
|
|
473
|
+
* @param invocationId the invocation id to attach to
|
|
474
|
+
* @param serde the serde to use for the result, default to JSON serde.
|
|
475
|
+
*/
|
|
476
|
+
attach<T>(invocationId: InvocationId, serde?: Serde<T>): CombineablePromise<T>;
|
|
452
477
|
}
|
|
453
478
|
/**
|
|
454
479
|
* The context that gives access to all Restate-backed operations, for example
|
|
@@ -518,8 +543,41 @@ export type CombineablePromise<T> = Promise<T> & {
|
|
|
518
543
|
* @param millis duration of the sleep in millis.
|
|
519
544
|
* This is a lower-bound.
|
|
520
545
|
*/
|
|
521
|
-
orTimeout(millis: number):
|
|
546
|
+
orTimeout(millis: number): CombineablePromise<T>;
|
|
547
|
+
/**
|
|
548
|
+
* Creates a new {@link CombineablePromise} that maps the result of this promise with
|
|
549
|
+
* the provided `mapper`, once this promise is fulfilled.
|
|
550
|
+
*
|
|
551
|
+
* **NOTE**: You **MUST** use this API when you need to map the result of a
|
|
552
|
+
* {@link CombineablePromise} without `await`ing it, rather than using {@link Promise.then}.
|
|
553
|
+
* {@link Promise.then} is used by Restate to distinguish when awaiting an asynchronous operation,
|
|
554
|
+
* thus calling `.then` on several Restate promises can lead to concurrency issues.
|
|
555
|
+
*
|
|
556
|
+
* @param mapper the function to execute when this promise is fulfilled.
|
|
557
|
+
* If the promise completed successfully, `value` is provided as input, otherwise `failure` is provided as input.
|
|
558
|
+
* If this mapper returns a value, this value will be used to resolve the returned {@link CombineablePromise}.
|
|
559
|
+
* If the mapper throws a {@link TerminalError}, this error will be used to reject the returned {@link CombineablePromise}.
|
|
560
|
+
*/
|
|
561
|
+
map<U>(mapper: (value?: T, failure?: TerminalError) => U): CombineablePromise<U>;
|
|
562
|
+
};
|
|
563
|
+
/**
|
|
564
|
+
* Represents an invocation id.
|
|
565
|
+
* @see {@link InvocationIdParser}
|
|
566
|
+
*/
|
|
567
|
+
export type InvocationId = string & {
|
|
568
|
+
__brand: "InvocationId";
|
|
569
|
+
};
|
|
570
|
+
export declare const InvocationIdParser: {
|
|
571
|
+
/**
|
|
572
|
+
* Creates an invocation id from a string.
|
|
573
|
+
* @param id the string to use as invocation id.
|
|
574
|
+
*/
|
|
575
|
+
fromString(id: string): InvocationId;
|
|
576
|
+
};
|
|
577
|
+
export type InvocationHandle = {
|
|
578
|
+
readonly invocationId: Promise<InvocationId>;
|
|
522
579
|
};
|
|
580
|
+
export type InvocationPromise<T> = CombineablePromise<T> & InvocationHandle;
|
|
523
581
|
export declare const CombineablePromise: {
|
|
524
582
|
/**
|
|
525
583
|
* Creates a Promise that is resolved with an array of results when all of the provided Promises
|
|
@@ -530,7 +588,7 @@ export declare const CombineablePromise: {
|
|
|
530
588
|
* @param values An iterable of Promises.
|
|
531
589
|
* @returns A new Promise.
|
|
532
590
|
*/
|
|
533
|
-
all<T extends
|
|
591
|
+
all<T extends readonly CombineablePromise<unknown>[]>(values: T): CombineablePromise<{ -readonly [P in keyof T]: Awaited<T[P]>; }>;
|
|
534
592
|
/**
|
|
535
593
|
* Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
|
|
536
594
|
* or rejected.
|
|
@@ -540,7 +598,7 @@ export declare const CombineablePromise: {
|
|
|
540
598
|
* @param values An iterable of Promises.
|
|
541
599
|
* @returns A new Promise.
|
|
542
600
|
*/
|
|
543
|
-
race<T_1 extends
|
|
601
|
+
race<T_1 extends readonly CombineablePromise<unknown>[]>(values: T_1): CombineablePromise<Awaited<T_1[number]>>;
|
|
544
602
|
/**
|
|
545
603
|
* Creates a promise that fulfills when any of the input's promises fulfills, with this first fulfillment value.
|
|
546
604
|
* It rejects when all the input's promises reject (including when an empty iterable is passed),
|
|
@@ -551,7 +609,7 @@ export declare const CombineablePromise: {
|
|
|
551
609
|
* @param values An iterable of Promises.
|
|
552
610
|
* @returns A new Promise.
|
|
553
611
|
*/
|
|
554
|
-
any<T_2 extends
|
|
612
|
+
any<T_2 extends readonly CombineablePromise<unknown>[]>(values: T_2): CombineablePromise<Awaited<T_2[number]>>;
|
|
555
613
|
/**
|
|
556
614
|
* Creates a promise that fulfills when all the input's promises settle (including when an empty iterable is passed),
|
|
557
615
|
* with an array of objects that describe the outcome of each promise.
|
|
@@ -561,7 +619,7 @@ export declare const CombineablePromise: {
|
|
|
561
619
|
* @param values An iterable of Promises.
|
|
562
620
|
* @returns A new Promise.
|
|
563
621
|
*/
|
|
564
|
-
allSettled<T_3 extends
|
|
622
|
+
allSettled<T_3 extends readonly CombineablePromise<unknown>[]>(values: T_3): CombineablePromise<{ -readonly [P_1 in keyof T_3]: PromiseSettledResult<Awaited<T_3[P_1]>>; }>;
|
|
565
623
|
};
|
|
566
624
|
/**
|
|
567
625
|
* Workflow bound durable promise
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/context.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/context.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/src/context.js
CHANGED
|
@@ -10,8 +10,20 @@
|
|
|
10
10
|
* https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
|
|
11
11
|
*/
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
exports.CombineablePromise = void 0;
|
|
13
|
+
exports.CombineablePromise = exports.InvocationIdParser = void 0;
|
|
14
14
|
const context_impl_js_1 = require("./context_impl.js");
|
|
15
|
+
exports.InvocationIdParser = {
|
|
16
|
+
/**
|
|
17
|
+
* Creates an invocation id from a string.
|
|
18
|
+
* @param id the string to use as invocation id.
|
|
19
|
+
*/
|
|
20
|
+
fromString(id) {
|
|
21
|
+
if (!id.startsWith("inv")) {
|
|
22
|
+
throw new Error(`Expected invocation id to start with 'inv' but got ${id}`);
|
|
23
|
+
}
|
|
24
|
+
return id;
|
|
25
|
+
},
|
|
26
|
+
};
|
|
15
27
|
exports.CombineablePromise = {
|
|
16
28
|
/**
|
|
17
29
|
* Creates a Promise that is resolved with an array of results when all of the provided Promises
|
|
@@ -24,9 +36,9 @@ exports.CombineablePromise = {
|
|
|
24
36
|
*/
|
|
25
37
|
all(values) {
|
|
26
38
|
if (values.length === 0) {
|
|
27
|
-
|
|
39
|
+
throw new Error("Expected combineable promise to have at least one promise");
|
|
28
40
|
}
|
|
29
|
-
return context_impl_js_1.ContextImpl.createCombinator(
|
|
41
|
+
return context_impl_js_1.ContextImpl.createCombinator((p) => Promise.all(p), values);
|
|
30
42
|
},
|
|
31
43
|
/**
|
|
32
44
|
* Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
|
|
@@ -39,9 +51,9 @@ exports.CombineablePromise = {
|
|
|
39
51
|
*/
|
|
40
52
|
race(values) {
|
|
41
53
|
if (values.length === 0) {
|
|
42
|
-
|
|
54
|
+
throw new Error("Expected combineable promise to have at least one promise");
|
|
43
55
|
}
|
|
44
|
-
return context_impl_js_1.ContextImpl.createCombinator(
|
|
56
|
+
return context_impl_js_1.ContextImpl.createCombinator((p) => Promise.race(p), values);
|
|
45
57
|
},
|
|
46
58
|
/**
|
|
47
59
|
* Creates a promise that fulfills when any of the input's promises fulfills, with this first fulfillment value.
|
|
@@ -55,9 +67,9 @@ exports.CombineablePromise = {
|
|
|
55
67
|
*/
|
|
56
68
|
any(values) {
|
|
57
69
|
if (values.length === 0) {
|
|
58
|
-
|
|
70
|
+
throw new Error("Expected combineable promise to have at least one promise");
|
|
59
71
|
}
|
|
60
|
-
return context_impl_js_1.ContextImpl.createCombinator(
|
|
72
|
+
return context_impl_js_1.ContextImpl.createCombinator((p) => Promise.any(p), values);
|
|
61
73
|
},
|
|
62
74
|
/**
|
|
63
75
|
* Creates a promise that fulfills when all the input's promises settle (including when an empty iterable is passed),
|
|
@@ -70,9 +82,9 @@ exports.CombineablePromise = {
|
|
|
70
82
|
*/
|
|
71
83
|
allSettled(values) {
|
|
72
84
|
if (values.length === 0) {
|
|
73
|
-
|
|
85
|
+
throw new Error("Expected combineable promise to have at least one promise");
|
|
74
86
|
}
|
|
75
|
-
return context_impl_js_1.ContextImpl.createCombinator(
|
|
87
|
+
return context_impl_js_1.ContextImpl.createCombinator((p) => Promise.allSettled(p), values);
|
|
76
88
|
},
|
|
77
89
|
};
|
|
78
90
|
//# sourceMappingURL=context.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/context.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAiBH,uDAAgD;
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/context.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAiBH,uDAAgD;AAqpBnC,QAAA,kBAAkB,GAAG;IAChC;;;OAGG;IACH,UAAU,CAAC,EAAU;QACnB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,sDAAsD,EAAE,EAAE,CAC3D,CAAC;QACJ,CAAC;QACD,OAAO,EAAkB,CAAC;IAC5B,CAAC;CACF,CAAC;AASW,QAAA,kBAAkB,GAAG;IAChC;;;;;;;;OAQG;IACH,GAAG,CACD,MAAS;QAET,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;QACJ,CAAC;QACD,OAAO,6BAAW,CAAC,gBAAgB,CACjC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EACrB,MAAM,CAGN,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACH,IAAI,CACF,MAAS;QAET,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;QACJ,CAAC;QACD,OAAO,6BAAW,CAAC,gBAAgB,CACjC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EACtB,MAAM,CACmC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;OASG;IACH,GAAG,CACD,MAAS;QAET,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;QACJ,CAAC;QACD,OAAO,6BAAW,CAAC,gBAAgB,CACjC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EACrB,MAAM,CACmC,CAAC;IAC9C,CAAC;IAED;;;;;;;;OAQG;IACH,UAAU,CACR,MAAS;QAIT,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;QACJ,CAAC;QACD,OAAO,6BAAW,CAAC,gBAAgB,CACjC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAC5B,MAAM,CAGN,CAAC;IACL,CAAC;CACF,CAAC"}
|
|
@@ -1,45 +1,47 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
|
-
import type { CombineablePromise, ContextDate, DurablePromise, GenericCall, GenericSend, ObjectContext, Rand, Request, RunAction, RunOptions, SendOptions, WorkflowContext } from "./context.js";
|
|
3
|
+
import type { CombineablePromise, ContextDate, DurablePromise, GenericCall, GenericSend, InvocationPromise, InvocationId, ObjectContext, Rand, Request, RunAction, RunOptions, SendOptions, WorkflowContext, InvocationHandle } from "./context.js";
|
|
4
4
|
import type * as vm from "./endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js";
|
|
5
5
|
import type { Client, SendClient } from "./types/rpc.js";
|
|
6
6
|
import { HandlerKind } from "./types/rpc.js";
|
|
7
7
|
import type { Serde, Service, ServiceDefinitionFrom, VirtualObject, VirtualObjectDefinitionFrom, Workflow, WorkflowDefinitionFrom } from "@restatedev/restate-sdk-core";
|
|
8
|
-
import type { Headers } from "./endpoint/handlers/generic.js";
|
|
9
8
|
import type { ReadableStreamDefaultReader, WritableStreamDefaultWriter } from "node:stream/web";
|
|
10
|
-
import
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
};
|
|
9
|
+
import { CompletablePromise } from "./utils/completable_promise.js";
|
|
10
|
+
import type { AsyncResultValue } from "./promises.js";
|
|
11
|
+
import { PromisesExecutor } from "./promises.js";
|
|
14
12
|
export declare class ContextImpl implements ObjectContext, WorkflowContext {
|
|
15
13
|
readonly coreVm: vm.WasmVM;
|
|
16
14
|
readonly input: vm.WasmInput;
|
|
17
15
|
readonly console: Console;
|
|
18
16
|
readonly handlerKind: HandlerKind;
|
|
19
|
-
private readonly
|
|
20
|
-
private readonly inputReader;
|
|
21
|
-
private readonly outputWriter;
|
|
17
|
+
private readonly vmLogger;
|
|
22
18
|
private readonly invocationRequest;
|
|
19
|
+
private readonly invocationEndPromise;
|
|
23
20
|
readonly rand: Rand;
|
|
24
21
|
readonly date: ContextDate;
|
|
25
|
-
private
|
|
26
|
-
|
|
22
|
+
private readonly outputPump;
|
|
23
|
+
private readonly runClosuresTracker;
|
|
24
|
+
readonly promisesExecutor: PromisesExecutor;
|
|
25
|
+
constructor(coreVm: vm.WasmVM, input: vm.WasmInput, console: Console, handlerKind: HandlerKind, vmLogger: Console, invocationRequest: Request, invocationEndPromise: CompletablePromise<void>, inputReader: ReadableStreamDefaultReader<Uint8Array>, outputWriter: WritableStreamDefaultWriter<Uint8Array>);
|
|
26
|
+
cancel(invocationId: InvocationId): void;
|
|
27
|
+
attach<T>(invocationId: InvocationId, serde?: Serde<T>): CombineablePromise<T>;
|
|
27
28
|
get key(): string;
|
|
28
29
|
request(): Request;
|
|
29
|
-
get<T>(name: string, serde?: Serde<T>):
|
|
30
|
-
stateKeys():
|
|
30
|
+
get<T>(name: string, serde?: Serde<T>): CombineablePromise<T | null>;
|
|
31
|
+
stateKeys(): CombineablePromise<Array<string>>;
|
|
31
32
|
set<T>(name: string, value: T, serde?: Serde<T>): void;
|
|
32
33
|
clear(name: string): void;
|
|
33
34
|
clearAll(): void;
|
|
34
|
-
genericCall<REQ = Uint8Array, RES = Uint8Array>(call: GenericCall<REQ, RES>):
|
|
35
|
-
genericSend<REQ = Uint8Array>(send: GenericSend<REQ>):
|
|
35
|
+
genericCall<REQ = Uint8Array, RES = Uint8Array>(call: GenericCall<REQ, RES>): InvocationPromise<RES>;
|
|
36
|
+
genericSend<REQ = Uint8Array>(send: GenericSend<REQ>): InvocationHandle;
|
|
37
|
+
private createInvocationIdPromise;
|
|
36
38
|
serviceClient<D>({ name }: ServiceDefinitionFrom<D>): Client<Service<D>>;
|
|
37
39
|
objectClient<D>({ name }: VirtualObjectDefinitionFrom<D>, key: string): Client<VirtualObject<D>>;
|
|
38
40
|
workflowClient<D>({ name }: WorkflowDefinitionFrom<D>, key: string): Client<Workflow<D>>;
|
|
39
41
|
serviceSendClient<D>({ name }: ServiceDefinitionFrom<D>, opts?: SendOptions): SendClient<Service<D>>;
|
|
40
42
|
objectSendClient<D>({ name }: VirtualObjectDefinitionFrom<D>, key: string, opts?: SendOptions): SendClient<VirtualObject<D>>;
|
|
41
43
|
workflowSendClient<D>({ name }: WorkflowDefinitionFrom<D>, key: string, opts?: SendOptions): SendClient<Workflow<D>>;
|
|
42
|
-
run<T>(nameOrAction: string | RunAction<T>, actionSecondParameter?: RunAction<T>, options?: RunOptions<T>):
|
|
44
|
+
run<T>(nameOrAction: string | RunAction<T>, actionSecondParameter?: RunAction<T>, options?: RunOptions<T>): CombineablePromise<T>;
|
|
43
45
|
sleep(millis: number): CombineablePromise<void>;
|
|
44
46
|
awakeable<T>(serde?: Serde<T>): {
|
|
45
47
|
id: string;
|
|
@@ -48,49 +50,17 @@ export declare class ContextImpl implements ObjectContext, WorkflowContext {
|
|
|
48
50
|
resolveAwakeable<T>(id: string, payload?: T, serde?: Serde<T>): void;
|
|
49
51
|
rejectAwakeable(id: string, reason: string): void;
|
|
50
52
|
promise<T>(name: string, serde?: Serde<T>): DurablePromise<T>;
|
|
51
|
-
static createCombinator<T extends readonly CombineablePromise<unknown>[]>(
|
|
52
|
-
private
|
|
53
|
-
|
|
54
|
-
private static extractAllSettledCombinatorResult;
|
|
55
|
-
processNonCompletableEntry(vmCall: (vm: vm.WasmVM) => void): void;
|
|
56
|
-
processCompletableEntry<T>(vmCall: (vm: vm.WasmVM) => number, transformer: (value: "Empty" | {
|
|
57
|
-
Success: Uint8Array;
|
|
58
|
-
} | {
|
|
59
|
-
Failure: vm.WasmFailure;
|
|
60
|
-
} | {
|
|
61
|
-
StateKeys: string[];
|
|
62
|
-
} | {
|
|
63
|
-
CombinatorResult: number[];
|
|
64
|
-
}) => T): LazyContextPromise<T>;
|
|
65
|
-
pollAsyncResult<T>(handle: number, transformer: (value: "Empty" | {
|
|
66
|
-
Success: Uint8Array;
|
|
67
|
-
} | {
|
|
68
|
-
Failure: vm.WasmFailure;
|
|
69
|
-
} | {
|
|
70
|
-
StateKeys: string[];
|
|
71
|
-
} | {
|
|
72
|
-
CombinatorResult: number[];
|
|
73
|
-
}) => T): Promise<T>;
|
|
74
|
-
private awaitNextRead;
|
|
75
|
-
private readNext;
|
|
53
|
+
static createCombinator<T extends readonly CombineablePromise<unknown>[]>(combinatorConstructor: (promises: Promise<any>[]) => Promise<any>, promises: T): CombineablePromise<unknown>;
|
|
54
|
+
private processNonCompletableEntry;
|
|
55
|
+
processCompletableEntry<T>(vmCall: (vm: vm.WasmVM) => number, completer: (value: AsyncResultValue, prom: CompletablePromise<T>) => void): CombineablePromise<T>;
|
|
76
56
|
handleInvocationEndError(e: unknown): void;
|
|
77
57
|
}
|
|
78
|
-
declare
|
|
79
|
-
|
|
80
|
-
private
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
finally(onfinally?: (() => void) | null | undefined): Promise<T>;
|
|
86
|
-
readonly [Symbol.toStringTag] = "LazyPromise";
|
|
87
|
-
}
|
|
88
|
-
declare class LazyContextPromise<T> extends LazyPromise<T> implements InternalCombineablePromise<T> {
|
|
89
|
-
readonly asyncResultHandle: number;
|
|
90
|
-
[RESTATE_CTX_SYMBOL]: ContextImpl;
|
|
91
|
-
constructor(asyncResultHandle: number, ctx: ContextImpl, executor: () => Promise<T>);
|
|
92
|
-
orTimeout(millis: number): Promise<T>;
|
|
58
|
+
export declare class RunClosuresTracker {
|
|
59
|
+
private currentRunWaitPoint?;
|
|
60
|
+
private runsToExecute;
|
|
61
|
+
executeRun(handle: number): void;
|
|
62
|
+
registerRunClosure(handle: number, runClosure: () => Promise<any>): void;
|
|
63
|
+
awaitNextCompletedRun(): Promise<void>;
|
|
64
|
+
private unblockCurrentRunWaitPoint;
|
|
93
65
|
}
|
|
94
|
-
type PromiseCombinatorType = "All" | "Any" | "AllSettled" | "Race" | "OrTimeout";
|
|
95
|
-
export {};
|
|
96
66
|
//# sourceMappingURL=context_impl.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context_impl.d.ts","sourceRoot":"","sources":["../../../src/context_impl.ts"],"names":[],"mappings":";;AAaA,OAAO,KAAK,EACV,kBAAkB,EAClB,WAAW,EACX,cAAc,EACd,WAAW,EACX,WAAW,EACX,aAAa,EACb,IAAI,EACJ,OAAO,EACP,SAAS,EACT,UAAU,EACV,WAAW,EACX,eAAe,
|
|
1
|
+
{"version":3,"file":"context_impl.d.ts","sourceRoot":"","sources":["../../../src/context_impl.ts"],"names":[],"mappings":"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"}
|