@camstack/addon-training 0.1.100 → 0.1.102
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/CHANGELOG.md +12 -0
- package/dist/{MotionZonesSettings-DBC9oNEy.mjs → MotionZonesSettings-HAJ6awj4.mjs} +2 -2
- package/dist/{PrivacyMaskSettings-MPmxoEGa.mjs → PrivacyMaskSettings-BF0NUmVm.mjs} +2 -2
- package/dist/{SceneMonitorEditor-q8rm9EAO.mjs → SceneMonitorEditor-CeEWTp0p.mjs} +2 -2
- package/dist/_stub.js +6391 -6191
- package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_training_page-BLf4IX1e.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_training_page-p2vBd39W.mjs} +3 -3
- package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-CLeWJI6-.mjs +26 -0
- package/dist/addon-training.css +1 -1
- package/dist/{dist-BHRYlf1o.js → dist-CNkCexYe.js} +199 -12
- package/dist/{dist-5otxE_9_.mjs → dist-u3tq3l-n.mjs} +199 -12
- package/dist/{hostInit-B98SkU6O.mjs → hostInit-CvBrePIu.mjs} +2 -2
- package/dist/{icons-BQdiqxUM.mjs → icons-CXruMajc.mjs} +1078 -1109
- package/dist/index.js +1 -1
- package/dist/orchestrator/training.addon.js +1 -1
- package/dist/orchestrator/training.addon.mjs +1 -1
- package/dist/{player-overlays-aX4eEmgd.mjs → player-overlays-NVql0bBe.mjs} +1 -1
- package/dist/providers/modal/training-modal.addon.js +1 -1
- package/dist/providers/modal/training-modal.addon.mjs +1 -1
- package/dist/remoteEntry.js +1 -1
- package/dist/{responsive-D9ViDal5.mjs → responsive-Cw10UV1G.mjs} +1 -1
- package/dist/{scene-monitor-copy-B7FtvYkD.mjs → scene-monitor-copy-BiaQA_PZ.mjs} +1 -1
- package/dist/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_training_page__remoteEntry_js-4OWl-Jop.mjs → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_training_page__remoteEntry_js-B2ShwDvL.mjs} +1 -1
- package/dist/{zoom-out-YWRm0VbK.mjs → zoom-out-D4rm3GoJ.mjs} +95 -64
- package/package.json +1 -1
- package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-4mdhpGoW.mjs +0 -26
|
@@ -5613,7 +5613,7 @@ var ZodIssueCode = {
|
|
|
5613
5613
|
var ZodFirstPartyTypeKind;
|
|
5614
5614
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5615
5615
|
//#endregion
|
|
5616
|
-
//#region ../types/dist/sleep-
|
|
5616
|
+
//#region ../types/dist/sleep-BAvUCi_2.mjs
|
|
5617
5617
|
/**
|
|
5618
5618
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5619
5619
|
* window to float samples (D455).
|
|
@@ -8995,6 +8995,7 @@ var CAP_NAMES = Object.freeze([
|
|
|
8995
8995
|
"image-settings",
|
|
8996
8996
|
"integrations",
|
|
8997
8997
|
"intercom",
|
|
8998
|
+
"ir-transmitter",
|
|
8998
8999
|
"keychain",
|
|
8999
9000
|
"keychain-admin",
|
|
9000
9001
|
"lawn-mower-control",
|
|
@@ -10242,6 +10243,11 @@ Object.freeze({
|
|
|
10242
10243
|
"path": "batteryPower",
|
|
10243
10244
|
"valueType": "number"
|
|
10244
10245
|
},
|
|
10246
|
+
{
|
|
10247
|
+
"path": "powerSource",
|
|
10248
|
+
"valueType": "enum",
|
|
10249
|
+
"enumValues": ["mains", "battery"]
|
|
10250
|
+
},
|
|
10245
10251
|
{
|
|
10246
10252
|
"path": "desiccantLeftDays",
|
|
10247
10253
|
"valueType": "number"
|
|
@@ -10825,7 +10831,7 @@ object({
|
|
|
10825
10831
|
params: record(string(), union([string(), number()])).optional()
|
|
10826
10832
|
});
|
|
10827
10833
|
//#endregion
|
|
10828
|
-
//#region ../types/dist/err-msg-
|
|
10834
|
+
//#region ../types/dist/err-msg-BCdlR2Li.mjs
|
|
10829
10835
|
var DeviceType = /* @__PURE__ */ function(DeviceType) {
|
|
10830
10836
|
DeviceType["Camera"] = "camera";
|
|
10831
10837
|
DeviceType["Hub"] = "hub";
|
|
@@ -11171,10 +11177,13 @@ var DeviceRole = /* @__PURE__ */ function(DeviceRole) {
|
|
|
11171
11177
|
/** Fallback when the notifier service name doesn't match a known
|
|
11172
11178
|
* pattern. */
|
|
11173
11179
|
DeviceRole["GenericNotifier"] = "generic-notifier";
|
|
11180
|
+
/** Emits a pulse train (infrared or RF) on request — the `ir-transmitter`
|
|
11181
|
+
* cap. A `DeviceType.Generic` device. */
|
|
11182
|
+
DeviceRole["IrTransmitter"] = "ir-transmitter";
|
|
11174
11183
|
return DeviceRole;
|
|
11175
11184
|
}({});
|
|
11176
11185
|
//#endregion
|
|
11177
|
-
//#region ../types/dist/composition-
|
|
11186
|
+
//#region ../types/dist/composition-DpFv_J6D.mjs
|
|
11178
11187
|
/**
|
|
11179
11188
|
* The ffmpeg build every CamStack node downloads, per platform and arch.
|
|
11180
11189
|
*
|
|
@@ -19121,12 +19130,13 @@ var CHANGED = {
|
|
|
19121
19130
|
expr: "now"
|
|
19122
19131
|
};
|
|
19123
19132
|
function numeric(input) {
|
|
19133
|
+
const { alsoFrom, ...base } = input;
|
|
19124
19134
|
return {
|
|
19125
|
-
...
|
|
19135
|
+
...base,
|
|
19126
19136
|
family: "numeric",
|
|
19127
19137
|
deviceType: DeviceType.Sensor,
|
|
19128
19138
|
memberDeviceType: DeviceType.Sensor,
|
|
19129
|
-
memberDeviceTypes: [DeviceType.Sensor],
|
|
19139
|
+
memberDeviceTypes: [DeviceType.Sensor, ...alsoFrom?.deviceTypes ?? []],
|
|
19130
19140
|
activeWhen: void 0,
|
|
19131
19141
|
commandCaps: [],
|
|
19132
19142
|
baseUnit: baseUnitOf(input.quantity),
|
|
@@ -19134,9 +19144,10 @@ function numeric(input) {
|
|
|
19134
19144
|
accept: [{
|
|
19135
19145
|
cap: input.outputCap,
|
|
19136
19146
|
fieldPath: input.outputField
|
|
19137
|
-
}]
|
|
19147
|
+
}, ...alsoFrom === void 0 ? [] : [alsoFrom.accept]]
|
|
19138
19148
|
};
|
|
19139
19149
|
}
|
|
19150
|
+
var CLIMATE_DEVICES = [DeviceType.Thermostat, DeviceType.Climate];
|
|
19140
19151
|
function binary(input) {
|
|
19141
19152
|
return {
|
|
19142
19153
|
...input,
|
|
@@ -19162,7 +19173,14 @@ var GROUP_TEMPLATES = [
|
|
|
19162
19173
|
quantity: "temperature",
|
|
19163
19174
|
defaultAggregate: "mean",
|
|
19164
19175
|
empty: "null",
|
|
19165
|
-
companions: [NOW$2]
|
|
19176
|
+
companions: [NOW$2],
|
|
19177
|
+
alsoFrom: {
|
|
19178
|
+
deviceTypes: CLIMATE_DEVICES,
|
|
19179
|
+
accept: {
|
|
19180
|
+
cap: "climate-control",
|
|
19181
|
+
fieldPath: "currentTemp"
|
|
19182
|
+
}
|
|
19183
|
+
}
|
|
19166
19184
|
}),
|
|
19167
19185
|
numeric({
|
|
19168
19186
|
id: "humidity",
|
|
@@ -19173,7 +19191,14 @@ var GROUP_TEMPLATES = [
|
|
|
19173
19191
|
quantity: "humidity",
|
|
19174
19192
|
defaultAggregate: "mean",
|
|
19175
19193
|
empty: "null",
|
|
19176
|
-
companions: [NOW$2]
|
|
19194
|
+
companions: [NOW$2],
|
|
19195
|
+
alsoFrom: {
|
|
19196
|
+
deviceTypes: CLIMATE_DEVICES,
|
|
19197
|
+
accept: {
|
|
19198
|
+
cap: "climate-control",
|
|
19199
|
+
fieldPath: "currentHumidity"
|
|
19200
|
+
}
|
|
19201
|
+
}
|
|
19177
19202
|
}),
|
|
19178
19203
|
numeric({
|
|
19179
19204
|
id: "pressure",
|
|
@@ -43391,6 +43416,17 @@ var LlmProfileSchema = object({
|
|
|
43391
43416
|
* field in its editor only when its descriptor lists it in `profileFields`. */
|
|
43392
43417
|
topK: number().int().positive().optional(),
|
|
43393
43418
|
maxTokens: number().int().positive().optional(),
|
|
43419
|
+
/** How hard the model "thinks" before it answers. Omitted = the model's own
|
|
43420
|
+
* default. `off` matters for structured output: a thinking model can spend
|
|
43421
|
+
* the whole completion on reasoning and return an empty `content`. Carried
|
|
43422
|
+
* only by the wires that have it — a kind offers the field in its editor
|
|
43423
|
+
* only when its descriptor lists it in `profileFields`. */
|
|
43424
|
+
reasoningEffort: _enum([
|
|
43425
|
+
"off",
|
|
43426
|
+
"low",
|
|
43427
|
+
"medium",
|
|
43428
|
+
"high"
|
|
43429
|
+
]).optional(),
|
|
43394
43430
|
/** Prompt context window. Advisory for cloud kinds (they enforce their own). */
|
|
43395
43431
|
contextLength: number().int().positive().optional(),
|
|
43396
43432
|
/** Default system prompt. A caller's `system` REPLACES it (never appends —
|
|
@@ -43429,6 +43465,7 @@ var LlmProfileFieldSchema = _enum([
|
|
|
43429
43465
|
"topP",
|
|
43430
43466
|
"topK",
|
|
43431
43467
|
"maxTokens",
|
|
43468
|
+
"reasoningEffort",
|
|
43432
43469
|
"contextLength",
|
|
43433
43470
|
"systemPrompt",
|
|
43434
43471
|
"timeoutMs",
|
|
@@ -44679,6 +44716,43 @@ var NotificationActionSchema = object({
|
|
|
44679
44716
|
*/
|
|
44680
44717
|
mode: _enum(["navigate", "background"]).optional()
|
|
44681
44718
|
});
|
|
44719
|
+
/** A delivery parameter value: what a notifier declared it takes. */
|
|
44720
|
+
var DeliveryParamValueSchema = union([
|
|
44721
|
+
string(),
|
|
44722
|
+
number(),
|
|
44723
|
+
boolean()
|
|
44724
|
+
]);
|
|
44725
|
+
/**
|
|
44726
|
+
* One extra delivery parameter a notifier KIND declares (D938). A rule that
|
|
44727
|
+
* addresses a target of that kind may set it; a kind that declares nothing is
|
|
44728
|
+
* never handed one. The admin UI derives its control from this descriptor —
|
|
44729
|
+
* no editor knows a service by name.
|
|
44730
|
+
*
|
|
44731
|
+
* Optional fields are `.optional()`, never `.default()` (a Zod default does not
|
|
44732
|
+
* run on the addon cap path).
|
|
44733
|
+
*/
|
|
44734
|
+
var DeliveryParamSchema = object({
|
|
44735
|
+
key: string().min(1),
|
|
44736
|
+
label: string(),
|
|
44737
|
+
/** i18n key of the label, resolved by the declaring addon's namespace. */
|
|
44738
|
+
labelKey: string().optional(),
|
|
44739
|
+
type: _enum([
|
|
44740
|
+
"enum",
|
|
44741
|
+
"number",
|
|
44742
|
+
"boolean",
|
|
44743
|
+
"string"
|
|
44744
|
+
]),
|
|
44745
|
+
/** `enum` only: the closed set of accepted values. */
|
|
44746
|
+
options: array(object({
|
|
44747
|
+
value: string(),
|
|
44748
|
+
label: string()
|
|
44749
|
+
})).optional(),
|
|
44750
|
+
/** `number` only. */
|
|
44751
|
+
min: number().optional(),
|
|
44752
|
+
max: number().optional(),
|
|
44753
|
+
/** What the notifier does when the rule sets nothing; shown as the placeholder. */
|
|
44754
|
+
default: DeliveryParamValueSchema.optional()
|
|
44755
|
+
});
|
|
44682
44756
|
/**
|
|
44683
44757
|
* The canonical notification. `body` is the only hard field (Apprise model).
|
|
44684
44758
|
* `priority` is a 5-level ORDINAL (1=lowest … 3=normal(default) … 5=urgent),
|
|
@@ -44701,7 +44775,13 @@ var NotificationSchema = object({
|
|
|
44701
44775
|
tag: string().optional(),
|
|
44702
44776
|
deviceId: number().optional(),
|
|
44703
44777
|
eventId: string().optional(),
|
|
44704
|
-
metadata: record(string(), unknown()).optional()
|
|
44778
|
+
metadata: record(string(), unknown()).optional(),
|
|
44779
|
+
/**
|
|
44780
|
+
* Values for the parameters the target's kind DECLARES in
|
|
44781
|
+
* {@link TargetKindSchema} `deliveryParams`. Already validated against the
|
|
44782
|
+
* declaration by the sender; a notifier reads only the keys it declared.
|
|
44783
|
+
*/
|
|
44784
|
+
delivery: record(string(), DeliveryParamValueSchema).optional()
|
|
44705
44785
|
});
|
|
44706
44786
|
/** One declared native severity/priority level for a kind. */
|
|
44707
44787
|
var TargetKindLevelSchema = object({
|
|
@@ -44807,6 +44887,11 @@ var TargetKindSchema = object({
|
|
|
44807
44887
|
*/
|
|
44808
44888
|
destinationKeys: array(string()).optional(),
|
|
44809
44889
|
supportsDiscovery: boolean(),
|
|
44890
|
+
/**
|
|
44891
|
+
* Extra delivery parameters a rule may set for a target of this kind (D938).
|
|
44892
|
+
* Absent = none; the rule editor then offers nothing.
|
|
44893
|
+
*/
|
|
44894
|
+
deliveryParams: array(DeliveryParamSchema).optional(),
|
|
44810
44895
|
caps: TargetKindCapsSchema
|
|
44811
44896
|
});
|
|
44812
44897
|
/**
|
|
@@ -56977,7 +57062,9 @@ var ManifestShapeSchema = object({
|
|
|
56977
57062
|
icon: string().optional()
|
|
56978
57063
|
}).optional(),
|
|
56979
57064
|
protected: boolean().optional(),
|
|
56980
|
-
removable: boolean().optional()
|
|
57065
|
+
removable: boolean().optional(),
|
|
57066
|
+
/** Declared Integrations-page block (mirror of `AddonDeclaration.integrationSection`). */
|
|
57067
|
+
integrationSection: _enum(["system", "providers"]).optional()
|
|
56981
57068
|
});
|
|
56982
57069
|
var AddonProcessSchema = object({
|
|
56983
57070
|
pid: number().optional(),
|
|
@@ -57699,6 +57786,56 @@ DeviceType.Button, method(object({ deviceId: number().int().nonnegative() }), _v
|
|
|
57699
57786
|
auth: "protected"
|
|
57700
57787
|
});
|
|
57701
57788
|
/**
|
|
57789
|
+
* A pulse train in signed microseconds: mark (+) first, then space (-), strictly
|
|
57790
|
+
* alternating, no zeros, 2..1024 entries.
|
|
57791
|
+
*/
|
|
57792
|
+
var IrTimingsSchema = array(number().int()).min(2).max(1024).superRefine((timings, ctx) => {
|
|
57793
|
+
timings.forEach((value, index) => {
|
|
57794
|
+
const expectMark = index % 2 === 0;
|
|
57795
|
+
if (value === 0 || value > 0 !== expectMark) ctx.addIssue({
|
|
57796
|
+
code: "custom",
|
|
57797
|
+
message: `timing ${index} must be a non-zero ${expectMark ? "mark (positive)" : "space (negative)"}`,
|
|
57798
|
+
path: [index]
|
|
57799
|
+
});
|
|
57800
|
+
});
|
|
57801
|
+
});
|
|
57802
|
+
/** Per-command transmit options. Every key is optional; a transmitter applies what it can. */
|
|
57803
|
+
var TransmitSettingsSchema = object({
|
|
57804
|
+
carrierHz: number().int().positive().optional(),
|
|
57805
|
+
dutyCyclePercent: number().int().min(1).max(100).optional(),
|
|
57806
|
+
repeat: number().int().min(0).max(20).optional(),
|
|
57807
|
+
repeatDelayMs: number().int().min(0).optional()
|
|
57808
|
+
});
|
|
57809
|
+
/** The setting keys a transmitter may declare as settable (`getInfo.settable`). */
|
|
57810
|
+
var TransmitSettingKeySchema = _enum([
|
|
57811
|
+
"carrierHz",
|
|
57812
|
+
"dutyCyclePercent",
|
|
57813
|
+
"repeat",
|
|
57814
|
+
"repeatDelayMs"
|
|
57815
|
+
]);
|
|
57816
|
+
var IrMediumSchema = _enum(["ir", "rf"]);
|
|
57817
|
+
var IrSendResultSchema = object({
|
|
57818
|
+
ok: literal(true),
|
|
57819
|
+
/** Settings the transmitter could not apply; the train was still sent. */
|
|
57820
|
+
ignoredSettings: array(string())
|
|
57821
|
+
});
|
|
57822
|
+
var IrTransmitterInfoSchema = object({
|
|
57823
|
+
media: array(IrMediumSchema),
|
|
57824
|
+
settable: array(TransmitSettingKeySchema),
|
|
57825
|
+
maxTimings: number().int().positive()
|
|
57826
|
+
});
|
|
57827
|
+
DeviceType.Generic, method(object({
|
|
57828
|
+
deviceId: number().int().nonnegative(),
|
|
57829
|
+
timings: IrTimingsSchema,
|
|
57830
|
+
settings: TransmitSettingsSchema.optional()
|
|
57831
|
+
}), IrSendResultSchema, {
|
|
57832
|
+
kind: "mutation",
|
|
57833
|
+
auth: "protected"
|
|
57834
|
+
}), method(object({ deviceId: number().int().nonnegative() }), IrTransmitterInfoSchema, {
|
|
57835
|
+
kind: "query",
|
|
57836
|
+
auth: "protected"
|
|
57837
|
+
});
|
|
57838
|
+
/**
|
|
57702
57839
|
* `calendar-source` — collection cap exposing per-provider calendars and
|
|
57703
57840
|
* their events. Every addon that contributes calendars (Home Assistant,
|
|
57704
57841
|
* a future Google Calendar addon, …) registers a provider here. The hub
|
|
@@ -61801,9 +61938,14 @@ object({
|
|
|
61801
61938
|
* (`device_class: problem`, on = low). True when the tank reports empty,
|
|
61802
61939
|
* or, on a dual-hopper model, when EITHER hopper is empty. */
|
|
61803
61940
|
lowFood: boolean(),
|
|
61804
|
-
/** Battery charge 0..100 (%).
|
|
61805
|
-
*
|
|
61941
|
+
/** Battery charge 0..100 (%). On a feeder running on `mains` this is the
|
|
61942
|
+
* BACKUP battery's charge, not the power source. Null when the device has
|
|
61943
|
+
* no battery reading. */
|
|
61806
61944
|
batteryPower: number().min(0).max(100).nullable().meta(readingMeta("percentage")),
|
|
61945
|
+
/** What the feeder is powered from right now: `mains` (plugged in, the
|
|
61946
|
+
* battery is only a backup) or `battery`. Null when the device does not
|
|
61947
|
+
* report it. */
|
|
61948
|
+
powerSource: _enum(["mains", "battery"]).nullable(),
|
|
61807
61949
|
/**
|
|
61808
61950
|
* Desiccant life remaining, stored in seconds (duration base, D944).
|
|
61809
61951
|
* Providers convert from the days the feeder reports. Null when the
|
|
@@ -70181,6 +70323,20 @@ Object.freeze({
|
|
|
70181
70323
|
access: "create",
|
|
70182
70324
|
role: "viewer"
|
|
70183
70325
|
},
|
|
70326
|
+
"irTransmitter.getInfo": {
|
|
70327
|
+
capName: "ir-transmitter",
|
|
70328
|
+
capScope: "device",
|
|
70329
|
+
addonId: null,
|
|
70330
|
+
access: "view",
|
|
70331
|
+
role: "viewer"
|
|
70332
|
+
},
|
|
70333
|
+
"irTransmitter.send": {
|
|
70334
|
+
capName: "ir-transmitter",
|
|
70335
|
+
capScope: "device",
|
|
70336
|
+
addonId: null,
|
|
70337
|
+
access: "create",
|
|
70338
|
+
role: "viewer"
|
|
70339
|
+
},
|
|
70184
70340
|
"keychain.delete": {
|
|
70185
70341
|
capName: "keychain",
|
|
70186
70342
|
capScope: "system",
|
|
@@ -77804,6 +77960,11 @@ var ACTUATOR_CAP_VOCABULARY = {
|
|
|
77804
77960
|
icon: "circle-dot"
|
|
77805
77961
|
}]
|
|
77806
77962
|
},
|
|
77963
|
+
"ir-transmitter": {
|
|
77964
|
+
scope: "device",
|
|
77965
|
+
noun: t("IR / RF transmitter", "Trasmettitore IR / RF"),
|
|
77966
|
+
notOperatorFacing: { send: "a raw pulse train is not something an operator composes in an automation; the remote that owns the command table sends it" }
|
|
77967
|
+
},
|
|
77807
77968
|
control: {
|
|
77808
77969
|
scope: "device",
|
|
77809
77970
|
noun: t("Control", "Controllo"),
|
|
@@ -81523,6 +81684,16 @@ Object.freeze({
|
|
|
81523
81684
|
form: "single",
|
|
81524
81685
|
optional: false
|
|
81525
81686
|
}],
|
|
81687
|
+
"irTransmitter.getInfo": [{
|
|
81688
|
+
name: "deviceId",
|
|
81689
|
+
form: "single",
|
|
81690
|
+
optional: false
|
|
81691
|
+
}],
|
|
81692
|
+
"irTransmitter.send": [{
|
|
81693
|
+
name: "deviceId",
|
|
81694
|
+
form: "single",
|
|
81695
|
+
optional: false
|
|
81696
|
+
}],
|
|
81526
81697
|
"keychain.deleteDeviceScope": [{
|
|
81527
81698
|
name: "deviceId",
|
|
81528
81699
|
form: "single",
|
|
@@ -84556,6 +84727,22 @@ DEFAULT_NATIVE_LEASE_SETTINGS.admission;
|
|
|
84556
84727
|
String.raw`(?<=^|["'(\s>,\[{])`;
|
|
84557
84728
|
var MB = 1024 * 1024;
|
|
84558
84729
|
1024 * MB, 3072 * MB;
|
|
84730
|
+
discriminatedUnion("kind", [object({
|
|
84731
|
+
kind: literal("raw"),
|
|
84732
|
+
timings: array(number().int()),
|
|
84733
|
+
settings: TransmitSettingsSchema.optional()
|
|
84734
|
+
}), object({
|
|
84735
|
+
kind: literal("pronto"),
|
|
84736
|
+
code: string()
|
|
84737
|
+
})]);
|
|
84738
|
+
object({
|
|
84739
|
+
manufacturer: string().optional(),
|
|
84740
|
+
supportedModels: array(string()).optional(),
|
|
84741
|
+
supportedController: string().optional(),
|
|
84742
|
+
commandsEncoding: string(),
|
|
84743
|
+
delay: number().nonnegative().optional(),
|
|
84744
|
+
commands: record(string(), unknown())
|
|
84745
|
+
});
|
|
84559
84746
|
//#endregion
|
|
84560
84747
|
Object.defineProperty(exports, "BaseAddon", {
|
|
84561
84748
|
enumerable: true,
|