@spine-event-engine/server 2.0.0-snapshot.2
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/LICENSE +201 -0
- package/README.md +569 -0
- package/REFERENCE.md +488 -0
- package/dist/bus/command-bus.d.ts +61 -0
- package/dist/bus/command-bus.d.ts.map +1 -0
- package/dist/bus/command-bus.js +201 -0
- package/dist/bus/command-bus.js.map +1 -0
- package/dist/bus/command-dispatcher-registry.d.ts +33 -0
- package/dist/bus/command-dispatcher-registry.d.ts.map +1 -0
- package/dist/bus/command-dispatcher-registry.js +75 -0
- package/dist/bus/command-dispatcher-registry.js.map +1 -0
- package/dist/bus/command-dispatcher.d.ts +25 -0
- package/dist/bus/command-dispatcher.d.ts.map +1 -0
- package/dist/bus/command-dispatcher.js +15 -0
- package/dist/bus/command-dispatcher.js.map +1 -0
- package/dist/bus/command-errors.d.ts +23 -0
- package/dist/bus/command-errors.d.ts.map +1 -0
- package/dist/bus/command-errors.js +52 -0
- package/dist/bus/command-errors.js.map +1 -0
- package/dist/bus/event-bus.d.ts +113 -0
- package/dist/bus/event-bus.d.ts.map +1 -0
- package/dist/bus/event-bus.js +518 -0
- package/dist/bus/event-bus.js.map +1 -0
- package/dist/bus/event-dispatcher-origin-schemas.d.ts +17 -0
- package/dist/bus/event-dispatcher-origin-schemas.d.ts.map +1 -0
- package/dist/bus/event-dispatcher-origin-schemas.js +32 -0
- package/dist/bus/event-dispatcher-origin-schemas.js.map +1 -0
- package/dist/bus/event-dispatcher-registry.d.ts +48 -0
- package/dist/bus/event-dispatcher-registry.d.ts.map +1 -0
- package/dist/bus/event-dispatcher-registry.js +176 -0
- package/dist/bus/event-dispatcher-registry.js.map +1 -0
- package/dist/bus/event-dispatcher.d.ts +48 -0
- package/dist/bus/event-dispatcher.d.ts.map +1 -0
- package/dist/bus/event-dispatcher.js +15 -0
- package/dist/bus/event-dispatcher.js.map +1 -0
- package/dist/context/bounded-context.d.ts +606 -0
- package/dist/context/bounded-context.d.ts.map +1 -0
- package/dist/context/bounded-context.js +1780 -0
- package/dist/context/bounded-context.js.map +1 -0
- package/dist/context/entity-inbox.d.ts +63 -0
- package/dist/context/entity-inbox.d.ts.map +1 -0
- package/dist/context/entity-inbox.js +380 -0
- package/dist/context/entity-inbox.js.map +1 -0
- package/dist/context/local-inbox-handoff.d.ts +244 -0
- package/dist/context/local-inbox-handoff.d.ts.map +1 -0
- package/dist/context/local-inbox-handoff.js +334 -0
- package/dist/context/local-inbox-handoff.js.map +1 -0
- package/dist/context/projection-handoff.d.ts +46 -0
- package/dist/context/projection-handoff.d.ts.map +1 -0
- package/dist/context/projection-handoff.js +172 -0
- package/dist/context/projection-handoff.js.map +1 -0
- package/dist/context/tenant-index.d.ts +41 -0
- package/dist/context/tenant-index.d.ts.map +1 -0
- package/dist/context/tenant-index.js +92 -0
- package/dist/context/tenant-index.js.map +1 -0
- package/dist/delivery/conditional-pickup.d.ts +25 -0
- package/dist/delivery/conditional-pickup.d.ts.map +1 -0
- package/dist/delivery/conditional-pickup.js +26 -0
- package/dist/delivery/conditional-pickup.js.map +1 -0
- package/dist/delivery/delivery-builder.d.ts +216 -0
- package/dist/delivery/delivery-builder.d.ts.map +1 -0
- package/dist/delivery/delivery-builder.js +323 -0
- package/dist/delivery/delivery-builder.js.map +1 -0
- package/dist/delivery/delivery-lease.d.ts +15 -0
- package/dist/delivery/delivery-lease.d.ts.map +1 -0
- package/dist/delivery/delivery-lease.js +44 -0
- package/dist/delivery/delivery-lease.js.map +1 -0
- package/dist/delivery/delivery-loop.d.ts +113 -0
- package/dist/delivery/delivery-loop.d.ts.map +1 -0
- package/dist/delivery/delivery-loop.js +119 -0
- package/dist/delivery/delivery-loop.js.map +1 -0
- package/dist/delivery/delivery-monitor.d.ts +165 -0
- package/dist/delivery/delivery-monitor.d.ts.map +1 -0
- package/dist/delivery/delivery-monitor.js +168 -0
- package/dist/delivery/delivery-monitor.js.map +1 -0
- package/dist/delivery/delivery-ports.d.ts +141 -0
- package/dist/delivery/delivery-ports.d.ts.map +1 -0
- package/dist/delivery/delivery-ports.js +15 -0
- package/dist/delivery/delivery-ports.js.map +1 -0
- package/dist/delivery/delivery-run-control.d.ts +50 -0
- package/dist/delivery/delivery-run-control.d.ts.map +1 -0
- package/dist/delivery/delivery-run-control.js +66 -0
- package/dist/delivery/delivery-run-control.js.map +1 -0
- package/dist/delivery/delivery-run-coordinator.d.ts +218 -0
- package/dist/delivery/delivery-run-coordinator.d.ts.map +1 -0
- package/dist/delivery/delivery-run-coordinator.js +609 -0
- package/dist/delivery/delivery-run-coordinator.js.map +1 -0
- package/dist/delivery/delivery-storage-error.d.ts +13 -0
- package/dist/delivery/delivery-storage-error.d.ts.map +1 -0
- package/dist/delivery/delivery-storage-error.js +30 -0
- package/dist/delivery/delivery-storage-error.js.map +1 -0
- package/dist/delivery/delivery-supervisor.d.ts +175 -0
- package/dist/delivery/delivery-supervisor.d.ts.map +1 -0
- package/dist/delivery/delivery-supervisor.js +469 -0
- package/dist/delivery/delivery-supervisor.js.map +1 -0
- package/dist/delivery/delivery-worker.d.ts +180 -0
- package/dist/delivery/delivery-worker.d.ts.map +1 -0
- package/dist/delivery/delivery-worker.js +232 -0
- package/dist/delivery/delivery-worker.js.map +1 -0
- package/dist/delivery/delivery.d.ts +238 -0
- package/dist/delivery/delivery.d.ts.map +1 -0
- package/dist/delivery/delivery.js +400 -0
- package/dist/delivery/delivery.js.map +1 -0
- package/dist/delivery/inbox-records.d.ts +19 -0
- package/dist/delivery/inbox-records.d.ts.map +1 -0
- package/dist/delivery/inbox-records.js +291 -0
- package/dist/delivery/inbox-records.js.map +1 -0
- package/dist/delivery/inbox-storage.d.ts +81 -0
- package/dist/delivery/inbox-storage.d.ts.map +1 -0
- package/dist/delivery/inbox-storage.js +353 -0
- package/dist/delivery/inbox-storage.js.map +1 -0
- package/dist/delivery/inbox.d.ts +263 -0
- package/dist/delivery/inbox.d.ts.map +1 -0
- package/dist/delivery/inbox.js +172 -0
- package/dist/delivery/inbox.js.map +1 -0
- package/dist/delivery/parked-delivery-obligations.d.ts +182 -0
- package/dist/delivery/parked-delivery-obligations.d.ts.map +1 -0
- package/dist/delivery/parked-delivery-obligations.js +390 -0
- package/dist/delivery/parked-delivery-obligations.js.map +1 -0
- package/dist/delivery/shard-index.d.ts +41 -0
- package/dist/delivery/shard-index.d.ts.map +1 -0
- package/dist/delivery/shard-index.js +67 -0
- package/dist/delivery/shard-index.js.map +1 -0
- package/dist/delivery/sharded-work-registry.d.ts +114 -0
- package/dist/delivery/sharded-work-registry.d.ts.map +1 -0
- package/dist/delivery/sharded-work-registry.js +360 -0
- package/dist/delivery/sharded-work-registry.js.map +1 -0
- package/dist/entity/entity-metadata.d.ts +173 -0
- package/dist/entity/entity-metadata.d.ts.map +1 -0
- package/dist/entity/entity-metadata.js +187 -0
- package/dist/entity/entity-metadata.js.map +1 -0
- package/dist/entity/entity-storage-descriptor.d.ts +64 -0
- package/dist/entity/entity-storage-descriptor.d.ts.map +1 -0
- package/dist/entity/entity-storage-descriptor.js +227 -0
- package/dist/entity/entity-storage-descriptor.js.map +1 -0
- package/dist/entity/entity-transaction.d.ts +372 -0
- package/dist/entity/entity-transaction.d.ts.map +1 -0
- package/dist/entity/entity-transaction.js +413 -0
- package/dist/entity/entity-transaction.js.map +1 -0
- package/dist/entity/entity-transition-validation.d.ts +47 -0
- package/dist/entity/entity-transition-validation.d.ts.map +1 -0
- package/dist/entity/entity-transition-validation.js +327 -0
- package/dist/entity/entity-transition-validation.js.map +1 -0
- package/dist/entity/entity.d.ts +499 -0
- package/dist/entity/entity.d.ts.map +1 -0
- package/dist/entity/entity.js +829 -0
- package/dist/entity/entity.js.map +1 -0
- package/dist/entity/implicit-required-id.d.ts +15 -0
- package/dist/entity/implicit-required-id.d.ts.map +1 -0
- package/dist/entity/implicit-required-id.js +123 -0
- package/dist/entity/implicit-required-id.js.map +1 -0
- package/dist/entity/spec-scanner.d.ts +14 -0
- package/dist/entity/spec-scanner.d.ts.map +1 -0
- package/dist/entity/spec-scanner.js +37 -0
- package/dist/entity/spec-scanner.js.map +1 -0
- package/dist/handler/build-time-handler-analyzer.d.ts +150 -0
- package/dist/handler/build-time-handler-analyzer.d.ts.map +1 -0
- package/dist/handler/build-time-handler-analyzer.js +1101 -0
- package/dist/handler/build-time-handler-analyzer.js.map +1 -0
- package/dist/handler/command-registration-readiness.d.ts +99 -0
- package/dist/handler/command-registration-readiness.d.ts.map +1 -0
- package/dist/handler/command-registration-readiness.js +118 -0
- package/dist/handler/command-registration-readiness.js.map +1 -0
- package/dist/handler/event-handler-filter.d.ts +43 -0
- package/dist/handler/event-handler-filter.d.ts.map +1 -0
- package/dist/handler/event-handler-filter.js +128 -0
- package/dist/handler/event-handler-filter.js.map +1 -0
- package/dist/handler/event-registration-readiness.d.ts +196 -0
- package/dist/handler/event-registration-readiness.d.ts.map +1 -0
- package/dist/handler/event-registration-readiness.js +187 -0
- package/dist/handler/event-registration-readiness.js.map +1 -0
- package/dist/handler/external.d.ts +10 -0
- package/dist/handler/external.d.ts.map +1 -0
- package/dist/handler/external.js +15 -0
- package/dist/handler/external.js.map +1 -0
- package/dist/handler/generated-handler-registry.d.ts +154 -0
- package/dist/handler/generated-handler-registry.d.ts.map +1 -0
- package/dist/handler/generated-handler-registry.js +223 -0
- package/dist/handler/generated-handler-registry.js.map +1 -0
- package/dist/handler/generated-registry-discovery.d.ts +94 -0
- package/dist/handler/generated-registry-discovery.d.ts.map +1 -0
- package/dist/handler/generated-registry-discovery.js +228 -0
- package/dist/handler/generated-registry-discovery.js.map +1 -0
- package/dist/handler/generated-registry-writer.d.ts +58 -0
- package/dist/handler/generated-registry-writer.d.ts.map +1 -0
- package/dist/handler/generated-registry-writer.js +458 -0
- package/dist/handler/generated-registry-writer.js.map +1 -0
- package/dist/handler/handler-codegen.d.ts +48 -0
- package/dist/handler/handler-codegen.d.ts.map +1 -0
- package/dist/handler/handler-codegen.js +214 -0
- package/dist/handler/handler-codegen.js.map +1 -0
- package/dist/handler/handler-decorators.d.ts +134 -0
- package/dist/handler/handler-decorators.d.ts.map +1 -0
- package/dist/handler/handler-decorators.js +239 -0
- package/dist/handler/handler-decorators.js.map +1 -0
- package/dist/handler/handler-metadata.d.ts +510 -0
- package/dist/handler/handler-metadata.d.ts.map +1 -0
- package/dist/handler/handler-metadata.js +391 -0
- package/dist/handler/handler-metadata.js.map +1 -0
- package/dist/handler/registration-readiness-metadata.d.ts +68 -0
- package/dist/handler/registration-readiness-metadata.d.ts.map +1 -0
- package/dist/handler/registration-readiness-metadata.js +170 -0
- package/dist/handler/registration-readiness-metadata.js.map +1 -0
- package/dist/handler/rejection-source.d.ts +11 -0
- package/dist/handler/rejection-source.d.ts.map +1 -0
- package/dist/handler/rejection-source.js +25 -0
- package/dist/handler/rejection-source.js.map +1 -0
- package/dist/index.d.ts +46 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +54 -0
- package/dist/index.js.map +1 -0
- package/dist/integration/external-messages.d.ts +49 -0
- package/dist/integration/external-messages.d.ts.map +1 -0
- package/dist/integration/external-messages.js +112 -0
- package/dist/integration/external-messages.js.map +1 -0
- package/dist/integration/integration-broker.d.ts +74 -0
- package/dist/integration/integration-broker.d.ts.map +1 -0
- package/dist/integration/integration-broker.js +444 -0
- package/dist/integration/integration-broker.js.map +1 -0
- package/dist/integration/third-party-context.d.ts +56 -0
- package/dist/integration/third-party-context.d.ts.map +1 -0
- package/dist/integration/third-party-context.js +130 -0
- package/dist/integration/third-party-context.js.map +1 -0
- package/dist/repository/command-errors.d.ts +25 -0
- package/dist/repository/command-errors.d.ts.map +1 -0
- package/dist/repository/command-errors.js +43 -0
- package/dist/repository/command-errors.js.map +1 -0
- package/dist/repository/command-routing.d.ts +72 -0
- package/dist/repository/command-routing.d.ts.map +1 -0
- package/dist/repository/command-routing.js +98 -0
- package/dist/repository/command-routing.js.map +1 -0
- package/dist/repository/commit-fence.d.ts +22 -0
- package/dist/repository/commit-fence.d.ts.map +1 -0
- package/dist/repository/commit-fence.js +37 -0
- package/dist/repository/commit-fence.js.map +1 -0
- package/dist/repository/event-routing.d.ts +71 -0
- package/dist/repository/event-routing.d.ts.map +1 -0
- package/dist/repository/event-routing.js +96 -0
- package/dist/repository/event-routing.js.map +1 -0
- package/dist/repository/primitive-id.d.ts +86 -0
- package/dist/repository/primitive-id.d.ts.map +1 -0
- package/dist/repository/primitive-id.js +110 -0
- package/dist/repository/primitive-id.js.map +1 -0
- package/dist/repository/repository.d.ts +670 -0
- package/dist/repository/repository.d.ts.map +1 -0
- package/dist/repository/repository.js +3298 -0
- package/dist/repository/repository.js.map +1 -0
- package/dist/repository/routing-declarations.d.ts +75 -0
- package/dist/repository/routing-declarations.d.ts.map +1 -0
- package/dist/repository/routing-declarations.js +101 -0
- package/dist/repository/routing-declarations.js.map +1 -0
- package/dist/repository/state-update-routing.d.ts +66 -0
- package/dist/repository/state-update-routing.d.ts.map +1 -0
- package/dist/repository/state-update-routing.js +91 -0
- package/dist/repository/state-update-routing.js.map +1 -0
- package/dist/runtime/runtime.d.ts +156 -0
- package/dist/runtime/runtime.d.ts.map +1 -0
- package/dist/runtime/runtime.js +215 -0
- package/dist/runtime/runtime.js.map +1 -0
- package/dist/runtime/signal-intake.d.ts +84 -0
- package/dist/runtime/signal-intake.d.ts.map +1 -0
- package/dist/runtime/signal-intake.js +94 -0
- package/dist/runtime/signal-intake.js.map +1 -0
- package/dist/runtime/signal-metadata.d.ts +242 -0
- package/dist/runtime/signal-metadata.d.ts.map +1 -0
- package/dist/runtime/signal-metadata.js +368 -0
- package/dist/runtime/signal-metadata.js.map +1 -0
- package/dist/server/browser-server.d.ts +49 -0
- package/dist/server/browser-server.d.ts.map +1 -0
- package/dist/server/browser-server.js +633 -0
- package/dist/server/browser-server.js.map +1 -0
- package/dist/server/durable-subscription-bindings.d.ts +122 -0
- package/dist/server/durable-subscription-bindings.d.ts.map +1 -0
- package/dist/server/durable-subscription-bindings.js +524 -0
- package/dist/server/durable-subscription-bindings.js.map +1 -0
- package/dist/server/environment-attachment.d.ts +356 -0
- package/dist/server/environment-attachment.d.ts.map +1 -0
- package/dist/server/environment-attachment.js +2061 -0
- package/dist/server/environment-attachment.js.map +1 -0
- package/dist/server/environment-delivery-records.d.ts +77 -0
- package/dist/server/environment-delivery-records.d.ts.map +1 -0
- package/dist/server/environment-delivery-records.js +282 -0
- package/dist/server/environment-delivery-records.js.map +1 -0
- package/dist/server/environment-delivery-worker.d.ts +161 -0
- package/dist/server/environment-delivery-worker.d.ts.map +1 -0
- package/dist/server/environment-delivery-worker.js +664 -0
- package/dist/server/environment-delivery-worker.js.map +1 -0
- package/dist/server/environment.d.ts +43 -0
- package/dist/server/environment.d.ts.map +1 -0
- package/dist/server/environment.js +90 -0
- package/dist/server/environment.js.map +1 -0
- package/dist/server/managed-child-subscription.d.ts +11 -0
- package/dist/server/managed-child-subscription.d.ts.map +1 -0
- package/dist/server/managed-child-subscription.js +44 -0
- package/dist/server/managed-child-subscription.js.map +1 -0
- package/dist/server/managed-server-application.d.ts +324 -0
- package/dist/server/managed-server-application.d.ts.map +1 -0
- package/dist/server/managed-server-application.js +937 -0
- package/dist/server/managed-server-application.js.map +1 -0
- package/dist/server/node-coordinator.d.ts +191 -0
- package/dist/server/node-coordinator.d.ts.map +1 -0
- package/dist/server/node-coordinator.js +552 -0
- package/dist/server/node-coordinator.js.map +1 -0
- package/dist/server/process-server-coordinator.d.ts +15 -0
- package/dist/server/process-server-coordinator.d.ts.map +1 -0
- package/dist/server/process-server-coordinator.js +112 -0
- package/dist/server/process-server-coordinator.js.map +1 -0
- package/dist/server/reserved-spine-rpc-paths.json +8 -0
- package/dist/server/retryable-close.d.ts +28 -0
- package/dist/server/retryable-close.d.ts.map +1 -0
- package/dist/server/retryable-close.js +129 -0
- package/dist/server/retryable-close.js.map +1 -0
- package/dist/server/server-environment.d.ts +180 -0
- package/dist/server/server-environment.d.ts.map +1 -0
- package/dist/server/server-environment.js +418 -0
- package/dist/server/server-environment.js.map +1 -0
- package/dist/server/server-log.d.ts +18 -0
- package/dist/server/server-log.d.ts.map +1 -0
- package/dist/server/server-log.js +96 -0
- package/dist/server/server-log.js.map +1 -0
- package/dist/server/server.d.ts +389 -0
- package/dist/server/server.d.ts.map +1 -0
- package/dist/server/server.js +752 -0
- package/dist/server/server.js.map +1 -0
- package/dist/services/spine-services.d.ts +88 -0
- package/dist/services/spine-services.d.ts.map +1 -0
- package/dist/services/spine-services.js +1586 -0
- package/dist/services/spine-services.js.map +1 -0
- package/dist/stand/stand.d.ts +294 -0
- package/dist/stand/stand.d.ts.map +1 -0
- package/dist/stand/stand.js +680 -0
- package/dist/stand/stand.js.map +1 -0
- package/dist/stand/subscription-observer.d.ts +53 -0
- package/dist/stand/subscription-observer.d.ts.map +1 -0
- package/dist/stand/subscription-observer.js +444 -0
- package/dist/stand/subscription-observer.js.map +1 -0
- package/dist/stand/subscription-records.d.ts +12 -0
- package/dist/stand/subscription-records.d.ts.map +1 -0
- package/dist/stand/subscription-records.js +99 -0
- package/dist/stand/subscription-records.js.map +1 -0
- package/dist/stand/subscription-registry.d.ts +285 -0
- package/dist/stand/subscription-registry.d.ts.map +1 -0
- package/dist/stand/subscription-registry.js +403 -0
- package/dist/stand/subscription-registry.js.map +1 -0
- package/dist/stand/subscription-runtime.d.ts +102 -0
- package/dist/stand/subscription-runtime.d.ts.map +1 -0
- package/dist/stand/subscription-runtime.js +380 -0
- package/dist/stand/subscription-runtime.js.map +1 -0
- package/dist/testing/index.d.ts +14 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +34 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +65 -0
|
@@ -0,0 +1,510 @@
|
|
|
1
|
+
import type { EntityMetadata, DescriptorMessageSchema } from "../entity/entity-metadata.js";
|
|
2
|
+
/**
|
|
3
|
+
* Entity class value accepted by explicit handler metadata registration.
|
|
4
|
+
*/
|
|
5
|
+
export interface EntityClass<Instance extends object = object> {
|
|
6
|
+
/**
|
|
7
|
+
* Prototype inspected for explicitly named handler methods. Registered names
|
|
8
|
+
* must refer to own prototype data methods declared with normal class method
|
|
9
|
+
* syntax; accessors, `constructor`, inherited methods, and instance fields are
|
|
10
|
+
* rejected at runtime.
|
|
11
|
+
*/
|
|
12
|
+
readonly prototype: Instance;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Public handler metadata categories produced by explicit registration.
|
|
16
|
+
*/
|
|
17
|
+
export type HandlerKind = "command-assignment" | "command-reaction" | "event-subscription" | "state-subscription" | "event-reaction" | "event-application";
|
|
18
|
+
/**
|
|
19
|
+
* Public handler method arity recorded in canonical metadata.
|
|
20
|
+
*/
|
|
21
|
+
export type HandlerParameterCount = 1 | 2;
|
|
22
|
+
/**
|
|
23
|
+
* Origin declared by a generated receptor's first parameter.
|
|
24
|
+
*/
|
|
25
|
+
export type HandlerOrigin = "domestic" | "external";
|
|
26
|
+
/**
|
|
27
|
+
* Compile-time approximation of entity callable member names.
|
|
28
|
+
*
|
|
29
|
+
* TypeScript cannot distinguish normal class prototype methods from accessors
|
|
30
|
+
* that return functions or other callable instance properties. Runtime
|
|
31
|
+
* registration therefore applies the narrower public contract: handler names
|
|
32
|
+
* must be own prototype data methods declared with normal class method syntax.
|
|
33
|
+
*/
|
|
34
|
+
export type HandlerMethodName<Instance extends object> = Extract<{
|
|
35
|
+
[Name in keyof Instance]: Instance[Name] extends (...parameters: never[]) => unknown ? Name : never;
|
|
36
|
+
}[keyof Instance], string>;
|
|
37
|
+
/**
|
|
38
|
+
* Error code for explicit handler metadata registration failures.
|
|
39
|
+
*/
|
|
40
|
+
export type HandlerMetadataErrorCode = "UNKNOWN_HANDLER_METHOD" | "INVALID_PARAMETER_COUNT";
|
|
41
|
+
/**
|
|
42
|
+
* Error thrown when explicit handler metadata cannot be defined.
|
|
43
|
+
*/
|
|
44
|
+
export declare class HandlerMetadataError extends Error {
|
|
45
|
+
/**
|
|
46
|
+
* Stable code for callers/tests that need structured failure handling.
|
|
47
|
+
*/
|
|
48
|
+
readonly code: HandlerMetadataErrorCode;
|
|
49
|
+
/**
|
|
50
|
+
* Creates a registration error.
|
|
51
|
+
*
|
|
52
|
+
* @param code Stable failure code.
|
|
53
|
+
* @param message Human-readable failure detail.
|
|
54
|
+
*/
|
|
55
|
+
constructor(code: HandlerMetadataErrorCode, message: string);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Common fields shared by every explicit handler metadata record.
|
|
59
|
+
*/
|
|
60
|
+
export interface BaseHandlerMetadata<Kind extends HandlerKind = HandlerKind, Schema extends DescriptorMessageSchema = DescriptorMessageSchema, MethodName extends string = string> {
|
|
61
|
+
/**
|
|
62
|
+
* Handler role in Spine's command/event model.
|
|
63
|
+
*/
|
|
64
|
+
readonly kind: Kind;
|
|
65
|
+
/**
|
|
66
|
+
* Generated Protobuf-ES schema accepted by the handler method.
|
|
67
|
+
*/
|
|
68
|
+
readonly schema: Schema;
|
|
69
|
+
/**
|
|
70
|
+
* Alias for the schema as the descriptor-bearing message declaration.
|
|
71
|
+
*/
|
|
72
|
+
readonly descriptor: Schema;
|
|
73
|
+
/**
|
|
74
|
+
* Fully qualified Protobuf type name handled by the method.
|
|
75
|
+
*/
|
|
76
|
+
readonly messageFullTypeName: Schema["typeName"];
|
|
77
|
+
/**
|
|
78
|
+
* Entity instance method name selected by explicit registration.
|
|
79
|
+
*/
|
|
80
|
+
readonly methodName: MethodName;
|
|
81
|
+
/**
|
|
82
|
+
* Public method arity: `handler(signal)` or `handler(signal, context)`.
|
|
83
|
+
*/
|
|
84
|
+
readonly parameterCount: HandlerParameterCount;
|
|
85
|
+
/**
|
|
86
|
+
* Whether this receptor accepts domestic or imported external signals.
|
|
87
|
+
*/
|
|
88
|
+
readonly origin: HandlerOrigin;
|
|
89
|
+
/**
|
|
90
|
+
* Optional Event field equality filter generated for this handler.
|
|
91
|
+
*/
|
|
92
|
+
readonly where?: WhereOptions;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Declares one equality filter for an Event-consuming handler.
|
|
96
|
+
*/
|
|
97
|
+
export interface WhereOptions {
|
|
98
|
+
/**
|
|
99
|
+
* Proto source-name path of the Event field to compare.
|
|
100
|
+
*/
|
|
101
|
+
readonly eventField: string;
|
|
102
|
+
/**
|
|
103
|
+
* Expected field value in its canonical Stringifier representation.
|
|
104
|
+
*/
|
|
105
|
+
readonly equals: string;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Metadata for a command assignee method.
|
|
109
|
+
*/
|
|
110
|
+
export type CommandAssignmentHandlerMetadata<Schema extends DescriptorMessageSchema = DescriptorMessageSchema, MethodName extends string = string> = BaseHandlerMetadata<"command-assignment", Schema, MethodName>;
|
|
111
|
+
/**
|
|
112
|
+
* Metadata for a command-reacting method.
|
|
113
|
+
*/
|
|
114
|
+
export type CommandReactionHandlerMetadata<Schema extends DescriptorMessageSchema = DescriptorMessageSchema, MethodName extends string = string> = BaseHandlerMetadata<"command-reaction", Schema, MethodName>;
|
|
115
|
+
/**
|
|
116
|
+
* Metadata for an event subscription method.
|
|
117
|
+
*/
|
|
118
|
+
export type EventSubscriptionHandlerMetadata<Schema extends DescriptorMessageSchema = DescriptorMessageSchema, MethodName extends string = string> = BaseHandlerMetadata<"event-subscription", Schema, MethodName>;
|
|
119
|
+
/**
|
|
120
|
+
* Metadata for an Entity-state subscription method.
|
|
121
|
+
*/
|
|
122
|
+
export type StateSubscriptionHandlerMetadata<Schema extends DescriptorMessageSchema = DescriptorMessageSchema, MethodName extends string = string> = BaseHandlerMetadata<"state-subscription", Schema, MethodName>;
|
|
123
|
+
/**
|
|
124
|
+
* Metadata for an event reactor method.
|
|
125
|
+
*/
|
|
126
|
+
export type EventReactionHandlerMetadata<Schema extends DescriptorMessageSchema = DescriptorMessageSchema, MethodName extends string = string> = BaseHandlerMetadata<"event-reaction", Schema, MethodName>;
|
|
127
|
+
/**
|
|
128
|
+
* Options accepted by event applier registration.
|
|
129
|
+
*/
|
|
130
|
+
export interface EventApplicationOptions {
|
|
131
|
+
/**
|
|
132
|
+
* Legacy compatibility flag preserved on schema-bearing event appliers.
|
|
133
|
+
*/
|
|
134
|
+
readonly allowImport?: boolean;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Metadata for an event applier method.
|
|
138
|
+
*/
|
|
139
|
+
export interface EventApplicationHandlerMetadata<Schema extends DescriptorMessageSchema = DescriptorMessageSchema, MethodName extends string = string> extends BaseHandlerMetadata<"event-application", Schema, MethodName> {
|
|
140
|
+
/**
|
|
141
|
+
* Legacy compatibility flag preserved on schema-bearing event appliers.
|
|
142
|
+
*/
|
|
143
|
+
readonly allowImport: boolean;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Union of all explicit handler metadata records.
|
|
147
|
+
*/
|
|
148
|
+
export type HandlerMetadata<Schema extends DescriptorMessageSchema = DescriptorMessageSchema, MethodName extends string = string> = CommandAssignmentHandlerMetadata<Schema, MethodName> | CommandReactionHandlerMetadata<Schema, MethodName> | EventSubscriptionHandlerMetadata<Schema, MethodName> | StateSubscriptionHandlerMetadata<Schema, MethodName> | EventReactionHandlerMetadata<Schema, MethodName> | EventApplicationHandlerMetadata<Schema, MethodName>;
|
|
149
|
+
/**
|
|
150
|
+
* Builder passed to `EntityHandlers.define()` for typed method-name registration.
|
|
151
|
+
*
|
|
152
|
+
* Builder methods accept the compile-time callable-name approximation, then
|
|
153
|
+
* validate that the selected name is an own prototype data method.
|
|
154
|
+
*/
|
|
155
|
+
export interface HandlerRegistrationBuilder<Instance extends object> {
|
|
156
|
+
/**
|
|
157
|
+
* Registers a command assignee method.
|
|
158
|
+
*
|
|
159
|
+
* @param schema Command schema accepted by the method.
|
|
160
|
+
* @param methodName Entity method name.
|
|
161
|
+
* @returns The registered command-assignment metadata.
|
|
162
|
+
*/
|
|
163
|
+
assign<Schema extends DescriptorMessageSchema>(schema: Schema, methodName: HandlerMethodName<Instance>): CommandAssignmentHandlerMetadata<Schema, HandlerMethodName<Instance>>;
|
|
164
|
+
/**
|
|
165
|
+
* Registers a command reactor method.
|
|
166
|
+
*
|
|
167
|
+
* @param schema Command schema accepted by the method.
|
|
168
|
+
* @param methodName Entity method name.
|
|
169
|
+
* @returns The registered command-reaction metadata.
|
|
170
|
+
*/
|
|
171
|
+
command<Schema extends DescriptorMessageSchema>(schema: Schema, methodName: HandlerMethodName<Instance>): CommandReactionHandlerMetadata<Schema, HandlerMethodName<Instance>>;
|
|
172
|
+
/**
|
|
173
|
+
* Registers an Event/rejection or Entity-state subscriber method.
|
|
174
|
+
*
|
|
175
|
+
* @param schema Event, rejection, or descriptor-marked Entity state schema
|
|
176
|
+
* accepted by the method.
|
|
177
|
+
* @param methodName Entity method name.
|
|
178
|
+
* @returns Event-subscription metadata for signals, or state-subscription
|
|
179
|
+
* metadata for descriptor-marked Entity state schemas.
|
|
180
|
+
*/
|
|
181
|
+
subscribe<Schema extends DescriptorMessageSchema>(schema: Schema, methodName: HandlerMethodName<Instance>): EventSubscriptionHandlerMetadata<Schema, HandlerMethodName<Instance>> | StateSubscriptionHandlerMetadata<Schema, HandlerMethodName<Instance>>;
|
|
182
|
+
/**
|
|
183
|
+
* Registers an event reactor method.
|
|
184
|
+
*
|
|
185
|
+
* @param schema Event schema accepted by the method.
|
|
186
|
+
* @param methodName Entity method name.
|
|
187
|
+
* @returns The registered event-reaction metadata.
|
|
188
|
+
*/
|
|
189
|
+
react<Schema extends DescriptorMessageSchema>(schema: Schema, methodName: HandlerMethodName<Instance>): EventReactionHandlerMetadata<Schema, HandlerMethodName<Instance>>;
|
|
190
|
+
/**
|
|
191
|
+
* Registers an event applier method.
|
|
192
|
+
*
|
|
193
|
+
* @param schema Event schema accepted by the method.
|
|
194
|
+
* @param methodName Entity method name.
|
|
195
|
+
* @param options Legacy event-application options.
|
|
196
|
+
* @returns The registered event-application metadata.
|
|
197
|
+
*/
|
|
198
|
+
apply<Schema extends DescriptorMessageSchema>(schema: Schema, methodName: HandlerMethodName<Instance>, options?: EventApplicationOptions): EventApplicationHandlerMetadata<Schema, HandlerMethodName<Instance>>;
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Frozen handler metadata for one explicitly registered entity class.
|
|
202
|
+
*/
|
|
203
|
+
export interface EntityHandlersMetadata<Instance extends object = object, StateSchema extends DescriptorMessageSchema = DescriptorMessageSchema> {
|
|
204
|
+
/**
|
|
205
|
+
* Entity class whose prototype owns the registered methods.
|
|
206
|
+
*/
|
|
207
|
+
readonly entityType: EntityClass<Instance>;
|
|
208
|
+
/**
|
|
209
|
+
* Descriptor-derived state metadata from `describeEntityMetadata()`.
|
|
210
|
+
*/
|
|
211
|
+
readonly entity: EntityMetadata<StateSchema>;
|
|
212
|
+
/**
|
|
213
|
+
* All handlers in declaration order.
|
|
214
|
+
*/
|
|
215
|
+
readonly handlers: readonly HandlerMetadata[];
|
|
216
|
+
/**
|
|
217
|
+
* Command assignees in declaration order.
|
|
218
|
+
*/
|
|
219
|
+
readonly commandAssignments: readonly CommandAssignmentHandlerMetadata[];
|
|
220
|
+
/**
|
|
221
|
+
* Command reactors in declaration order.
|
|
222
|
+
*/
|
|
223
|
+
readonly commandReactions: readonly CommandReactionHandlerMetadata[];
|
|
224
|
+
/**
|
|
225
|
+
* Event subscribers in declaration order.
|
|
226
|
+
*/
|
|
227
|
+
readonly eventSubscriptions: readonly EventSubscriptionHandlerMetadata[];
|
|
228
|
+
/**
|
|
229
|
+
* Entity-state subscribers in declaration order.
|
|
230
|
+
*/
|
|
231
|
+
readonly stateSubscriptions: readonly StateSubscriptionHandlerMetadata[];
|
|
232
|
+
/**
|
|
233
|
+
* Event reactors in declaration order.
|
|
234
|
+
*/
|
|
235
|
+
readonly eventReactions: readonly EventReactionHandlerMetadata[];
|
|
236
|
+
/**
|
|
237
|
+
* Event appliers in declaration order.
|
|
238
|
+
*/
|
|
239
|
+
readonly eventApplications: readonly EventApplicationHandlerMetadata[];
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Error code for handler metadata registry validation failures.
|
|
243
|
+
*/
|
|
244
|
+
export type HandlerRegistryErrorCode = "DUPLICATE_COMMAND_ASSIGNMENT" | "DUPLICATE_EVENT_APPLICATION";
|
|
245
|
+
/**
|
|
246
|
+
* Error thrown when a caller-owned handler metadata registry rejects metadata.
|
|
247
|
+
*/
|
|
248
|
+
export declare class HandlerMetadataRegistryError extends Error {
|
|
249
|
+
/**
|
|
250
|
+
* Stable code for callers/tests that need structured failure handling.
|
|
251
|
+
*/
|
|
252
|
+
readonly code: HandlerRegistryErrorCode;
|
|
253
|
+
/**
|
|
254
|
+
* Creates a registry validation error.
|
|
255
|
+
*
|
|
256
|
+
* @param code Stable failure code.
|
|
257
|
+
* @param message Human-readable failure detail.
|
|
258
|
+
*/
|
|
259
|
+
constructor(code: HandlerRegistryErrorCode, message: string);
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* A handler metadata record paired with the entity metadata that declared it.
|
|
263
|
+
*/
|
|
264
|
+
export interface RegisteredHandlerMetadata<Handler extends HandlerMetadata = HandlerMetadata> {
|
|
265
|
+
/**
|
|
266
|
+
* Entity handler metadata object registered by the caller.
|
|
267
|
+
*/
|
|
268
|
+
readonly entityHandlers: EntityHandlersMetadata;
|
|
269
|
+
/**
|
|
270
|
+
* Entity class that owns the registered handler method.
|
|
271
|
+
*/
|
|
272
|
+
readonly entityType: EntityClass;
|
|
273
|
+
/**
|
|
274
|
+
* Descriptor-derived entity metadata for the handler's state type.
|
|
275
|
+
*/
|
|
276
|
+
readonly entity: EntityMetadata;
|
|
277
|
+
/**
|
|
278
|
+
* Handler metadata record declared for the entity.
|
|
279
|
+
*/
|
|
280
|
+
readonly handler: Handler;
|
|
281
|
+
}
|
|
282
|
+
/**
|
|
283
|
+
* Read-only lookup surface for already registered handler metadata.
|
|
284
|
+
*/
|
|
285
|
+
export interface HandlerMetadataRegistryLookup {
|
|
286
|
+
/**
|
|
287
|
+
* Returns registered entity handler metadata in registration order.
|
|
288
|
+
*
|
|
289
|
+
* @returns A fresh frozen metadata list.
|
|
290
|
+
*/
|
|
291
|
+
listEntityHandlers(): readonly EntityHandlersMetadata[];
|
|
292
|
+
/**
|
|
293
|
+
* Returns registered handler entries in registration and declaration order.
|
|
294
|
+
*
|
|
295
|
+
* @returns A fresh frozen registered-handler list.
|
|
296
|
+
*/
|
|
297
|
+
listHandlers(): readonly RegisteredHandlerMetadata[];
|
|
298
|
+
/**
|
|
299
|
+
* Finds entity handler metadata by state type name.
|
|
300
|
+
*
|
|
301
|
+
* @param stateTypeName Fully qualified entity state type name.
|
|
302
|
+
* @returns Matching metadata in registration order.
|
|
303
|
+
*/
|
|
304
|
+
findByState(stateTypeName: string): readonly EntityHandlersMetadata[];
|
|
305
|
+
/**
|
|
306
|
+
* Finds handler entries by handler role.
|
|
307
|
+
*
|
|
308
|
+
* @param kind Handler role.
|
|
309
|
+
* @returns Matching entries in registration and declaration order.
|
|
310
|
+
*/
|
|
311
|
+
findHandlersByKind<Kind extends HandlerKind>(kind: Kind): readonly RegisteredHandlerMetadata<Extract<HandlerMetadata, {
|
|
312
|
+
readonly kind: Kind;
|
|
313
|
+
}>>[];
|
|
314
|
+
/**
|
|
315
|
+
* Finds handler entries by message type name.
|
|
316
|
+
*
|
|
317
|
+
* @param messageTypeName Fully qualified command or event type name.
|
|
318
|
+
* @returns Matching entries in registration and declaration order.
|
|
319
|
+
*/
|
|
320
|
+
findByMessage(messageTypeName: string): readonly RegisteredHandlerMetadata[];
|
|
321
|
+
/**
|
|
322
|
+
* Finds the unique command assignment for a command type.
|
|
323
|
+
*
|
|
324
|
+
* @param commandTypeName Fully qualified command type name.
|
|
325
|
+
* @returns The assignment when registered.
|
|
326
|
+
*/
|
|
327
|
+
findCommandAssignment(commandTypeName: string): RegisteredHandlerMetadata<CommandAssignmentHandlerMetadata> | undefined;
|
|
328
|
+
/**
|
|
329
|
+
* Finds the unique event applier for a state and event type.
|
|
330
|
+
*
|
|
331
|
+
* @param stateTypeName Fully qualified entity state type name.
|
|
332
|
+
* @param eventTypeName Fully qualified event type name.
|
|
333
|
+
* @returns The applier when registered.
|
|
334
|
+
*/
|
|
335
|
+
findEventApplication(stateTypeName: string, eventTypeName: string): RegisteredHandlerMetadata<EventApplicationHandlerMetadata> | undefined;
|
|
336
|
+
}
|
|
337
|
+
/**
|
|
338
|
+
* Caller-owned registry for lookup-only handler metadata and duplicate validation.
|
|
339
|
+
*/
|
|
340
|
+
export declare class HandlerMetadataRegistry implements HandlerMetadataRegistryLookup {
|
|
341
|
+
#private;
|
|
342
|
+
/**
|
|
343
|
+
* Creates a caller-owned registry and optionally registers metadata.
|
|
344
|
+
*
|
|
345
|
+
* @param entityHandlers Entity metadata to register in iteration order.
|
|
346
|
+
*/
|
|
347
|
+
constructor(entityHandlers?: Iterable<EntityHandlersMetadata>);
|
|
348
|
+
/**
|
|
349
|
+
* Registers one entity handler metadata object.
|
|
350
|
+
*
|
|
351
|
+
* @param metadata Entity handler metadata to register.
|
|
352
|
+
* @returns The registered metadata unchanged.
|
|
353
|
+
*/
|
|
354
|
+
register<Metadata extends EntityHandlersMetadata>(metadata: Metadata): Metadata;
|
|
355
|
+
/**
|
|
356
|
+
* Returns registered entity handler metadata in registration order.
|
|
357
|
+
*
|
|
358
|
+
* @returns A fresh frozen metadata list.
|
|
359
|
+
*/
|
|
360
|
+
listEntityHandlers(): readonly EntityHandlersMetadata[];
|
|
361
|
+
/**
|
|
362
|
+
* Returns registered handler entries in registration and declaration order.
|
|
363
|
+
*
|
|
364
|
+
* @returns A fresh frozen registered-handler list.
|
|
365
|
+
*/
|
|
366
|
+
listHandlers(): readonly RegisteredHandlerMetadata[];
|
|
367
|
+
/**
|
|
368
|
+
* Finds entity handler metadata by state type name.
|
|
369
|
+
*
|
|
370
|
+
* @param stateTypeName Fully qualified entity state type name.
|
|
371
|
+
* @returns Matching metadata in registration order.
|
|
372
|
+
*/
|
|
373
|
+
findByState(stateTypeName: string): readonly EntityHandlersMetadata[];
|
|
374
|
+
/**
|
|
375
|
+
* Finds handler entries by handler role.
|
|
376
|
+
*
|
|
377
|
+
* @param kind Handler role.
|
|
378
|
+
* @returns Matching entries in registration and declaration order.
|
|
379
|
+
*/
|
|
380
|
+
findHandlersByKind<Kind extends HandlerKind>(kind: Kind): readonly RegisteredHandlerMetadata<Extract<HandlerMetadata, {
|
|
381
|
+
readonly kind: Kind;
|
|
382
|
+
}>>[];
|
|
383
|
+
/**
|
|
384
|
+
* Finds handler entries by message type name.
|
|
385
|
+
*
|
|
386
|
+
* @param messageTypeName Fully qualified command or event type name.
|
|
387
|
+
* @returns Matching entries in registration and declaration order.
|
|
388
|
+
*/
|
|
389
|
+
findByMessage(messageTypeName: string): readonly RegisteredHandlerMetadata[];
|
|
390
|
+
/**
|
|
391
|
+
* Finds the unique command assignment for a command type.
|
|
392
|
+
*
|
|
393
|
+
* @param commandTypeName Fully qualified command type name.
|
|
394
|
+
* @returns The assignment when registered.
|
|
395
|
+
*/
|
|
396
|
+
findCommandAssignment(commandTypeName: string): RegisteredHandlerMetadata<CommandAssignmentHandlerMetadata> | undefined;
|
|
397
|
+
/**
|
|
398
|
+
* Finds the unique event applier for a state and event type.
|
|
399
|
+
*
|
|
400
|
+
* @param stateTypeName Fully qualified entity state type name.
|
|
401
|
+
* @param eventTypeName Fully qualified event type name.
|
|
402
|
+
* @returns The applier when registered.
|
|
403
|
+
*/
|
|
404
|
+
findEventApplication(stateTypeName: string, eventTypeName: string): RegisteredHandlerMetadata<EventApplicationHandlerMetadata> | undefined;
|
|
405
|
+
}
|
|
406
|
+
/**
|
|
407
|
+
* Framework-owned arity override for generated handler metadata ingestion.
|
|
408
|
+
* @internal
|
|
409
|
+
*/
|
|
410
|
+
export interface HandlerArity {
|
|
411
|
+
/**
|
|
412
|
+
* Handler role whose public arity is being preserved.
|
|
413
|
+
*/
|
|
414
|
+
readonly kind: Exclude<HandlerKind, "event-application">;
|
|
415
|
+
/**
|
|
416
|
+
* Entity instance method name selected by generated metadata.
|
|
417
|
+
*/
|
|
418
|
+
readonly methodName: string;
|
|
419
|
+
/**
|
|
420
|
+
* Public method arity: `handler(signal)` or `handler(signal, context)`.
|
|
421
|
+
*/
|
|
422
|
+
readonly parameterCount: HandlerParameterCount;
|
|
423
|
+
/**
|
|
424
|
+
* Origin carried by generated receptor metadata.
|
|
425
|
+
*/
|
|
426
|
+
readonly origin?: HandlerOrigin;
|
|
427
|
+
/**
|
|
428
|
+
* Generated Protobuf-ES schemas emitted by the handler return type.
|
|
429
|
+
*/
|
|
430
|
+
readonly emittedSchemas?: readonly DescriptorMessageSchema[];
|
|
431
|
+
/**
|
|
432
|
+
* Optional generated Event field filter.
|
|
433
|
+
*/
|
|
434
|
+
readonly where?: WhereOptions;
|
|
435
|
+
}
|
|
436
|
+
/**
|
|
437
|
+
* Builds and validates metadata for one entity class.
|
|
438
|
+
*/
|
|
439
|
+
declare class EntityHandlersOwner {
|
|
440
|
+
#private;
|
|
441
|
+
/**
|
|
442
|
+
* Creates handler metadata without invoking entity methods.
|
|
443
|
+
*
|
|
444
|
+
* @param entityType Entity class whose prototype owns the methods.
|
|
445
|
+
* @param stateSchema Generated schema for the entity state.
|
|
446
|
+
* @param define Callback that registers handlers with the builder.
|
|
447
|
+
* @returns Frozen metadata for the entity class.
|
|
448
|
+
*/
|
|
449
|
+
define<Instance extends object, StateSchema extends DescriptorMessageSchema>(entityType: EntityClass<Instance>, stateSchema: StateSchema, define: (builder: HandlerRegistrationBuilder<Instance>) => readonly HandlerMetadata<DescriptorMessageSchema, HandlerMethodName<Instance>>[]): EntityHandlersMetadata<Instance, StateSchema>;
|
|
450
|
+
/**
|
|
451
|
+
* Checks that metadata was created by this package.
|
|
452
|
+
*
|
|
453
|
+
* @param metadata Metadata to inspect.
|
|
454
|
+
* @returns Whether the metadata is package-authentic.
|
|
455
|
+
* @internal
|
|
456
|
+
*/
|
|
457
|
+
isAuthentic(metadata: EntityHandlersMetadata): metadata is EntityHandlersMetadata;
|
|
458
|
+
/**
|
|
459
|
+
* Returns schemas emitted by generated handler metadata.
|
|
460
|
+
*
|
|
461
|
+
* @param handler Handler metadata to inspect.
|
|
462
|
+
* @returns Frozen emitted schemas.
|
|
463
|
+
* @internal
|
|
464
|
+
*/
|
|
465
|
+
emittedSchemas(handler: HandlerMetadata): readonly DescriptorMessageSchema[];
|
|
466
|
+
/**
|
|
467
|
+
* Copies generated emitted-schema metadata between cloned handlers.
|
|
468
|
+
*
|
|
469
|
+
* @param source Source handler metadata.
|
|
470
|
+
* @param target Cloned target handler metadata.
|
|
471
|
+
* @internal
|
|
472
|
+
*/
|
|
473
|
+
copyEmittedSchemas(source: HandlerMetadata, target: HandlerMetadata): void;
|
|
474
|
+
/**
|
|
475
|
+
* Creates handler metadata using generated arity metadata.
|
|
476
|
+
*
|
|
477
|
+
* @param entityType Entity class whose prototype owns the methods.
|
|
478
|
+
* @param stateSchema Generated schema for the entity state.
|
|
479
|
+
* @param define Callback that registers handlers with the builder.
|
|
480
|
+
* @param arities Generated arity metadata.
|
|
481
|
+
* @returns Frozen metadata for the entity class.
|
|
482
|
+
* @internal
|
|
483
|
+
*/
|
|
484
|
+
defineArity<Instance extends object, StateSchema extends DescriptorMessageSchema>(entityType: EntityClass<Instance>, stateSchema: StateSchema, define: (builder: HandlerRegistrationBuilder<Instance>) => readonly HandlerMetadata<DescriptorMessageSchema, HandlerMethodName<Instance>>[], arities: Iterable<HandlerArity>): EntityHandlersMetadata<Instance, StateSchema>;
|
|
485
|
+
}
|
|
486
|
+
/**
|
|
487
|
+
* Internal metadata authority for handler registration, generated metadata, and cloning.
|
|
488
|
+
* @internal
|
|
489
|
+
*/
|
|
490
|
+
export declare const HandlerMetadataValues: Readonly<EntityHandlersOwner>;
|
|
491
|
+
/**
|
|
492
|
+
* Defines explicit handler metadata for one entity class.
|
|
493
|
+
*/
|
|
494
|
+
interface EntityHandlerDefinitions {
|
|
495
|
+
/**
|
|
496
|
+
* Creates handler metadata without invoking entity methods.
|
|
497
|
+
*
|
|
498
|
+
* @param entityType Entity class whose prototype owns the methods.
|
|
499
|
+
* @param stateSchema Generated schema for the entity state.
|
|
500
|
+
* @param define Callback that registers handlers with the builder.
|
|
501
|
+
* @returns Frozen metadata for the entity class.
|
|
502
|
+
*/
|
|
503
|
+
define<Instance extends object, StateSchema extends DescriptorMessageSchema>(entityType: EntityClass<Instance>, stateSchema: StateSchema, define: (builder: HandlerRegistrationBuilder<Instance>) => readonly HandlerMetadata<DescriptorMessageSchema, HandlerMethodName<Instance>>[]): EntityHandlersMetadata<Instance, StateSchema>;
|
|
504
|
+
}
|
|
505
|
+
/**
|
|
506
|
+
* Defines metadata for explicitly registered entity handlers.
|
|
507
|
+
*/
|
|
508
|
+
export declare const EntityHandlers: Readonly<EntityHandlerDefinitions>;
|
|
509
|
+
export {};
|
|
510
|
+
//# sourceMappingURL=handler-metadata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handler-metadata.d.ts","sourceRoot":"","sources":["../../src/handler/handler-metadata.ts"],"names":[],"mappings":"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"}
|