@xyo-network/sentinel-model 3.6.12 → 3.7.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.
@@ -15,7 +15,7 @@ export type SentinelIntervalAutomationPayload = SentinelBaseAutomationPayload<{
15
15
  /** Time between triggers [non-repeating if undefined] */
16
16
  frequency?: number;
17
17
  /** Units for frequency field [hour if undefined] */
18
- frequencyUnits?: 'second' | 'minute' | 'hour' | 'day';
18
+ frequencyUnits?: 'second' | 'minute' | 'hour' | 'day' | 'millis';
19
19
  /** Remaining triggers [infinite if undefined] */
20
20
  remaining?: number;
21
21
  schema: SentinelIntervalAutomationSchema;
@@ -33,7 +33,7 @@ export declare const isSentinelIntervalAutomation: (x?: unknown | null) => x is
33
33
  frequency?: number
34
34
  /** Units for frequency field [hour if undefined] */
35
35
  | undefined;
36
- frequencyUnits?: "second" | "minute" | "hour" | "day"
36
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis"
37
37
  /** Remaining triggers [infinite if undefined] */
38
38
  | undefined;
39
39
  remaining?: number | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"Automation.d.ts","sourceRoot":"","sources":["../../src/Automation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAGzD,eAAO,MAAM,wBAAwB,EAAG,wBAAiC,CAAA;AACzE,MAAM,MAAM,wBAAwB,GAAG,OAAO,wBAAwB,CAAA;AAEtE,eAAO,MAAM,gCAAgC,EAAG,iCAA0C,CAAA;AAC1F,MAAM,MAAM,gCAAgC,GAAG,OAAO,gCAAgC,CAAA;AAEtF,eAAO,MAAM,6BAA6B,EAAG,8BAAuC,CAAA;AACpF,MAAM,MAAM,6BAA6B,GAAG,OAAO,6BAA6B,CAAA;AAEhF,MAAM,MAAM,6BAA6B,CAAC,CAAC,SAAS,OAAO,IAAI,OAAO,CACpE;IACE,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAA;CAC5B,GAAG,CAAC,CACN,CAAA;AAED,0CAA0C;AAC1C,MAAM,MAAM,iCAAiC,GAAG,6BAA6B,CAAC;IAC5E,+CAA+C;IAC/C,GAAG,CAAC,EAAE,MAAM,CAAA;IAEZ,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,oDAAoD;IACpD,cAAc,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAA;IAErD,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,MAAM,EAAE,gCAAgC,CAAA;IAExC,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAA;IAEb,6BAA6B;IAC7B,IAAI,EAAE,UAAU,CAAA;CACjB,CAAC,CAAA;AAEF,eAAO,MAAM,4BAA4B;;;UApBjC,MAAM;IAEZ,yDAAyD;;gBAC7C,MAAM;IAElB,oDAAoD;;qBACnC,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK;IAErD,iDAAiD;;gBACrC,MAAM;WAKX,MAAM;EAMuH,CAAA;AAEtI,uCAAuC;AACvC,MAAM,MAAM,8BAA8B,GAAG,6BAA6B,CAAC;IACzE,MAAM,EAAE,6BAA6B,CAAA;IACrC,IAAI,EAAE,OAAO,CAAA;CACd,CAAC,CAAA;AAEF,iCAAiC;AACjC,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAC7C,iCAAiC,GAAG,8BAA8B,EAClE,wBAAwB,GAAG,gCAAgC,GAAG,6BAA6B,CAC5F,CAAA"}
1
+ {"version":3,"file":"Automation.d.ts","sourceRoot":"","sources":["../../src/Automation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAGzD,eAAO,MAAM,wBAAwB,EAAG,wBAAiC,CAAA;AACzE,MAAM,MAAM,wBAAwB,GAAG,OAAO,wBAAwB,CAAA;AAEtE,eAAO,MAAM,gCAAgC,EAAG,iCAA0C,CAAA;AAC1F,MAAM,MAAM,gCAAgC,GAAG,OAAO,gCAAgC,CAAA;AAEtF,eAAO,MAAM,6BAA6B,EAAG,8BAAuC,CAAA;AACpF,MAAM,MAAM,6BAA6B,GAAG,OAAO,6BAA6B,CAAA;AAEhF,MAAM,MAAM,6BAA6B,CAAC,CAAC,SAAS,OAAO,IAAI,OAAO,CACpE;IACE,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAA;CAC5B,GAAG,CAAC,CACN,CAAA;AAED,0CAA0C;AAC1C,MAAM,MAAM,iCAAiC,GAAG,6BAA6B,CAAC;IAC5E,+CAA+C;IAC/C,GAAG,CAAC,EAAE,MAAM,CAAA;IAEZ,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,oDAAoD;IACpD,cAAc,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAA;IAEhE,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,MAAM,EAAE,gCAAgC,CAAA;IAExC,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAA;IAEb,6BAA6B;IAC7B,IAAI,EAAE,UAAU,CAAA;CACjB,CAAC,CAAA;AAEF,eAAO,MAAM,4BAA4B;;;UApBjC,MAAM;IAEZ,yDAAyD;;gBAC7C,MAAM;IAElB,oDAAoD;;qBACnC,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ;IAEhE,iDAAiD;;gBACrC,MAAM;WAKX,MAAM;EAMuH,CAAA;AAEtI,uCAAuC;AACvC,MAAM,MAAM,8BAA8B,GAAG,6BAA6B,CAAC;IACzE,MAAM,EAAE,6BAA6B,CAAA;IACrC,IAAI,EAAE,OAAO,CAAA;CACd,CAAC,CAAA;AAEF,iCAAiC;AACjC,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAC7C,iCAAiC,GAAG,8BAA8B,EAClE,wBAAwB,GAAG,gCAAgC,GAAG,6BAA6B,CAC5F,CAAA"}
@@ -0,0 +1,13 @@
1
+ import type { TypeCheck } from '@xylabs/object';
2
+ import { IsObjectFactory } from '@xylabs/object';
3
+ import type { AttachableModuleInstance } from '@xyo-network/module-model';
4
+ import type { SentinelModuleEventData } from '../EventData.ts';
5
+ import type { SentinelInstance } from '../Instance.ts';
6
+ import type { SentinelModule } from '../Module.ts';
7
+ import type { SentinelParams } from '../Params.ts';
8
+ export interface AttachableSentinelInstance<TParams extends SentinelParams = SentinelParams, TEventData extends SentinelModuleEventData = SentinelModuleEventData> extends SentinelModule<TParams, TEventData>, AttachableModuleInstance<TParams, TEventData>, SentinelInstance<TParams, TEventData> {
9
+ }
10
+ export type AttachableSentinelInstanceTypeCheck<T extends AttachableSentinelInstance = AttachableSentinelInstance> = TypeCheck<T>;
11
+ export declare class IsAttachableSentinelInstanceFactory<T extends AttachableSentinelInstance = AttachableSentinelInstance> extends IsObjectFactory<T> {
12
+ }
13
+ //# sourceMappingURL=AttachableInstance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AttachableInstance.d.ts","sourceRoot":"","sources":["../../../src/attachable/AttachableInstance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAA;AAEzE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAA;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAElD,MAAM,WAAW,0BAA0B,CACzC,OAAO,SAAS,cAAc,GAAG,cAAc,EAC/C,UAAU,SAAS,uBAAuB,GAAG,uBAAuB,CACpE,SAAQ,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC,EAC3C,wBAAwB,CAAC,OAAO,EAAE,UAAU,CAAC,EAC7C,gBAAgB,CAAC,OAAO,EAAE,UAAU,CAAC;CAAG;AAE1C,MAAM,MAAM,mCAAmC,CAAC,CAAC,SAAS,0BAA0B,GAAG,0BAA0B,IAAI,SAAS,CAAC,CAAC,CAAC,CAAA;AAEjI,qBAAa,mCAAmC,CAAC,CAAC,SAAS,0BAA0B,GAAG,0BAA0B,CAAE,SAAQ,eAAe,CAAC,CAAC,CAAC;CAAG"}
@@ -0,0 +1,434 @@
1
+ export declare const asAttachableSentinelInstance: {
2
+ <TType extends import("./AttachableInstance.ts").AttachableSentinelInstance<import("@xylabs/object").BaseParamsFields & {
3
+ account?: import("@xyo-network/account-model").AccountInstance | "random";
4
+ addToResolvers?: boolean;
5
+ additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
6
+ allowNameResolution?: boolean;
7
+ config: import("@xylabs/object").DeepRestrictToStringKeys<{
8
+ schema: import("@xyo-network/payload-model").Schema;
9
+ readonly archiving?: {
10
+ readonly archivists?: string[] | undefined;
11
+ readonly queries?: string[] | undefined;
12
+ } | undefined;
13
+ readonly allowedQueries?: string[] | undefined;
14
+ readonly archivist?: import("@xyo-network/module-model").ModuleIdentifier | undefined;
15
+ readonly consoleLogger?: import("@xylabs/logger").LogLevel | undefined;
16
+ readonly labels?: {
17
+ [x: string]: string | undefined;
18
+ } | undefined;
19
+ readonly name?: import("@xyo-network/module-model").ModuleName | undefined;
20
+ readonly paging?: {
21
+ [x: string]: {
22
+ size?: number | undefined;
23
+ };
24
+ } | undefined;
25
+ readonly retry?: {
26
+ backoff?: number | undefined;
27
+ interval?: number | undefined;
28
+ retries?: number | undefined;
29
+ } | undefined;
30
+ readonly security?: {
31
+ readonly allowAnonymous?: boolean | undefined;
32
+ readonly allowed?: {
33
+ [x: string]: (Lowercase<string> | Lowercase<string>[])[];
34
+ } | undefined;
35
+ readonly disallowed?: {
36
+ [x: string]: Lowercase<string>[];
37
+ } | undefined;
38
+ } | undefined;
39
+ readonly sign?: boolean | undefined;
40
+ readonly storeQueries?: boolean | undefined;
41
+ readonly timestamp?: boolean | undefined;
42
+ automations?: ({
43
+ schema: "network.xyo.automation";
44
+ type: "interval";
45
+ end?: number | undefined;
46
+ frequency?: number | undefined;
47
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
48
+ remaining?: number | undefined;
49
+ start: number;
50
+ } | {
51
+ schema: "network.xyo.automation.interval";
52
+ type: "interval";
53
+ end?: number | undefined;
54
+ frequency?: number | undefined;
55
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
56
+ remaining?: number | undefined;
57
+ start: number;
58
+ } | {
59
+ schema: "network.xyo.automation.event";
60
+ type: "interval";
61
+ end?: number | undefined;
62
+ frequency?: number | undefined;
63
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
64
+ remaining?: number | undefined;
65
+ start: number;
66
+ } | {
67
+ schema: "network.xyo.automation";
68
+ type: "event";
69
+ } | {
70
+ schema: "network.xyo.automation.interval";
71
+ type: "event";
72
+ } | {
73
+ schema: "network.xyo.automation.event";
74
+ type: "event";
75
+ })[] | undefined;
76
+ synchronous?: boolean | undefined;
77
+ tasks: ({
78
+ endPoint?: "all" | "clear" | "commit" | "delete" | "get" | "insert" | undefined;
79
+ input?: string | boolean | string[] | undefined;
80
+ mod: import("@xyo-network/module-model").ModuleIdentifier;
81
+ required?: boolean | undefined;
82
+ } | {
83
+ endPoint?: "divine" | undefined;
84
+ input?: string | boolean | string[] | undefined;
85
+ mod: import("@xyo-network/module-model").ModuleIdentifier;
86
+ required?: boolean | undefined;
87
+ } | {
88
+ endPoint?: "observe" | undefined;
89
+ input?: string | boolean | string[] | undefined;
90
+ mod: import("@xyo-network/module-model").ModuleIdentifier;
91
+ required?: boolean | undefined;
92
+ } | {
93
+ endPoint?: string | undefined;
94
+ input?: string | boolean | string[] | undefined;
95
+ mod: import("@xyo-network/module-model").ModuleIdentifier;
96
+ required?: boolean | undefined;
97
+ })[];
98
+ throwErrors?: boolean | undefined;
99
+ }>;
100
+ ephemeralQueryAccountEnabled?: boolean;
101
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[];
102
+ }, import("../EventData.ts").SentinelModuleEventData<import("@xyo-network/module-model").Module<import("@xylabs/object").BaseParamsFields & {
103
+ account?: import("@xyo-network/account-model").AccountInstance | "random";
104
+ addToResolvers?: boolean;
105
+ additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
106
+ allowNameResolution?: boolean;
107
+ config: import("@xylabs/object").DeepRestrictToStringKeys<{
108
+ schema: import("@xyo-network/payload-model").Schema;
109
+ readonly archiving?: {
110
+ readonly archivists?: string[] | undefined;
111
+ readonly queries?: string[] | undefined;
112
+ } | undefined;
113
+ readonly allowedQueries?: string[] | undefined;
114
+ readonly archivist?: import("@xyo-network/module-model").ModuleIdentifier | undefined;
115
+ readonly consoleLogger?: import("@xylabs/logger").LogLevel | undefined;
116
+ readonly labels?: {
117
+ [x: string]: string | undefined;
118
+ } | undefined;
119
+ readonly name?: import("@xyo-network/module-model").ModuleName | undefined;
120
+ readonly paging?: {
121
+ [x: string]: {
122
+ size?: number | undefined;
123
+ };
124
+ } | undefined;
125
+ readonly retry?: {
126
+ backoff?: number | undefined;
127
+ interval?: number | undefined;
128
+ retries?: number | undefined;
129
+ } | undefined;
130
+ readonly security?: {
131
+ readonly allowAnonymous?: boolean | undefined;
132
+ readonly allowed?: {
133
+ [x: string]: (Lowercase<string> | Lowercase<string>[])[];
134
+ } | undefined;
135
+ readonly disallowed?: {
136
+ [x: string]: Lowercase<string>[];
137
+ } | undefined;
138
+ } | undefined;
139
+ readonly sign?: boolean | undefined;
140
+ readonly storeQueries?: boolean | undefined;
141
+ readonly timestamp?: boolean | undefined;
142
+ }>;
143
+ ephemeralQueryAccountEnabled?: boolean;
144
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[];
145
+ }, import("@xyo-network/module-model").ModuleEventData<object>>>>>(value: import("@xylabs/promise").AnyNonPromise, config?: import("@xylabs/object").TypeCheckConfig): TType | undefined;
146
+ <TType extends import("./AttachableInstance.ts").AttachableSentinelInstance<import("@xylabs/object").BaseParamsFields & {
147
+ account?: import("@xyo-network/account-model").AccountInstance | "random";
148
+ addToResolvers?: boolean;
149
+ additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
150
+ allowNameResolution?: boolean;
151
+ config: import("@xylabs/object").DeepRestrictToStringKeys<{
152
+ schema: import("@xyo-network/payload-model").Schema;
153
+ readonly archiving?: {
154
+ readonly archivists?: string[] | undefined;
155
+ readonly queries?: string[] | undefined;
156
+ } | undefined;
157
+ readonly allowedQueries?: string[] | undefined;
158
+ readonly archivist?: import("@xyo-network/module-model").ModuleIdentifier | undefined;
159
+ readonly consoleLogger?: import("@xylabs/logger").LogLevel | undefined;
160
+ readonly labels?: {
161
+ [x: string]: string | undefined;
162
+ } | undefined;
163
+ readonly name?: import("@xyo-network/module-model").ModuleName | undefined;
164
+ readonly paging?: {
165
+ [x: string]: {
166
+ size?: number | undefined;
167
+ };
168
+ } | undefined;
169
+ readonly retry?: {
170
+ backoff?: number | undefined;
171
+ interval?: number | undefined;
172
+ retries?: number | undefined;
173
+ } | undefined;
174
+ readonly security?: {
175
+ readonly allowAnonymous?: boolean | undefined;
176
+ readonly allowed?: {
177
+ [x: string]: (Lowercase<string> | Lowercase<string>[])[];
178
+ } | undefined;
179
+ readonly disallowed?: {
180
+ [x: string]: Lowercase<string>[];
181
+ } | undefined;
182
+ } | undefined;
183
+ readonly sign?: boolean | undefined;
184
+ readonly storeQueries?: boolean | undefined;
185
+ readonly timestamp?: boolean | undefined;
186
+ automations?: ({
187
+ schema: "network.xyo.automation";
188
+ type: "interval";
189
+ end?: number | undefined;
190
+ frequency?: number | undefined;
191
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
192
+ remaining?: number | undefined;
193
+ start: number;
194
+ } | {
195
+ schema: "network.xyo.automation.interval";
196
+ type: "interval";
197
+ end?: number | undefined;
198
+ frequency?: number | undefined;
199
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
200
+ remaining?: number | undefined;
201
+ start: number;
202
+ } | {
203
+ schema: "network.xyo.automation.event";
204
+ type: "interval";
205
+ end?: number | undefined;
206
+ frequency?: number | undefined;
207
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
208
+ remaining?: number | undefined;
209
+ start: number;
210
+ } | {
211
+ schema: "network.xyo.automation";
212
+ type: "event";
213
+ } | {
214
+ schema: "network.xyo.automation.interval";
215
+ type: "event";
216
+ } | {
217
+ schema: "network.xyo.automation.event";
218
+ type: "event";
219
+ })[] | undefined;
220
+ synchronous?: boolean | undefined;
221
+ tasks: ({
222
+ endPoint?: "all" | "clear" | "commit" | "delete" | "get" | "insert" | undefined;
223
+ input?: string | boolean | string[] | undefined;
224
+ mod: import("@xyo-network/module-model").ModuleIdentifier;
225
+ required?: boolean | undefined;
226
+ } | {
227
+ endPoint?: "divine" | undefined;
228
+ input?: string | boolean | string[] | undefined;
229
+ mod: import("@xyo-network/module-model").ModuleIdentifier;
230
+ required?: boolean | undefined;
231
+ } | {
232
+ endPoint?: "observe" | undefined;
233
+ input?: string | boolean | string[] | undefined;
234
+ mod: import("@xyo-network/module-model").ModuleIdentifier;
235
+ required?: boolean | undefined;
236
+ } | {
237
+ endPoint?: string | undefined;
238
+ input?: string | boolean | string[] | undefined;
239
+ mod: import("@xyo-network/module-model").ModuleIdentifier;
240
+ required?: boolean | undefined;
241
+ })[];
242
+ throwErrors?: boolean | undefined;
243
+ }>;
244
+ ephemeralQueryAccountEnabled?: boolean;
245
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[];
246
+ }, import("../EventData.ts").SentinelModuleEventData<import("@xyo-network/module-model").Module<import("@xylabs/object").BaseParamsFields & {
247
+ account?: import("@xyo-network/account-model").AccountInstance | "random";
248
+ addToResolvers?: boolean;
249
+ additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
250
+ allowNameResolution?: boolean;
251
+ config: import("@xylabs/object").DeepRestrictToStringKeys<{
252
+ schema: import("@xyo-network/payload-model").Schema;
253
+ readonly archiving?: {
254
+ readonly archivists?: string[] | undefined;
255
+ readonly queries?: string[] | undefined;
256
+ } | undefined;
257
+ readonly allowedQueries?: string[] | undefined;
258
+ readonly archivist?: import("@xyo-network/module-model").ModuleIdentifier | undefined;
259
+ readonly consoleLogger?: import("@xylabs/logger").LogLevel | undefined;
260
+ readonly labels?: {
261
+ [x: string]: string | undefined;
262
+ } | undefined;
263
+ readonly name?: import("@xyo-network/module-model").ModuleName | undefined;
264
+ readonly paging?: {
265
+ [x: string]: {
266
+ size?: number | undefined;
267
+ };
268
+ } | undefined;
269
+ readonly retry?: {
270
+ backoff?: number | undefined;
271
+ interval?: number | undefined;
272
+ retries?: number | undefined;
273
+ } | undefined;
274
+ readonly security?: {
275
+ readonly allowAnonymous?: boolean | undefined;
276
+ readonly allowed?: {
277
+ [x: string]: (Lowercase<string> | Lowercase<string>[])[];
278
+ } | undefined;
279
+ readonly disallowed?: {
280
+ [x: string]: Lowercase<string>[];
281
+ } | undefined;
282
+ } | undefined;
283
+ readonly sign?: boolean | undefined;
284
+ readonly storeQueries?: boolean | undefined;
285
+ readonly timestamp?: boolean | undefined;
286
+ }>;
287
+ ephemeralQueryAccountEnabled?: boolean;
288
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[];
289
+ }, import("@xyo-network/module-model").ModuleEventData<object>>>>>(value: import("@xylabs/promise").AnyNonPromise, assert: import("@xylabs/object").StringOrAlertFunction<import("./AttachableInstance.ts").AttachableSentinelInstance<import("@xylabs/object").BaseParamsFields & {
290
+ account?: import("@xyo-network/account-model").AccountInstance | "random";
291
+ addToResolvers?: boolean;
292
+ additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
293
+ allowNameResolution?: boolean;
294
+ config: import("@xylabs/object").DeepRestrictToStringKeys<{
295
+ schema: import("@xyo-network/payload-model").Schema;
296
+ readonly archiving?: {
297
+ readonly archivists?: string[] | undefined;
298
+ readonly queries?: string[] | undefined;
299
+ } | undefined;
300
+ readonly allowedQueries?: string[] | undefined;
301
+ readonly archivist?: import("@xyo-network/module-model").ModuleIdentifier | undefined;
302
+ readonly consoleLogger?: import("@xylabs/logger").LogLevel | undefined;
303
+ readonly labels?: {
304
+ [x: string]: string | undefined;
305
+ } | undefined;
306
+ readonly name?: import("@xyo-network/module-model").ModuleName | undefined;
307
+ readonly paging?: {
308
+ [x: string]: {
309
+ size?: number | undefined;
310
+ };
311
+ } | undefined;
312
+ readonly retry?: {
313
+ backoff?: number | undefined;
314
+ interval?: number | undefined;
315
+ retries?: number | undefined;
316
+ } | undefined;
317
+ readonly security?: {
318
+ readonly allowAnonymous?: boolean | undefined;
319
+ readonly allowed?: {
320
+ [x: string]: (Lowercase<string> | Lowercase<string>[])[];
321
+ } | undefined;
322
+ readonly disallowed?: {
323
+ [x: string]: Lowercase<string>[];
324
+ } | undefined;
325
+ } | undefined;
326
+ readonly sign?: boolean | undefined;
327
+ readonly storeQueries?: boolean | undefined;
328
+ readonly timestamp?: boolean | undefined;
329
+ automations?: ({
330
+ schema: "network.xyo.automation";
331
+ type: "interval";
332
+ end?: number | undefined;
333
+ frequency?: number | undefined;
334
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
335
+ remaining?: number | undefined;
336
+ start: number;
337
+ } | {
338
+ schema: "network.xyo.automation.interval";
339
+ type: "interval";
340
+ end?: number | undefined;
341
+ frequency?: number | undefined;
342
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
343
+ remaining?: number | undefined;
344
+ start: number;
345
+ } | {
346
+ schema: "network.xyo.automation.event";
347
+ type: "interval";
348
+ end?: number | undefined;
349
+ frequency?: number | undefined;
350
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
351
+ remaining?: number | undefined;
352
+ start: number;
353
+ } | {
354
+ schema: "network.xyo.automation";
355
+ type: "event";
356
+ } | {
357
+ schema: "network.xyo.automation.interval";
358
+ type: "event";
359
+ } | {
360
+ schema: "network.xyo.automation.event";
361
+ type: "event";
362
+ })[] | undefined;
363
+ synchronous?: boolean | undefined;
364
+ tasks: ({
365
+ endPoint?: "all" | "clear" | "commit" | "delete" | "get" | "insert" | undefined;
366
+ input?: string | boolean | string[] | undefined;
367
+ mod: import("@xyo-network/module-model").ModuleIdentifier;
368
+ required?: boolean | undefined;
369
+ } | {
370
+ endPoint?: "divine" | undefined;
371
+ input?: string | boolean | string[] | undefined;
372
+ mod: import("@xyo-network/module-model").ModuleIdentifier;
373
+ required?: boolean | undefined;
374
+ } | {
375
+ endPoint?: "observe" | undefined;
376
+ input?: string | boolean | string[] | undefined;
377
+ mod: import("@xyo-network/module-model").ModuleIdentifier;
378
+ required?: boolean | undefined;
379
+ } | {
380
+ endPoint?: string | undefined;
381
+ input?: string | boolean | string[] | undefined;
382
+ mod: import("@xyo-network/module-model").ModuleIdentifier;
383
+ required?: boolean | undefined;
384
+ })[];
385
+ throwErrors?: boolean | undefined;
386
+ }>;
387
+ ephemeralQueryAccountEnabled?: boolean;
388
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[];
389
+ }, import("../EventData.ts").SentinelModuleEventData<import("@xyo-network/module-model").Module<import("@xylabs/object").BaseParamsFields & {
390
+ account?: import("@xyo-network/account-model").AccountInstance | "random";
391
+ addToResolvers?: boolean;
392
+ additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
393
+ allowNameResolution?: boolean;
394
+ config: import("@xylabs/object").DeepRestrictToStringKeys<{
395
+ schema: import("@xyo-network/payload-model").Schema;
396
+ readonly archiving?: {
397
+ readonly archivists?: string[] | undefined;
398
+ readonly queries?: string[] | undefined;
399
+ } | undefined;
400
+ readonly allowedQueries?: string[] | undefined;
401
+ readonly archivist?: import("@xyo-network/module-model").ModuleIdentifier | undefined;
402
+ readonly consoleLogger?: import("@xylabs/logger").LogLevel | undefined;
403
+ readonly labels?: {
404
+ [x: string]: string | undefined;
405
+ } | undefined;
406
+ readonly name?: import("@xyo-network/module-model").ModuleName | undefined;
407
+ readonly paging?: {
408
+ [x: string]: {
409
+ size?: number | undefined;
410
+ };
411
+ } | undefined;
412
+ readonly retry?: {
413
+ backoff?: number | undefined;
414
+ interval?: number | undefined;
415
+ retries?: number | undefined;
416
+ } | undefined;
417
+ readonly security?: {
418
+ readonly allowAnonymous?: boolean | undefined;
419
+ readonly allowed?: {
420
+ [x: string]: (Lowercase<string> | Lowercase<string>[])[];
421
+ } | undefined;
422
+ readonly disallowed?: {
423
+ [x: string]: Lowercase<string>[];
424
+ } | undefined;
425
+ } | undefined;
426
+ readonly sign?: boolean | undefined;
427
+ readonly storeQueries?: boolean | undefined;
428
+ readonly timestamp?: boolean | undefined;
429
+ }>;
430
+ ephemeralQueryAccountEnabled?: boolean;
431
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[];
432
+ }, import("@xyo-network/module-model").ModuleEventData<object>>>>>, config?: import("@xylabs/object").TypeCheckConfig): TType;
433
+ };
434
+ //# sourceMappingURL=asAttachableInstance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asAttachableInstance.d.ts","sourceRoot":"","sources":["../../../src/attachable/asAttachableInstance.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qFACZ,iBAAiB,iCAAiC,gBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qFAA+E,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wFAAgG,gBAAoB;CADvN,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from './asAttachableInstance.ts';
2
+ export * from './AttachableInstance.ts';
3
+ export * from './isAttachableInstance.ts';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/attachable/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA;AACzC,cAAc,yBAAyB,CAAA;AACvC,cAAc,2BAA2B,CAAA"}
@@ -0,0 +1,6 @@
1
+ import type { TypeCheck } from '@xylabs/object';
2
+ import type { ObjectTypeShape } from '@xylabs/typeof';
3
+ import type { AttachableSentinelInstance } from './AttachableInstance.ts';
4
+ export declare const requiredAttachableSentinelInstanceFunctions: ObjectTypeShape;
5
+ export declare const isAttachableSentinelInstance: TypeCheck<AttachableSentinelInstance>;
6
+ //# sourceMappingURL=isAttachableInstance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isAttachableInstance.d.ts","sourceRoot":"","sources":["../../../src/attachable/isAttachableInstance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAIrD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAA;AAEzE,eAAO,MAAM,2CAA2C,EAAE,eAAoB,CAAA;AAK9E,eAAO,MAAM,4BAA4B,EAAE,SAAS,CAAC,0BAA0B,CAG7E,CAAA"}
@@ -1,3 +1,4 @@
1
+ export * from './attachable/index.ts';
1
2
  export * from './Automation.ts';
2
3
  export * from './Config.ts';
3
4
  export * from './EventData.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,yBAAyB,CAAA;AACvC,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,yBAAyB,CAAA;AACvC,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA"}
@@ -1,15 +1,9 @@
1
- // src/Automation.ts
2
- import { isPayloadOfSchemaType } from "@xyo-network/payload-model";
3
- var SentinelAutomationSchema = "network.xyo.automation";
4
- var SentinelIntervalAutomationSchema = "network.xyo.automation.interval";
5
- var SentinelEventAutomationSchema = "network.xyo.automation.event";
6
- var isSentinelIntervalAutomation = isPayloadOfSchemaType(SentinelIntervalAutomationSchema);
7
-
8
- // src/Config.ts
9
- var SentinelConfigSchema = "network.xyo.sentinel.config";
1
+ // src/attachable/asAttachableInstance.ts
2
+ import { AsObjectFactory as AsObjectFactory2 } from "@xylabs/object";
10
3
 
11
- // src/Queries/Report.ts
12
- var SentinelReportQuerySchema = "network.xyo.query.sentinel.report";
4
+ // src/attachable/isAttachableInstance.ts
5
+ import { IsObjectFactory } from "@xylabs/object";
6
+ import { isAttachableModuleInstance } from "@xyo-network/module-model";
13
7
 
14
8
  // src/typeChecks.ts
15
9
  import { AsObjectFactory } from "@xylabs/object";
@@ -19,23 +13,58 @@ import {
19
13
  isModuleInstance,
20
14
  WithFactory
21
15
  } from "@xyo-network/module-model";
16
+
17
+ // src/Queries/Report.ts
18
+ var SentinelReportQuerySchema = "network.xyo.query.sentinel.report";
19
+
20
+ // src/typeChecks.ts
22
21
  var isSentinelInstance = new IsInstanceFactory().create({ report: "function" }, [isModuleInstance]);
23
22
  var isSentinelModule = new IsModuleFactory().create([SentinelReportQuerySchema]);
24
23
  var asSentinelModule = AsObjectFactory.create(isSentinelModule);
25
24
  var asSentinelInstance = AsObjectFactory.create(isSentinelInstance);
26
25
  var withSentinelModule = WithFactory.create(isSentinelModule);
27
26
  var withSentinelInstance = WithFactory.create(isSentinelInstance);
27
+
28
+ // src/attachable/isAttachableInstance.ts
29
+ var requiredAttachableSentinelInstanceFunctions = {};
30
+ var factory = new IsObjectFactory();
31
+ var isAttachableSentinelInstance = factory.create(requiredAttachableSentinelInstanceFunctions, [
32
+ isSentinelInstance,
33
+ isAttachableModuleInstance
34
+ ]);
35
+
36
+ // src/attachable/asAttachableInstance.ts
37
+ var asAttachableSentinelInstance = AsObjectFactory2.create(isAttachableSentinelInstance);
38
+
39
+ // src/attachable/AttachableInstance.ts
40
+ import { IsObjectFactory as IsObjectFactory2 } from "@xylabs/object";
41
+ var IsAttachableSentinelInstanceFactory = class extends IsObjectFactory2 {
42
+ };
43
+
44
+ // src/Automation.ts
45
+ import { isPayloadOfSchemaType } from "@xyo-network/payload-model";
46
+ var SentinelAutomationSchema = "network.xyo.automation";
47
+ var SentinelIntervalAutomationSchema = "network.xyo.automation.interval";
48
+ var SentinelEventAutomationSchema = "network.xyo.automation.event";
49
+ var isSentinelIntervalAutomation = isPayloadOfSchemaType(SentinelIntervalAutomationSchema);
50
+
51
+ // src/Config.ts
52
+ var SentinelConfigSchema = "network.xyo.sentinel.config";
28
53
  export {
54
+ IsAttachableSentinelInstanceFactory,
29
55
  SentinelAutomationSchema,
30
56
  SentinelConfigSchema,
31
57
  SentinelEventAutomationSchema,
32
58
  SentinelIntervalAutomationSchema,
33
59
  SentinelReportQuerySchema,
60
+ asAttachableSentinelInstance,
34
61
  asSentinelInstance,
35
62
  asSentinelModule,
63
+ isAttachableSentinelInstance,
36
64
  isSentinelInstance,
37
65
  isSentinelIntervalAutomation,
38
66
  isSentinelModule,
67
+ requiredAttachableSentinelInstanceFunctions,
39
68
  withSentinelInstance,
40
69
  withSentinelModule
41
70
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Automation.ts","../../src/Config.ts","../../src/Queries/Report.ts","../../src/typeChecks.ts"],"sourcesContent":["import type { Payload } from '@xyo-network/payload-model'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nexport const SentinelAutomationSchema = 'network.xyo.automation' as const\nexport type SentinelAutomationSchema = typeof SentinelAutomationSchema\n\nexport const SentinelIntervalAutomationSchema = 'network.xyo.automation.interval' as const\nexport type SentinelIntervalAutomationSchema = typeof SentinelIntervalAutomationSchema\n\nexport const SentinelEventAutomationSchema = 'network.xyo.automation.event' as const\nexport type SentinelEventAutomationSchema = typeof SentinelEventAutomationSchema\n\nexport type SentinelBaseAutomationPayload<T extends Payload> = Payload<\n {\n type?: 'interval' | 'event'\n } & T\n>\n\n/** Settings for an Interval Automation */\nexport type SentinelIntervalAutomationPayload = SentinelBaseAutomationPayload<{\n /** Epoch after which any reoccurrence stops */\n end?: number\n\n /** Time between triggers [non-repeating if undefined] */\n frequency?: number\n\n /** Units for frequency field [hour if undefined] */\n frequencyUnits?: 'second' | 'minute' | 'hour' | 'day'\n\n /** Remaining triggers [infinite if undefined] */\n remaining?: number\n\n schema: SentinelIntervalAutomationSchema\n\n /** Epoch of the next trigger */\n start: number\n\n /** The type of automation */\n type: 'interval'\n}>\n\nexport const isSentinelIntervalAutomation = isPayloadOfSchemaType<SentinelIntervalAutomationPayload>(SentinelIntervalAutomationSchema)\n\n/** Settings for an Event Automation */\nexport type SentinelEventAutomationPayload = SentinelBaseAutomationPayload<{\n schema: SentinelEventAutomationSchema\n type: 'event'\n}>\n\n/** Settings for an Automation */\nexport type SentinelAutomationPayload = Payload<\n SentinelIntervalAutomationPayload | SentinelEventAutomationPayload,\n SentinelAutomationSchema | SentinelIntervalAutomationSchema | SentinelEventAutomationSchema\n>\n","import type { WithAdditional } from '@xylabs/object'\nimport type { ModuleConfig } from '@xyo-network/module-model'\nimport type { Payload } from '@xyo-network/payload-model'\n\nimport type { SentinelAutomationPayload } from './Automation.ts'\nimport type { Task } from './Task.ts'\n\nexport const SentinelConfigSchema = 'network.xyo.sentinel.config' as const\nexport type SentinelConfigSchema = typeof SentinelConfigSchema\n\nexport type SentinelConfig<TConfig extends Payload | void = void, TSchema extends string | void = void> = ModuleConfig<\n WithAdditional<\n {\n automations?: SentinelAutomationPayload[]\n schema: TConfig extends Payload ? TConfig['schema'] : SentinelConfigSchema\n synchronous?: boolean\n tasks: Task[]\n throwErrors?: boolean\n },\n TConfig\n >,\n TSchema\n>\n","import type { Query } from '@xyo-network/payload-model'\n\nexport const SentinelReportQuerySchema = 'network.xyo.query.sentinel.report' as const\nexport type SentinelReportQuerySchema = typeof SentinelReportQuerySchema\n\nexport type SentinelReportQuery = Query<{\n schema: SentinelReportQuerySchema\n}>\n","import { AsObjectFactory } from '@xylabs/object'\nimport {\n IsInstanceFactory, IsModuleFactory, isModuleInstance, WithFactory,\n} from '@xyo-network/module-model'\n\nimport type { SentinelInstance } from './Instance.ts'\nimport type { SentinelModule } from './Module.ts'\nimport { SentinelReportQuerySchema } from './Queries/index.ts'\n\nexport const isSentinelInstance = new IsInstanceFactory<SentinelInstance>().create({ report: 'function' }, [isModuleInstance])\nexport const isSentinelModule = new IsModuleFactory<SentinelModule>().create([SentinelReportQuerySchema])\n\nexport const asSentinelModule = AsObjectFactory.create(isSentinelModule)\nexport const asSentinelInstance = AsObjectFactory.create(isSentinelInstance)\nexport const withSentinelModule = WithFactory.create(isSentinelModule)\nexport const withSentinelInstance = WithFactory.create(isSentinelInstance)\n"],"mappings":";AACA,SAAS,6BAA6B;AAE/B,IAAM,2BAA2B;AAGjC,IAAM,mCAAmC;AAGzC,IAAM,gCAAgC;AAgCtC,IAAM,+BAA+B,sBAAyD,gCAAgC;;;AClC9H,IAAM,uBAAuB;;;ACL7B,IAAM,4BAA4B;;;ACFzC,SAAS,uBAAuB;AAChC;AAAA,EACE;AAAA,EAAmB;AAAA,EAAiB;AAAA,EAAkB;AAAA,OACjD;AAMA,IAAM,qBAAqB,IAAI,kBAAoC,EAAE,OAAO,EAAE,QAAQ,WAAW,GAAG,CAAC,gBAAgB,CAAC;AACtH,IAAM,mBAAmB,IAAI,gBAAgC,EAAE,OAAO,CAAC,yBAAyB,CAAC;AAEjG,IAAM,mBAAmB,gBAAgB,OAAO,gBAAgB;AAChE,IAAM,qBAAqB,gBAAgB,OAAO,kBAAkB;AACpE,IAAM,qBAAqB,YAAY,OAAO,gBAAgB;AAC9D,IAAM,uBAAuB,YAAY,OAAO,kBAAkB;","names":[]}
1
+ {"version":3,"sources":["../../src/attachable/asAttachableInstance.ts","../../src/attachable/isAttachableInstance.ts","../../src/typeChecks.ts","../../src/Queries/Report.ts","../../src/attachable/AttachableInstance.ts","../../src/Automation.ts","../../src/Config.ts"],"sourcesContent":["import { AsObjectFactory } from '@xylabs/object'\n\nimport { isAttachableSentinelInstance } from './isAttachableInstance.ts'\n\nexport const asAttachableSentinelInstance = AsObjectFactory.create(isAttachableSentinelInstance)\n","import type { TypeCheck } from '@xylabs/object'\nimport { IsObjectFactory } from '@xylabs/object'\nimport type { ObjectTypeShape } from '@xylabs/typeof'\nimport { isAttachableModuleInstance } from '@xyo-network/module-model'\n\nimport { isSentinelInstance } from '../typeChecks.ts'\nimport type { AttachableSentinelInstance } from './AttachableInstance.ts'\n\nexport const requiredAttachableSentinelInstanceFunctions: ObjectTypeShape = {}\n\n// we do not use IsInstanceFactory here to prevent a cycle\nconst factory = new IsObjectFactory<AttachableSentinelInstance>()\n\nexport const isAttachableSentinelInstance: TypeCheck<AttachableSentinelInstance> = factory.create(requiredAttachableSentinelInstanceFunctions, [\n isSentinelInstance,\n isAttachableModuleInstance,\n])\n","import { AsObjectFactory } from '@xylabs/object'\nimport {\n IsInstanceFactory, IsModuleFactory, isModuleInstance, WithFactory,\n} from '@xyo-network/module-model'\n\nimport type { SentinelInstance } from './Instance.ts'\nimport type { SentinelModule } from './Module.ts'\nimport { SentinelReportQuerySchema } from './Queries/index.ts'\n\nexport const isSentinelInstance = new IsInstanceFactory<SentinelInstance>().create({ report: 'function' }, [isModuleInstance])\nexport const isSentinelModule = new IsModuleFactory<SentinelModule>().create([SentinelReportQuerySchema])\n\nexport const asSentinelModule = AsObjectFactory.create(isSentinelModule)\nexport const asSentinelInstance = AsObjectFactory.create(isSentinelInstance)\nexport const withSentinelModule = WithFactory.create(isSentinelModule)\nexport const withSentinelInstance = WithFactory.create(isSentinelInstance)\n","import type { Query } from '@xyo-network/payload-model'\n\nexport const SentinelReportQuerySchema = 'network.xyo.query.sentinel.report' as const\nexport type SentinelReportQuerySchema = typeof SentinelReportQuerySchema\n\nexport type SentinelReportQuery = Query<{\n schema: SentinelReportQuerySchema\n}>\n","import type { TypeCheck } from '@xylabs/object'\nimport { IsObjectFactory } from '@xylabs/object'\nimport type { AttachableModuleInstance } from '@xyo-network/module-model'\n\nimport type { SentinelModuleEventData } from '../EventData.ts'\nimport type { SentinelInstance } from '../Instance.ts'\nimport type { SentinelModule } from '../Module.ts'\nimport type { SentinelParams } from '../Params.ts'\n\nexport interface AttachableSentinelInstance<\n TParams extends SentinelParams = SentinelParams,\n TEventData extends SentinelModuleEventData = SentinelModuleEventData,\n> extends SentinelModule<TParams, TEventData>,\n AttachableModuleInstance<TParams, TEventData>,\n SentinelInstance<TParams, TEventData> {}\n\nexport type AttachableSentinelInstanceTypeCheck<T extends AttachableSentinelInstance = AttachableSentinelInstance> = TypeCheck<T>\n\nexport class IsAttachableSentinelInstanceFactory<T extends AttachableSentinelInstance = AttachableSentinelInstance> extends IsObjectFactory<T> {}\n","import type { Payload } from '@xyo-network/payload-model'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nexport const SentinelAutomationSchema = 'network.xyo.automation' as const\nexport type SentinelAutomationSchema = typeof SentinelAutomationSchema\n\nexport const SentinelIntervalAutomationSchema = 'network.xyo.automation.interval' as const\nexport type SentinelIntervalAutomationSchema = typeof SentinelIntervalAutomationSchema\n\nexport const SentinelEventAutomationSchema = 'network.xyo.automation.event' as const\nexport type SentinelEventAutomationSchema = typeof SentinelEventAutomationSchema\n\nexport type SentinelBaseAutomationPayload<T extends Payload> = Payload<\n {\n type?: 'interval' | 'event'\n } & T\n>\n\n/** Settings for an Interval Automation */\nexport type SentinelIntervalAutomationPayload = SentinelBaseAutomationPayload<{\n /** Epoch after which any reoccurrence stops */\n end?: number\n\n /** Time between triggers [non-repeating if undefined] */\n frequency?: number\n\n /** Units for frequency field [hour if undefined] */\n frequencyUnits?: 'second' | 'minute' | 'hour' | 'day' | 'millis'\n\n /** Remaining triggers [infinite if undefined] */\n remaining?: number\n\n schema: SentinelIntervalAutomationSchema\n\n /** Epoch of the next trigger */\n start: number\n\n /** The type of automation */\n type: 'interval'\n}>\n\nexport const isSentinelIntervalAutomation = isPayloadOfSchemaType<SentinelIntervalAutomationPayload>(SentinelIntervalAutomationSchema)\n\n/** Settings for an Event Automation */\nexport type SentinelEventAutomationPayload = SentinelBaseAutomationPayload<{\n schema: SentinelEventAutomationSchema\n type: 'event'\n}>\n\n/** Settings for an Automation */\nexport type SentinelAutomationPayload = Payload<\n SentinelIntervalAutomationPayload | SentinelEventAutomationPayload,\n SentinelAutomationSchema | SentinelIntervalAutomationSchema | SentinelEventAutomationSchema\n>\n","import type { WithAdditional } from '@xylabs/object'\nimport type { ModuleConfig } from '@xyo-network/module-model'\nimport type { Payload } from '@xyo-network/payload-model'\n\nimport type { SentinelAutomationPayload } from './Automation.ts'\nimport type { Task } from './Task.ts'\n\nexport const SentinelConfigSchema = 'network.xyo.sentinel.config' as const\nexport type SentinelConfigSchema = typeof SentinelConfigSchema\n\nexport type SentinelConfig<TConfig extends Payload | void = void, TSchema extends string | void = void> = ModuleConfig<\n WithAdditional<\n {\n automations?: SentinelAutomationPayload[]\n schema: TConfig extends Payload ? TConfig['schema'] : SentinelConfigSchema\n synchronous?: boolean\n tasks: Task[]\n throwErrors?: boolean\n },\n TConfig\n >,\n TSchema\n>\n"],"mappings":";AAAA,SAAS,mBAAAA,wBAAuB;;;ACChC,SAAS,uBAAuB;AAEhC,SAAS,kCAAkC;;;ACH3C,SAAS,uBAAuB;AAChC;AAAA,EACE;AAAA,EAAmB;AAAA,EAAiB;AAAA,EAAkB;AAAA,OACjD;;;ACDA,IAAM,4BAA4B;;;ADOlC,IAAM,qBAAqB,IAAI,kBAAoC,EAAE,OAAO,EAAE,QAAQ,WAAW,GAAG,CAAC,gBAAgB,CAAC;AACtH,IAAM,mBAAmB,IAAI,gBAAgC,EAAE,OAAO,CAAC,yBAAyB,CAAC;AAEjG,IAAM,mBAAmB,gBAAgB,OAAO,gBAAgB;AAChE,IAAM,qBAAqB,gBAAgB,OAAO,kBAAkB;AACpE,IAAM,qBAAqB,YAAY,OAAO,gBAAgB;AAC9D,IAAM,uBAAuB,YAAY,OAAO,kBAAkB;;;ADPlE,IAAM,8CAA+D,CAAC;AAG7E,IAAM,UAAU,IAAI,gBAA4C;AAEzD,IAAM,+BAAsE,QAAQ,OAAO,6CAA6C;AAAA,EAC7I;AAAA,EACA;AACF,CAAC;;;ADZM,IAAM,+BAA+BC,iBAAgB,OAAO,4BAA4B;;;AIH/F,SAAS,mBAAAC,wBAAuB;AAiBzB,IAAM,sCAAN,cAAqHA,iBAAmB;AAAC;;;ACjBhJ,SAAS,6BAA6B;AAE/B,IAAM,2BAA2B;AAGjC,IAAM,mCAAmC;AAGzC,IAAM,gCAAgC;AAgCtC,IAAM,+BAA+B,sBAAyD,gCAAgC;;;AClC9H,IAAM,uBAAuB;","names":["AsObjectFactory","AsObjectFactory","IsObjectFactory"]}
@@ -45,7 +45,7 @@ export declare const isSentinelInstance: import("@xylabs/object").TypeCheck<Sent
45
45
  type: "interval";
46
46
  end?: number | undefined;
47
47
  frequency?: number | undefined;
48
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
48
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
49
49
  remaining?: number | undefined;
50
50
  start: number;
51
51
  } | {
@@ -53,7 +53,7 @@ export declare const isSentinelInstance: import("@xylabs/object").TypeCheck<Sent
53
53
  type: "interval";
54
54
  end?: number | undefined;
55
55
  frequency?: number | undefined;
56
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
56
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
57
57
  remaining?: number | undefined;
58
58
  start: number;
59
59
  } | {
@@ -61,7 +61,7 @@ export declare const isSentinelInstance: import("@xylabs/object").TypeCheck<Sent
61
61
  type: "interval";
62
62
  end?: number | undefined;
63
63
  frequency?: number | undefined;
64
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
64
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
65
65
  remaining?: number | undefined;
66
66
  start: number;
67
67
  } | {
@@ -189,7 +189,7 @@ export declare const isSentinelModule: import("@xyo-network/module-model").Modul
189
189
  type: "interval";
190
190
  end?: number | undefined;
191
191
  frequency?: number | undefined;
192
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
192
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
193
193
  remaining?: number | undefined;
194
194
  start: number;
195
195
  } | {
@@ -197,7 +197,7 @@ export declare const isSentinelModule: import("@xyo-network/module-model").Modul
197
197
  type: "interval";
198
198
  end?: number | undefined;
199
199
  frequency?: number | undefined;
200
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
200
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
201
201
  remaining?: number | undefined;
202
202
  start: number;
203
203
  } | {
@@ -205,7 +205,7 @@ export declare const isSentinelModule: import("@xyo-network/module-model").Modul
205
205
  type: "interval";
206
206
  end?: number | undefined;
207
207
  frequency?: number | undefined;
208
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
208
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
209
209
  remaining?: number | undefined;
210
210
  start: number;
211
211
  } | {
@@ -334,7 +334,7 @@ export declare const asSentinelModule: {
334
334
  type: "interval";
335
335
  end?: number | undefined;
336
336
  frequency?: number | undefined;
337
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
337
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
338
338
  remaining?: number | undefined;
339
339
  start: number;
340
340
  } | {
@@ -342,7 +342,7 @@ export declare const asSentinelModule: {
342
342
  type: "interval";
343
343
  end?: number | undefined;
344
344
  frequency?: number | undefined;
345
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
345
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
346
346
  remaining?: number | undefined;
347
347
  start: number;
348
348
  } | {
@@ -350,7 +350,7 @@ export declare const asSentinelModule: {
350
350
  type: "interval";
351
351
  end?: number | undefined;
352
352
  frequency?: number | undefined;
353
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
353
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
354
354
  remaining?: number | undefined;
355
355
  start: number;
356
356
  } | {
@@ -478,7 +478,7 @@ export declare const asSentinelModule: {
478
478
  type: "interval";
479
479
  end?: number | undefined;
480
480
  frequency?: number | undefined;
481
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
481
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
482
482
  remaining?: number | undefined;
483
483
  start: number;
484
484
  } | {
@@ -486,7 +486,7 @@ export declare const asSentinelModule: {
486
486
  type: "interval";
487
487
  end?: number | undefined;
488
488
  frequency?: number | undefined;
489
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
489
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
490
490
  remaining?: number | undefined;
491
491
  start: number;
492
492
  } | {
@@ -494,7 +494,7 @@ export declare const asSentinelModule: {
494
494
  type: "interval";
495
495
  end?: number | undefined;
496
496
  frequency?: number | undefined;
497
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
497
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
498
498
  remaining?: number | undefined;
499
499
  start: number;
500
500
  } | {
@@ -621,7 +621,7 @@ export declare const asSentinelModule: {
621
621
  type: "interval";
622
622
  end?: number | undefined;
623
623
  frequency?: number | undefined;
624
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
624
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
625
625
  remaining?: number | undefined;
626
626
  start: number;
627
627
  } | {
@@ -629,7 +629,7 @@ export declare const asSentinelModule: {
629
629
  type: "interval";
630
630
  end?: number | undefined;
631
631
  frequency?: number | undefined;
632
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
632
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
633
633
  remaining?: number | undefined;
634
634
  start: number;
635
635
  } | {
@@ -637,7 +637,7 @@ export declare const asSentinelModule: {
637
637
  type: "interval";
638
638
  end?: number | undefined;
639
639
  frequency?: number | undefined;
640
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
640
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
641
641
  remaining?: number | undefined;
642
642
  start: number;
643
643
  } | {
@@ -767,7 +767,7 @@ export declare const asSentinelInstance: {
767
767
  type: "interval";
768
768
  end?: number | undefined;
769
769
  frequency?: number | undefined;
770
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
770
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
771
771
  remaining?: number | undefined;
772
772
  start: number;
773
773
  } | {
@@ -775,7 +775,7 @@ export declare const asSentinelInstance: {
775
775
  type: "interval";
776
776
  end?: number | undefined;
777
777
  frequency?: number | undefined;
778
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
778
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
779
779
  remaining?: number | undefined;
780
780
  start: number;
781
781
  } | {
@@ -783,7 +783,7 @@ export declare const asSentinelInstance: {
783
783
  type: "interval";
784
784
  end?: number | undefined;
785
785
  frequency?: number | undefined;
786
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
786
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
787
787
  remaining?: number | undefined;
788
788
  start: number;
789
789
  } | {
@@ -911,7 +911,7 @@ export declare const asSentinelInstance: {
911
911
  type: "interval";
912
912
  end?: number | undefined;
913
913
  frequency?: number | undefined;
914
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
914
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
915
915
  remaining?: number | undefined;
916
916
  start: number;
917
917
  } | {
@@ -919,7 +919,7 @@ export declare const asSentinelInstance: {
919
919
  type: "interval";
920
920
  end?: number | undefined;
921
921
  frequency?: number | undefined;
922
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
922
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
923
923
  remaining?: number | undefined;
924
924
  start: number;
925
925
  } | {
@@ -927,7 +927,7 @@ export declare const asSentinelInstance: {
927
927
  type: "interval";
928
928
  end?: number | undefined;
929
929
  frequency?: number | undefined;
930
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
930
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
931
931
  remaining?: number | undefined;
932
932
  start: number;
933
933
  } | {
@@ -1054,7 +1054,7 @@ export declare const asSentinelInstance: {
1054
1054
  type: "interval";
1055
1055
  end?: number | undefined;
1056
1056
  frequency?: number | undefined;
1057
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
1057
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
1058
1058
  remaining?: number | undefined;
1059
1059
  start: number;
1060
1060
  } | {
@@ -1062,7 +1062,7 @@ export declare const asSentinelInstance: {
1062
1062
  type: "interval";
1063
1063
  end?: number | undefined;
1064
1064
  frequency?: number | undefined;
1065
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
1065
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
1066
1066
  remaining?: number | undefined;
1067
1067
  start: number;
1068
1068
  } | {
@@ -1070,7 +1070,7 @@ export declare const asSentinelInstance: {
1070
1070
  type: "interval";
1071
1071
  end?: number | undefined;
1072
1072
  frequency?: number | undefined;
1073
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
1073
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
1074
1074
  remaining?: number | undefined;
1075
1075
  start: number;
1076
1076
  } | {
@@ -1199,7 +1199,7 @@ export declare const withSentinelModule: <R>(mod: any, closure: (mod: SentinelMo
1199
1199
  type: "interval";
1200
1200
  end?: number | undefined;
1201
1201
  frequency?: number | undefined;
1202
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
1202
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
1203
1203
  remaining?: number | undefined;
1204
1204
  start: number;
1205
1205
  } | {
@@ -1207,7 +1207,7 @@ export declare const withSentinelModule: <R>(mod: any, closure: (mod: SentinelMo
1207
1207
  type: "interval";
1208
1208
  end?: number | undefined;
1209
1209
  frequency?: number | undefined;
1210
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
1210
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
1211
1211
  remaining?: number | undefined;
1212
1212
  start: number;
1213
1213
  } | {
@@ -1215,7 +1215,7 @@ export declare const withSentinelModule: <R>(mod: any, closure: (mod: SentinelMo
1215
1215
  type: "interval";
1216
1216
  end?: number | undefined;
1217
1217
  frequency?: number | undefined;
1218
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
1218
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
1219
1219
  remaining?: number | undefined;
1220
1220
  start: number;
1221
1221
  } | {
@@ -1343,7 +1343,7 @@ export declare const withSentinelInstance: <R>(mod: any, closure: (mod: Sentinel
1343
1343
  type: "interval";
1344
1344
  end?: number | undefined;
1345
1345
  frequency?: number | undefined;
1346
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
1346
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
1347
1347
  remaining?: number | undefined;
1348
1348
  start: number;
1349
1349
  } | {
@@ -1351,7 +1351,7 @@ export declare const withSentinelInstance: <R>(mod: any, closure: (mod: Sentinel
1351
1351
  type: "interval";
1352
1352
  end?: number | undefined;
1353
1353
  frequency?: number | undefined;
1354
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
1354
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
1355
1355
  remaining?: number | undefined;
1356
1356
  start: number;
1357
1357
  } | {
@@ -1359,7 +1359,7 @@ export declare const withSentinelInstance: <R>(mod: any, closure: (mod: Sentinel
1359
1359
  type: "interval";
1360
1360
  end?: number | undefined;
1361
1361
  frequency?: number | undefined;
1362
- frequencyUnits?: "second" | "minute" | "hour" | "day" | undefined;
1362
+ frequencyUnits?: "second" | "minute" | "hour" | "day" | "millis" | undefined;
1363
1363
  remaining?: number | undefined;
1364
1364
  start: number;
1365
1365
  } | {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xyo-network/sentinel-model",
3
- "version": "3.6.12",
3
+ "version": "3.7.0",
4
4
  "description": "Primary SDK for using XYO Protocol 2.0",
5
5
  "homepage": "https://xyo.network",
6
6
  "bugs": {
@@ -32,14 +32,15 @@
32
32
  "@xylabs/hex": "^4.5.1",
33
33
  "@xylabs/object": "^4.5.1",
34
34
  "@xylabs/promise": "^4.5.1",
35
- "@xyo-network/account-model": "^3.6.12",
36
- "@xyo-network/archivist-model": "^3.6.12",
37
- "@xyo-network/boundwitness-model": "^3.6.12",
38
- "@xyo-network/diviner-model": "^3.6.12",
39
- "@xyo-network/module-events": "^3.6.12",
40
- "@xyo-network/module-model": "^3.6.12",
41
- "@xyo-network/payload-model": "^3.6.12",
42
- "@xyo-network/witness-model": "^3.6.12"
35
+ "@xylabs/typeof": "^4.5.1",
36
+ "@xyo-network/account-model": "^3.7.0",
37
+ "@xyo-network/archivist-model": "^3.7.0",
38
+ "@xyo-network/boundwitness-model": "^3.7.0",
39
+ "@xyo-network/diviner-model": "^3.7.0",
40
+ "@xyo-network/module-events": "^3.7.0",
41
+ "@xyo-network/module-model": "^3.7.0",
42
+ "@xyo-network/payload-model": "^3.7.0",
43
+ "@xyo-network/witness-model": "^3.7.0"
43
44
  },
44
45
  "devDependencies": {
45
46
  "@xylabs/ts-scripts-yarn3": "^4.2.6",
package/src/Automation.ts CHANGED
@@ -25,7 +25,7 @@ export type SentinelIntervalAutomationPayload = SentinelBaseAutomationPayload<{
25
25
  frequency?: number
26
26
 
27
27
  /** Units for frequency field [hour if undefined] */
28
- frequencyUnits?: 'second' | 'minute' | 'hour' | 'day'
28
+ frequencyUnits?: 'second' | 'minute' | 'hour' | 'day' | 'millis'
29
29
 
30
30
  /** Remaining triggers [infinite if undefined] */
31
31
  remaining?: number
@@ -0,0 +1,19 @@
1
+ import type { TypeCheck } from '@xylabs/object'
2
+ import { IsObjectFactory } from '@xylabs/object'
3
+ import type { AttachableModuleInstance } from '@xyo-network/module-model'
4
+
5
+ import type { SentinelModuleEventData } from '../EventData.ts'
6
+ import type { SentinelInstance } from '../Instance.ts'
7
+ import type { SentinelModule } from '../Module.ts'
8
+ import type { SentinelParams } from '../Params.ts'
9
+
10
+ export interface AttachableSentinelInstance<
11
+ TParams extends SentinelParams = SentinelParams,
12
+ TEventData extends SentinelModuleEventData = SentinelModuleEventData,
13
+ > extends SentinelModule<TParams, TEventData>,
14
+ AttachableModuleInstance<TParams, TEventData>,
15
+ SentinelInstance<TParams, TEventData> {}
16
+
17
+ export type AttachableSentinelInstanceTypeCheck<T extends AttachableSentinelInstance = AttachableSentinelInstance> = TypeCheck<T>
18
+
19
+ export class IsAttachableSentinelInstanceFactory<T extends AttachableSentinelInstance = AttachableSentinelInstance> extends IsObjectFactory<T> {}
@@ -0,0 +1,5 @@
1
+ import { AsObjectFactory } from '@xylabs/object'
2
+
3
+ import { isAttachableSentinelInstance } from './isAttachableInstance.ts'
4
+
5
+ export const asAttachableSentinelInstance = AsObjectFactory.create(isAttachableSentinelInstance)
@@ -0,0 +1,3 @@
1
+ export * from './asAttachableInstance.ts'
2
+ export * from './AttachableInstance.ts'
3
+ export * from './isAttachableInstance.ts'
@@ -0,0 +1,17 @@
1
+ import type { TypeCheck } from '@xylabs/object'
2
+ import { IsObjectFactory } from '@xylabs/object'
3
+ import type { ObjectTypeShape } from '@xylabs/typeof'
4
+ import { isAttachableModuleInstance } from '@xyo-network/module-model'
5
+
6
+ import { isSentinelInstance } from '../typeChecks.ts'
7
+ import type { AttachableSentinelInstance } from './AttachableInstance.ts'
8
+
9
+ export const requiredAttachableSentinelInstanceFunctions: ObjectTypeShape = {}
10
+
11
+ // we do not use IsInstanceFactory here to prevent a cycle
12
+ const factory = new IsObjectFactory<AttachableSentinelInstance>()
13
+
14
+ export const isAttachableSentinelInstance: TypeCheck<AttachableSentinelInstance> = factory.create(requiredAttachableSentinelInstanceFunctions, [
15
+ isSentinelInstance,
16
+ isAttachableModuleInstance,
17
+ ])
package/src/index.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export * from './attachable/index.ts'
1
2
  export * from './Automation.ts'
2
3
  export * from './Config.ts'
3
4
  export * from './EventData.ts'