@cnstra/core 1.8.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/README.md +17 -612
  2. package/dist/CNS.d.ts +6 -9
  3. package/dist/CNS.d.ts.map +1 -1
  4. package/dist/CNSCollateral.d.ts +3 -5
  5. package/dist/CNSCollateral.d.ts.map +1 -1
  6. package/dist/CNSInstanceNeuronQueue.d.ts +0 -1
  7. package/dist/CNSInstanceNeuronQueue.d.ts.map +1 -1
  8. package/dist/CNSNetwork.d.ts +16 -20
  9. package/dist/CNSNetwork.d.ts.map +1 -1
  10. package/dist/CNSNeuronActivationPump.d.ts +5 -5
  11. package/dist/CNSNeuronActivationPump.d.ts.map +1 -1
  12. package/dist/CNSStimulation.d.ts +16 -15
  13. package/dist/CNSStimulation.d.ts.map +1 -1
  14. package/dist/CNSStimulationContextStore.d.ts +6 -6
  15. package/dist/CNSStimulationContextStore.d.ts.map +1 -1
  16. package/dist/factory/index.d.ts +97 -14
  17. package/dist/factory/index.d.ts.map +1 -1
  18. package/dist/index.cjs +235 -197
  19. package/dist/index.cjs.map +1 -1
  20. package/dist/index.d.ts +4 -1
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +234 -198
  23. package/dist/index.js.map +1 -1
  24. package/dist/interfaces/ICNS.d.ts +5 -4
  25. package/dist/interfaces/ICNS.d.ts.map +1 -1
  26. package/dist/interfaces/ICNSCollateral.d.ts +3 -3
  27. package/dist/interfaces/ICNSCollateral.d.ts.map +1 -1
  28. package/dist/interfaces/ICNSStimulationContextStore.d.ts +5 -6
  29. package/dist/interfaces/ICNSStimulationContextStore.d.ts.map +1 -1
  30. package/dist/types/TCNSAfferentPath.d.ts +4 -0
  31. package/dist/types/TCNSAfferentPath.d.ts.map +1 -0
  32. package/dist/types/TCNSAxon.d.ts +23 -2
  33. package/dist/types/TCNSAxon.d.ts.map +1 -1
  34. package/dist/types/TCNSDendrite.d.ts +6 -6
  35. package/dist/types/TCNSDendrite.d.ts.map +1 -1
  36. package/dist/types/TCNSModality.d.ts +5 -0
  37. package/dist/types/TCNSModality.d.ts.map +1 -0
  38. package/dist/types/TCNSNeuron.d.ts +3 -3
  39. package/dist/types/TCNSNeuron.d.ts.map +1 -1
  40. package/dist/types/TCNSNeuronActivationTask.d.ts +5 -5
  41. package/dist/types/TCNSNeuronActivationTask.d.ts.map +1 -1
  42. package/dist/types/TCNSNeuronActivationTaskFailure.d.ts +2 -2
  43. package/dist/types/TCNSNeuronActivationTaskFailure.d.ts.map +1 -1
  44. package/dist/types/TCNSNeuronResponseReturn.d.ts +8 -2
  45. package/dist/types/TCNSNeuronResponseReturn.d.ts.map +1 -1
  46. package/dist/types/TCNSPersist.d.ts +16 -0
  47. package/dist/types/TCNSPersist.d.ts.map +1 -0
  48. package/dist/types/TCNSSignal.d.ts +4 -3
  49. package/dist/types/TCNSSignal.d.ts.map +1 -1
  50. package/dist/types/TCNSStimulationOptions.d.ts +9 -9
  51. package/dist/types/TCNSStimulationOptions.d.ts.map +1 -1
  52. package/dist/types/TCNSStimulationQueueItem.d.ts +4 -3
  53. package/dist/types/TCNSStimulationQueueItem.d.ts.map +1 -1
  54. package/dist/types/TCNSStimulationResponse.d.ts +10 -11
  55. package/dist/types/TCNSStimulationResponse.d.ts.map +1 -1
  56. package/dist/types/TCNSSubscriber.d.ts +1 -1
  57. package/dist/types/TCNSSubscriber.d.ts.map +1 -1
  58. package/package.json +1 -1
