@xyo-network/diviner-stateful 2.99.2 → 2.99.4

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 (41) hide show
  1. package/dist/neutral/Config.d.cts +22 -0
  2. package/dist/neutral/Config.d.cts.map +1 -0
  3. package/dist/neutral/Config.d.mts +22 -0
  4. package/dist/neutral/Config.d.mts.map +1 -0
  5. package/dist/neutral/Config.d.ts +22 -0
  6. package/dist/neutral/Config.d.ts.map +1 -0
  7. package/dist/neutral/Diviner.d.cts +100 -0
  8. package/dist/neutral/Diviner.d.cts.map +1 -0
  9. package/dist/neutral/Diviner.d.mts +100 -0
  10. package/dist/neutral/Diviner.d.mts.map +1 -0
  11. package/dist/neutral/Diviner.d.ts +100 -0
  12. package/dist/neutral/Diviner.d.ts.map +1 -0
  13. package/dist/neutral/DivinerMixin.d.cts +515 -0
  14. package/dist/neutral/DivinerMixin.d.cts.map +1 -0
  15. package/dist/neutral/DivinerMixin.d.mts +515 -0
  16. package/dist/neutral/DivinerMixin.d.mts.map +1 -0
  17. package/dist/neutral/DivinerMixin.d.ts +515 -0
  18. package/dist/neutral/DivinerMixin.d.ts.map +1 -0
  19. package/dist/neutral/Params.d.cts +8 -0
  20. package/dist/neutral/Params.d.cts.map +1 -0
  21. package/dist/neutral/Params.d.mts +8 -0
  22. package/dist/neutral/Params.d.mts.map +1 -0
  23. package/dist/neutral/Params.d.ts +8 -0
  24. package/dist/neutral/Params.d.ts.map +1 -0
  25. package/dist/neutral/Schema.d.cts +3 -0
  26. package/dist/neutral/Schema.d.cts.map +1 -0
  27. package/dist/neutral/Schema.d.mts +3 -0
  28. package/dist/neutral/Schema.d.mts.map +1 -0
  29. package/dist/neutral/Schema.d.ts +3 -0
  30. package/dist/neutral/Schema.d.ts.map +1 -0
  31. package/dist/neutral/index.cjs +267 -0
  32. package/dist/neutral/index.cjs.map +1 -0
  33. package/dist/neutral/index.d.cts +6 -0
  34. package/dist/neutral/index.d.cts.map +1 -0
  35. package/dist/neutral/index.d.mts +6 -0
  36. package/dist/neutral/index.d.mts.map +1 -0
  37. package/dist/neutral/index.d.ts +6 -0
  38. package/dist/neutral/index.d.ts.map +1 -0
  39. package/dist/neutral/index.js +246 -0
  40. package/dist/neutral/index.js.map +1 -0
  41. package/package.json +23 -23
