@bluelibs/runner 3.3.0 → 3.3.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/dist/define.js +24 -23
- package/dist/define.js.map +1 -1
- package/dist/defs/core.d.ts +144 -0
- package/dist/defs/core.js +6 -0
- package/dist/defs/core.js.map +1 -0
- package/dist/defs/symbols.d.ts +42 -0
- package/dist/defs/symbols.js +45 -0
- package/dist/defs/symbols.js.map +1 -0
- package/dist/defs/tags.d.ts +70 -0
- package/dist/defs/tags.js +6 -0
- package/dist/defs/tags.js.map +1 -0
- package/dist/defs.d.ts +11 -18
- package/dist/defs.js +16 -19
- package/dist/defs.js.map +1 -1
- package/dist/models/StoreTypes.d.ts +2 -2
- package/dist/types/dependencies.d.ts +47 -18
- package/dist/types/event.d.ts +49 -0
- package/dist/types/event.js +4 -0
- package/dist/types/event.js.map +1 -0
- package/dist/types/index.d.ts +4 -10
- package/dist/types/index.js +8 -7
- package/dist/types/index.js.map +1 -1
- package/dist/types/metadata.d.ts +75 -0
- package/dist/types/metadata.js +3 -0
- package/dist/types/metadata.js.map +1 -0
- package/dist/types/middleware.d.ts +43 -18
- package/dist/types/middleware.js +0 -3
- package/dist/types/middleware.js.map +1 -1
- package/dist/types/resource.d.ts +96 -0
- package/dist/types/resource.js +3 -0
- package/dist/types/resource.js.map +1 -0
- package/dist/types/symbols.d.ts +17 -0
- package/dist/types/symbols.js +18 -3
- package/dist/types/symbols.js.map +1 -1
- package/dist/types/task.d.ts +68 -0
- package/dist/types/task.js +3 -0
- package/dist/types/task.js.map +1 -0
- package/package.json +1 -1
- package/src/__tests__/models/EventManager.test.ts +39 -6
- package/src/__tests__/tools/getCallerFile.test.ts +9 -11
- package/src/define.ts +31 -24
- package/src/defs.ts +11 -19
- package/src/models/StoreTypes.ts +3 -2
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
IEvent,
|
|
3
|
+
IEventEmission,
|
|
4
|
+
symbolEvent,
|
|
5
|
+
symbolFilePath,
|
|
6
|
+
} from "../../defs";
|
|
2
7
|
import { Errors } from "../../errors";
|
|
3
8
|
import { EventManager } from "../../models/EventManager";
|
|
4
9
|
|
|
@@ -8,7 +13,11 @@ describe("EventManager", () => {
|
|
|
8
13
|
|
|
9
14
|
beforeEach(() => {
|
|
10
15
|
eventManager = new EventManager();
|
|
11
|
-
eventDefinition = {
|
|
16
|
+
eventDefinition = {
|
|
17
|
+
id: "testEvent",
|
|
18
|
+
[symbolEvent]: true,
|
|
19
|
+
[symbolFilePath]: "test.ts",
|
|
20
|
+
};
|
|
12
21
|
});
|
|
13
22
|
|
|
14
23
|
it("should add and emit event listener", async () => {
|
|
@@ -165,10 +174,12 @@ describe("EventManager", () => {
|
|
|
165
174
|
const eventDef1: IEvent<string> = {
|
|
166
175
|
id: "event1",
|
|
167
176
|
[symbolEvent]: true,
|
|
177
|
+
[symbolFilePath]: "test.ts",
|
|
168
178
|
};
|
|
169
179
|
const eventDef2: IEvent<string> = {
|
|
170
180
|
id: "event2",
|
|
171
181
|
[symbolEvent]: true,
|
|
182
|
+
[symbolFilePath]: "test.ts",
|
|
172
183
|
};
|
|
173
184
|
|
|
174
185
|
const handler1 = jest.fn();
|
|
@@ -215,10 +226,12 @@ describe("EventManager", () => {
|
|
|
215
226
|
const eventDef1: IEvent<string> = {
|
|
216
227
|
id: "event1",
|
|
217
228
|
[symbolEvent]: true,
|
|
229
|
+
[symbolFilePath]: "test.ts",
|
|
218
230
|
};
|
|
219
231
|
const eventDef2: IEvent<string> = {
|
|
220
232
|
id: "event2",
|
|
221
233
|
[symbolEvent]: true,
|
|
234
|
+
[symbolFilePath]: "test.ts",
|
|
222
235
|
};
|
|
223
236
|
|
|
224
237
|
const handler = jest.fn();
|
|
@@ -249,10 +262,12 @@ describe("EventManager", () => {
|
|
|
249
262
|
const eventDef1: IEvent<string> = {
|
|
250
263
|
id: "event1",
|
|
251
264
|
[symbolEvent]: true,
|
|
265
|
+
[symbolFilePath]: "test.ts",
|
|
252
266
|
};
|
|
253
267
|
const eventDef2: IEvent<string> = {
|
|
254
268
|
id: "event2",
|
|
255
269
|
[symbolEvent]: true,
|
|
270
|
+
[symbolFilePath]: "test.ts",
|
|
256
271
|
};
|
|
257
272
|
|
|
258
273
|
const handler1 = jest.fn();
|
|
@@ -392,6 +407,7 @@ describe("EventManager", () => {
|
|
|
392
407
|
const voidEventDefinition: IEvent<void> = {
|
|
393
408
|
id: "voidEvent",
|
|
394
409
|
[symbolEvent]: true,
|
|
410
|
+
[symbolFilePath]: "test.ts",
|
|
395
411
|
};
|
|
396
412
|
|
|
397
413
|
eventManager.addListener(voidEventDefinition, handler);
|
|
@@ -445,8 +461,16 @@ describe("EventManager", () => {
|
|
|
445
461
|
});
|
|
446
462
|
|
|
447
463
|
it("should invalidate all caches when adding global listeners", async () => {
|
|
448
|
-
const event1: IEvent<string> = {
|
|
449
|
-
|
|
464
|
+
const event1: IEvent<string> = {
|
|
465
|
+
id: "event1",
|
|
466
|
+
[symbolEvent]: true,
|
|
467
|
+
[symbolFilePath]: "test.ts",
|
|
468
|
+
};
|
|
469
|
+
const event2: IEvent<string> = {
|
|
470
|
+
id: "event2",
|
|
471
|
+
[symbolEvent]: true,
|
|
472
|
+
[symbolFilePath]: "test.ts",
|
|
473
|
+
};
|
|
450
474
|
|
|
451
475
|
const handler1 = jest.fn();
|
|
452
476
|
const handler2 = jest.fn();
|
|
@@ -473,6 +497,7 @@ describe("EventManager", () => {
|
|
|
473
497
|
const emptyEventDef: IEvent<string> = {
|
|
474
498
|
id: "emptyEvent",
|
|
475
499
|
[symbolEvent]: true,
|
|
500
|
+
[symbolFilePath]: "test.ts",
|
|
476
501
|
};
|
|
477
502
|
|
|
478
503
|
// Should return immediately without creating event object
|
|
@@ -528,8 +553,16 @@ describe("EventManager", () => {
|
|
|
528
553
|
});
|
|
529
554
|
|
|
530
555
|
it("should reuse cached results across different event types", async () => {
|
|
531
|
-
const event1: IEvent<string> = {
|
|
532
|
-
|
|
556
|
+
const event1: IEvent<string> = {
|
|
557
|
+
id: "event1",
|
|
558
|
+
[symbolEvent]: true,
|
|
559
|
+
[symbolFilePath]: "test.ts",
|
|
560
|
+
};
|
|
561
|
+
const event2: IEvent<string> = {
|
|
562
|
+
id: "event2",
|
|
563
|
+
[symbolEvent]: true,
|
|
564
|
+
[symbolFilePath]: "test.ts",
|
|
565
|
+
};
|
|
533
566
|
|
|
534
567
|
const handler1 = jest.fn();
|
|
535
568
|
const handler2 = jest.fn();
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
defineMiddleware,
|
|
5
5
|
defineEvent,
|
|
6
6
|
} from "../../define";
|
|
7
|
-
import {
|
|
7
|
+
import { symbolFilePath } from "../../defs";
|
|
8
8
|
import {
|
|
9
9
|
getCallerFile,
|
|
10
10
|
generateCallerIdFromFile,
|
|
@@ -41,17 +41,15 @@ describe("getCallerFile", () => {
|
|
|
41
41
|
id: "event",
|
|
42
42
|
});
|
|
43
43
|
|
|
44
|
-
expect((task as any)[
|
|
45
|
-
expect((resource as any)[
|
|
46
|
-
expect((middleware as any)[
|
|
47
|
-
expect((event as any)[
|
|
44
|
+
expect((task as any)[symbolFilePath]).toBeDefined();
|
|
45
|
+
expect((resource as any)[symbolFilePath]).toBeDefined();
|
|
46
|
+
expect((middleware as any)[symbolFilePath]).toBeDefined();
|
|
47
|
+
expect((event as any)[symbolFilePath]).toBeDefined();
|
|
48
48
|
|
|
49
|
-
expect((task as any)[
|
|
50
|
-
expect((resource as any)[
|
|
51
|
-
expect((middleware as any)[
|
|
52
|
-
|
|
53
|
-
);
|
|
54
|
-
expect((event as any)[symbols.filePath]).toContain("getCallerFile.test");
|
|
49
|
+
expect((task as any)[symbolFilePath]).toContain("getCallerFile.test");
|
|
50
|
+
expect((resource as any)[symbolFilePath]).toContain("getCallerFile.test");
|
|
51
|
+
expect((middleware as any)[symbolFilePath]).toContain("getCallerFile.test");
|
|
52
|
+
expect((event as any)[symbolFilePath]).toContain("getCallerFile.test");
|
|
55
53
|
});
|
|
56
54
|
});
|
|
57
55
|
|
package/src/define.ts
CHANGED
|
@@ -13,7 +13,6 @@ import {
|
|
|
13
13
|
IResourceDefinition,
|
|
14
14
|
IEventDefinition,
|
|
15
15
|
IMiddlewareDefinition,
|
|
16
|
-
symbols,
|
|
17
16
|
DependencyMapType,
|
|
18
17
|
DependencyValuesType,
|
|
19
18
|
IMiddleware,
|
|
@@ -28,6 +27,12 @@ import {
|
|
|
28
27
|
ITagWithConfig,
|
|
29
28
|
TagType,
|
|
30
29
|
ITaggable,
|
|
30
|
+
symbolTask,
|
|
31
|
+
symbolMiddlewareEverywhereTasks,
|
|
32
|
+
symbolMiddlewareEverywhereResources,
|
|
33
|
+
symbolResourceWithConfig,
|
|
34
|
+
symbolResource,
|
|
35
|
+
symbolMiddleware,
|
|
31
36
|
} from "./defs";
|
|
32
37
|
import { Errors } from "./errors";
|
|
33
38
|
import { generateCallerIdFromFile, getCallerFile } from "./tools/getCallerFile";
|
|
@@ -52,8 +57,8 @@ export function defineTask<
|
|
|
52
57
|
const isAnonymous = !Boolean(taskConfig.id);
|
|
53
58
|
const id = taskConfig.id || generateCallerIdFromFile(filePath, "task");
|
|
54
59
|
return {
|
|
55
|
-
[
|
|
56
|
-
[
|
|
60
|
+
[symbolTask]: true,
|
|
61
|
+
[symbolFilePath]: filePath,
|
|
57
62
|
id,
|
|
58
63
|
dependencies: taskConfig.dependencies || ({} as Deps),
|
|
59
64
|
middleware: taskConfig.middleware || [],
|
|
@@ -67,7 +72,7 @@ export function defineTask<
|
|
|
67
72
|
? Symbol(`anonymous-task.events.beforeRun`)
|
|
68
73
|
: `${id as string}.events.beforeRun`,
|
|
69
74
|
}),
|
|
70
|
-
[
|
|
75
|
+
[symbolFilePath]: getCallerFile(),
|
|
71
76
|
},
|
|
72
77
|
afterRun: {
|
|
73
78
|
...defineEvent({
|
|
@@ -75,7 +80,7 @@ export function defineTask<
|
|
|
75
80
|
? Symbol(`anonymous-task.events.afterRun`)
|
|
76
81
|
: `${id as string}.events.afterRun`,
|
|
77
82
|
}),
|
|
78
|
-
[
|
|
83
|
+
[symbolFilePath]: getCallerFile(),
|
|
79
84
|
},
|
|
80
85
|
onError: {
|
|
81
86
|
...defineEvent({
|
|
@@ -83,7 +88,7 @@ export function defineTask<
|
|
|
83
88
|
? Symbol(`anonymous-task.events.onError`)
|
|
84
89
|
: `${id as string}.events.onError`,
|
|
85
90
|
}),
|
|
86
|
-
[
|
|
91
|
+
[symbolFilePath]: getCallerFile(),
|
|
87
92
|
},
|
|
88
93
|
},
|
|
89
94
|
meta: taskConfig.meta || {},
|
|
@@ -112,9 +117,11 @@ export function defineResource<
|
|
|
112
117
|
const id =
|
|
113
118
|
constConfig.id ||
|
|
114
119
|
generateCallerIdFromFile(filePath, isIndexResource ? "index" : "resource");
|
|
120
|
+
|
|
115
121
|
return {
|
|
116
|
-
[
|
|
117
|
-
[
|
|
122
|
+
[symbolResource]: true,
|
|
123
|
+
[symbolFilePath]: filePath,
|
|
124
|
+
[symbolIndexResource]: isIndexResource,
|
|
118
125
|
id,
|
|
119
126
|
dependencies: constConfig.dependencies,
|
|
120
127
|
dispose: constConfig.dispose,
|
|
@@ -124,7 +131,7 @@ export function defineResource<
|
|
|
124
131
|
context: constConfig.context,
|
|
125
132
|
with: function (config: TConfig) {
|
|
126
133
|
return {
|
|
127
|
-
[
|
|
134
|
+
[symbolResourceWithConfig]: true,
|
|
128
135
|
id: this.id,
|
|
129
136
|
resource: this,
|
|
130
137
|
config,
|
|
@@ -138,7 +145,7 @@ export function defineResource<
|
|
|
138
145
|
? Symbol(`anonymous-resource.events.beforeInit`)
|
|
139
146
|
: `${id as string}.events.beforeInit`,
|
|
140
147
|
}),
|
|
141
|
-
[
|
|
148
|
+
[symbolFilePath]: filePath,
|
|
142
149
|
},
|
|
143
150
|
afterInit: {
|
|
144
151
|
...defineEvent({
|
|
@@ -146,7 +153,7 @@ export function defineResource<
|
|
|
146
153
|
? Symbol(`anonymous-resource.events.afterInit`)
|
|
147
154
|
: `${id as string}.events.afterInit`,
|
|
148
155
|
}),
|
|
149
|
-
[
|
|
156
|
+
[symbolFilePath]: filePath,
|
|
150
157
|
},
|
|
151
158
|
onError: {
|
|
152
159
|
...defineEvent({
|
|
@@ -154,7 +161,7 @@ export function defineResource<
|
|
|
154
161
|
? Symbol(`anonymous-resource.events.onError`)
|
|
155
162
|
: `${id as string}.events.onError`,
|
|
156
163
|
}),
|
|
157
|
-
[
|
|
164
|
+
[symbolFilePath]: filePath,
|
|
158
165
|
},
|
|
159
166
|
},
|
|
160
167
|
meta: constConfig.meta || {},
|
|
@@ -198,8 +205,8 @@ export function defineIndex<
|
|
|
198
205
|
async init(_, deps) {
|
|
199
206
|
return deps as any;
|
|
200
207
|
},
|
|
201
|
-
[
|
|
202
|
-
[
|
|
208
|
+
[symbolFilePath]: callerFilePath,
|
|
209
|
+
[symbolIndexResource]: true,
|
|
203
210
|
});
|
|
204
211
|
}
|
|
205
212
|
|
|
@@ -215,7 +222,7 @@ export function defineEvent<TPayload = void>(
|
|
|
215
222
|
return {
|
|
216
223
|
...eventConfig,
|
|
217
224
|
id: eventConfig.id || generateCallerIdFromFile(callerFilePath, "event"),
|
|
218
|
-
[
|
|
225
|
+
[symbolFilePath]: callerFilePath,
|
|
219
226
|
[symbolEvent]: true, // This is a workaround
|
|
220
227
|
};
|
|
221
228
|
}
|
|
@@ -245,8 +252,8 @@ export function defineMiddleware<
|
|
|
245
252
|
*/
|
|
246
253
|
const filePath = getCallerFile();
|
|
247
254
|
const object = {
|
|
248
|
-
[
|
|
249
|
-
[
|
|
255
|
+
[symbolFilePath]: filePath,
|
|
256
|
+
[symbolMiddleware]: true,
|
|
250
257
|
config: {} as TConfig,
|
|
251
258
|
id: middlewareDef.id || generateCallerIdFromFile(filePath, "middleware"),
|
|
252
259
|
...middlewareDef,
|
|
@@ -270,8 +277,8 @@ export function defineMiddleware<
|
|
|
270
277
|
|
|
271
278
|
return {
|
|
272
279
|
...object,
|
|
273
|
-
[
|
|
274
|
-
[
|
|
280
|
+
[symbolMiddlewareEverywhereTasks]: tasks,
|
|
281
|
+
[symbolMiddlewareEverywhereResources]: resources,
|
|
275
282
|
everywhere() {
|
|
276
283
|
throw Errors.middlewareAlreadyGlobal(object.id);
|
|
277
284
|
},
|
|
@@ -281,25 +288,25 @@ export function defineMiddleware<
|
|
|
281
288
|
}
|
|
282
289
|
|
|
283
290
|
export function isTask(definition: any): definition is ITask {
|
|
284
|
-
return definition && definition[
|
|
291
|
+
return definition && definition[symbolTask];
|
|
285
292
|
}
|
|
286
293
|
|
|
287
294
|
export function isResource(definition: any): definition is IResource {
|
|
288
|
-
return definition && definition[
|
|
295
|
+
return definition && definition[symbolResource];
|
|
289
296
|
}
|
|
290
297
|
|
|
291
298
|
export function isResourceWithConfig(
|
|
292
299
|
definition: any
|
|
293
300
|
): definition is IResourceWithConfig {
|
|
294
|
-
return definition && definition[
|
|
301
|
+
return definition && definition[symbolResourceWithConfig];
|
|
295
302
|
}
|
|
296
303
|
|
|
297
304
|
export function isEvent(definition: any): definition is IEvent {
|
|
298
|
-
return definition && definition[
|
|
305
|
+
return definition && definition[symbolEvent];
|
|
299
306
|
}
|
|
300
307
|
|
|
301
308
|
export function isMiddleware(definition: any): definition is IMiddleware {
|
|
302
|
-
return definition && definition[
|
|
309
|
+
return definition && definition[symbolMiddleware];
|
|
303
310
|
}
|
|
304
311
|
|
|
305
312
|
/**
|
package/src/defs.ts
CHANGED
|
@@ -18,7 +18,7 @@ import { MiddlewareEverywhereOptions } from "./define";
|
|
|
18
18
|
|
|
19
19
|
// Re-export public cache type so consumers don’t import from internals.
|
|
20
20
|
export { ICacheInstance } from "./globals/middleware/cache.middleware";
|
|
21
|
-
|
|
21
|
+
export * from "./models/StoreTypes";
|
|
22
22
|
/**
|
|
23
23
|
* Internal brand symbols used to tag created objects at runtime and help with
|
|
24
24
|
* type‑narrowing. Prefer the `isTask`/`isResource`/`isEvent`/`isMiddleware`
|
|
@@ -57,24 +57,6 @@ export const symbolIndexResource: unique symbol = Symbol(
|
|
|
57
57
|
"runner.indexResource"
|
|
58
58
|
);
|
|
59
59
|
|
|
60
|
-
/**
|
|
61
|
-
* Convenience bag of internal symbols. Intended for framework internals;
|
|
62
|
-
* consumers should not rely on this shape.
|
|
63
|
-
* @internal
|
|
64
|
-
*/
|
|
65
|
-
export const symbols = {
|
|
66
|
-
task: symbolTask,
|
|
67
|
-
resource: symbolResource,
|
|
68
|
-
resourceWithConfig: symbolResourceWithConfig,
|
|
69
|
-
indexResource: symbolIndexResource,
|
|
70
|
-
event: symbolEvent,
|
|
71
|
-
middleware: symbolMiddleware,
|
|
72
|
-
middlewareEverywhereTasks: symbolMiddlewareEverywhereTasks,
|
|
73
|
-
middlewareEverywhereResources: symbolMiddlewareEverywhereResources,
|
|
74
|
-
filePath: symbolFilePath,
|
|
75
|
-
dispose: symbolDispose,
|
|
76
|
-
store: symbolStore,
|
|
77
|
-
};
|
|
78
60
|
export interface ITagDefinition<TConfig = void> {
|
|
79
61
|
id: string | symbol;
|
|
80
62
|
}
|
|
@@ -104,6 +86,7 @@ export interface ITag<TConfig = void> extends ITagDefinition<TConfig> {
|
|
|
104
86
|
* or from a taggable object (`{ meta: { tags?: [] } }`).
|
|
105
87
|
*/
|
|
106
88
|
extract(target: TagType[] | ITaggable): ExtractedTagResult<TConfig> | null;
|
|
89
|
+
[symbolFilePath]: string;
|
|
107
90
|
}
|
|
108
91
|
|
|
109
92
|
/**
|
|
@@ -315,6 +298,8 @@ export interface ITask<
|
|
|
315
298
|
afterRun: IEvent<AfterRunEventPayload<TInput, TOutput>>;
|
|
316
299
|
onError: IEvent<OnErrorEventPayload>;
|
|
317
300
|
};
|
|
301
|
+
[symbolFilePath]: string;
|
|
302
|
+
[symbolTask]: true;
|
|
318
303
|
}
|
|
319
304
|
|
|
320
305
|
export interface IResourceDefinition<
|
|
@@ -374,6 +359,7 @@ export interface IResourceDefinition<
|
|
|
374
359
|
context?: () => TContext;
|
|
375
360
|
/**
|
|
376
361
|
* This is optional and used from an index resource to get the correct caller.
|
|
362
|
+
* This is the reason we allow it here as well.
|
|
377
363
|
*/
|
|
378
364
|
[symbolFilePath]?: string;
|
|
379
365
|
/**
|
|
@@ -403,6 +389,9 @@ export interface IResource<
|
|
|
403
389
|
};
|
|
404
390
|
overrides: Array<IResource | ITask | IMiddleware | IResourceWithConfig>;
|
|
405
391
|
middleware: MiddlewareAttachments[];
|
|
392
|
+
[symbolFilePath]: string;
|
|
393
|
+
[symbolIndexResource]: boolean;
|
|
394
|
+
[symbolResource]: true;
|
|
406
395
|
}
|
|
407
396
|
|
|
408
397
|
export interface IResourceWithConfig<
|
|
@@ -434,6 +423,7 @@ export interface IEvent<TPayload = any> extends IEventDefinition<TPayload> {
|
|
|
434
423
|
* We use this event to discriminate between resources with just 'id' and 'events' as they collide. This is a workaround, should be redone using classes and instanceof.
|
|
435
424
|
*/
|
|
436
425
|
[symbolEvent]: true;
|
|
426
|
+
[symbolFilePath]: string;
|
|
437
427
|
}
|
|
438
428
|
|
|
439
429
|
/**
|
|
@@ -511,6 +501,8 @@ export interface IMiddleware<
|
|
|
511
501
|
config: TConfig;
|
|
512
502
|
/** Configure the middleware and return a marked, configured instance. */
|
|
513
503
|
with: (config: TConfig) => IMiddlewareConfigured<TConfig, TDependencies>;
|
|
504
|
+
[symbolFilePath]: string;
|
|
505
|
+
[symbolMiddleware]: true;
|
|
514
506
|
}
|
|
515
507
|
|
|
516
508
|
export interface IMiddlewareConfigured<
|
package/src/models/StoreTypes.ts
CHANGED
|
@@ -8,6 +8,7 @@ import {
|
|
|
8
8
|
IResourceWithConfig,
|
|
9
9
|
RegisterableItems,
|
|
10
10
|
IMiddleware,
|
|
11
|
+
IEvent,
|
|
11
12
|
} from "../defs";
|
|
12
13
|
|
|
13
14
|
export type ResourceStoreElementType<
|
|
@@ -42,5 +43,5 @@ export type MiddlewareStoreElementType<TDeps extends DependencyMapType = any> =
|
|
|
42
43
|
};
|
|
43
44
|
|
|
44
45
|
export type EventStoreElementType = {
|
|
45
|
-
event:
|
|
46
|
-
};
|
|
46
|
+
event: IEvent<any>;
|
|
47
|
+
};
|