@@ -3,12 +3,12 @@ import { TCNSAxon } from './TCNSAxon';
3
3
  import { TCNSLocalContextValueStore } from './TCNSLocalContextValueStore';
4
4
  import { TNCNeuronResponseReturn } from './TCNSNeuronResponseReturn';
5
5
  import { ICNS } from '../interfaces/ICNS';
6
- export type TCNSDendrite<TContextValue, TSenderCollateralName extends string, TSenderAxonCollateralPayload, TReceiverCollateralName extends string, TReceiverAxonCollateralPayload, TAxonType extends TCNSAxon<TReceiverCollateralName, TReceiverAxonCollateralPayload>> = {
7
- collateral: CNSCollateral<TSenderCollateralName, TSenderAxonCollateralPayload>;
8
- response: (payload: TSenderAxonCollateralPayload, axon: TAxonType, ctx: TCNSLocalContextValueStore<TContextValue> & {
6
+ export type TCNSDendrite<TContextValue, TSenderCollateral extends CNSCollateral<unknown>, TAxonType extends TCNSAxon> = {
7
+ collateral: TSenderCollateral;
8
+ response: (payload: TSenderCollateral extends CNSCollateral<infer P> ? P : never, axon: TAxonType, ctx: TCNSLocalContextValueStore<TContextValue> & {
9
9
  abortSignal?: AbortSignal;
10
- cns?: ICNS<any, any, any>;
11
- stimulationId?: string;
12
- }) => TNCNeuronResponseReturn<TReceiverCollateralName, TReceiverAxonCollateralPayload>;
10
+ cns?: ICNS<any, any>;
11
+ stimulation?: any;
12
+ }) => TNCNeuronResponseReturn<TAxonType>;
13
13
  };
14
14
  //# sourceMappingURL=TCNSDendrite.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TCNSDendrite.d.ts","sourceRoot":"","sources":["../../src/types/TCNSDendrite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE1C,MAAM,MAAM,YAAY,CACpB,aAAa,EACb,qBAAqB,SAAS,MAAM,EACpC,4BAA4B,EAC5B,uBAAuB,SAAS,MAAM,EACtC,8BAA8B,EAE9B,SAAS,SAAS,QAAQ,CACtB,uBAAuB,EACvB,8BAA8B,CACjC,IACD;IACA,UAAU,EAAE,aAAa,CACrB,qBAAqB,EACrB,4BAA4B,CAC/B,CAAC;IACF,QAAQ,EAAE,CACN,OAAO,EAAE,4BAA4B,EACrC,IAAI,EAAE,SAAS,EACf,GAAG,EAAE,0BAA0B,CAAC,aAAa,CAAC,GAAG;QAC7C,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;KAC1B,KACA,uBAAuB,CACxB,uBAAuB,EACvB,8BAA8B,CACjC,CAAC;CACL,CAAC"}
1
+ {"version":3,"file":"TCNSDendrite.d.ts","sourceRoot":"","sources":["../../src/types/TCNSDendrite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE1C,MAAM,MAAM,YAAY,CACpB,aAAa,EACb,iBAAiB,SAAS,aAAa,CAAC,OAAO,CAAC,EAEhD,SAAS,SAAS,QAAQ,IAC1B;IACA,UAAU,EAAE,iBAAiB,CAAC;IAC9B,QAAQ,EAAE,CACN,OAAO,EAAE,iBAAiB,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,EACrE,IAAI,EAAE,SAAS,EACf,GAAG,EAAE,0BAA0B,CAAC,aAAa,CAAC,GAAG;QAC7C,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACrB,WAAW,CAAC,EAAE,GAAG,CAAC;KACrB,KACA,uBAAuB,CAAC,SAAS,CAAC,CAAC;CAC3C,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { TCNSAfferentPath } from './TCNSAfferentPath';
2
+ export type TCNSModality = {
3
+ afferentPaths: Record<string | number, TCNSAfferentPath>;
4
+ };
5
+ //# sourceMappingURL=TCNSModality.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TCNSModality.d.ts","sourceRoot":"","sources":["../../src/types/TCNSModality.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,MAAM,YAAY,GAAG;IACvB,aAAa,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,gBAAgB,CAAC,CAAC;CAC5D,CAAC"}
@@ -1,12 +1,12 @@
1
1
  import { TCNSAxon } from './TCNSAxon';
2
2
  import { TCNSDendrite } from './TCNSDendrite';
3
- export type TCNSNeuron<TContextValue, TName extends string, TCollateralName extends string, TCollateralPayload, TSenderCollateralName extends string, TSenderCollateralPayload, TAxonType extends TCNSAxon<TCollateralName, TCollateralPayload>> = {
4
- name: TName;
3
+ import { CNSCollateral } from '../CNSCollateral';
4
+ export type TCNSNeuron<TContextValue, TAxonType extends TCNSAxon = TCNSAxon> = {
5
5
  axon: TAxonType;
6
6
  /** Optional per-neuron concurrency limit. If undefined or <= 0, no limit is applied. */
7
7
  concurrency?: number;
8
8
  /** Optional per-neuron max processing duration in milliseconds. */
9
9
  maxDuration?: number;
10
- dendrites: TCNSDendrite<TContextValue, TSenderCollateralName, TSenderCollateralPayload, TCollateralName, TCollateralPayload, TAxonType>[];
10
+ dendrites: TCNSDendrite<TContextValue, CNSCollateral<unknown>, TAxonType>[];
11
11
  };
12
12
  //# sourceMappingURL=TCNSNeuron.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TCNSNeuron.d.ts","sourceRoot":"","sources":["../../src/types/TCNSNeuron.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,MAAM,UAAU,CAClB,aAAa,EACb,KAAK,SAAS,MAAM,EACpB,eAAe,SAAS,MAAM,EAC9B,kBAAkB,EAClB,qBAAqB,SAAS,MAAM,EACpC,wBAAwB,EACxB,SAAS,SAAS,QAAQ,CAAC,eAAe,EAAE,kBAAkB,CAAC,IAC/D;IACA,IAAI,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,SAAS,CAAC;IAChB,wFAAwF;IACxF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,YAAY,CACnB,aAAa,EACb,qBAAqB,EACrB,wBAAwB,EACxB,eAAe,EACf,kBAAkB,EAClB,SAAS,CACZ,EAAE,CAAC;CACP,CAAC"}
1
+ {"version":3,"file":"TCNSNeuron.d.ts","sourceRoot":"","sources":["../../src/types/TCNSNeuron.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,MAAM,UAAU,CAClB,aAAa,EACb,SAAS,SAAS,QAAQ,GAAG,QAAQ,IACrC;IACA,IAAI,EAAE,SAAS,CAAC;IAChB,wFAAwF;IACxF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,YAAY,CACnB,aAAa,EACb,aAAa,CAAC,OAAO,CAAC,EACtB,SAAS,CACZ,EAAE,CAAC;CACP,CAAC"}
@@ -1,8 +1,8 @@
1
+ import { CNSCollateral } from '../CNSCollateral';
1
2
  import { TCNSSignal } from './TCNSSignal';
2
- export type TCNSNeuronActivationTask<TCollateralName extends string = string, TNeuronName extends string = string> = {
3
- stimulationId: string;
4
- neuronId: TNeuronName;
5
- dendriteCollateralName: TCollateralName;
6
- input?: TCNSSignal<TCollateralName, any>;
3
+ export type TCNSNeuronActivationTask<TNeuron extends object = object, TCollateral extends CNSCollateral<unknown> = CNSCollateral<unknown>> = {
4
+ neuron: TNeuron;
5
+ dendriteCollateral: TCollateral;
6
+ input?: TCNSSignal<TCollateral>;
7
7
  };
8
8
  //# sourceMappingURL=TCNSNeuronActivationTask.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TCNSNeuronActivationTask.d.ts","sourceRoot":"","sources":["../../src/types/TCNSNeuronActivationTask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,MAAM,wBAAwB,CAChC,eAAe,SAAS,MAAM,GAAG,MAAM,EACvC,WAAW,SAAS,MAAM,GAAG,MAAM,IACnC;IACA,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,WAAW,CAAC;IACtB,sBAAsB,EAAE,eAAe,CAAC;IACxC,KAAK,CAAC,EAAE,UAAU,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;CAC5C,CAAC"}
1
+ {"version":3,"file":"TCNSNeuronActivationTask.d.ts","sourceRoot":"","sources":["../../src/types/TCNSNeuronActivationTask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,MAAM,wBAAwB,CAChC,OAAO,SAAS,MAAM,GAAG,MAAM,EAC/B,WAAW,SAAS,aAAa,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,IACnE;IACA,MAAM,EAAE,OAAO,CAAC;IAChB,kBAAkB,EAAE,WAAW,CAAC;IAChC,KAAK,CAAC,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;CACnC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { TCNSNeuronActivationTask } from './TCNSNeuronActivationTask';
2
- export type TCNSNeuronActivationTaskFailure<TCollateralName extends string = string, TNeuronName extends string = string> = {
3
- task: TCNSNeuronActivationTask<TCollateralName, TNeuronName>;
2
+ export type TCNSNeuronActivationTaskFailure<TNeuron extends object = object> = {
3
+ task: TCNSNeuronActivationTask<TNeuron>;
4
4
  error: Error;
5
5
  aborted: boolean;
6
6
  };
@@ -1 +1 @@
1
- {"version":3,"file":"TCNSNeuronActivationTaskFailure.d.ts","sourceRoot":"","sources":["../../src/types/TCNSNeuronActivationTaskFailure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,MAAM,MAAM,+BAA+B,CACvC,eAAe,SAAS,MAAM,GAAG,MAAM,EACvC,WAAW,SAAS,MAAM,GAAG,MAAM,IACnC;IACA,IAAI,EAAE,wBAAwB,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;IAC7D,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;CACpB,CAAC"}
1
+ {"version":3,"file":"TCNSNeuronActivationTaskFailure.d.ts","sourceRoot":"","sources":["../../src/types/TCNSNeuronActivationTaskFailure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,MAAM,MAAM,+BAA+B,CACvC,OAAO,SAAS,MAAM,GAAG,MAAM,IAC/B;IACA,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,CAAC;IACxC,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;CACpB,CAAC"}
@@ -1,3 +1,9 @@
1
- import { CNSCollateral } from '../CNSCollateral';
2
- export type TNCNeuronResponseReturn<TCollateralName extends string, TPayload> = Promise<ReturnType<CNSCollateral<TCollateralName, TPayload>['createSignal']>> | ReturnType<CNSCollateral<TCollateralName, TPayload>['createSignal']> | Promise<ReturnType<CNSCollateral<TCollateralName, TPayload>['createSignal']>[]> | ReturnType<CNSCollateral<TCollateralName, TPayload>['createSignal']>[] | Promise<void> | void;
1
+ import { TCNSSignal } from './TCNSSignal';
2
+ import { TCNSAxon } from './TCNSAxon';
3
+ /**
4
+ * Allowed return types from a neuron dendrite `response` function.
5
+ *
6
+ * Signals route by collateral object identity (not by name).
7
+ */
8
+ export type TNCNeuronResponseReturn<TAxon extends TCNSAxon> = Promise<TCNSSignal<TAxon[keyof TAxon]>> | TCNSSignal<TAxon[keyof TAxon]> | Promise<TCNSSignal<TAxon[keyof TAxon]>[]> | TCNSSignal<TAxon[keyof TAxon]>[] | Promise<void> | void;
3
9
  //# sourceMappingURL=TCNSNeuronResponseReturn.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TCNSNeuronResponseReturn.d.ts","sourceRoot":"","sources":["../../src/types/TCNSNeuronResponseReturn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,MAAM,uBAAuB,CAAC,eAAe,SAAS,MAAM,EAAE,QAAQ,IACtE,OAAO,CACH,UAAU,CAAC,aAAa,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC,cAAc,CAAC,CAAC,CACvE,GACD,UAAU,CAAC,aAAa,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC,cAAc,CAAC,CAAC,GACpE,OAAO,CACH,UAAU,CAAC,aAAa,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC,cAAc,CAAC,CAAC,EAAE,CACzE,GACD,UAAU,CAAC,aAAa,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC,cAAc,CAAC,CAAC,EAAE,GACtE,OAAO,CAAC,IAAI,CAAC,GACb,IAAI,CAAC"}
1
+ {"version":3,"file":"TCNSNeuronResponseReturn.d.ts","sourceRoot":"","sources":["../../src/types/TCNSNeuronResponseReturn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;;;;GAIG;AACH,MAAM,MAAM,uBAAuB,CAAC,KAAK,SAAS,QAAQ,IACpD,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,GACvC,UAAU,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,GAC9B,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC,GACzC,UAAU,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,GAChC,OAAO,CAAC,IAAI,CAAC,GACb,IAAI,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { CNSCollateral } from '../CNSCollateral';
2
+ import { TCNSNeuron } from './TCNSNeuron';
3
+ type CNSCollateralLike = InstanceType<typeof CNSCollateral>;
4
+ export type TCNSNeuronPersistOptions<TNeuron extends TCNSNeuron<unknown, any> = TCNSNeuron<unknown, any>> = {
5
+ name: string;
6
+ neuron: TNeuron;
7
+ };
8
+ export type TCNSCollateralPersistOptions<TCollateral extends CNSCollateralLike = CNSCollateralLike> = {
9
+ name: string;
10
+ collateral: TCollateral;
11
+ };
12
+ export type TCNSStimulationPersistOptions = {
13
+ stimulationId: string;
14
+ };
15
+ export {};
16
+ //# sourceMappingURL=TCNSPersist.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TCNSPersist.d.ts","sourceRoot":"","sources":["../../src/types/TCNSPersist.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,KAAK,iBAAiB,GAAG,YAAY,CAAC,OAAO,aAAa,CAAC,CAAC;AAE5D,MAAM,MAAM,wBAAwB,CAChC,OAAO,SAAS,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,IACnE;IACA,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,4BAA4B,CACpC,WAAW,SAAS,iBAAiB,GAAG,iBAAiB,IACzD;IACA,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,WAAW,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IACxC,aAAa,EAAE,MAAM,CAAC;CACzB,CAAC"}
@@ -1,5 +1,6 @@
1
- export type TCNSSignal<TCollateralName extends string, TPayload> = {
2
- collateralName: TCollateralName;
3
- payload?: TPayload;
1
+ import { CNSCollateral } from '../CNSCollateral';
2
+ export type TCNSSignal<TCollateral extends CNSCollateral<unknown>> = {
3
+ collateral: TCollateral;
4
+ payload?: TCollateral extends CNSCollateral<infer P> ? P : never;
4
5
  };
5
6
  //# sourceMappingURL=TCNSSignal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TCNSSignal.d.ts","sourceRoot":"","sources":["../../src/types/TCNSSignal.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,CAAC,eAAe,SAAS,MAAM,EAAE,QAAQ,IAAI;IAC/D,cAAc,EAAE,eAAe,CAAC;IAChC,OAAO,CAAC,EAAE,QAAQ,CAAC;CACtB,CAAC"}
1
+ {"version":3,"file":"TCNSSignal.d.ts","sourceRoot":"","sources":["../../src/types/TCNSSignal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,MAAM,UAAU,CAAC,WAAW,SAAS,aAAa,CAAC,OAAO,CAAC,IAAI;IACjE,UAAU,EAAE,WAAW,CAAC;IACxB,OAAO,CAAC,EAAE,WAAW,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;CACpE,CAAC"}
@@ -1,14 +1,14 @@
1
- import { TCNSStimulationResponse } from './TCNSStimulationResponse';
2
- import { TCNSStimulationSerializedContextValue } from './TCNSStimulationSerializedContextValue';
3
- import { TCNSNeuron } from './TCNSNeuron';
4
- import { TCNSDendrite } from './TCNSDendrite';
5
- export type TCNSStimulationOptions<TCollateralName extends string, TInputPayload, TOutputPayload, TNeuronName extends string = string, TNeuron extends TCNSNeuron<any, TNeuronName, TCollateralName, any, any, any, any> = TCNSNeuron<any, TNeuronName, TCollateralName, any, any, any, any>, TDendrite extends TCNSDendrite<any, any, any, any, any, any> = TCNSDendrite<any, any, any, any, any, any>> = {
1
+ import { ICNSStimulationContextStore } from '../interfaces/ICNSStimulationContextStore';
2
+ import { TCNSModality } from './TCNSModality';
3
+ import { TCNSAfferentPath } from './TCNSAfferentPath';
4
+ export type TCNSStimulationOptions<TResponse, TStimulationContext extends Object = {}> = {
6
5
  maxNeuronHops?: number;
7
- allowName?: (t: string) => boolean;
8
- onResponse?: (response: TCNSStimulationResponse<TCollateralName, TInputPayload, TOutputPayload, TNeuronName>) => void | Promise<void>;
6
+ onResponse?: (response: TResponse) => void | Promise<void>;
9
7
  abortSignal?: AbortSignal;
10
- stimulationId?: string;
11
- contextValues?: TCNSStimulationSerializedContextValue;
8
+ ctx?: ICNSStimulationContextStore;
12
9
  concurrency?: number;
10
+ modality?: TCNSModality;
11
+ afferentPath?: TCNSAfferentPath;
12
+ stimulationContext?: TStimulationContext;
13
13
  };
14
14
  //# sourceMappingURL=TCNSStimulationOptions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TCNSStimulationOptions.d.ts","sourceRoot":"","sources":["../../src/types/TCNSStimulationOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,qCAAqC,EAAE,MAAM,yCAAyC,CAAC;AAEhG,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,MAAM,sBAAsB,CAC9B,eAAe,SAAS,MAAM,EAC9B,aAAa,EACb,cAAc,EACd,WAAW,SAAS,MAAM,GAAG,MAAM,EACnC,OAAO,SAAS,UAAU,CACtB,GAAG,EACH,WAAW,EACX,eAAe,EACf,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,CACN,GAAG,UAAU,CAAC,GAAG,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EACrE,SAAS,SAAS,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,YAAY,CACvE,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,CACN,IACD;IACA,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;IACnC,UAAU,CAAC,EAAE,CACT,QAAQ,EAAE,uBAAuB,CAC7B,eAAe,EACf,aAAa,EACb,cAAc,EACd,WAAW,CACd,KACA,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,qCAAqC,CAAC;IACtD,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC"}
1
+ {"version":3,"file":"TCNSStimulationOptions.d.ts","sourceRoot":"","sources":["../../src/types/TCNSStimulationOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,MAAM,sBAAsB,CAC9B,SAAS,EACT,mBAAmB,SAAS,MAAM,GAAG,EAAE,IACvC;IACA,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,GAAG,CAAC,EAAE,2BAA2B,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,kBAAkB,CAAC,EAAE,mBAAmB,CAAC;CAC5C,CAAC"}
@@ -2,9 +2,10 @@ import { TCNSSubscriber } from './TCNSSubscriber';
2
2
  import { TCNSSignal } from './TCNSSignal';
3
3
  import { TCNSNeuron } from './TCNSNeuron';
4
4
  import { TCNSDendrite } from './TCNSDendrite';
5
- export type TCNSStimulationQueueItem<TCollateralName extends string, TNeuronName extends string, TNeuron extends TCNSNeuron<any, TNeuronName, TCollateralName, any, any, any, any>, TDendrite extends TCNSDendrite<any, any, any, any, any, any>> = {
6
- neuronId: TNeuronName;
5
+ import { CNSCollateral } from '../CNSCollateral';
6
+ export type TCNSStimulationQueueItem<TNeuron extends TCNSNeuron<any, any>, TDendrite extends TCNSDendrite<any, any, any>, TInputCollateral extends CNSCollateral<unknown> = CNSCollateral<unknown>> = {
7
+ neuron: TNeuron;
7
8
  subscriber: TCNSSubscriber<TNeuron, TDendrite>;
8
- inputSignal?: TCNSSignal<TCollateralName, any>;
9
+ inputSignal?: TCNSSignal<TInputCollateral>;
9
10
  };
10
11
  //# sourceMappingURL=TCNSStimulationQueueItem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TCNSStimulationQueueItem.d.ts","sourceRoot":"","sources":["../../src/types/TCNSStimulationQueueItem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,MAAM,wBAAwB,CAChC,eAAe,SAAS,MAAM,EAC9B,WAAW,SAAS,MAAM,EAC1B,OAAO,SAAS,UAAU,CACtB,GAAG,EACH,WAAW,EACX,eAAe,EACf,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,CACN,EACD,SAAS,SAAS,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAC5D;IACA,QAAQ,EAAE,WAAW,CAAC;IACtB,UAAU,EAAE,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC/C,WAAW,CAAC,EAAE,UAAU,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;CAClD,CAAC"}
1
+ {"version":3,"file":"TCNSStimulationQueueItem.d.ts","sourceRoot":"","sources":["../../src/types/TCNSStimulationQueueItem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,MAAM,wBAAwB,CAChC,OAAO,SAAS,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,EACpC,SAAS,SAAS,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAC7C,gBAAgB,SAAS,aAAa,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,IACxE;IACA,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC/C,WAAW,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC;CAC9C,CAAC"}
@@ -1,17 +1,16 @@
1
1
  import { TCNSSignal } from './TCNSSignal';
2
- import { TCNSStimulationSerializedContextValue } from './TCNSStimulationSerializedContextValue';
3
2
  import { CNSStimulation } from '../CNSStimulation';
4
- import { TCNSNeuron } from './TCNSNeuron';
5
- import { TCNSDendrite } from './TCNSDendrite';
6
- export type TCNSStimulationResponse<TCollateralName extends string, TInputPayload, TOutputPayload, TNeuronName extends string = string> = {
7
- stimulationId?: string;
8
- inputSignal?: TCNSSignal<TCollateralName, TInputPayload>;
9
- outputSignal?: Omit<TCNSSignal<TCollateralName, TOutputPayload>, 'payload'> & {
10
- payload?: unknown;
11
- };
12
- contextValue: TCNSStimulationSerializedContextValue;
3
+ import { TCNSModality } from './TCNSModality';
4
+ import { TCNSAfferentPath } from './TCNSAfferentPath';
5
+ import { CNSCollateral } from '../CNSCollateral';
6
+ export type TCNSStimulationResponse<TInputCollateral extends CNSCollateral<unknown> = CNSCollateral<unknown>, TOutputCollateral extends CNSCollateral<unknown> = CNSCollateral<unknown>> = {
7
+ inputSignal?: TCNSSignal<TInputCollateral>;
8
+ outputSignal?: TCNSSignal<TOutputCollateral>;
9
+ modality?: TCNSModality;
10
+ afferentPath?: TCNSAfferentPath;
11
+ contextValue: Map<object, unknown>;
13
12
  queueLength: number;
14
- stimulation: CNSStimulation<TCollateralName, TNeuronName, TCNSNeuron<any, TNeuronName, TCollateralName, any, any, any, any>, TCNSDendrite<any, any, any, any, any, any>, TInputPayload, TOutputPayload>;
13
+ stimulation: CNSStimulation<any, any>;
15
14
  error?: Error;
16
15
  hops?: number;
17
16
  };
@@ -1 +1 @@
1
- {"version":3,"file":"TCNSStimulationResponse.d.ts","sourceRoot":"","sources":["../../src/types/TCNSStimulationResponse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,qCAAqC,EAAE,MAAM,yCAAyC,CAAC;AAChG,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,MAAM,uBAAuB,CAC/B,eAAe,SAAS,MAAM,EAC9B,aAAa,EACb,cAAc,EACd,WAAW,SAAS,MAAM,GAAG,MAAM,IACnC;IACA,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,UAAU,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IACzD,YAAY,CAAC,EAAE,IAAI,CACf,UAAU,CAAC,eAAe,EAAE,cAAc,CAAC,EAC3C,SAAS,CACZ,GAAG;QACA,OAAO,CAAC,EAAE,OAAO,CAAC;KACrB,CAAC;IACF,YAAY,EAAE,qCAAqC,CAAC;IAEpD,WAAW,EAAE,MAAM,CAAC;IAEpB,WAAW,EAAE,cAAc,CACvB,eAAe,EACf,WAAW,EACX,UAAU,CAAC,GAAG,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EACjE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAC1C,aAAa,EACb,cAAc,CACjB,CAAC;IAEF,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC"}
1
+ {"version":3,"file":"TCNSStimulationResponse.d.ts","sourceRoot":"","sources":["../../src/types/TCNSStimulationResponse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,MAAM,uBAAuB,CAC/B,gBAAgB,SAAS,aAAa,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,EACxE,iBAAiB,SAAS,aAAa,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,IACzE;IACA,WAAW,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAC3C,YAAY,CAAC,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAC7C,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC,WAAW,EAAE,MAAM,CAAC;IAEpB,WAAW,EAAE,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAEtC,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { TCNSDendrite } from './TCNSDendrite';
2
2
  import { TCNSNeuron } from './TCNSNeuron';
3
- export type TCNSSubscriber<TNeuron extends TCNSNeuron<any, any, any, any, any, any, any>, TDendrite extends TCNSDendrite<any, any, any, any, any, any>> = {
3
+ export type TCNSSubscriber<TNeuron extends TCNSNeuron<any, any>, TDendrite extends TCNSDendrite<any, any, any>> = {
4
4
  neuron: TNeuron;
5
5
  dendrite: TDendrite;
6
6
  };
@@ -1 +1 @@
1
- {"version":3,"file":"TCNSSubscriber.d.ts","sourceRoot":"","sources":["../../src/types/TCNSSubscriber.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,MAAM,cAAc,CACtB,OAAO,SAAS,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAC7D,SAAS,SAAS,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAC5D;IACA,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,SAAS,CAAC;CACvB,CAAC"}
1
+ {"version":3,"file":"TCNSSubscriber.d.ts","sourceRoot":"","sources":["../../src/types/TCNSSubscriber.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,MAAM,cAAc,CACtB,OAAO,SAAS,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,EACpC,SAAS,SAAS,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAC7C;IACA,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,SAAS,CAAC;CACvB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cnstra/core",
3
- "version": "1.8.0",
3
+ "version": "2.0.0",
4
4
  "description": "Neural network-inspired event flow system for building reactive applications with dependency-injected neurons and synapses",
5
5
  "keywords": [
6
6
  "neural-network",