@bluelibs/runner 5.4.0 → 5.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 +23 -22
- package/dist/browser/index.cjs +5426 -2403
- package/dist/browser/index.cjs.map +1 -1
- package/dist/browser/index.mjs +5426 -2400
- package/dist/browser/index.mjs.map +1 -1
- package/dist/edge/index.cjs +5426 -2403
- package/dist/edge/index.cjs.map +1 -1
- package/dist/edge/index.mjs +5426 -2400
- package/dist/edge/index.mjs.map +1 -1
- package/dist/node/node.cjs +7208 -6935
- package/dist/node/node.cjs.map +1 -1
- package/dist/node/node.mjs +7167 -6936
- package/dist/node/node.mjs.map +1 -1
- package/dist/types/definers/builders/asyncContext/fluent-builder.interface.d.ts +4 -0
- package/dist/types/definers/builders/error/fluent-builder.interface.d.ts +8 -1
- package/dist/types/definers/builders/error/index.d.ts +1 -0
- package/dist/types/definers/builders/error/types.d.ts +2 -1
- package/dist/types/definers/builders/error/utils.d.ts +1 -0
- package/dist/types/definers/builders/event/fluent-builder.interface.d.ts +10 -0
- package/dist/types/definers/builders/hook/fluent-builder.interface.d.ts +3 -0
- package/dist/types/definers/builders/hook/types.d.ts +3 -0
- package/dist/types/definers/builders/middleware/index.d.ts +4 -2
- package/dist/types/definers/builders/middleware/resource.interface.d.ts +7 -0
- package/dist/types/definers/builders/middleware/task.interface.d.ts +7 -0
- package/dist/types/definers/builders/middleware/types.d.ts +22 -3
- package/dist/types/definers/builders/middleware/utils.d.ts +2 -0
- package/dist/types/definers/builders/override/hook.d.ts +3 -0
- package/dist/types/definers/builders/override/index.d.ts +5 -0
- package/dist/types/definers/builders/resource/fluent-builder.interface.d.ts +15 -0
- package/dist/types/definers/builders/resource/index.d.ts +0 -1
- package/dist/types/definers/builders/resource/types.d.ts +1 -0
- package/dist/types/definers/builders/tag/fluent-builder.interface.d.ts +4 -0
- package/dist/types/definers/builders/tag/utils.d.ts +1 -0
- package/dist/types/definers/builders/task/fluent-builder.interface.d.ts +4 -0
- package/dist/types/definers/builders/task/index.d.ts +2 -2
- package/dist/types/definers/builders/utils.d.ts +6 -1
- package/dist/types/definers/defineError.d.ts +12 -2
- package/dist/types/definers/resourceFork.d.ts +3 -1
- package/dist/types/definers/tools.d.ts +12 -12
- package/dist/types/errors/domain-error-ids.d.ts +44 -0
- package/dist/types/errors/domain-runtime.errors.d.ts +136 -0
- package/dist/types/errors/foundation.errors.d.ts +125 -0
- package/dist/types/errors/generic.errors.d.ts +1 -0
- package/dist/types/errors/model-runtime.errors.d.ts +20 -0
- package/dist/types/errors.d.ts +5 -73
- package/dist/types/globals/cron/cron-parser.d.ts +4 -0
- package/dist/types/globals/cron/cron.errors.d.ts +8 -0
- package/dist/types/globals/cron/cron.resource.d.ts +12 -0
- package/dist/types/globals/cron/cron.tag.d.ts +2 -0
- package/dist/types/globals/cron/types.d.ts +25 -0
- package/dist/types/globals/globalMiddleware.d.ts +87 -13
- package/dist/types/globals/globalResources.d.ts +110 -24
- package/dist/types/globals/globalTags.d.ts +10 -2
- package/dist/types/globals/middleware/cache.middleware.d.ts +173 -13
- package/dist/types/globals/middleware/circuitBreaker.middleware.d.ts +5 -1
- package/dist/types/globals/middleware/concurrency.middleware.d.ts +3 -0
- package/dist/types/globals/middleware/fallback.middleware.d.ts +8 -1
- package/dist/types/globals/middleware/rateLimit.middleware.d.ts +4 -1
- package/dist/types/globals/middleware/retry.middleware.d.ts +5 -0
- package/dist/types/globals/middleware/temporal.middleware.d.ts +19 -19
- package/dist/types/globals/middleware/timeout.middleware.d.ts +4 -1
- package/dist/types/globals/resources/eventManager.resource.d.ts +2 -0
- package/dist/types/globals/resources/logger.resource.d.ts +2 -0
- package/dist/types/globals/resources/middlewareManager.resource.d.ts +2 -0
- package/dist/types/globals/resources/queue.resource.d.ts +2 -0
- package/dist/types/globals/resources/runtime.resource.d.ts +2 -0
- package/dist/types/globals/resources/serializer.resource.d.ts +2 -0
- package/dist/types/globals/resources/store.resource.d.ts +2 -0
- package/dist/types/globals/resources/taskRunner.resource.d.ts +2 -0
- package/dist/types/globals/resources/tunnel/plan.d.ts +6 -3
- package/dist/types/globals/resources/tunnel/tunnel.policy.tag.d.ts +2 -0
- package/dist/types/globals/resources/tunnel/types.d.ts +7 -2
- package/dist/types/globals/types.d.ts +6 -1
- package/dist/types/models/BuiltinsRegistry.d.ts +2 -0
- package/dist/types/models/DependencyProcessor.d.ts +26 -5
- package/dist/types/models/EventManager.d.ts +9 -9
- package/dist/types/models/LogPrinter.d.ts +5 -5
- package/dist/types/models/Logger.d.ts +16 -16
- package/dist/types/models/MiddlewareManager.d.ts +18 -0
- package/dist/types/models/OverrideManager.d.ts +4 -1
- package/dist/types/models/Queue.d.ts +2 -0
- package/dist/types/models/RunResult.d.ts +290 -26
- package/dist/types/models/Store.d.ts +20 -3
- package/dist/types/models/StoreRegistry.d.ts +2 -0
- package/dist/types/models/StoreValidator.d.ts +2 -0
- package/dist/types/models/TaskRunner.d.ts +3 -1
- package/dist/types/models/VisibilityTracker.d.ts +75 -0
- package/dist/types/models/dependency-processor/DependencyExtractor.d.ts +23 -0
- package/dist/types/models/dependency-processor/HookEventBuffer.d.ts +15 -0
- package/dist/types/models/dependency-processor/ResourceScheduler.d.ts +10 -0
- package/dist/types/models/event/EmissionExecutor.d.ts +5 -4
- package/dist/types/models/event/ListenerRegistry.d.ts +2 -0
- package/dist/types/models/index.d.ts +1 -3
- package/dist/types/models/middleware/InterceptorRegistry.d.ts +13 -4
- package/dist/types/models/middleware/ResourceMiddlewareComposer.d.ts +1 -0
- package/dist/types/models/middleware/ValidationHelper.d.ts +3 -6
- package/dist/types/models/utils/disposeOrder.d.ts +5 -1
- package/dist/types/models/utils/resourceDependencyIds.d.ts +1 -0
- package/dist/types/node/durable/bus/MemoryEventBus.d.ts +10 -1
- package/dist/types/node/durable/bus/NoopEventBus.d.ts +1 -1
- package/dist/types/node/durable/bus/RedisEventBus.d.ts +8 -2
- package/dist/types/node/durable/core/CronParser.d.ts +2 -13
- package/dist/types/node/durable/core/DurableResource.d.ts +14 -32
- package/dist/types/node/durable/core/DurableService.d.ts +1 -0
- package/dist/types/node/durable/core/DurableWorker.d.ts +4 -2
- package/dist/types/node/durable/core/createRunnerDurableRuntime.d.ts +2 -0
- package/dist/types/node/durable/core/interfaces/bus.d.ts +1 -1
- package/dist/types/node/durable/core/interfaces/resource.d.ts +61 -0
- package/dist/types/node/durable/core/interfaces/service.d.ts +2 -0
- package/dist/types/node/durable/core/interfaces/store.d.ts +5 -0
- package/dist/types/node/durable/core/managers/ExecutionManager.d.ts +1 -0
- package/dist/types/node/durable/core/managers/PollingManager.d.ts +3 -1
- package/dist/types/node/durable/core/resource.d.ts +4 -3
- package/dist/types/node/durable/core/utils.d.ts +11 -1
- package/dist/types/node/durable/queue/RabbitMQQueue.d.ts +4 -0
- package/dist/types/node/durable/resources/memoryDurableResource.d.ts +5 -3
- package/dist/types/node/durable/resources/redisDurableResource.d.ts +5 -3
- package/dist/types/node/durable/store/MemoryStore.d.ts +2 -0
- package/dist/types/node/durable/store/RedisStore.d.ts +1 -0
- package/dist/types/node/exposure/allowList.d.ts +2 -1
- package/dist/types/node/exposure/handlers/contextWrapper.d.ts +6 -2
- package/dist/types/node/exposure/handlers/errorHandlers.d.ts +1 -0
- package/dist/types/node/exposure/handlers/eventHandler.d.ts +1 -0
- package/dist/types/node/exposure/handlers/taskHandler.d.ts +3 -1
- package/dist/types/node/exposure/logging.d.ts +1 -0
- package/dist/types/node/exposure/requestHandlers.d.ts +3 -1
- package/dist/types/node/exposure/requestIdentity.d.ts +3 -0
- package/dist/types/node/exposure/resource.d.ts +4 -4
- package/dist/types/node/exposure/resourceTypes.d.ts +6 -0
- package/dist/types/node/exposure/serverLifecycle.d.ts +2 -0
- package/dist/types/node/node.d.ts +1 -1
- package/dist/types/node/tunnel/allowlist.d.ts +10 -1
- package/dist/types/platform/adapters/browser.d.ts +1 -1
- package/dist/types/platform/adapters/node-als.d.ts +1 -1
- package/dist/types/platform/adapters/node.d.ts +1 -1
- package/dist/types/platform/adapters/universal-generic.d.ts +2 -2
- package/dist/types/platform/adapters/universal.d.ts +1 -1
- package/dist/types/platform/index.d.ts +2 -2
- package/dist/types/platform/types.d.ts +1 -1
- package/dist/types/public.d.ts +374 -20
- package/dist/types/run.d.ts +17 -1
- package/dist/types/serializer/Serializer.d.ts +1 -41
- package/dist/types/serializer/errors.d.ts +8 -0
- package/dist/types/serializer/marker-key-escapes.d.ts +2 -0
- package/dist/types/serializer/serialize-utils.d.ts +1 -1
- package/dist/types/serializer/type-registry.d.ts +0 -1
- package/dist/types/serializer/types.d.ts +7 -6
- package/dist/types/testing.d.ts +1 -0
- package/dist/types/tools/getAllThrows.d.ts +13 -0
- package/dist/types/tools/throws.d.ts +1 -1
- package/dist/types/types/error.d.ts +25 -2
- package/dist/types/types/event.d.ts +35 -0
- package/dist/types/types/hook.d.ts +8 -0
- package/dist/types/types/resource.d.ts +13 -1
- package/dist/types/types/resourceMiddleware.d.ts +8 -0
- package/dist/types/types/runner.d.ts +56 -0
- package/dist/types/types/storeTypes.d.ts +5 -1
- package/dist/types/types/tag.d.ts +1 -0
- package/dist/types/types/tagged.d.ts +2 -2
- package/dist/types/types/task.d.ts +2 -2
- package/dist/types/types/taskMiddleware.d.ts +8 -0
- package/dist/types/types/utilities.d.ts +25 -3
- package/dist/ui/assets/{index-Bo7Gi6Vq.js → index-B4lZaXFJ.js} +48 -48
- package/dist/ui/index.html +1 -1
- package/dist/universal/index.cjs +5426 -2403
- package/dist/universal/index.cjs.map +1 -1
- package/dist/universal/index.mjs +5426 -2400
- package/dist/universal/index.mjs.map +1 -1
- package/package.json +18 -14
- package/readmes/AI.md +147 -42
|
@@ -4,6 +4,10 @@ export interface AsyncContextFluentBuilder<T = unknown> {
|
|
|
4
4
|
serialize(fn: (data: T) => string): AsyncContextFluentBuilder<T>;
|
|
5
5
|
parse(fn: (raw: string) => T): AsyncContextFluentBuilder<T>;
|
|
6
6
|
configSchema(schema: IValidationSchema<T>): AsyncContextFluentBuilder<T>;
|
|
7
|
+
/**
|
|
8
|
+
* Alias for configSchema. Use this to define the context configuration validation contract.
|
|
9
|
+
*/
|
|
10
|
+
schema(schema: IValidationSchema<T>): AsyncContextFluentBuilder<T>;
|
|
7
11
|
meta<TNewMeta extends IAsyncContextMeta>(m: TNewMeta): AsyncContextFluentBuilder<T>;
|
|
8
12
|
build(): IAsyncContext<T>;
|
|
9
13
|
}
|
|
@@ -1,10 +1,17 @@
|
|
|
1
|
-
import type { DefaultErrorType, IErrorMeta, IValidationSchema, IErrorHelper } from "../../../defs";
|
|
1
|
+
import type { DefaultErrorType, IErrorMeta, IValidationSchema, IErrorHelper, TagType } from "../../../defs";
|
|
2
2
|
export interface ErrorFluentBuilder<TData extends DefaultErrorType = DefaultErrorType> {
|
|
3
3
|
id: string;
|
|
4
4
|
httpCode(code: number): ErrorFluentBuilder<TData>;
|
|
5
5
|
serialize(fn: (data: TData) => string): ErrorFluentBuilder<TData>;
|
|
6
6
|
parse(fn: (raw: string) => TData): ErrorFluentBuilder<TData>;
|
|
7
7
|
dataSchema(schema: IValidationSchema<TData>): ErrorFluentBuilder<TData>;
|
|
8
|
+
/**
|
|
9
|
+
* Alias for dataSchema. Use this to define the error data validation contract.
|
|
10
|
+
*/
|
|
11
|
+
schema(schema: IValidationSchema<TData>): ErrorFluentBuilder<TData>;
|
|
12
|
+
tags<TNewTags extends TagType[]>(t: TNewTags, options?: {
|
|
13
|
+
override?: boolean;
|
|
14
|
+
}): ErrorFluentBuilder<TData>;
|
|
8
15
|
build(): IErrorHelper<TData>;
|
|
9
16
|
format(fn: (data: TData) => string): ErrorFluentBuilder<TData>;
|
|
10
17
|
/**
|
|
@@ -15,6 +15,7 @@ export declare function errorBuilder<TData extends DefaultErrorType = DefaultErr
|
|
|
15
15
|
* @returns true if the error is a RunnerError instance
|
|
16
16
|
*/
|
|
17
17
|
declare function isRunnerError(error: unknown): error is RunnerError;
|
|
18
|
+
declare function isRunnerError(error: unknown, partialData: Partial<DefaultErrorType>): error is RunnerError;
|
|
18
19
|
export declare const error: typeof errorBuilder & {
|
|
19
20
|
is: typeof isRunnerError;
|
|
20
21
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { DefaultErrorType, IErrorMeta, IValidationSchema } from "../../../defs";
|
|
1
|
+
import type { DefaultErrorType, IErrorMeta, IValidationSchema, TagType } from "../../../defs";
|
|
2
2
|
/**
|
|
3
3
|
* Internal state for the ErrorFluentBuilder.
|
|
4
4
|
* Kept immutable and frozen.
|
|
@@ -13,4 +13,5 @@ export type BuilderState<TData extends DefaultErrorType> = Readonly<{
|
|
|
13
13
|
parse?: (raw: string) => TData;
|
|
14
14
|
dataSchema?: IValidationSchema<TData>;
|
|
15
15
|
meta?: IErrorMeta;
|
|
16
|
+
tags?: TagType[];
|
|
16
17
|
}>;
|
|
@@ -4,3 +4,4 @@ import type { BuilderState } from "./types";
|
|
|
4
4
|
* Clones and patches the builder state immutably.
|
|
5
5
|
*/
|
|
6
6
|
export declare function clone<TData extends DefaultErrorType>(s: BuilderState<TData>, patch: Partial<BuilderState<TData>>): BuilderState<TData>;
|
|
7
|
+
export { mergeArray } from "../shared/mergeUtils";
|
|
@@ -1,10 +1,20 @@
|
|
|
1
1
|
import type { IEvent, IEventMeta, IValidationSchema, TagType } from "../../../defs";
|
|
2
|
+
import type { ThrowsList } from "../../../types/error";
|
|
2
3
|
export interface EventFluentBuilder<TPayload = void> {
|
|
3
4
|
id: string;
|
|
4
5
|
payloadSchema<TNew>(schema: IValidationSchema<TNew>): EventFluentBuilder<TNew>;
|
|
6
|
+
/**
|
|
7
|
+
* Alias for payloadSchema. Use this to define the event payload validation contract.
|
|
8
|
+
*/
|
|
9
|
+
schema<TNew>(schema: IValidationSchema<TNew>): EventFluentBuilder<TNew>;
|
|
5
10
|
tags<TNewTags extends TagType[]>(t: TNewTags, options?: {
|
|
6
11
|
override?: boolean;
|
|
7
12
|
}): EventFluentBuilder<TPayload>;
|
|
13
|
+
/**
|
|
14
|
+
* Declare errors that hooks assigned to this event might throw.
|
|
15
|
+
* This is for documentation purposes only.
|
|
16
|
+
*/
|
|
17
|
+
throws(list: ThrowsList): EventFluentBuilder<TPayload>;
|
|
8
18
|
meta<TNewMeta extends IEventMeta>(m: TNewMeta): EventFluentBuilder<TPayload>;
|
|
9
19
|
/**
|
|
10
20
|
* Enable parallel execution for this event's listeners.
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { DependencyMapType, IEventDefinition, IHook, IHookDefinition, ITaskMeta, TagType } from "../../../defs";
|
|
2
|
+
import type { ThrowsList } from "../../../types/error";
|
|
2
3
|
/** Valid event targets for hook's .on() method */
|
|
3
4
|
export type ValidOnTarget = "*" | IEventDefinition<any> | readonly IEventDefinition<any>[];
|
|
4
5
|
/** Resolved TOn when valid, or `any` when undefined (build will throw at runtime) */
|
|
@@ -17,6 +18,8 @@ export interface HookFluentBuilder<TDeps extends DependencyMapType = {}, TOn ext
|
|
|
17
18
|
override?: boolean;
|
|
18
19
|
}): HookFluentBuilder<TDeps, TOn, TMeta>;
|
|
19
20
|
meta<TNewMeta extends ITaskMeta>(m: TNewMeta): HookFluentBuilder<TDeps, TOn, TNewMeta>;
|
|
21
|
+
/** Declare which typed errors this hook may throw (declarative only). */
|
|
22
|
+
throws(list: ThrowsList): HookFluentBuilder<TDeps, TOn, TMeta>;
|
|
20
23
|
/** Set the hook's run handler. Required before build(). */
|
|
21
24
|
run(fn: IHookDefinition<TDeps, ResolvedOn<TOn>, TMeta>["run"]): HookFluentBuilder<TDeps, TOn, TMeta>;
|
|
22
25
|
/**
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { DependencyMapType, IEventDefinition, IHookDefinition, ITaskMeta } from "../../../defs";
|
|
2
|
+
import type { ThrowsList } from "../../../types/error";
|
|
2
3
|
/**
|
|
3
4
|
* Internal state for the HookFluentBuilder.
|
|
4
5
|
* Kept immutable and frozen.
|
|
@@ -11,4 +12,6 @@ export type BuilderState<TDeps extends DependencyMapType, TOn extends "*" | IEve
|
|
|
11
12
|
on: TOn;
|
|
12
13
|
/** Hook handler function. Required before build(). */
|
|
13
14
|
run: IHookDefinition<TDeps, NonNullable<TOn>, TMeta>["run"] | undefined;
|
|
15
|
+
/** Declarative error contract. */
|
|
16
|
+
throws?: ThrowsList;
|
|
14
17
|
}>;
|
|
@@ -10,10 +10,12 @@ export * from "./utils";
|
|
|
10
10
|
/**
|
|
11
11
|
* Entry point for creating a task middleware builder.
|
|
12
12
|
*/
|
|
13
|
-
export declare function taskMiddlewareBuilder<
|
|
13
|
+
export declare function taskMiddlewareBuilder<In = void>(id: string): TaskMiddlewareFluentBuilder<void, In, void, {}>;
|
|
14
|
+
export declare function taskMiddlewareBuilder<C, In, Out = void, D extends DependencyMapType = {}>(id: string): TaskMiddlewareFluentBuilder<C, In, Out, D>;
|
|
14
15
|
/**
|
|
15
16
|
* Entry point for creating a resource middleware builder.
|
|
16
17
|
*/
|
|
17
|
-
export declare function resourceMiddlewareBuilder<C = void
|
|
18
|
+
export declare function resourceMiddlewareBuilder<C = void>(id: string): ResourceMiddlewareFluentBuilder<C, void, void, {}>;
|
|
19
|
+
export declare function resourceMiddlewareBuilder<C, In, Out = void, D extends DependencyMapType = {}>(id: string): ResourceMiddlewareFluentBuilder<C, In, Out, D>;
|
|
18
20
|
export declare const taskMiddleware: typeof taskMiddlewareBuilder;
|
|
19
21
|
export declare const resourceMiddleware: typeof resourceMiddlewareBuilder;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { DependencyMapType, IResource, IResourceMiddleware, IResourceMiddlewareDefinition, IValidationSchema, IMiddlewareMeta, TagType } from "../../../defs";
|
|
2
|
+
import type { ThrowsList } from "../../../types/error";
|
|
2
3
|
export interface ResourceMiddlewareFluentBuilder<C = any, In = void, Out = void, D extends DependencyMapType = {}> {
|
|
3
4
|
id: string;
|
|
4
5
|
dependencies<TNewDeps extends DependencyMapType>(deps: TNewDeps | ((config: C) => TNewDeps), options?: {
|
|
@@ -8,11 +9,17 @@ export interface ResourceMiddlewareFluentBuilder<C = any, In = void, Out = void,
|
|
|
8
9
|
override: true;
|
|
9
10
|
}): ResourceMiddlewareFluentBuilder<C, In, Out, TNewDeps>;
|
|
10
11
|
configSchema<TNew>(schema: IValidationSchema<TNew>): ResourceMiddlewareFluentBuilder<TNew, In, Out, D>;
|
|
12
|
+
/**
|
|
13
|
+
* Alias for configSchema. Use this to define the middleware configuration validation contract.
|
|
14
|
+
*/
|
|
15
|
+
schema<TNew>(schema: IValidationSchema<TNew>): ResourceMiddlewareFluentBuilder<TNew, In, Out, D>;
|
|
11
16
|
run(fn: IResourceMiddlewareDefinition<C, In, Out, D>["run"]): ResourceMiddlewareFluentBuilder<C, In, Out, D>;
|
|
12
17
|
meta<TNewMeta extends IMiddlewareMeta>(m: TNewMeta): ResourceMiddlewareFluentBuilder<C, In, Out, D>;
|
|
13
18
|
tags<TNewTags extends TagType[]>(t: TNewTags, options?: {
|
|
14
19
|
override?: boolean;
|
|
15
20
|
}): ResourceMiddlewareFluentBuilder<C, In, Out, D>;
|
|
21
|
+
/** Declare which typed errors this middleware may throw (declarative only). */
|
|
22
|
+
throws(list: ThrowsList): ResourceMiddlewareFluentBuilder<C, In, Out, D>;
|
|
16
23
|
everywhere(flag: boolean | ((resource: IResource<any, any, any, any, any>) => boolean)): ResourceMiddlewareFluentBuilder<C, In, Out, D>;
|
|
17
24
|
build(): IResourceMiddleware<C, In, Out, D>;
|
|
18
25
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { DependencyMapType, ITask, ITaskMiddleware, ITaskMiddlewareDefinition, IValidationSchema, IMiddlewareMeta, TagType } from "../../../defs";
|
|
2
|
+
import type { ThrowsList } from "../../../types/error";
|
|
2
3
|
export interface TaskMiddlewareFluentBuilder<C = any, In = void, Out = void, D extends DependencyMapType = {}> {
|
|
3
4
|
id: string;
|
|
4
5
|
dependencies<TNewDeps extends DependencyMapType>(deps: TNewDeps | ((config: C) => TNewDeps), options?: {
|
|
@@ -8,11 +9,17 @@ export interface TaskMiddlewareFluentBuilder<C = any, In = void, Out = void, D e
|
|
|
8
9
|
override: true;
|
|
9
10
|
}): TaskMiddlewareFluentBuilder<C, In, Out, TNewDeps>;
|
|
10
11
|
configSchema<TNew>(schema: IValidationSchema<TNew>): TaskMiddlewareFluentBuilder<TNew, In, Out, D>;
|
|
12
|
+
/**
|
|
13
|
+
* Alias for configSchema. Use this to define the middleware configuration validation contract.
|
|
14
|
+
*/
|
|
15
|
+
schema<TNew>(schema: IValidationSchema<TNew>): TaskMiddlewareFluentBuilder<TNew, In, Out, D>;
|
|
11
16
|
run(fn: ITaskMiddlewareDefinition<C, In, Out, D>["run"]): TaskMiddlewareFluentBuilder<C, In, Out, D>;
|
|
12
17
|
meta<TNewMeta extends IMiddlewareMeta>(m: TNewMeta): TaskMiddlewareFluentBuilder<C, In, Out, D>;
|
|
13
18
|
tags<TNewTags extends TagType[]>(t: TNewTags, options?: {
|
|
14
19
|
override?: boolean;
|
|
15
20
|
}): TaskMiddlewareFluentBuilder<C, In, Out, D>;
|
|
21
|
+
/** Declare which typed errors this middleware may throw (declarative only). */
|
|
22
|
+
throws(list: ThrowsList): TaskMiddlewareFluentBuilder<C, In, Out, D>;
|
|
16
23
|
everywhere(flag: boolean | ((task: ITask<any, any, any, any>) => boolean)): TaskMiddlewareFluentBuilder<C, In, Out, D>;
|
|
17
24
|
build(): ITaskMiddleware<C, In, Out, D>;
|
|
18
25
|
}
|
|
@@ -1,13 +1,32 @@
|
|
|
1
|
-
import type { DependencyMapType, ITaskMiddlewareDefinition, IResourceMiddlewareDefinition } from "../../../defs";
|
|
1
|
+
import type { DependencyMapType, IValidationSchema, IMiddlewareMeta, TagType, ITaskMiddlewareDefinition, IResourceMiddlewareDefinition } from "../../../defs";
|
|
2
|
+
import type { ThrowsList } from "../../../types/error";
|
|
2
3
|
/**
|
|
3
4
|
* Internal state for the TaskMiddlewareFluentBuilder.
|
|
4
5
|
*/
|
|
5
|
-
export type TaskMwState<C, In, Out, D extends DependencyMapType> = Readonly<
|
|
6
|
+
export type TaskMwState<C, In, Out, D extends DependencyMapType> = Readonly<{
|
|
7
|
+
id: string;
|
|
8
|
+
dependencies: D | ((config: C) => D);
|
|
9
|
+
configSchema: IValidationSchema<C> | undefined;
|
|
10
|
+
run: ITaskMiddlewareDefinition<any, In, Out, any>["run"] | undefined;
|
|
11
|
+
meta: IMiddlewareMeta;
|
|
12
|
+
tags: TagType[];
|
|
13
|
+
everywhere: ITaskMiddlewareDefinition<C, In, Out, D>["everywhere"];
|
|
6
14
|
filePath: string;
|
|
15
|
+
/** Declarative error contract. */
|
|
16
|
+
throws?: ThrowsList;
|
|
7
17
|
}>;
|
|
8
18
|
/**
|
|
9
19
|
* Internal state for the ResourceMiddlewareFluentBuilder.
|
|
10
20
|
*/
|
|
11
|
-
export type ResMwState<C, In, Out, D extends DependencyMapType> = Readonly<
|
|
21
|
+
export type ResMwState<C, In, Out, D extends DependencyMapType> = Readonly<{
|
|
22
|
+
id: string;
|
|
23
|
+
dependencies: D | ((config: C) => D);
|
|
24
|
+
configSchema: IValidationSchema<C> | undefined;
|
|
25
|
+
run: IResourceMiddlewareDefinition<any, In, Out, any>["run"] | undefined;
|
|
26
|
+
meta: IMiddlewareMeta;
|
|
27
|
+
tags: TagType[];
|
|
28
|
+
everywhere: IResourceMiddlewareDefinition<C, In, Out, D>["everywhere"];
|
|
12
29
|
filePath: string;
|
|
30
|
+
/** Declarative error contract. */
|
|
31
|
+
throws?: ThrowsList;
|
|
13
32
|
}>;
|
|
@@ -4,10 +4,12 @@ import type { TaskMwState, ResMwState } from "./types";
|
|
|
4
4
|
* Clones and patches the Task middleware state immutably.
|
|
5
5
|
*/
|
|
6
6
|
export declare function cloneTask<C, In, Out, D extends DependencyMapType>(s: TaskMwState<C, In, Out, D>, patch: Partial<TaskMwState<C, In, Out, D>>): TaskMwState<C, In, Out, D>;
|
|
7
|
+
export declare function cloneTask<C, In, Out, D extends DependencyMapType, TNextConfig, TNextIn, TNextOut, TNextDeps extends DependencyMapType>(s: TaskMwState<C, In, Out, D>, patch: Partial<TaskMwState<TNextConfig, TNextIn, TNextOut, TNextDeps>>): TaskMwState<TNextConfig, TNextIn, TNextOut, TNextDeps>;
|
|
7
8
|
/**
|
|
8
9
|
* Clones and patches the Resource middleware state immutably.
|
|
9
10
|
*/
|
|
10
11
|
export declare function cloneRes<C, In, Out, D extends DependencyMapType>(s: ResMwState<C, In, Out, D>, patch: Partial<ResMwState<C, In, Out, D>>): ResMwState<C, In, Out, D>;
|
|
12
|
+
export declare function cloneRes<C, In, Out, D extends DependencyMapType, TNextConfig, TNextIn, TNextOut, TNextDeps extends DependencyMapType>(s: ResMwState<C, In, Out, D>, patch: Partial<ResMwState<TNextConfig, TNextIn, TNextOut, TNextDeps>>): ResMwState<TNextConfig, TNextIn, TNextOut, TNextDeps>;
|
|
11
13
|
export { mergeArray } from "../shared/mergeUtils";
|
|
12
14
|
/**
|
|
13
15
|
* Merges dependencies handling all combinations of objects and functions.
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { DependencyMapType, IEventDefinition, IHook, IHookDefinition, ITaskMeta, TagType } from "../../../defs";
|
|
2
|
+
import type { ThrowsList } from "../../../types/error";
|
|
2
3
|
export type HookOn = "*" | IEventDefinition<any> | readonly IEventDefinition<any>[];
|
|
3
4
|
export interface HookOverrideBuilder<TDeps extends DependencyMapType, TOn extends HookOn, TMeta extends ITaskMeta> {
|
|
4
5
|
id: string;
|
|
@@ -11,6 +12,8 @@ export interface HookOverrideBuilder<TDeps extends DependencyMapType, TOn extend
|
|
|
11
12
|
}): HookOverrideBuilder<TDeps, TOn, TMeta>;
|
|
12
13
|
meta<TNewMeta extends ITaskMeta>(m: TNewMeta): HookOverrideBuilder<TDeps, TOn, TNewMeta>;
|
|
13
14
|
run(fn: IHookDefinition<TDeps, TOn, TMeta>["run"]): HookOverrideBuilder<TDeps, TOn, TMeta>;
|
|
15
|
+
/** Declare which typed errors this hook may throw (declarative only). */
|
|
16
|
+
throws(list: ThrowsList): HookOverrideBuilder<TDeps, TOn, TMeta>;
|
|
14
17
|
build(): IHook<TDeps, TOn, TMeta>;
|
|
15
18
|
}
|
|
16
19
|
export declare function hookOverrideBuilder<TDeps extends DependencyMapType, TOn extends HookOn, TMeta extends ITaskMeta>(base: IHook<TDeps, TOn, TMeta>): HookOverrideBuilder<TDeps, TOn, TMeta>;
|
|
@@ -5,7 +5,12 @@ import type { ResourceMiddlewareFluentBuilder } from "../middleware/resource.int
|
|
|
5
5
|
import type { TaskMiddlewareFluentBuilder } from "../middleware/task.interface";
|
|
6
6
|
import type { HookOn, HookOverrideBuilder } from "./hook";
|
|
7
7
|
export declare function override<TInput, TOutput extends Promise<any>, TDeps extends DependencyMapType, TMeta extends ITaskMeta, TTags extends TagType[], TMiddleware extends TaskMiddlewareAttachmentType[]>(base: ITask<TInput, TOutput, TDeps, TMeta, TTags, TMiddleware>): TaskFluentBuilder<TInput, TOutput, TDeps, TMeta, TTags, TMiddleware>;
|
|
8
|
+
export declare function override<TInput, TOutput extends Promise<any>, TDeps extends DependencyMapType, TMeta extends ITaskMeta, TTags extends TagType[], TMiddleware extends TaskMiddlewareAttachmentType[]>(base: ITask<TInput, TOutput, TDeps, TMeta, TTags, TMiddleware>, run: ITask<TInput, TOutput, TDeps, TMeta, TTags, TMiddleware>["run"]): ITask<TInput, TOutput, TDeps, TMeta, TTags, TMiddleware>;
|
|
8
9
|
export declare function override<TConfig, TValue extends Promise<any>, TDeps extends DependencyMapType, TContext, TMeta extends IResourceMeta, TTags extends TagType[], TMiddleware extends ResourceMiddlewareAttachmentType[]>(base: IResource<TConfig, TValue, TDeps, TContext, TMeta, TTags, TMiddleware>): ResourceFluentBuilder<TConfig, TValue, TDeps, TContext, TMeta, TTags, TMiddleware>;
|
|
10
|
+
export declare function override<TConfig, TValue extends Promise<any>, TDeps extends DependencyMapType, TContext, TMeta extends IResourceMeta, TTags extends TagType[], TMiddleware extends ResourceMiddlewareAttachmentType[]>(base: IResource<TConfig, TValue, TDeps, TContext, TMeta, TTags, TMiddleware>, init: NonNullable<IResource<TConfig, TValue, TDeps, TContext, TMeta, TTags, TMiddleware>["init"]>): IResource<TConfig, TValue, TDeps, TContext, TMeta, TTags, TMiddleware>;
|
|
9
11
|
export declare function override<TDeps extends DependencyMapType, TOn extends HookOn, TMeta extends ITaskMeta>(base: IHook<TDeps, TOn, TMeta>): HookOverrideBuilder<TDeps, TOn, TMeta>;
|
|
12
|
+
export declare function override<TDeps extends DependencyMapType, TOn extends HookOn, TMeta extends ITaskMeta>(base: IHook<TDeps, TOn, TMeta>, run: IHook<TDeps, TOn, TMeta>["run"]): IHook<TDeps, TOn, TMeta>;
|
|
10
13
|
export declare function override<C, In, Out, D extends DependencyMapType>(base: ITaskMiddleware<C, In, Out, D>): TaskMiddlewareFluentBuilder<C, In, Out, D>;
|
|
14
|
+
export declare function override<C, In, Out, D extends DependencyMapType>(base: ITaskMiddleware<C, In, Out, D>, run: ITaskMiddleware<C, In, Out, D>["run"]): ITaskMiddleware<C, In, Out, D>;
|
|
11
15
|
export declare function override<C, In, Out, D extends DependencyMapType>(base: IResourceMiddleware<C, In, Out, D>): ResourceMiddlewareFluentBuilder<C, In, Out, D>;
|
|
16
|
+
export declare function override<C, In, Out, D extends DependencyMapType>(base: IResourceMiddleware<C, In, Out, D>, run: IResourceMiddleware<C, In, Out, D>["run"]): IResourceMiddleware<C, In, Out, D>;
|
|
@@ -30,11 +30,26 @@ export interface ResourceFluentBuilder<TConfig = void, TValue extends Promise<an
|
|
|
30
30
|
}): ResourceFluentBuilder<TConfig, TValue, TDeps, TContext, TMeta, TNewTags, TMiddleware>;
|
|
31
31
|
context<TNewCtx>(factory: () => TNewCtx): ResourceFluentBuilder<TConfig, TValue, TDeps, TNewCtx, TMeta, TTags, TMiddleware>;
|
|
32
32
|
configSchema<TNewConfig>(schema: IValidationSchema<TNewConfig>): ResourceFluentBuilder<TNewConfig, TValue, TDeps, TContext, TMeta, TTags, TMiddleware>;
|
|
33
|
+
/**
|
|
34
|
+
* Alias for configSchema. Use this to define the resource configuration validation contract.
|
|
35
|
+
*/
|
|
36
|
+
schema<TNewConfig>(schema: IValidationSchema<TNewConfig>): ResourceFluentBuilder<TNewConfig, TValue, TDeps, TContext, TMeta, TTags, TMiddleware>;
|
|
33
37
|
resultSchema<TResolved>(schema: IValidationSchema<TResolved>): ResourceFluentBuilder<TConfig, Promise<TResolved>, TDeps, TContext, TMeta, TTags, TMiddleware>;
|
|
34
38
|
init<TNewConfig = TConfig, TNewValue extends Promise<any> = TValue>(fn: ResourceInitFn<ResolveConfig<TConfig, TNewConfig>, TNewValue, TDeps, TContext, TMeta, TTags, TMiddleware>): ResourceFluentBuilder<ResolveConfig<TConfig, TNewConfig>, TNewValue, TDeps, TContext, TMeta, TTags, TMiddleware>;
|
|
35
39
|
dispose(fn: NonNullable<IResourceDefinition<TConfig, TValue, TDeps, TContext, any, any, TMeta, TTags, TMiddleware>["dispose"]>): ResourceFluentBuilder<TConfig, TValue, TDeps, TContext, TMeta, TTags, TMiddleware>;
|
|
36
40
|
meta<TNewMeta extends IResourceMeta>(m: TNewMeta): ResourceFluentBuilder<TConfig, TValue, TDeps, TContext, TNewMeta, TTags, TMiddleware>;
|
|
37
41
|
throws(list: ThrowsList): ResourceFluentBuilder<TConfig, TValue, TDeps, TContext, TMeta, TTags, TMiddleware>;
|
|
42
|
+
/**
|
|
43
|
+
* Declares which registered items are visible outside this resource's
|
|
44
|
+
* registration subtree. When present, only listed items can be referenced
|
|
45
|
+
* from outside. Omitting `.exports()` = everything is public.
|
|
46
|
+
*
|
|
47
|
+
* Follows standard composition rules: appends by default, replaces
|
|
48
|
+
* when `{ override: true }` is passed.
|
|
49
|
+
*/
|
|
50
|
+
exports(items: Array<RegisterableItems>, options?: {
|
|
51
|
+
override?: boolean;
|
|
52
|
+
}): ResourceFluentBuilder<TConfig, TValue, TDeps, TContext, TMeta, TTags, TMiddleware>;
|
|
38
53
|
overrides(o: Array<OverridableElements>, options?: {
|
|
39
54
|
override?: boolean;
|
|
40
55
|
}): ResourceFluentBuilder<TConfig, TValue, TDeps, TContext, TMeta, TTags, TMiddleware>;
|
|
@@ -4,7 +4,6 @@ export type { ResourceFluentBuilder } from "./fluent-builder.interface";
|
|
|
4
4
|
export * from "./types";
|
|
5
5
|
/**
|
|
6
6
|
* Creates a new resource builder with the given id.
|
|
7
|
-
* Overload allows callers to seed the config type at the entry point for convenience.
|
|
8
7
|
*/
|
|
9
8
|
export declare function resourceBuilder<TConfig = void>(id: string): ResourceFluentBuilder<TConfig, Promise<any>, {}, any, IResourceMeta, TagType[], ResourceMiddlewareAttachmentType[]>;
|
|
10
9
|
/**
|
|
@@ -3,6 +3,10 @@ export interface TagFluentBuilder<TConfig = void, TEnforceIn = void, TEnforceOut
|
|
|
3
3
|
id: string;
|
|
4
4
|
meta<TNewMeta extends ITagMeta>(m: TNewMeta): TagFluentBuilder<TConfig, TEnforceIn, TEnforceOut>;
|
|
5
5
|
configSchema<TNewConfig>(schema: IValidationSchema<TNewConfig>): TagFluentBuilder<TNewConfig, TEnforceIn, TEnforceOut>;
|
|
6
|
+
/**
|
|
7
|
+
* Alias for configSchema. Use this to define the tag configuration validation contract.
|
|
8
|
+
*/
|
|
9
|
+
schema<TNewConfig>(schema: IValidationSchema<TNewConfig>): TagFluentBuilder<TNewConfig, TEnforceIn, TEnforceOut>;
|
|
6
10
|
config<TNewConfig>(config: TNewConfig): TagFluentBuilder<TNewConfig, TEnforceIn, TEnforceOut>;
|
|
7
11
|
build(): ITag<TConfig, TEnforceIn, TEnforceOut>;
|
|
8
12
|
}
|
|
@@ -3,3 +3,4 @@ import type { BuilderState } from "./types";
|
|
|
3
3
|
* Clones and patches the builder state immutably.
|
|
4
4
|
*/
|
|
5
5
|
export declare function clone<TConfig, TEnforceIn, TEnforceOut, TNextConfig = TConfig>(s: BuilderState<TConfig, TEnforceIn, TEnforceOut>, patch: Partial<BuilderState<TNextConfig, TEnforceIn, TEnforceOut>>): BuilderState<TNextConfig, TEnforceIn, TEnforceOut>;
|
|
6
|
+
export { mergeArray } from "../shared/mergeUtils";
|
|
@@ -25,6 +25,10 @@ export interface TaskFluentBuilder<TInput = undefined, TOutput extends Promise<a
|
|
|
25
25
|
override: true;
|
|
26
26
|
}): TaskFluentBuilder<TInput, TOutput, TDeps, TMeta, TNewTags, TMiddleware>;
|
|
27
27
|
inputSchema<TNewInput>(schema: IValidationSchema<TNewInput>): TaskFluentBuilder<TNewInput, TOutput, TDeps, TMeta, TTags, TMiddleware>;
|
|
28
|
+
/**
|
|
29
|
+
* Alias for inputSchema. Use this to define the task input validation contract.
|
|
30
|
+
*/
|
|
31
|
+
schema<TNewInput>(schema: IValidationSchema<TNewInput>): TaskFluentBuilder<TNewInput, TOutput, TDeps, TMeta, TTags, TMiddleware>;
|
|
28
32
|
resultSchema<TResolved>(schema: IValidationSchema<TResolved>): TaskFluentBuilder<TInput, Promise<TResolved>, TDeps, TMeta, TTags, TMiddleware>;
|
|
29
33
|
run<TNewInput = TInput, TNewOutput extends Promise<any> = TOutput>(fn: NonNullable<ITaskDefinition<ResolveInput<TInput, TNewInput>, TNewOutput, TDeps, TMeta, TTags, TMiddleware>["run"]>): TaskFluentBuilder<ResolveInput<TInput, TNewInput>, TNewOutput, TDeps, TMeta, TTags, TMiddleware>;
|
|
30
34
|
throws(list: ThrowsList): TaskFluentBuilder<TInput, TOutput, TDeps, TMeta, TTags, TMiddleware>;
|
|
@@ -9,13 +9,13 @@ export * from "./types";
|
|
|
9
9
|
/**
|
|
10
10
|
* Entry point for creating a task builder.
|
|
11
11
|
*/
|
|
12
|
-
export declare function taskBuilder(id: string): TaskFluentBuilder<
|
|
12
|
+
export declare function taskBuilder<TInput = undefined>(id: string): TaskFluentBuilder<TInput, Promise<any>, {}, ITaskMeta, TagType[], TaskMiddlewareAttachmentType[]>;
|
|
13
13
|
/**
|
|
14
14
|
* Entry point for creating a phantom task builder.
|
|
15
15
|
*/
|
|
16
16
|
export declare function phantomTaskBuilder<TInput = undefined, TResolved = any>(id: string): PhantomTaskFluentBuilder<TInput, TResolved, {}, ITaskMeta, TagType[], TaskMiddlewareAttachmentType[]>;
|
|
17
17
|
export interface TaskBuilderWithPhantom {
|
|
18
|
-
(id: string): TaskFluentBuilder<
|
|
18
|
+
<TInput = undefined>(id: string): TaskFluentBuilder<TInput, Promise<any>, {}, ITaskMeta, TagType[], TaskMiddlewareAttachmentType[]>;
|
|
19
19
|
phantom: typeof phantomTaskBuilder;
|
|
20
20
|
}
|
|
21
21
|
export declare const task: TaskBuilderWithPhantom;
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import type { DependencyMapType } from "../../defs";
|
|
2
|
-
|
|
2
|
+
type CloneStatePatch<S, NS> = Partial<NS> & Pick<NS, Exclude<keyof NS, keyof S>>;
|
|
3
|
+
/**
|
|
4
|
+
* Freeze and return a new state where `patch` can only omit keys already present in `s`.
|
|
5
|
+
* This guarantees required keys introduced by `NS` are provided by the patch.
|
|
6
|
+
*/
|
|
7
|
+
export declare function cloneState<S extends Partial<NS>, NS extends object>(s: S, patch: CloneStatePatch<S, NS>): NS;
|
|
3
8
|
export { mergeArray } from "./shared/mergeUtils";
|
|
4
9
|
export declare function mergeDepsNoConfig<TExisting extends DependencyMapType, TNew extends DependencyMapType>(existing: TExisting | (() => TExisting) | undefined, addition: TNew | (() => TNew), override: boolean): (TExisting & TNew) | (() => TExisting & TNew);
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
import { DefaultErrorType, IErrorDefinition, IErrorHelper, IErrorDefinitionFinal } from "../types/error";
|
|
1
|
+
import { DefaultErrorType, ErrorThrowArgs, IErrorDefinition, IErrorHelper, IErrorDefinitionFinal } from "../types/error";
|
|
2
|
+
import type { IErrorMeta } from "../types/meta";
|
|
3
|
+
import type { TagType } from "../types/tag";
|
|
2
4
|
import { symbolError, symbolFilePath, symbolOptionalDependency } from "../types/symbols";
|
|
5
|
+
export declare const matchesRunnerErrorData: <TData extends DefaultErrorType = DefaultErrorType>(data: TData, partialData?: Partial<TData>) => boolean;
|
|
3
6
|
export declare class RunnerError<TData extends DefaultErrorType = DefaultErrorType> extends Error {
|
|
4
7
|
readonly id: string;
|
|
5
8
|
readonly data: TData;
|
|
@@ -14,8 +17,15 @@ export declare class ErrorHelper<TData extends DefaultErrorType = DefaultErrorTy
|
|
|
14
17
|
constructor(definition: IErrorDefinitionFinal<TData>, filePath: string);
|
|
15
18
|
get id(): string;
|
|
16
19
|
get httpCode(): number | undefined;
|
|
17
|
-
|
|
20
|
+
get tags(): TagType[];
|
|
21
|
+
get meta(): IErrorMeta;
|
|
22
|
+
private buildRunnerError;
|
|
23
|
+
["new"](...args: ErrorThrowArgs<TData>): RunnerError<TData>;
|
|
24
|
+
/** @deprecated use .new() or .throw() for better DX */
|
|
25
|
+
create(...args: ErrorThrowArgs<TData>): RunnerError<TData>;
|
|
26
|
+
throw(...args: ErrorThrowArgs<TData>): never;
|
|
18
27
|
is(error: unknown): error is RunnerError<TData>;
|
|
28
|
+
is(error: unknown, partialData: Partial<TData>): error is RunnerError<TData>;
|
|
19
29
|
optional(): {
|
|
20
30
|
readonly inner: IErrorHelper<TData>;
|
|
21
31
|
readonly [symbolOptionalDependency]: true;
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { DependencyMapType, RegisterableItems, ResourceForkOptions } from "../types/resource";
|
|
2
|
-
export type ResourceRegisterList = Array<RegisterableItems> |
|
|
2
|
+
export type ResourceRegisterList = Array<RegisterableItems> | {
|
|
3
|
+
bivarianceHack(config: unknown): Array<RegisterableItems>;
|
|
4
|
+
}["bivarianceHack"] | undefined;
|
|
3
5
|
type DependenciesList<TConfig, TDeps extends DependencyMapType> = TDeps | ((config: TConfig) => TDeps) | undefined;
|
|
4
6
|
export declare function resolveForkedRegisterAndDependencies<TConfig, TDeps extends DependencyMapType>(params: {
|
|
5
7
|
register: ResourceRegisterList;
|
|
@@ -9,45 +9,45 @@ import type { IAsyncContext } from "../types/asyncContext";
|
|
|
9
9
|
* @param definition - Any value to test.
|
|
10
10
|
* @returns True when `definition` is a branded Task.
|
|
11
11
|
*/
|
|
12
|
-
export declare function isTask(definition:
|
|
12
|
+
export declare function isTask(definition: unknown): definition is ITask;
|
|
13
13
|
/** Type guard: checks if a definition is a Phantom Task. */
|
|
14
|
-
export declare function isPhantomTask(definition:
|
|
14
|
+
export declare function isPhantomTask(definition: unknown): definition is IPhantomTask;
|
|
15
15
|
/**
|
|
16
16
|
* Type guard: checks if a definition is a Resource.
|
|
17
17
|
* @param definition - Any value to test.
|
|
18
18
|
* @returns True when `definition` is a branded Resource.
|
|
19
19
|
*/
|
|
20
|
-
export declare function isResource(definition:
|
|
20
|
+
export declare function isResource(definition: unknown): definition is IResource;
|
|
21
21
|
/**
|
|
22
22
|
* Type guard: checks if a definition is a Resource that carries config via `.with()`.
|
|
23
23
|
* @param definition - Any value to test.
|
|
24
24
|
* @returns True when `definition` is a branded ResourceWithConfig.
|
|
25
25
|
*/
|
|
26
|
-
export declare function isResourceWithConfig(definition:
|
|
26
|
+
export declare function isResourceWithConfig(definition: unknown): definition is IResourceWithConfig;
|
|
27
27
|
/**
|
|
28
28
|
* Type guard: checks if a definition is an Event.
|
|
29
29
|
* @param definition - Any value to test.
|
|
30
30
|
* @returns True when `definition` is a branded Event.
|
|
31
31
|
*/
|
|
32
|
-
export declare function isEvent(definition:
|
|
32
|
+
export declare function isEvent(definition: unknown): definition is IEvent;
|
|
33
33
|
/** Type guard: checks if a definition is a Hook. */
|
|
34
|
-
export declare function isHook(definition:
|
|
34
|
+
export declare function isHook(definition: unknown): definition is IHook;
|
|
35
35
|
/**
|
|
36
36
|
* Type guard: checks if a definition is a Middleware.
|
|
37
37
|
* @param definition - Any value to test.
|
|
38
38
|
* @returns True when `definition` is a branded Middleware.
|
|
39
39
|
*/
|
|
40
|
-
export declare function isTaskMiddleware(definition:
|
|
41
|
-
export declare function isResourceMiddleware(definition:
|
|
40
|
+
export declare function isTaskMiddleware(definition: unknown): definition is ITaskMiddleware;
|
|
41
|
+
export declare function isResourceMiddleware(definition: unknown): definition is IResourceMiddleware;
|
|
42
42
|
/**
|
|
43
43
|
* Type guard: checks if a definition is a Tag.
|
|
44
44
|
* @param definition - Any value to test.
|
|
45
45
|
* @returns True when `definition` is a branded Tag.
|
|
46
46
|
*/
|
|
47
|
-
export declare function isTag(definition:
|
|
47
|
+
export declare function isTag(definition: unknown): definition is ITag;
|
|
48
48
|
/** Type guard: checks if a definition is an Optional Dependency wrapper. */
|
|
49
|
-
export declare function isOptional(definition:
|
|
49
|
+
export declare function isOptional(definition: unknown): definition is IOptionalDependency<any>;
|
|
50
50
|
/** Type guard: checks if a definition is an Error helper. */
|
|
51
|
-
export declare function isError(definition:
|
|
51
|
+
export declare function isError(definition: unknown): definition is IErrorHelper<any>;
|
|
52
52
|
/** Type guard: checks if a definition is an Async Context. */
|
|
53
|
-
export declare function isAsyncContext(definition:
|
|
53
|
+
export declare function isAsyncContext(definition: unknown): definition is IAsyncContext<any>;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export declare enum RunnerErrorId {
|
|
2
|
+
HttpBaseUrlRequired = "runner.errors.http.baseUrlRequired",
|
|
3
|
+
HttpFetchUnavailable = "runner.errors.http.fetchUnavailable",
|
|
4
|
+
HttpContextSerialization = "runner.errors.http.contextSerialization",
|
|
5
|
+
HttpEventWithResultUnavailable = "runner.errors.http.eventWithResultUnavailable",
|
|
6
|
+
HttpClientInputUnsupported = "runner.errors.http.clientInputUnsupported",
|
|
7
|
+
MiddlewareConcurrencyConflict = "runner.errors.middleware.concurrencyConflict",
|
|
8
|
+
MiddlewareContextRequired = "runner.errors.middleware.contextRequired",
|
|
9
|
+
MiddlewareTimeout = "runner.errors.middleware.timeout",
|
|
10
|
+
MiddlewareCircuitBreakerOpen = "runner.errors.middleware.circuitBreakerOpen",
|
|
11
|
+
MiddlewareRateLimitExceeded = "runner.errors.middleware.rateLimitExceeded",
|
|
12
|
+
MiddlewareTemporalDisposed = "runner.errors.middleware.temporalDisposed",
|
|
13
|
+
TunnelTaskNotFound = "runner.errors.middleware.tunnel.taskNotFound",
|
|
14
|
+
TunnelEventNotFound = "runner.errors.middleware.tunnel.eventNotFound",
|
|
15
|
+
TunnelClientContract = "runner.errors.middleware.tunnel.clientContract",
|
|
16
|
+
ResourceForkInvalidId = "runner.errors.resourceFork.invalidId",
|
|
17
|
+
BuilderInvalidHttpCode = "runner.errors.builder.invalidHttpCode",
|
|
18
|
+
OverrideUnsupportedBase = "runner.errors.override.unsupportedBase",
|
|
19
|
+
PlatformUnreachable = "runner.errors.platform.unreachable",
|
|
20
|
+
SerializerInvalidPayload = "runner.errors.serializer.invalidPayload",
|
|
21
|
+
SerializerValidation = "runner.errors.serializer.validation",
|
|
22
|
+
SerializerDepthExceeded = "runner.errors.serializer.depthExceeded",
|
|
23
|
+
SerializerReferenceResolution = "runner.errors.serializer.referenceResolution",
|
|
24
|
+
SerializerUnsupportedFeature = "runner.errors.serializer.unsupportedFeature",
|
|
25
|
+
SerializerTypeRegistry = "runner.errors.serializer.typeRegistry",
|
|
26
|
+
SerializerSymbolPolicy = "runner.errors.serializer.symbolPolicy",
|
|
27
|
+
NodeInputFileConsumed = "runner.errors.node.files.inputFileConsumed",
|
|
28
|
+
NodeInputFileUnavailable = "runner.errors.node.files.inputFileUnavailable",
|
|
29
|
+
NodeExposureMultipartLimitExceeded = "runner.errors.node.exposure.multipartLimitExceeded",
|
|
30
|
+
OptionalDependencyInvalidExport = "runner.errors.node.optionalDependency.invalidExport",
|
|
31
|
+
OptionalDependencyMissing = "runner.errors.node.optionalDependency.missing",
|
|
32
|
+
DurableStoreShape = "runner.errors.durable.storeShape",
|
|
33
|
+
DurableQueueNotInitialized = "runner.errors.durable.queueNotInitialized",
|
|
34
|
+
DurableContextCancelled = "runner.errors.durable.contextCancelled",
|
|
35
|
+
DurableStepDefinition = "runner.errors.durable.stepDefinition",
|
|
36
|
+
DurableDeterminismViolation = "runner.errors.durable.determinismViolation",
|
|
37
|
+
DurableSignalTimeout = "runner.errors.durable.signalTimeout",
|
|
38
|
+
DurableScheduleConfig = "runner.errors.durable.scheduleConfig",
|
|
39
|
+
DurableExecutionError = "runner.errors.durable.executionError",
|
|
40
|
+
DurableExecutionInvariant = "runner.errors.durable.executionInvariant",
|
|
41
|
+
DurableOperatorUnsupportedStoreCapability = "runner.errors.durable.operator.unsupportedStoreCapability",
|
|
42
|
+
DashboardApiRequest = "runner.errors.durable.dashboard.apiRequest",
|
|
43
|
+
LockableMapLocked = "runner.errors.tools.lockableMapLocked"
|
|
44
|
+
}
|