@@ -0,0 +1,22 @@
1
+ import { DivinerConfig } from '@xyo-network/diviner-model';
2
+ import { ModuleIdentifier } from '@xyo-network/module-model';
3
+ /**
4
+ * The schema for a Stateful Diviner config
5
+ */
6
+ export declare const StatefulDivinerConfigSchema: "network.xyo.diviner.stateful.config";
7
+ /**
8
+ * The schema for a Stateful Diviner config
9
+ */
10
+ export type StatefulDivinerConfigSchema = typeof StatefulDivinerConfigSchema;
11
+ /**
12
+ * The config for a Stateful Diviner
13
+ */
14
+ export type StatefulDivinerConfig = DivinerConfig<{
15
+ schema: StatefulDivinerConfigSchema;
16
+ stateStore: {
17
+ archivist: ModuleIdentifier;
18
+ boundWitnessDiviner: ModuleIdentifier;
19
+ payloadDiviner: ModuleIdentifier;
20
+ };
21
+ }>;
22
+ //# sourceMappingURL=Config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAI5D;;GAEG;AACH,eAAO,MAAM,2BAA2B,uCAA6C,CAAA;AACrF;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,OAAO,2BAA2B,CAAA;AAE5E;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC;IAChD,MAAM,EAAE,2BAA2B,CAAA;IACnC,UAAU,EAAE;QACV,SAAS,EAAE,gBAAgB,CAAA;QAC3B,mBAAmB,EAAE,gBAAgB,CAAA;QACrC,cAAc,EAAE,gBAAgB,CAAA;KACjC,CAAA;CACF,CAAC,CAAA"}
@@ -0,0 +1,22 @@
1
+ import { DivinerConfig } from '@xyo-network/diviner-model';
2
+ import { ModuleIdentifier } from '@xyo-network/module-model';
3
+ /**
4
+ * The schema for a Stateful Diviner config
5
+ */
6
+ export declare const StatefulDivinerConfigSchema: "network.xyo.diviner.stateful.config";
7
+ /**
8
+ * The schema for a Stateful Diviner config
9
+ */
10
+ export type StatefulDivinerConfigSchema = typeof StatefulDivinerConfigSchema;
11
+ /**
12
+ * The config for a Stateful Diviner
13
+ */
14
+ export type StatefulDivinerConfig = DivinerConfig<{
15
+ schema: StatefulDivinerConfigSchema;
16
+ stateStore: {
17
+ archivist: ModuleIdentifier;
18
+ boundWitnessDiviner: ModuleIdentifier;
19
+ payloadDiviner: ModuleIdentifier;
20
+ };
21
+ }>;
22
+ //# sourceMappingURL=Config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAI5D;;GAEG;AACH,eAAO,MAAM,2BAA2B,uCAA6C,CAAA;AACrF;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,OAAO,2BAA2B,CAAA;AAE5E;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC;IAChD,MAAM,EAAE,2BAA2B,CAAA;IACnC,UAAU,EAAE;QACV,SAAS,EAAE,gBAAgB,CAAA;QAC3B,mBAAmB,EAAE,gBAAgB,CAAA;QACrC,cAAc,EAAE,gBAAgB,CAAA;KACjC,CAAA;CACF,CAAC,CAAA"}
@@ -0,0 +1,22 @@
1
+ import { DivinerConfig } from '@xyo-network/diviner-model';
2
+ import { ModuleIdentifier } from '@xyo-network/module-model';
3
+ /**
4
+ * The schema for a Stateful Diviner config
5
+ */
6
+ export declare const StatefulDivinerConfigSchema: "network.xyo.diviner.stateful.config";
7
+ /**
8
+ * The schema for a Stateful Diviner config
9
+ */
10
+ export type StatefulDivinerConfigSchema = typeof StatefulDivinerConfigSchema;
11
+ /**
12
+ * The config for a Stateful Diviner
13
+ */
14
+ export type StatefulDivinerConfig = DivinerConfig<{
15
+ schema: StatefulDivinerConfigSchema;
16
+ stateStore: {
17
+ archivist: ModuleIdentifier;
18
+ boundWitnessDiviner: ModuleIdentifier;
19
+ payloadDiviner: ModuleIdentifier;
20
+ };
21
+ }>;
22
+ //# sourceMappingURL=Config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAI5D;;GAEG;AACH,eAAO,MAAM,2BAA2B,uCAA6C,CAAA;AACrF;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,OAAO,2BAA2B,CAAA;AAE5E;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC;IAChD,MAAM,EAAE,2BAA2B,CAAA;IACnC,UAAU,EAAE;QACV,SAAS,EAAE,gBAAgB,CAAA;QAC3B,mBAAmB,EAAE,gBAAgB,CAAA;QACrC,cAAc,EAAE,gBAAgB,CAAA;KACjC,CAAA;CACF,CAAC,CAAA"}
@@ -0,0 +1,100 @@
1
+ import { ArchivistWrapper } from '@xyo-network/archivist-wrapper';
2
+ import { AbstractDiviner } from '@xyo-network/diviner-abstract';
3
+ import { DivinerInstance, DivinerModuleEventData } from '@xyo-network/diviner-model';
4
+ import { DivinerWrapper } from '@xyo-network/diviner-wrapper';
5
+ import { ModuleState, StateDictionary } from '@xyo-network/module-model';
6
+ import { Payload, Schema, WithMeta } from '@xyo-network/payload-model';
7
+ import { StatefulDivinerParams } from './Params';
8
+ /**
9
+ * A Diviner that maintains state
10
+ */
11
+ export declare abstract class StatefulDiviner<TParams extends StatefulDivinerParams = StatefulDivinerParams, TIn extends Payload = Payload, TOut extends Payload = Payload, TEventData extends DivinerModuleEventData<DivinerInstance<TParams, TIn, TOut>, TIn, TOut> = DivinerModuleEventData<DivinerInstance<TParams, TIn, TOut>, TIn, TOut>, TState extends StateDictionary = StateDictionary> extends AbstractDiviner<TParams, TIn, TOut, TEventData> {
12
+ static readonly configSchemas: Schema[];
13
+ static readonly defaultConfigSchema: Schema;
14
+ /**
15
+ * The last state
16
+ */
17
+ protected _lastState?: WithMeta<ModuleState<TState>>;
18
+ /**
19
+ * Commit the internal state of the Diviner process. This is similar
20
+ * to a transaction completion in a database and should only be called
21
+ * when results have been successfully persisted to the appropriate
22
+ * external stores.
23
+ * @param nextState The state to commit
24
+ */
25
+ protected commitState(nextState: WithMeta<ModuleState<TState>>): Promise<void>;
26
+ /**
27
+ * Retrieves the archivist for the specified store
28
+ * @param store The store to retrieve the archivist for
29
+ * @returns The archivist for the specified store
30
+ */
31
+ protected getArchivistForStateStore(): Promise<ArchivistWrapper<import("@xyo-network/archivist-model").ArchivistModule<import("@xylabs/object").BaseParamsFields & {
32
+ account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
33
+ addToResolvers?: boolean | undefined;
34
+ allowNameResolution?: boolean | undefined;
35
+ config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
36
+ parents?: import("@xyo-network/archivist-model").ArchivistParents | undefined;
37
+ requireAllParents?: boolean | undefined;
38
+ schema: "network.xyo.archivist.config";
39
+ storeParentReads?: boolean | undefined;
40
+ }, "schema"> & {
41
+ schema: "network.xyo.archivist.config";
42
+ }, "schema"> & {
43
+ schema: string;
44
+ };
45
+ ephemeralQueryAccountEnabled?: boolean | undefined;
46
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
47
+ }, import("@xyo-network/archivist-model").ArchivistModuleEventData>>>;
48
+ /**
49
+ * Retrieves the BoundWitness Diviner for the specified store
50
+ * @param store The store to retrieve the BoundWitness Diviner for
51
+ * @returns The BoundWitness Diviner for the specified store
52
+ */
53
+ protected getBoundWitnessDivinerForStateStore(): Promise<DivinerWrapper<import("@xyo-network/diviner-model").DivinerModule<import("@xylabs/object").BaseParamsFields & {
54
+ account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
55
+ addToResolvers?: boolean | undefined;
56
+ allowNameResolution?: boolean | undefined;
57
+ config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
58
+ schema: "network.xyo.diviner.config";
59
+ }, "schema"> & {
60
+ schema: "network.xyo.diviner.config";
61
+ }, "schema"> & {
62
+ schema: string;
63
+ };
64
+ ephemeralQueryAccountEnabled?: boolean | undefined;
65
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
66
+ }, DivinerModuleEventData>, {
67
+ schema: string;
68
+ } & import("@xyo-network/payload-model").PayloadFields, {
69
+ schema: string;
70
+ } & import("@xyo-network/payload-model").PayloadFields>>;
71
+ /**
72
+ * Retrieves the Payload Diviner for the specified store
73
+ * @param store The store to retrieve the Payload Diviner for
74
+ * @returns The Payload Diviner for the specified store
75
+ */
76
+ protected getPayloadDivinerForStateStore(): Promise<DivinerWrapper<import("@xyo-network/diviner-model").DivinerModule<import("@xylabs/object").BaseParamsFields & {
77
+ account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
78
+ addToResolvers?: boolean | undefined;
79
+ allowNameResolution?: boolean | undefined;
80
+ config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
81
+ schema: "network.xyo.diviner.config";
82
+ }, "schema"> & {
83
+ schema: "network.xyo.diviner.config";
84
+ }, "schema"> & {
85
+ schema: string;
86
+ };
87
+ ephemeralQueryAccountEnabled?: boolean | undefined;
88
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
89
+ }, DivinerModuleEventData>, {
90
+ schema: string;
91
+ } & import("@xyo-network/payload-model").PayloadFields, {
92
+ schema: string;
93
+ } & import("@xyo-network/payload-model").PayloadFields>>;
94
+ /**
95
+ * Retrieves the last state of the Diviner process. Used to recover state after
96
+ * preemptions, reboots, etc.
97
+ */
98
+ protected retrieveState(): Promise<WithMeta<ModuleState<TState>> | undefined>;
99
+ }
100
+ //# sourceMappingURL=Diviner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../src/Diviner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAGjE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAE/D,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAiB,WAAW,EAAqB,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAE1G,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAGtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAIhD;;GAEG;AACH,8BAAsB,eAAe,CACnC,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,EAC7D,GAAG,SAAS,OAAO,GAAG,OAAO,EAC7B,IAAI,SAAS,OAAO,GAAG,OAAO,EAC9B,UAAU,SAAS,sBAAsB,CAAC,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,sBAAsB,CAChH,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,EACnC,GAAG,EACH,IAAI,CACL,EACD,MAAM,SAAS,eAAe,GAAG,eAAe,CAChD,SAAQ,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,CAAC;IACvD,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAwD;IACxG,gBAAyB,mBAAmB,EAAE,MAAM,CAA8B;IAElF;;OAEG;IACH,SAAS,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA;IAEpD;;;;;;OAMG;cACa,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IASpE;;;;OAIG;cACa,yBAAyB;;;;;;;;;;;;;;;;;IAMzC;;;;OAIG;cACa,mCAAmC;;;;;;;;;;;;;;;;;;IAMnD;;;;OAIG;cACa,8BAA8B;;;;;;;;;;;;;;;;;;IAM9C;;;OAGG;cACa,aAAa,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC;CAwCpF"}
@@ -0,0 +1,100 @@
1
+ import { ArchivistWrapper } from '@xyo-network/archivist-wrapper';
2
+ import { AbstractDiviner } from '@xyo-network/diviner-abstract';
3
+ import { DivinerInstance, DivinerModuleEventData } from '@xyo-network/diviner-model';
4
+ import { DivinerWrapper } from '@xyo-network/diviner-wrapper';
5
+ import { ModuleState, StateDictionary } from '@xyo-network/module-model';
6
+ import { Payload, Schema, WithMeta } from '@xyo-network/payload-model';
7
+ import { StatefulDivinerParams } from './Params';
8
+ /**
9
+ * A Diviner that maintains state
10
+ */
11
+ export declare abstract class StatefulDiviner<TParams extends StatefulDivinerParams = StatefulDivinerParams, TIn extends Payload = Payload, TOut extends Payload = Payload, TEventData extends DivinerModuleEventData<DivinerInstance<TParams, TIn, TOut>, TIn, TOut> = DivinerModuleEventData<DivinerInstance<TParams, TIn, TOut>, TIn, TOut>, TState extends StateDictionary = StateDictionary> extends AbstractDiviner<TParams, TIn, TOut, TEventData> {
12
+ static readonly configSchemas: Schema[];
13
+ static readonly defaultConfigSchema: Schema;
14
+ /**
15
+ * The last state
16
+ */
17
+ protected _lastState?: WithMeta<ModuleState<TState>>;
18
+ /**
19
+ * Commit the internal state of the Diviner process. This is similar
20
+ * to a transaction completion in a database and should only be called
21
+ * when results have been successfully persisted to the appropriate
22
+ * external stores.
23
+ * @param nextState The state to commit
24
+ */
25
+ protected commitState(nextState: WithMeta<ModuleState<TState>>): Promise<void>;
26
+ /**
27
+ * Retrieves the archivist for the specified store
28
+ * @param store The store to retrieve the archivist for
29
+ * @returns The archivist for the specified store
30
+ */
31
+ protected getArchivistForStateStore(): Promise<ArchivistWrapper<import("@xyo-network/archivist-model").ArchivistModule<import("@xylabs/object").BaseParamsFields & {
32
+ account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
33
+ addToResolvers?: boolean | undefined;
34
+ allowNameResolution?: boolean | undefined;
35
+ config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
36
+ parents?: import("@xyo-network/archivist-model").ArchivistParents | undefined;
37
+ requireAllParents?: boolean | undefined;
38
+ schema: "network.xyo.archivist.config";
39
+ storeParentReads?: boolean | undefined;
40
+ }, "schema"> & {
41
+ schema: "network.xyo.archivist.config";
42
+ }, "schema"> & {
43
+ schema: string;
44
+ };
45
+ ephemeralQueryAccountEnabled?: boolean | undefined;
46
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
47
+ }, import("@xyo-network/archivist-model").ArchivistModuleEventData>>>;
48
+ /**
49
+ * Retrieves the BoundWitness Diviner for the specified store
50
+ * @param store The store to retrieve the BoundWitness Diviner for
51
+ * @returns The BoundWitness Diviner for the specified store
52
+ */
53
+ protected getBoundWitnessDivinerForStateStore(): Promise<DivinerWrapper<import("@xyo-network/diviner-model").DivinerModule<import("@xylabs/object").BaseParamsFields & {
54
+ account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
55
+ addToResolvers?: boolean | undefined;
56
+ allowNameResolution?: boolean | undefined;
57
+ config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
58
+ schema: "network.xyo.diviner.config";
59
+ }, "schema"> & {
60
+ schema: "network.xyo.diviner.config";
61
+ }, "schema"> & {
62
+ schema: string;
63
+ };
64
+ ephemeralQueryAccountEnabled?: boolean | undefined;
65
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
66
+ }, DivinerModuleEventData>, {
67
+ schema: string;
68
+ } & import("@xyo-network/payload-model").PayloadFields, {
69
+ schema: string;
70
+ } & import("@xyo-network/payload-model").PayloadFields>>;
71
+ /**
72
+ * Retrieves the Payload Diviner for the specified store
73
+ * @param store The store to retrieve the Payload Diviner for
74
+ * @returns The Payload Diviner for the specified store
75
+ */
76
+ protected getPayloadDivinerForStateStore(): Promise<DivinerWrapper<import("@xyo-network/diviner-model").DivinerModule<import("@xylabs/object").BaseParamsFields & {
77
+ account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
78
+ addToResolvers?: boolean | undefined;
79
+ allowNameResolution?: boolean | undefined;
80
+ config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
81
+ schema: "network.xyo.diviner.config";
82
+ }, "schema"> & {
83
+ schema: "network.xyo.diviner.config";
84
+ }, "schema"> & {
85
+ schema: string;
86
+ };
87
+ ephemeralQueryAccountEnabled?: boolean | undefined;
88
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
89
+ }, DivinerModuleEventData>, {
90
+ schema: string;
91
+ } & import("@xyo-network/payload-model").PayloadFields, {
92
+ schema: string;
93
+ } & import("@xyo-network/payload-model").PayloadFields>>;
94
+ /**
95
+ * Retrieves the last state of the Diviner process. Used to recover state after
96
+ * preemptions, reboots, etc.
97
+ */
98
+ protected retrieveState(): Promise<WithMeta<ModuleState<TState>> | undefined>;
99
+ }
100
+ //# sourceMappingURL=Diviner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../src/Diviner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAGjE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAE/D,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAiB,WAAW,EAAqB,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAE1G,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAGtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAIhD;;GAEG;AACH,8BAAsB,eAAe,CACnC,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,EAC7D,GAAG,SAAS,OAAO,GAAG,OAAO,EAC7B,IAAI,SAAS,OAAO,GAAG,OAAO,EAC9B,UAAU,SAAS,sBAAsB,CAAC,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,sBAAsB,CAChH,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,EACnC,GAAG,EACH,IAAI,CACL,EACD,MAAM,SAAS,eAAe,GAAG,eAAe,CAChD,SAAQ,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,CAAC;IACvD,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAwD;IACxG,gBAAyB,mBAAmB,EAAE,MAAM,CAA8B;IAElF;;OAEG;IACH,SAAS,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA;IAEpD;;;;;;OAMG;cACa,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IASpE;;;;OAIG;cACa,yBAAyB;;;;;;;;;;;;;;;;;IAMzC;;;;OAIG;cACa,mCAAmC;;;;;;;;;;;;;;;;;;IAMnD;;;;OAIG;cACa,8BAA8B;;;;;;;;;;;;;;;;;;IAM9C;;;OAGG;cACa,aAAa,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC;CAwCpF"}
@@ -0,0 +1,100 @@
1
+ import { ArchivistWrapper } from '@xyo-network/archivist-wrapper';
2
+ import { AbstractDiviner } from '@xyo-network/diviner-abstract';
3
+ import { DivinerInstance, DivinerModuleEventData } from '@xyo-network/diviner-model';
4
+ import { DivinerWrapper } from '@xyo-network/diviner-wrapper';
5
+ import { ModuleState, StateDictionary } from '@xyo-network/module-model';
6
+ import { Payload, Schema, WithMeta } from '@xyo-network/payload-model';
7
+ import { StatefulDivinerParams } from './Params';
8
+ /**
9
+ * A Diviner that maintains state
10
+ */
11
+ export declare abstract class StatefulDiviner<TParams extends StatefulDivinerParams = StatefulDivinerParams, TIn extends Payload = Payload, TOut extends Payload = Payload, TEventData extends DivinerModuleEventData<DivinerInstance<TParams, TIn, TOut>, TIn, TOut> = DivinerModuleEventData<DivinerInstance<TParams, TIn, TOut>, TIn, TOut>, TState extends StateDictionary = StateDictionary> extends AbstractDiviner<TParams, TIn, TOut, TEventData> {
12
+ static readonly configSchemas: Schema[];
13
+ static readonly defaultConfigSchema: Schema;
14
+ /**
15
+ * The last state
16
+ */
17
+ protected _lastState?: WithMeta<ModuleState<TState>>;
18
+ /**
19
+ * Commit the internal state of the Diviner process. This is similar
20
+ * to a transaction completion in a database and should only be called
21
+ * when results have been successfully persisted to the appropriate
22
+ * external stores.
23
+ * @param nextState The state to commit
24
+ */
25
+ protected commitState(nextState: WithMeta<ModuleState<TState>>): Promise<void>;
26
+ /**
27
+ * Retrieves the archivist for the specified store
28
+ * @param store The store to retrieve the archivist for
29
+ * @returns The archivist for the specified store
30
+ */
31
+ protected getArchivistForStateStore(): Promise<ArchivistWrapper<import("@xyo-network/archivist-model").ArchivistModule<import("@xylabs/object").BaseParamsFields & {
32
+ account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
33
+ addToResolvers?: boolean | undefined;
34
+ allowNameResolution?: boolean | undefined;
35
+ config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
36
+ parents?: import("@xyo-network/archivist-model").ArchivistParents | undefined;
37
+ requireAllParents?: boolean | undefined;
38
+ schema: "network.xyo.archivist.config";
39
+ storeParentReads?: boolean | undefined;
40
+ }, "schema"> & {
41
+ schema: "network.xyo.archivist.config";
42
+ }, "schema"> & {
43
+ schema: string;
44
+ };
45
+ ephemeralQueryAccountEnabled?: boolean | undefined;
46
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
47
+ }, import("@xyo-network/archivist-model").ArchivistModuleEventData>>>;
48
+ /**
49
+ * Retrieves the BoundWitness Diviner for the specified store
50
+ * @param store The store to retrieve the BoundWitness Diviner for
51
+ * @returns The BoundWitness Diviner for the specified store
52
+ */
53
+ protected getBoundWitnessDivinerForStateStore(): Promise<DivinerWrapper<import("@xyo-network/diviner-model").DivinerModule<import("@xylabs/object").BaseParamsFields & {
54
+ account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
55
+ addToResolvers?: boolean | undefined;
56
+ allowNameResolution?: boolean | undefined;
57
+ config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
58
+ schema: "network.xyo.diviner.config";
59
+ }, "schema"> & {
60
+ schema: "network.xyo.diviner.config";
61
+ }, "schema"> & {
62
+ schema: string;
63
+ };
64
+ ephemeralQueryAccountEnabled?: boolean | undefined;
65
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
66
+ }, DivinerModuleEventData>, {
67
+ schema: string;
68
+ } & import("@xyo-network/payload-model").PayloadFields, {
69
+ schema: string;
70
+ } & import("@xyo-network/payload-model").PayloadFields>>;
71
+ /**
72
+ * Retrieves the Payload Diviner for the specified store
73
+ * @param store The store to retrieve the Payload Diviner for
74
+ * @returns The Payload Diviner for the specified store
75
+ */
76
+ protected getPayloadDivinerForStateStore(): Promise<DivinerWrapper<import("@xyo-network/diviner-model").DivinerModule<import("@xylabs/object").BaseParamsFields & {
77
+ account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
78
+ addToResolvers?: boolean | undefined;
79
+ allowNameResolution?: boolean | undefined;
80
+ config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
81
+ schema: "network.xyo.diviner.config";
82
+ }, "schema"> & {
83
+ schema: "network.xyo.diviner.config";
84
+ }, "schema"> & {
85
+ schema: string;
86
+ };
87
+ ephemeralQueryAccountEnabled?: boolean | undefined;
88
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
89
+ }, DivinerModuleEventData>, {
90
+ schema: string;
91
+ } & import("@xyo-network/payload-model").PayloadFields, {
92
+ schema: string;
93
+ } & import("@xyo-network/payload-model").PayloadFields>>;
94
+ /**
95
+ * Retrieves the last state of the Diviner process. Used to recover state after
96
+ * preemptions, reboots, etc.
97
+ */
98
+ protected retrieveState(): Promise<WithMeta<ModuleState<TState>> | undefined>;
99
+ }
100
+ //# sourceMappingURL=Diviner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../src/Diviner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAGjE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAE/D,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAiB,WAAW,EAAqB,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAE1G,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAGtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAIhD;;GAEG;AACH,8BAAsB,eAAe,CACnC,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,EAC7D,GAAG,SAAS,OAAO,GAAG,OAAO,EAC7B,IAAI,SAAS,OAAO,GAAG,OAAO,EAC9B,UAAU,SAAS,sBAAsB,CAAC,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,sBAAsB,CAChH,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,EACnC,GAAG,EACH,IAAI,CACL,EACD,MAAM,SAAS,eAAe,GAAG,eAAe,CAChD,SAAQ,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,CAAC;IACvD,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAwD;IACxG,gBAAyB,mBAAmB,EAAE,MAAM,CAA8B;IAElF;;OAEG;IACH,SAAS,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA;IAEpD;;;;;;OAMG;cACa,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IASpE;;;;OAIG;cACa,yBAAyB;;;;;;;;;;;;;;;;;IAMzC;;;;OAIG;cACa,mCAAmC;;;;;;;;;;;;;;;;;;IAMnD;;;;OAIG;cACa,8BAA8B;;;;;;;;;;;;;;;;;;IAM9C;;;OAGG;cACa,aAAa,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC;CAwCpF"}