@trillboards/edge-core 0.1.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.
- package/dist/DeviceIdentity.d.ts +32 -0
- package/dist/DeviceIdentity.d.ts.map +1 -0
- package/dist/DeviceIdentity.js +131 -0
- package/dist/DeviceIdentity.js.map +1 -0
- package/dist/DeviceProfile.d.ts +39 -0
- package/dist/DeviceProfile.d.ts.map +1 -0
- package/dist/DeviceProfile.js +199 -0
- package/dist/DeviceProfile.js.map +1 -0
- package/dist/ObservationSignalClassifier.d.ts +33 -0
- package/dist/ObservationSignalClassifier.d.ts.map +1 -0
- package/dist/ObservationSignalClassifier.js +116 -0
- package/dist/ObservationSignalClassifier.js.map +1 -0
- package/dist/RecoveryLadder.d.ts +58 -0
- package/dist/RecoveryLadder.d.ts.map +1 -0
- package/dist/RecoveryLadder.js +199 -0
- package/dist/RecoveryLadder.js.map +1 -0
- package/dist/SensingConfig.d.ts +33 -0
- package/dist/SensingConfig.d.ts.map +1 -0
- package/dist/SensingConfig.js +179 -0
- package/dist/SensingConfig.js.map +1 -0
- package/dist/SignalBuffer.d.ts +56 -0
- package/dist/SignalBuffer.d.ts.map +1 -0
- package/dist/SignalBuffer.js +143 -0
- package/dist/SignalBuffer.js.map +1 -0
- package/dist/SocketManager.d.ts +73 -0
- package/dist/SocketManager.d.ts.map +1 -0
- package/dist/SocketManager.js +160 -0
- package/dist/SocketManager.js.map +1 -0
- package/dist/SubsystemHealthRegistry.d.ts +61 -0
- package/dist/SubsystemHealthRegistry.d.ts.map +1 -0
- package/dist/SubsystemHealthRegistry.js +230 -0
- package/dist/SubsystemHealthRegistry.js.map +1 -0
- package/dist/TelemetryScheduler.d.ts +56 -0
- package/dist/TelemetryScheduler.d.ts.map +1 -0
- package/dist/TelemetryScheduler.js +99 -0
- package/dist/TelemetryScheduler.js.map +1 -0
- package/dist/VASWeightConfig.d.ts +26 -0
- package/dist/VASWeightConfig.d.ts.map +1 -0
- package/dist/VASWeightConfig.js +83 -0
- package/dist/VASWeightConfig.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +44 -0
- package/dist/index.js.map +1 -0
- package/dist/types.d.ts +530 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +96 -0
- package/dist/types.js.map +1 -0
- package/package.json +40 -0
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* TelemetryScheduler — Heartbeat emission loop.
|
|
4
|
+
* Port of TelemetryScheduler.kt.
|
|
5
|
+
*
|
|
6
|
+
* Emits heartbeat every 30s (configurable via heartbeatIntervalMs).
|
|
7
|
+
* Skips if powerState == "off" or "standby" — lets server TTL handle offline marking.
|
|
8
|
+
* Skips if screenId not yet resolved.
|
|
9
|
+
*/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.TelemetryScheduler = void 0;
|
|
12
|
+
class TelemetryScheduler {
|
|
13
|
+
constructor(options) {
|
|
14
|
+
this.interval = null;
|
|
15
|
+
this.powerState = 'on';
|
|
16
|
+
this.socketManager = options.socketManager;
|
|
17
|
+
this.healthRegistry = options.healthRegistry;
|
|
18
|
+
this.platform = options.platform;
|
|
19
|
+
this.fingerprint = options.fingerprint;
|
|
20
|
+
this.heartbeatIntervalMs = options.heartbeatIntervalMs || 30000;
|
|
21
|
+
this.screenId = options.screenId || null;
|
|
22
|
+
this.metadata = options.metadata || {};
|
|
23
|
+
this.startTime = Date.now();
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Start the heartbeat emission loop.
|
|
27
|
+
*/
|
|
28
|
+
start() {
|
|
29
|
+
if (this.interval)
|
|
30
|
+
return;
|
|
31
|
+
// Emit first heartbeat immediately
|
|
32
|
+
this.emitHeartbeat();
|
|
33
|
+
this.interval = setInterval(() => {
|
|
34
|
+
this.emitHeartbeat();
|
|
35
|
+
}, this.heartbeatIntervalMs);
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Stop the heartbeat loop.
|
|
39
|
+
*/
|
|
40
|
+
stop() {
|
|
41
|
+
if (this.interval) {
|
|
42
|
+
clearInterval(this.interval);
|
|
43
|
+
this.interval = null;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Update the screen ID after registration.
|
|
48
|
+
*/
|
|
49
|
+
setScreenId(screenId) {
|
|
50
|
+
this.screenId = screenId;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Update the power state.
|
|
54
|
+
* "off" or "standby" → skip heartbeats, let server TTL mark offline.
|
|
55
|
+
*/
|
|
56
|
+
setPowerState(state) {
|
|
57
|
+
this.powerState = state;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Update metadata to include in heartbeats.
|
|
61
|
+
*/
|
|
62
|
+
updateMetadata(metadata) {
|
|
63
|
+
this.metadata = { ...this.metadata, ...metadata };
|
|
64
|
+
}
|
|
65
|
+
emitHeartbeat() {
|
|
66
|
+
// Skip if display off/standby — let server TTL handle
|
|
67
|
+
if (this.powerState !== 'on')
|
|
68
|
+
return;
|
|
69
|
+
// Skip if screenId not yet resolved
|
|
70
|
+
if (!this.screenId)
|
|
71
|
+
return;
|
|
72
|
+
const memInfo = this.platform.getMemoryInfo();
|
|
73
|
+
const cpuInfo = this.platform.getCpuInfo();
|
|
74
|
+
const payload = {
|
|
75
|
+
fingerprint: this.fingerprint,
|
|
76
|
+
screenId: this.screenId,
|
|
77
|
+
timestamp: Date.now(),
|
|
78
|
+
platform: this.platform.getNetworkType() !== 'unknown'
|
|
79
|
+
? `${process.platform}_${this.platform.getNetworkType()}`
|
|
80
|
+
: process.platform,
|
|
81
|
+
uptime: Date.now() - this.startTime,
|
|
82
|
+
metadata: {
|
|
83
|
+
...this.metadata,
|
|
84
|
+
platform: process.platform,
|
|
85
|
+
nodeVersion: process.version,
|
|
86
|
+
arch: process.arch,
|
|
87
|
+
memoryTotal: memInfo.totalMb,
|
|
88
|
+
memoryFree: memInfo.freeMb,
|
|
89
|
+
memoryUsedPercent: memInfo.usedPercent,
|
|
90
|
+
cpuCores: cpuInfo.cores,
|
|
91
|
+
cpuModel: cpuInfo.model,
|
|
92
|
+
},
|
|
93
|
+
subsystemHealth: this.healthRegistry.toHeartbeatPayload(),
|
|
94
|
+
};
|
|
95
|
+
this.socketManager.emitHeartbeat(payload);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
exports.TelemetryScheduler = TelemetryScheduler;
|
|
99
|
+
//# sourceMappingURL=TelemetryScheduler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TelemetryScheduler.js","sourceRoot":"","sources":["../src/TelemetryScheduler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* VASWeightConfig — Venue-specific VAS weight configuration.
|
|
3
|
+
* Port of VASWeightConfig.kt. Server-pushed venue × daypart weight matrix.
|
|
4
|
+
*
|
|
5
|
+
* Lookup chain:
|
|
6
|
+
* 1. Exact: venueType + daypart
|
|
7
|
+
* 2. Venue-only: venueType + "default"
|
|
8
|
+
* 3. Global defaults: hardcoded
|
|
9
|
+
*/
|
|
10
|
+
import type { VASWeights } from './types';
|
|
11
|
+
export declare class VASWeightConfig {
|
|
12
|
+
private weights;
|
|
13
|
+
private hasServerWeights_;
|
|
14
|
+
/**
|
|
15
|
+
* Update from server-pushed JSON.
|
|
16
|
+
* Structure: { "transit": { "morning": { "attention": 0.45, ... } } }
|
|
17
|
+
*/
|
|
18
|
+
updateFromJSON(json: Record<string, unknown>): void;
|
|
19
|
+
/**
|
|
20
|
+
* Get VAS weights for a venue type and daypart.
|
|
21
|
+
* Lookup chain: exact → venue default → global default.
|
|
22
|
+
*/
|
|
23
|
+
getWeights(venueType?: string, daypart?: string): VASWeights;
|
|
24
|
+
hasServerWeights(): boolean;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=VASWeightConfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VASWeightConfig.d.ts","sourceRoot":"","sources":["../src/VASWeightConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAS1C,qBAAa,eAAe;IAC1B,OAAO,CAAC,OAAO,CAAmD;IAClE,OAAO,CAAC,iBAAiB,CAAS;IAElC;;;OAGG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAsCnD;;;OAGG;IACH,UAAU,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU;IAe5D,gBAAgB,IAAI,OAAO;CAG5B"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* VASWeightConfig — Venue-specific VAS weight configuration.
|
|
4
|
+
* Port of VASWeightConfig.kt. Server-pushed venue × daypart weight matrix.
|
|
5
|
+
*
|
|
6
|
+
* Lookup chain:
|
|
7
|
+
* 1. Exact: venueType + daypart
|
|
8
|
+
* 2. Venue-only: venueType + "default"
|
|
9
|
+
* 3. Global defaults: hardcoded
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.VASWeightConfig = void 0;
|
|
13
|
+
const DEFAULT_WEIGHTS = {
|
|
14
|
+
attention: 0.4,
|
|
15
|
+
emotion: 0.3,
|
|
16
|
+
body: 0.2,
|
|
17
|
+
focus: 0.1,
|
|
18
|
+
};
|
|
19
|
+
class VASWeightConfig {
|
|
20
|
+
constructor() {
|
|
21
|
+
this.weights = new Map();
|
|
22
|
+
this.hasServerWeights_ = false;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Update from server-pushed JSON.
|
|
26
|
+
* Structure: { "transit": { "morning": { "attention": 0.45, ... } } }
|
|
27
|
+
*/
|
|
28
|
+
updateFromJSON(json) {
|
|
29
|
+
for (const venueType of Object.keys(json)) {
|
|
30
|
+
const dayparts = json[venueType];
|
|
31
|
+
if (typeof dayparts !== 'object' || dayparts === null)
|
|
32
|
+
continue;
|
|
33
|
+
if (!this.weights.has(venueType)) {
|
|
34
|
+
this.weights.set(venueType, new Map());
|
|
35
|
+
}
|
|
36
|
+
const venueMap = this.weights.get(venueType);
|
|
37
|
+
for (const daypart of Object.keys(dayparts)) {
|
|
38
|
+
const w = dayparts[daypart];
|
|
39
|
+
if (typeof w !== 'object' || w === null)
|
|
40
|
+
continue;
|
|
41
|
+
const weightData = w;
|
|
42
|
+
venueMap.set(daypart, {
|
|
43
|
+
attention: weightData.attention_weight ??
|
|
44
|
+
weightData.attention ??
|
|
45
|
+
DEFAULT_WEIGHTS.attention,
|
|
46
|
+
emotion: weightData.emotion_weight ??
|
|
47
|
+
weightData.emotion ??
|
|
48
|
+
DEFAULT_WEIGHTS.emotion,
|
|
49
|
+
body: weightData.body_weight ??
|
|
50
|
+
weightData.body ??
|
|
51
|
+
DEFAULT_WEIGHTS.body,
|
|
52
|
+
focus: weightData.focus_weight ??
|
|
53
|
+
weightData.focus ??
|
|
54
|
+
DEFAULT_WEIGHTS.focus,
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
this.hasServerWeights_ = true;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Get VAS weights for a venue type and daypart.
|
|
62
|
+
* Lookup chain: exact → venue default → global default.
|
|
63
|
+
*/
|
|
64
|
+
getWeights(venueType, daypart) {
|
|
65
|
+
if (venueType && this.weights.has(venueType)) {
|
|
66
|
+
const venueMap = this.weights.get(venueType);
|
|
67
|
+
// Try exact match
|
|
68
|
+
if (daypart && venueMap.has(daypart)) {
|
|
69
|
+
return venueMap.get(daypart);
|
|
70
|
+
}
|
|
71
|
+
// Try venue default
|
|
72
|
+
if (venueMap.has('default')) {
|
|
73
|
+
return venueMap.get('default');
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
return { ...DEFAULT_WEIGHTS };
|
|
77
|
+
}
|
|
78
|
+
hasServerWeights() {
|
|
79
|
+
return this.hasServerWeights_;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
exports.VASWeightConfig = VASWeightConfig;
|
|
83
|
+
//# sourceMappingURL=VASWeightConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VASWeightConfig.js","sourceRoot":"","sources":["../src/VASWeightConfig.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAIH,MAAM,eAAe,GAAe;IAClC,SAAS,EAAE,GAAG;IACd,OAAO,EAAE,GAAG;IACZ,IAAI,EAAE,GAAG;IACT,KAAK,EAAE,GAAG;CACX,CAAC;AAEF,MAAa,eAAe;IAA5B;QACU,YAAO,GAAyC,IAAI,GAAG,EAAE,CAAC;QAC1D,sBAAiB,GAAG,KAAK,CAAC;IAkEpC,CAAC;IAhEC;;;OAGG;IACH,cAAc,CAAC,IAA6B;QAC1C,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;YACjC,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI;gBAAE,SAAS;YAEhE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBACjC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;YACzC,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;YAE9C,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,QAAmC,CAAC,EAAE,CAAC;gBACvE,MAAM,CAAC,GAAI,QAAoC,CAAC,OAAO,CAAC,CAAC;gBACzD,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI;oBAAE,SAAS;gBAClD,MAAM,UAAU,GAAG,CAA2B,CAAC;gBAE/C,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE;oBACpB,SAAS,EACP,UAAU,CAAC,gBAAgB;wBAC3B,UAAU,CAAC,SAAS;wBACpB,eAAe,CAAC,SAAS;oBAC3B,OAAO,EACL,UAAU,CAAC,cAAc;wBACzB,UAAU,CAAC,OAAO;wBAClB,eAAe,CAAC,OAAO;oBACzB,IAAI,EACF,UAAU,CAAC,WAAW;wBACtB,UAAU,CAAC,IAAI;wBACf,eAAe,CAAC,IAAI;oBACtB,KAAK,EACH,UAAU,CAAC,YAAY;wBACvB,UAAU,CAAC,KAAK;wBAChB,eAAe,CAAC,KAAK;iBACxB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAChC,CAAC;IAED;;;OAGG;IACH,UAAU,CAAC,SAAkB,EAAE,OAAgB;QAC7C,IAAI,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;YAC9C,kBAAkB;YAClB,IAAI,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBACrC,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAE,CAAC;YAChC,CAAC;YACD,oBAAoB;YACpB,IAAI,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC5B,OAAO,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;YAClC,CAAC;QACH,CAAC;QACD,OAAO,EAAE,GAAG,eAAe,EAAE,CAAC;IAChC,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;CACF;AApED,0CAoEC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export * from './types';
|
|
2
|
+
export { DeviceIdentity } from './DeviceIdentity';
|
|
3
|
+
export { SensingConfig } from './SensingConfig';
|
|
4
|
+
export { SocketManager } from './SocketManager';
|
|
5
|
+
export type { SocketManagerOptions } from './SocketManager';
|
|
6
|
+
export { VASWeightConfig } from './VASWeightConfig';
|
|
7
|
+
export { SignalBuffer } from './SignalBuffer';
|
|
8
|
+
export { SubsystemHealthRegistry } from './SubsystemHealthRegistry';
|
|
9
|
+
export { RecoveryLadder } from './RecoveryLadder';
|
|
10
|
+
export type { RecoveryCallbacks } from './RecoveryLadder';
|
|
11
|
+
export { TelemetryScheduler } from './TelemetryScheduler';
|
|
12
|
+
export type { TelemetrySchedulerOptions } from './TelemetryScheduler';
|
|
13
|
+
export { classifyObservationSignal, type ClassificationInput, } from './ObservationSignalClassifier';
|
|
14
|
+
export { computeTier, getCapabilityMatrix, isModelActive, getShedOrder, getAttenuationTier, } from './DeviceProfile';
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,YAAY,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EACL,yBAAyB,EACzB,KAAK,mBAAmB,GACzB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,kBAAkB,GACnB,MAAM,iBAAiB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// @trillboards/edge-core — Core identity, heartbeat, Socket.io, config, signal buffer
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
15
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
16
|
+
};
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.getAttenuationTier = exports.getShedOrder = exports.isModelActive = exports.getCapabilityMatrix = exports.computeTier = exports.classifyObservationSignal = exports.TelemetryScheduler = exports.RecoveryLadder = exports.SubsystemHealthRegistry = exports.SignalBuffer = exports.VASWeightConfig = exports.SocketManager = exports.SensingConfig = exports.DeviceIdentity = void 0;
|
|
19
|
+
__exportStar(require("./types"), exports);
|
|
20
|
+
var DeviceIdentity_1 = require("./DeviceIdentity");
|
|
21
|
+
Object.defineProperty(exports, "DeviceIdentity", { enumerable: true, get: function () { return DeviceIdentity_1.DeviceIdentity; } });
|
|
22
|
+
var SensingConfig_1 = require("./SensingConfig");
|
|
23
|
+
Object.defineProperty(exports, "SensingConfig", { enumerable: true, get: function () { return SensingConfig_1.SensingConfig; } });
|
|
24
|
+
var SocketManager_1 = require("./SocketManager");
|
|
25
|
+
Object.defineProperty(exports, "SocketManager", { enumerable: true, get: function () { return SocketManager_1.SocketManager; } });
|
|
26
|
+
var VASWeightConfig_1 = require("./VASWeightConfig");
|
|
27
|
+
Object.defineProperty(exports, "VASWeightConfig", { enumerable: true, get: function () { return VASWeightConfig_1.VASWeightConfig; } });
|
|
28
|
+
var SignalBuffer_1 = require("./SignalBuffer");
|
|
29
|
+
Object.defineProperty(exports, "SignalBuffer", { enumerable: true, get: function () { return SignalBuffer_1.SignalBuffer; } });
|
|
30
|
+
var SubsystemHealthRegistry_1 = require("./SubsystemHealthRegistry");
|
|
31
|
+
Object.defineProperty(exports, "SubsystemHealthRegistry", { enumerable: true, get: function () { return SubsystemHealthRegistry_1.SubsystemHealthRegistry; } });
|
|
32
|
+
var RecoveryLadder_1 = require("./RecoveryLadder");
|
|
33
|
+
Object.defineProperty(exports, "RecoveryLadder", { enumerable: true, get: function () { return RecoveryLadder_1.RecoveryLadder; } });
|
|
34
|
+
var TelemetryScheduler_1 = require("./TelemetryScheduler");
|
|
35
|
+
Object.defineProperty(exports, "TelemetryScheduler", { enumerable: true, get: function () { return TelemetryScheduler_1.TelemetryScheduler; } });
|
|
36
|
+
var ObservationSignalClassifier_1 = require("./ObservationSignalClassifier");
|
|
37
|
+
Object.defineProperty(exports, "classifyObservationSignal", { enumerable: true, get: function () { return ObservationSignalClassifier_1.classifyObservationSignal; } });
|
|
38
|
+
var DeviceProfile_1 = require("./DeviceProfile");
|
|
39
|
+
Object.defineProperty(exports, "computeTier", { enumerable: true, get: function () { return DeviceProfile_1.computeTier; } });
|
|
40
|
+
Object.defineProperty(exports, "getCapabilityMatrix", { enumerable: true, get: function () { return DeviceProfile_1.getCapabilityMatrix; } });
|
|
41
|
+
Object.defineProperty(exports, "isModelActive", { enumerable: true, get: function () { return DeviceProfile_1.isModelActive; } });
|
|
42
|
+
Object.defineProperty(exports, "getShedOrder", { enumerable: true, get: function () { return DeviceProfile_1.getShedOrder; } });
|
|
43
|
+
Object.defineProperty(exports, "getAttenuationTier", { enumerable: true, get: function () { return DeviceProfile_1.getAttenuationTier; } });
|
|
44
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;;;;;;;;;;;;;;;AAEtF,0CAAwB;AACxB,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AACvB,iDAAgD;AAAvC,8GAAA,aAAa,OAAA;AACtB,iDAAgD;AAAvC,8GAAA,aAAa,OAAA;AAEtB,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AACrB,qEAAoE;AAA3D,kIAAA,uBAAuB,OAAA;AAChC,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AAEvB,2DAA0D;AAAjD,wHAAA,kBAAkB,OAAA;AAE3B,6EAGuC;AAFrC,wIAAA,yBAAyB,OAAA;AAG3B,iDAMyB;AALvB,4GAAA,WAAW,OAAA;AACX,oHAAA,mBAAmB,OAAA;AACnB,8GAAA,aAAa,OAAA;AACb,6GAAA,YAAY,OAAA;AACZ,mHAAA,kBAAkB,OAAA"}
|