@camstack/types 1.2.380 → 1.2.382

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/dist/addon.d.ts +2 -0
  2. package/dist/addon.js +88 -2
  3. package/dist/addon.mjs +79 -3
  4. package/dist/capabilities/alerts.cap.d.ts +25 -0
  5. package/dist/capabilities/battery.cap.d.ts +1 -1
  6. package/dist/capabilities/caller-stamp.d.ts +4 -3
  7. package/dist/capabilities/dishwasher.cap.d.ts +178 -0
  8. package/dist/capabilities/heating-valve.cap.d.ts +39 -0
  9. package/dist/capabilities/index.d.ts +5 -1
  10. package/dist/capabilities/storage-admin.cap.d.ts +22 -0
  11. package/dist/client.js +71 -32
  12. package/dist/client.mjs +71 -32
  13. package/dist/{composition-DOwQB_Ua.mjs → composition-CB6PMT9p.mjs} +1 -1
  14. package/dist/{composition-CUAOHZ38.js → composition-eoYYVfOp.js} +1 -1
  15. package/dist/device/base-device-provider.d.ts +4 -2
  16. package/dist/device/device-context.d.ts +2 -0
  17. package/dist/device/device-control-resolution.d.ts +1 -1
  18. package/dist/device/device-type.d.ts +5 -1
  19. package/dist/{err-msg--2RrYiLO.mjs → err-msg-BXKzRBwg.mjs} +4 -0
  20. package/dist/{err-msg-Bb-s4Xuj.js → err-msg-BhVbr0NX.js} +4 -0
  21. package/dist/ffmpeg/fmp4-fragment-child.d.ts +2 -2
  22. package/dist/ffmpeg/process.d.ts +21 -0
  23. package/dist/generated/addon-api.d.ts +329 -230
  24. package/dist/generated/addon-cap-facts.d.ts +1 -1
  25. package/dist/generated/cap-status-types.d.ts +5 -1
  26. package/dist/generated/capability-router-map.d.ts +8 -2
  27. package/dist/generated/device-local-state.d.ts +6 -0
  28. package/dist/generated/device-proxy.d.ts +6 -0
  29. package/dist/generated/device-scoped-caps.d.ts +1 -1
  30. package/dist/generated/history-catalog.d.ts +1 -1
  31. package/dist/generated/method-access-map.d.ts +1 -1
  32. package/dist/generated/method-device-selectors.d.ts +1 -1
  33. package/dist/generated/runtime-state-durability.d.ts +1 -1
  34. package/dist/helpers/addon-slice-handle.d.ts +4 -0
  35. package/dist/helpers/trpc-leaf.d.ts +17 -0
  36. package/dist/index.d.ts +3 -2
  37. package/dist/index.js +431 -68
  38. package/dist/index.mjs +413 -67
  39. package/dist/interfaces/addon-peer-bytes.d.ts +19 -2
  40. package/dist/interfaces/config-ui-secrets.d.ts +2 -0
  41. package/dist/interfaces/config-ui.d.ts +14 -0
  42. package/dist/node.d.ts +2 -2
  43. package/dist/node.js +6 -2
  44. package/dist/node.mjs +6 -3
  45. package/dist/records/in-memory-records.d.ts +21 -0
  46. package/dist/records/index.d.ts +3 -0
  47. package/dist/records/settings-array-adopts-from.d.ts +12 -0
  48. package/dist/records/settings-brokers-adopts-from.d.ts +10 -0
  49. package/dist/{sleep-CIGOw58l.js → sleep--L6qY125.js} +572 -47
  50. package/dist/{sleep-WsrozGDL.mjs → sleep-BOjuyoPC.mjs} +489 -48
  51. package/package.json +1 -1
package/dist/addon.d.ts CHANGED
@@ -24,6 +24,7 @@ export type { IAdminUiProvider } from './capabilities/admin-ui.cap.js';
24
24
  export { adminUiCapability } from './capabilities/admin-ui.cap.js';
25
25
  export { expandCapMethods } from './capabilities/capability-definition.js';
26
26
  export { describeCustomActions } from './capabilities/custom-actions.js';
27
+ export { CALLER_STAMPED_CAPABILITIES, withoutCallerStamp, } from './capabilities/caller-stamp.js';
27
28
  export { deviceOpsCapability } from './capabilities/device-ops.cap.js';
28
29
  export type { IViewerUiProvider } from './capabilities/viewer-ui.cap.js';
29
30
  export { viewerUiCapability } from './capabilities/viewer-ui.cap.js';
@@ -44,6 +45,7 @@ export type { CapStateLeaf } from './generated/addon-cap-facts.js';
44
45
  export { createDeviceProxy } from './generated/device-proxy.js';
45
46
  export { createEventBusSliceSource } from './device/device-state-handle.js';
46
47
  export type { SliceEventBus, SliceHandleApi } from './device/device-state-handle.js';
48
+ export { addonSliceHandleApi } from './helpers/addon-slice-handle.js';
47
49
  export { DEVICE_SCOPED_CAPS, isDeviceScopedCap } from './generated/device-scoped-caps.js';
48
50
  export type { AddonDeclaration, AddonInitResult, ICamstackAddon, ProviderRegistration, } from './interfaces/addon.js';
49
51
  export { DATAPLANE_SECRET_HEADER } from './interfaces/addon-data-plane.js';
package/dist/addon.js CHANGED
@@ -1,7 +1,7 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_sleep = require("./sleep-CIGOw58l.js");
2
+ const require_sleep = require("./sleep--L6qY125.js");
3
3
  const require_event_category = require("./event-category-Hoe-mqbd.js");
4
- const require_err_msg = require("./err-msg-Bb-s4Xuj.js");
4
+ const require_err_msg = require("./err-msg-BhVbr0NX.js");
5
5
  //#region src/generated/cap-input-defaults.ts
6
6
  /**
7
7
  * AUTO-GENERATED by scripts/generate-cap-input-defaults.ts — DO NOT EDIT.
@@ -972,6 +972,78 @@ var CAP_STATE_LEAVES = Object.freeze({
972
972
  "path": "online",
973
973
  "valueType": "boolean"
974
974
  }],
975
+ "dishwasher": [
976
+ {
977
+ "path": "state",
978
+ "valueType": "enum",
979
+ "enumValues": [
980
+ "idle",
981
+ "running",
982
+ "paused",
983
+ "finished",
984
+ "error",
985
+ "unavailable"
986
+ ]
987
+ },
988
+ {
989
+ "path": "program",
990
+ "valueType": "string"
991
+ },
992
+ {
993
+ "path": "remainingMinutes",
994
+ "valueType": "number"
995
+ },
996
+ {
997
+ "path": "progressPercent",
998
+ "valueType": "number"
999
+ },
1000
+ {
1001
+ "path": "doorOpen",
1002
+ "valueType": "boolean"
1003
+ },
1004
+ {
1005
+ "path": "remoteStartAllowed",
1006
+ "valueType": "boolean"
1007
+ },
1008
+ {
1009
+ "path": "powerOn",
1010
+ "valueType": "boolean"
1011
+ },
1012
+ {
1013
+ "path": "saltLevel",
1014
+ "valueType": "enum",
1015
+ "enumValues": [
1016
+ "ok",
1017
+ "low",
1018
+ "empty"
1019
+ ]
1020
+ },
1021
+ {
1022
+ "path": "rinseAidLevel",
1023
+ "valueType": "enum",
1024
+ "enumValues": [
1025
+ "ok",
1026
+ "low",
1027
+ "empty"
1028
+ ]
1029
+ },
1030
+ {
1031
+ "path": "halfLoad",
1032
+ "valueType": "boolean"
1033
+ },
1034
+ {
1035
+ "path": "hygienePlus",
1036
+ "valueType": "boolean"
1037
+ },
1038
+ {
1039
+ "path": "errorCode",
1040
+ "valueType": "number"
1041
+ },
1042
+ {
1043
+ "path": "errorLabel",
1044
+ "valueType": "string"
1045
+ }
1046
+ ],
975
1047
  "doorbell": [{
976
1048
  "path": "lastPressedAt",
977
1049
  "valueType": "number"
@@ -1062,6 +1134,10 @@ var CAP_STATE_LEAVES = Object.freeze({
1062
1134
  "path": "detected",
1063
1135
  "valueType": "boolean"
1064
1136
  }],
1137
+ "heating-valve": [{
1138
+ "path": "position",
1139
+ "valueType": "number"
1140
+ }],
1065
1141
  "humidifier": [
1066
1142
  {
1067
1143
  "path": "on",
@@ -2139,6 +2215,7 @@ exports.AdoptionPendingError = require_sleep.AdoptionPendingError;
2139
2215
  exports.BOOT_RECOVERY_BACKOFF_MS = require_sleep.BOOT_RECOVERY_BACKOFF_MS;
2140
2216
  exports.BaseAddon = require_sleep.BaseAddon;
2141
2217
  exports.BatchTooLargeError = require_sleep.BatchTooLargeError;
2218
+ exports.CALLER_STAMPED_CAPABILITIES = require_sleep.CALLER_STAMPED_CAPABILITIES;
2142
2219
  exports.CAP_ADVANCE_FIELDS = CAP_ADVANCE_FIELDS;
2143
2220
  exports.CAP_INPUT_DEFAULTS = CAP_INPUT_DEFAULTS;
2144
2221
  exports.CAP_STATE_LEAVES = CAP_STATE_LEAVES;
@@ -2197,8 +2274,11 @@ exports.RecordsError = require_sleep.RecordsError;
2197
2274
  exports.RevConflictError = require_sleep.RevConflictError;
2198
2275
  exports.SECRET_CLEAR = require_sleep.SECRET_CLEAR;
2199
2276
  exports.SECRET_REF_SCHEME = require_sleep.SECRET_REF_SCHEME;
2277
+ exports.SETTINGS_ARRAY_ADOPTS_PREFIX = require_sleep.SETTINGS_ARRAY_ADOPTS_PREFIX;
2278
+ exports.SETTINGS_BROKERS_ADOPTS_PREFIX = require_sleep.SETTINGS_BROKERS_ADOPTS_PREFIX;
2200
2279
  exports.UnindexedFilterError = require_sleep.UnindexedFilterError;
2201
2280
  exports.UnknownRecordKindError = require_sleep.UnknownRecordKindError;
2281
+ exports.addonSliceHandleApi = require_sleep.addonSliceHandleApi;
2202
2282
  exports.adminUiCapability = require_sleep.adminUiCapability;
2203
2283
  exports.arrayItemFieldPath = require_sleep.arrayItemFieldPath;
2204
2284
  exports.asJsonObject = require_sleep.asJsonObject;
@@ -2238,6 +2318,7 @@ exports.isSecretMarkerLike = require_sleep.isSecretMarkerLike;
2238
2318
  exports.isSecretRef = require_sleep.isSecretRef;
2239
2319
  exports.isZodSecret = require_sleep.isZodSecret;
2240
2320
  exports.knownSecretCount = require_sleep.knownSecretCount;
2321
+ exports.makeInMemoryRecords = require_sleep.makeInMemoryRecords;
2241
2322
  exports.makeSecretMarker = require_sleep.makeSecretMarker;
2242
2323
  exports.mapSecretLeaves = require_sleep.mapSecretLeaves;
2243
2324
  exports.maskUrlCredentials = require_sleep.maskUrlCredentials;
@@ -2247,6 +2328,8 @@ exports.normalizeSecretOwner = require_sleep.normalizeSecretOwner;
2247
2328
  exports.parseJsonUnknown = require_sleep.parseJsonUnknown;
2248
2329
  exports.parseSecretPath = require_sleep.parseSecretPath;
2249
2330
  exports.parseSecretRef = require_sleep.parseSecretRef;
2331
+ exports.parseSettingsArrayAdoptsFrom = require_sleep.parseSettingsArrayAdoptsFrom;
2332
+ exports.parseSettingsBrokersAdoptsFrom = require_sleep.parseSettingsBrokersAdoptsFrom;
2250
2333
  exports.readErrorI18n = require_sleep.readErrorI18n;
2251
2334
  exports.readNodePin = require_sleep.readNodePin;
2252
2335
  exports.recordArrayItemPath = require_sleep.recordArrayItemPath;
@@ -2258,8 +2341,11 @@ exports.resolveSecretViewsIn = require_sleep.resolveSecretViewsIn;
2258
2341
  exports.scopeKey = require_sleep.scopeKey;
2259
2342
  exports.scrubKnownSecrets = require_sleep.scrubKnownSecrets;
2260
2343
  exports.secretArrayPrefixes = require_sleep.secretArrayPrefixes;
2344
+ exports.settingsArrayAdoptsFrom = require_sleep.settingsArrayAdoptsFrom;
2345
+ exports.settingsBrokersAdoptsFrom = require_sleep.settingsBrokersAdoptsFrom;
2261
2346
  exports.shortSecretRefHash = require_sleep.shortSecretRefHash;
2262
2347
  exports.sleep = require_sleep.sleep;
2263
2348
  exports.toSecretFieldView = require_sleep.toSecretFieldView;
2264
2349
  exports.viewerUiCapability = require_sleep.viewerUiCapability;
2265
2350
  exports.withCapInputDefaults = withCapInputDefaults;
2351
+ exports.withoutCallerStamp = require_sleep.withoutCallerStamp;
package/dist/addon.mjs CHANGED
@@ -1,6 +1,6 @@
1
- import { $ as nodePin, $t as AdoptionPendingError, An as RECORD_SETTINGS_MAX_ROWS, Ar as isSecretFieldView, At as defineEntryKind, Bn as scrubKnownSecrets, Bt as declarationsOf, Cn as RECORD_DELETE_BATCH, Dn as RECORD_MAX_INDEX_FIELDS, Dr as SECRET_CLEAR, En as RECORD_MAX_INDEXES, Fn as MIN_SCRUBBED_LENGTH, Ft as RecordIndexSchema, Gn as PEER_BYTES_TICKET_TTL_MS, Gt as parseSecretPath, Hn as PEER_BYTES_CHUNK_BYTES, Ht as REMOVE_LEAF, I as describeCustomActions, In as clearKnownSecrets, It as RecordKindDeclarationSchema, Jt as recordSecretRef, K as expandCapMethods, Kt as recordArrayItemPath, Ln as forgetKnownSecret, Lt as RecordKindNameSchema, M as viewerUiCapability, Mn as resolveSecretViewsIn, Mr as isSecretMarkerLike, Mt as createRecordsAccess, N as DEVICE_CHILDREN_BATCH_MAX, Nn as REVALIDATE_AFTER_MS, Nr as makeSecretMarker, Nt as EntryDescriptorSchema, O as HF_REPO, On as RECORD_QUERY_MAX, Or as classifySecretWrite, Pn as createSecretsAccess, Pr as toSecretFieldView, Pt as RecordFieldPathSchema, Qn as normalizeAddonInitResult, Qt as isZodSecret, R as adminUiCapability, Rn as knownSecretCount, Rt as RecordRetentionSchema, S as createEventBusSliceSource, Sn as RECORD_DEFAULT_MAX_DATA_BYTES, Tn as RECORD_MAX_DATA_BYTES, Un as PEER_BYTES_MAX_OUTSTANDING, Ut as collectSecretLeaves, Vn as shortSecretRefHash, Vt as defineRecordKinds, Wn as PEER_BYTES_STALL_MS, Wt as mapSecretLeaves, Xn as BaseAddon, Yn as DisposerChain, Yt as secretArrayPrefixes, Zt as collectZodSecretPaths, _ as readErrorI18n, _n as recordsErrorFromMessage, an as NoCallerError, b as isDeviceScopedCap, bn as RECORD_CLASSES, c as asString, cn as RecordNotFoundError, cr as SECRET_REF_SCHEME, d as parseJsonUnknown, dn as RecordUniqueViolationError, dr as formatSecretScope, en as BatchTooLargeError, et as readNodePin, f as hfModelUrl, fn as RecordsError, fr as globalSecretScope, g as ErrorI18nPayloadSchema, gn as asRecordsError, hn as UnknownRecordKindError, hr as parseSecretRef, in as InvalidRecordError, it as ReadinessTimeoutError, j as deviceOpsCapability, jn as RECORD_SWEEP_INTERVAL_MS, jr as isSecretMarker, jt as entryBody, kn as RECORD_SECRET_COLLECTION_PREFIX, kr as isSecretClear, ln as RecordSecretUnavailableError, lr as arrayItemFieldPath, mn as UnindexedFilterError, mr as normalizeSecretOwner, nn as FilterRequiredError, nt as MODEL_FORMATS, o as asJsonObject, on as PlaintextSecretError, p as BOOT_RECOVERY_BACKOFF_MS, pn as RevConflictError, pr as isSecretRef, qn as DATAPLANE_SECRET_HEADER, qt as recordSecretCollection, r as maskUrlCredentials, rn as ForeignSecretMarkerError, rt as ReadinessRegistry, sn as RECORDS_ERROR_CODES, st as scopeKey, t as sleep, tn as DeclarationRefusedError, un as RecordTooLargeError, ur as buildSecretRef, vn as RECORD_BATCH_MAX, vr as createEvent, wn as RECORD_ID_MAX_LENGTH, x as createDeviceProxy, xn as RECORD_DATABASES, y as DEVICE_SCOPED_CAPS, yn as RECORD_BATCH_MAX_BYTES, yr as emitReadiness, zn as registerKnownSecret, zt as assertValidDeclaration } from "./sleep-WsrozGDL.mjs";
1
+ import { $n as PEER_BYTES_CHUNK_BYTES, $t as REMOVE_LEAF, A as HF_REPO, An as RECORD_BATCH_MAX_BYTES, Ar as emitReadiness, B as describeCustomActions, Bn as RECORD_SECRET_COLLECTION_PREFIX, Br as SECRET_CLEAR, Bt as settingsBrokersAdoptsFrom, C as addonSliceHandleApi, Cn as RecordsError, Cr as globalSecretScope, Dn as asRecordsError, En as UnknownRecordKindError, Er as parseSecretRef, F as DEVICE_CHILDREN_BATCH_MAX, Fn as RECORD_ID_MAX_LENGTH, Ft as SETTINGS_ARRAY_ADOPTS_PREFIX, Gn as createSecretsAccess, Gr as isSecretMarkerLike, Gt as RecordFieldPathSchema, H as adminUiCapability, Hn as RECORD_SWEEP_INTERVAL_MS, Hr as isSecretClear, Ht as entryBody, I as CALLER_STAMPED_CAPABILITIES, In as RECORD_MAX_DATA_BYTES, It as parseSettingsArrayAdoptsFrom, Jn as forgetKnownSecret, Jt as RecordKindNameSchema, Kn as MIN_SCRUBBED_LENGTH, Kr as makeSecretMarker, Kt as RecordIndexSchema, L as withoutCallerStamp, Ln as RECORD_MAX_INDEXES, Lt as settingsArrayAdoptsFrom, Mn as RECORD_DATABASES, N as deviceOpsCapability, Nn as RECORD_DEFAULT_MAX_DATA_BYTES, On as recordsErrorFromMessage, P as viewerUiCapability, Pn as RECORD_DELETE_BATCH, Pt as makeInMemoryRecords, Qn as shortSecretRefHash, Qt as defineRecordKinds, Rn as RECORD_MAX_INDEX_FIELDS, Rt as SETTINGS_BROKERS_ADOPTS_PREFIX, Sn as RecordUniqueViolationError, Sr as formatSecretScope, Tn as UnindexedFilterError, Tr as normalizeSecretOwner, Un as resolveSecretViewsIn, Ur as isSecretFieldView, Ut as createRecordsAccess, Vn as RECORD_SETTINGS_MAX_ROWS, Vr as classifySecretWrite, Vt as defineEntryKind, Wn as REVALIDATE_AFTER_MS, Wr as isSecretMarker, Wt as EntryDescriptorSchema, X as expandCapMethods, Xn as registerKnownSecret, Xt as assertValidDeclaration, Yn as knownSecretCount, Yt as RecordRetentionSchema, Zn as scrubKnownSecrets, Zt as declarationsOf, _ as readErrorI18n, _n as PlaintextSecretError, an as recordSecretRef, b as isDeviceScopedCap, bn as RecordSecretUnavailableError, br as arrayItemFieldPath, c as asString, cn as collectZodSecretPaths, ct as ReadinessTimeoutError, d as parseJsonUnknown, dn as BatchTooLargeError, dt as scopeKey, en as collectSecretLeaves, er as PEER_BYTES_MAX_OUTSTANDING, f as hfModelUrl, fn as DeclarationRefusedError, g as ErrorI18nPayloadSchema, gn as NoCallerError, hn as InvalidRecordError, in as recordSecretCollection, ir as DATAPLANE_SECRET_HEADER, it as readNodePin, jn as RECORD_CLASSES, kn as RECORD_BATCH_MAX, kr as createEvent, ln as isZodSecret, lr as normalizeAddonInitResult, mn as ForeignSecretMarkerError, nn as parseSecretPath, nr as PEER_BYTES_TICKET_TTL_MS, o as asJsonObject, on as secretArrayPrefixes, or as DisposerChain, ot as MODEL_FORMATS, p as BOOT_RECOVERY_BACKOFF_MS, pn as FilterRequiredError, qn as clearKnownSecrets, qr as toSecretFieldView, qt as RecordKindDeclarationSchema, r as maskUrlCredentials, rn as recordArrayItemPath, rt as nodePin, sr as BaseAddon, st as ReadinessRegistry, t as sleep, tn as mapSecretLeaves, tr as PEER_BYTES_STALL_MS, un as AdoptionPendingError, vn as RECORDS_ERROR_CODES, w as createEventBusSliceSource, wn as RevConflictError, wr as isSecretRef, x as createDeviceProxy, xn as RecordTooLargeError, xr as buildSecretRef, y as DEVICE_SCOPED_CAPS, yn as RecordNotFoundError, yr as SECRET_REF_SCHEME, zn as RECORD_QUERY_MAX, zt as parseSettingsBrokersAdoptsFrom } from "./sleep-BOjuyoPC.mjs";
2
2
  import { t as EventCategory } from "./event-category-BvOFi6PY.mjs";
3
- import { a as DeviceType, t as errMsg } from "./err-msg--2RrYiLO.mjs";
3
+ import { a as DeviceType, t as errMsg } from "./err-msg-BXKzRBwg.mjs";
4
4
  //#region src/generated/cap-input-defaults.ts
5
5
  /**
6
6
  * AUTO-GENERATED by scripts/generate-cap-input-defaults.ts — DO NOT EDIT.
@@ -971,6 +971,78 @@ var CAP_STATE_LEAVES = Object.freeze({
971
971
  "path": "online",
972
972
  "valueType": "boolean"
973
973
  }],
974
+ "dishwasher": [
975
+ {
976
+ "path": "state",
977
+ "valueType": "enum",
978
+ "enumValues": [
979
+ "idle",
980
+ "running",
981
+ "paused",
982
+ "finished",
983
+ "error",
984
+ "unavailable"
985
+ ]
986
+ },
987
+ {
988
+ "path": "program",
989
+ "valueType": "string"
990
+ },
991
+ {
992
+ "path": "remainingMinutes",
993
+ "valueType": "number"
994
+ },
995
+ {
996
+ "path": "progressPercent",
997
+ "valueType": "number"
998
+ },
999
+ {
1000
+ "path": "doorOpen",
1001
+ "valueType": "boolean"
1002
+ },
1003
+ {
1004
+ "path": "remoteStartAllowed",
1005
+ "valueType": "boolean"
1006
+ },
1007
+ {
1008
+ "path": "powerOn",
1009
+ "valueType": "boolean"
1010
+ },
1011
+ {
1012
+ "path": "saltLevel",
1013
+ "valueType": "enum",
1014
+ "enumValues": [
1015
+ "ok",
1016
+ "low",
1017
+ "empty"
1018
+ ]
1019
+ },
1020
+ {
1021
+ "path": "rinseAidLevel",
1022
+ "valueType": "enum",
1023
+ "enumValues": [
1024
+ "ok",
1025
+ "low",
1026
+ "empty"
1027
+ ]
1028
+ },
1029
+ {
1030
+ "path": "halfLoad",
1031
+ "valueType": "boolean"
1032
+ },
1033
+ {
1034
+ "path": "hygienePlus",
1035
+ "valueType": "boolean"
1036
+ },
1037
+ {
1038
+ "path": "errorCode",
1039
+ "valueType": "number"
1040
+ },
1041
+ {
1042
+ "path": "errorLabel",
1043
+ "valueType": "string"
1044
+ }
1045
+ ],
974
1046
  "doorbell": [{
975
1047
  "path": "lastPressedAt",
976
1048
  "valueType": "number"
@@ -1061,6 +1133,10 @@ var CAP_STATE_LEAVES = Object.freeze({
1061
1133
  "path": "detected",
1062
1134
  "valueType": "boolean"
1063
1135
  }],
1136
+ "heating-valve": [{
1137
+ "path": "position",
1138
+ "valueType": "number"
1139
+ }],
1064
1140
  "humidifier": [
1065
1141
  {
1066
1142
  "path": "on",
@@ -2134,4 +2210,4 @@ var CAP_STATE_LEAVES = Object.freeze({
2134
2210
  ]
2135
2211
  });
2136
2212
  //#endregion
2137
- export { AdoptionPendingError, BOOT_RECOVERY_BACKOFF_MS, BaseAddon, BatchTooLargeError, CAP_ADVANCE_FIELDS, CAP_INPUT_DEFAULTS, CAP_STATE_LEAVES, COLLECTION_ARRAY_METHODS, DATAPLANE_SECRET_HEADER, DEVICE_CHILDREN_BATCH_MAX, DEVICE_SCOPED_CAPS, DeclarationRefusedError, DeviceType, DisposerChain, EntryDescriptorSchema, ErrorI18nPayloadSchema, EventCategory, FilterRequiredError, ForeignSecretMarkerError, HF_REPO, InvalidRecordError, MIN_SCRUBBED_LENGTH, MODEL_FORMATS, NoCallerError, PEER_BYTES_CHUNK_BYTES, PEER_BYTES_MAX_OUTSTANDING, PEER_BYTES_STALL_MS, PEER_BYTES_TICKET_TTL_MS, PROVIDER_OPTIONAL_METHODS, PlaintextSecretError, RECORDS_ERROR_CODES, RECORD_BATCH_MAX, RECORD_BATCH_MAX_BYTES, RECORD_CLASSES, RECORD_DATABASES, RECORD_DEFAULT_MAX_DATA_BYTES, RECORD_DELETE_BATCH, RECORD_ID_MAX_LENGTH, RECORD_MAX_DATA_BYTES, RECORD_MAX_INDEXES, RECORD_MAX_INDEX_FIELDS, RECORD_QUERY_MAX, RECORD_SECRET_COLLECTION_PREFIX, RECORD_SETTINGS_MAX_ROWS, RECORD_SWEEP_INTERVAL_MS, REMOVE_LEAF, REVALIDATE_AFTER_MS, ReadinessRegistry, ReadinessTimeoutError, RecordFieldPathSchema, RecordIndexSchema, RecordKindDeclarationSchema, RecordKindNameSchema, RecordNotFoundError, RecordRetentionSchema, RecordSecretUnavailableError, RecordTooLargeError, RecordUniqueViolationError, RecordsError, RevConflictError, SECRET_CLEAR, SECRET_REF_SCHEME, UnindexedFilterError, UnknownRecordKindError, adminUiCapability, arrayItemFieldPath, asJsonObject, asRecordsError, asString, assertValidDeclaration, buildSecretRef, classifySecretWrite, clearKnownSecrets, collectSecretLeaves, collectZodSecretPaths, createDeviceProxy, createEvent, createEventBusSliceSource, createRecordsAccess, createSecretsAccess, declarationsOf, defineEntryKind, defineRecordKinds, describeCustomActions, deviceOpsCapability, emitReadiness, entryBody, errMsg, expandCapMethods, forgetKnownSecret, formatSecretScope, globalSecretScope, hfModelUrl, isCollectionArrayMethodName, isDeviceScopedCap, isProviderOptionalMethodName, isSecretClear, isSecretFieldView, isSecretMarker, isSecretMarkerLike, isSecretRef, isZodSecret, knownSecretCount, makeSecretMarker, mapSecretLeaves, maskUrlCredentials, nodePin, normalizeAddonInitResult, normalizeSecretOwner, parseJsonUnknown, parseSecretPath, parseSecretRef, readErrorI18n, readNodePin, recordArrayItemPath, recordSecretCollection, recordSecretRef, recordsErrorFromMessage, registerKnownSecret, resolveSecretViewsIn, scopeKey, scrubKnownSecrets, secretArrayPrefixes, shortSecretRefHash, sleep, toSecretFieldView, viewerUiCapability, withCapInputDefaults };
2213
+ export { AdoptionPendingError, BOOT_RECOVERY_BACKOFF_MS, BaseAddon, BatchTooLargeError, CALLER_STAMPED_CAPABILITIES, CAP_ADVANCE_FIELDS, CAP_INPUT_DEFAULTS, CAP_STATE_LEAVES, COLLECTION_ARRAY_METHODS, DATAPLANE_SECRET_HEADER, DEVICE_CHILDREN_BATCH_MAX, DEVICE_SCOPED_CAPS, DeclarationRefusedError, DeviceType, DisposerChain, EntryDescriptorSchema, ErrorI18nPayloadSchema, EventCategory, FilterRequiredError, ForeignSecretMarkerError, HF_REPO, InvalidRecordError, MIN_SCRUBBED_LENGTH, MODEL_FORMATS, NoCallerError, PEER_BYTES_CHUNK_BYTES, PEER_BYTES_MAX_OUTSTANDING, PEER_BYTES_STALL_MS, PEER_BYTES_TICKET_TTL_MS, PROVIDER_OPTIONAL_METHODS, PlaintextSecretError, RECORDS_ERROR_CODES, RECORD_BATCH_MAX, RECORD_BATCH_MAX_BYTES, RECORD_CLASSES, RECORD_DATABASES, RECORD_DEFAULT_MAX_DATA_BYTES, RECORD_DELETE_BATCH, RECORD_ID_MAX_LENGTH, RECORD_MAX_DATA_BYTES, RECORD_MAX_INDEXES, RECORD_MAX_INDEX_FIELDS, RECORD_QUERY_MAX, RECORD_SECRET_COLLECTION_PREFIX, RECORD_SETTINGS_MAX_ROWS, RECORD_SWEEP_INTERVAL_MS, REMOVE_LEAF, REVALIDATE_AFTER_MS, ReadinessRegistry, ReadinessTimeoutError, RecordFieldPathSchema, RecordIndexSchema, RecordKindDeclarationSchema, RecordKindNameSchema, RecordNotFoundError, RecordRetentionSchema, RecordSecretUnavailableError, RecordTooLargeError, RecordUniqueViolationError, RecordsError, RevConflictError, SECRET_CLEAR, SECRET_REF_SCHEME, SETTINGS_ARRAY_ADOPTS_PREFIX, SETTINGS_BROKERS_ADOPTS_PREFIX, UnindexedFilterError, UnknownRecordKindError, addonSliceHandleApi, adminUiCapability, arrayItemFieldPath, asJsonObject, asRecordsError, asString, assertValidDeclaration, buildSecretRef, classifySecretWrite, clearKnownSecrets, collectSecretLeaves, collectZodSecretPaths, createDeviceProxy, createEvent, createEventBusSliceSource, createRecordsAccess, createSecretsAccess, declarationsOf, defineEntryKind, defineRecordKinds, describeCustomActions, deviceOpsCapability, emitReadiness, entryBody, errMsg, expandCapMethods, forgetKnownSecret, formatSecretScope, globalSecretScope, hfModelUrl, isCollectionArrayMethodName, isDeviceScopedCap, isProviderOptionalMethodName, isSecretClear, isSecretFieldView, isSecretMarker, isSecretMarkerLike, isSecretRef, isZodSecret, knownSecretCount, makeInMemoryRecords, makeSecretMarker, mapSecretLeaves, maskUrlCredentials, nodePin, normalizeAddonInitResult, normalizeSecretOwner, parseJsonUnknown, parseSecretPath, parseSecretRef, parseSettingsArrayAdoptsFrom, parseSettingsBrokersAdoptsFrom, readErrorI18n, readNodePin, recordArrayItemPath, recordSecretCollection, recordSecretRef, recordsErrorFromMessage, registerKnownSecret, resolveSecretViewsIn, scopeKey, scrubKnownSecrets, secretArrayPrefixes, settingsArrayAdoptsFrom, settingsBrokersAdoptsFrom, shortSecretRefHash, sleep, toSecretFieldView, viewerUiCapability, withCapInputDefaults, withoutCallerStamp };
@@ -8,11 +8,16 @@
8
8
  import { z } from 'zod';
9
9
  import { type InferProvider } from './capability-definition.js';
10
10
  export declare const AlertSeveritySchema: z.ZodEnum<{
11
+ critical: "critical";
11
12
  error: "error";
12
13
  info: "info";
13
14
  success: "success";
14
15
  warning: "warning";
15
16
  }>;
17
+ export declare const AlertActionSchema: z.ZodObject<{
18
+ label: z.ZodString;
19
+ href: z.ZodOptional<z.ZodString>;
20
+ }, z.core.$strip>;
16
21
  export declare const AlertStatusSchema: z.ZodEnum<{
17
22
  active: "active";
18
23
  completed: "completed";
@@ -28,6 +33,7 @@ export declare const AlertSchema: z.ZodObject<{
28
33
  id: z.ZodString;
29
34
  category: z.ZodString;
30
35
  severity: z.ZodEnum<{
36
+ critical: "critical";
31
37
  error: "error";
32
38
  info: "info";
33
39
  success: "success";
@@ -35,6 +41,10 @@ export declare const AlertSchema: z.ZodObject<{
35
41
  }>;
36
42
  title: z.ZodString;
37
43
  message: z.ZodString;
44
+ action: z.ZodOptional<z.ZodObject<{
45
+ label: z.ZodString;
46
+ href: z.ZodOptional<z.ZodString>;
47
+ }, z.core.$strip>>;
38
48
  status: z.ZodEnum<{
39
49
  active: "active";
40
50
  completed: "completed";
@@ -64,6 +74,7 @@ export declare const alertsCapability: {
64
74
  id: z.ZodString;
65
75
  category: z.ZodString;
66
76
  severity: z.ZodEnum<{
77
+ critical: "critical";
67
78
  error: "error";
68
79
  info: "info";
69
80
  success: "success";
@@ -71,6 +82,10 @@ export declare const alertsCapability: {
71
82
  }>;
72
83
  title: z.ZodString;
73
84
  message: z.ZodString;
85
+ action: z.ZodOptional<z.ZodObject<{
86
+ label: z.ZodString;
87
+ href: z.ZodOptional<z.ZodString>;
88
+ }, z.core.$strip>>;
74
89
  status: z.ZodEnum<{
75
90
  active: "active";
76
91
  completed: "completed";
@@ -94,6 +109,7 @@ export declare const alertsCapability: {
94
109
  id: z.ZodOptional<z.ZodString>;
95
110
  category: z.ZodOptional<z.ZodString>;
96
111
  severity: z.ZodOptional<z.ZodEnum<{
112
+ critical: "critical";
97
113
  error: "error";
98
114
  info: "info";
99
115
  success: "success";
@@ -101,6 +117,10 @@ export declare const alertsCapability: {
101
117
  }>>;
102
118
  title: z.ZodOptional<z.ZodString>;
103
119
  message: z.ZodOptional<z.ZodString>;
120
+ action: z.ZodOptional<z.ZodOptional<z.ZodObject<{
121
+ label: z.ZodString;
122
+ href: z.ZodOptional<z.ZodString>;
123
+ }, z.core.$strip>>>;
104
124
  status: z.ZodOptional<z.ZodEnum<{
105
125
  active: "active";
106
126
  completed: "completed";
@@ -126,6 +146,7 @@ export declare const alertsCapability: {
126
146
  id: z.ZodString;
127
147
  category: z.ZodString;
128
148
  severity: z.ZodEnum<{
149
+ critical: "critical";
129
150
  error: "error";
130
151
  info: "info";
131
152
  success: "success";
@@ -133,6 +154,10 @@ export declare const alertsCapability: {
133
154
  }>;
134
155
  title: z.ZodString;
135
156
  message: z.ZodString;
157
+ action: z.ZodOptional<z.ZodObject<{
158
+ label: z.ZodString;
159
+ href: z.ZodOptional<z.ZodString>;
160
+ }, z.core.$strip>>;
136
161
  status: z.ZodEnum<{
137
162
  active: "active";
138
163
  completed: "completed";
@@ -28,7 +28,7 @@ export declare const batteryCapability: {
28
28
  readonly scope: 'device';
29
29
  readonly deviceNative: true;
30
30
  readonly mode: 'singleton';
31
- readonly deviceTypes: readonly [DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.PetFeeder, DeviceType.Container];
31
+ readonly deviceTypes: readonly [DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.PetFeeder, DeviceType.Container, DeviceType.Thermostat];
32
32
  readonly methods: {
33
33
  /**
34
34
  * Explicitly wake the camera from low-power sleep ahead of a
@@ -3,9 +3,10 @@
3
3
  * owner check, device-history's `not-owner`, records' owner).
4
4
  *
5
5
  * The stamp is set ONLY by the transport (`stampCallerAddonId`, or stated by a
6
- * hub in-process caller). The generated HTTP/tRPC mount parses input with
7
- * `.loose()`, so without this a session could add the key itself and act as
8
- * another addon. The mount strips it for these caps.
6
+ * hub in-process caller). HTTP/WS mounts parse input with `.loose()`, so a
7
+ * session could add the key itself and act as another addon — those procedures
8
+ * strip it when `ctx.req` is present. Mesh / `$core-caps` calls have no request;
9
+ * the transport stamp must survive to the provider.
9
10
  */
10
11
  export declare const CALLER_STAMPED_CAPABILITIES: readonly string[];
11
12
  /** A copy of `input` without the caller stamp. Anything that is not a plain object passes through. */
@@ -0,0 +1,178 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Smart-dishwasher cap — program lifecycle, door / remote-start gates,
6
+ * consumable levels (salt, rinse aid) and common program options.
7
+ *
8
+ * Sources: native Bosch Home Connect (`dishwasher` device type). Reusable
9
+ * by any integration that exposes the same program / option surface.
10
+ *
11
+ * `kind: 'poll'` — cloud REST APIs typically have no push channel; the
12
+ * provider refreshes the slice on an interval and eagerly after commands.
13
+ */
14
+ export declare const DishwasherStateSchema: z.ZodEnum<{
15
+ error: "error";
16
+ finished: "finished";
17
+ idle: "idle";
18
+ paused: "paused";
19
+ running: "running";
20
+ unavailable: "unavailable";
21
+ }>;
22
+ export type DishwasherState = z.infer<typeof DishwasherStateSchema>;
23
+ export declare const DishwasherConsumableLevelSchema: z.ZodEnum<{
24
+ empty: "empty";
25
+ low: "low";
26
+ ok: "ok";
27
+ }>;
28
+ export type DishwasherConsumableLevel = z.infer<typeof DishwasherConsumableLevelSchema>;
29
+ export declare const DishwasherStatusSchema: z.ZodObject<{
30
+ state: z.ZodEnum<{
31
+ error: "error";
32
+ finished: "finished";
33
+ idle: "idle";
34
+ paused: "paused";
35
+ running: "running";
36
+ unavailable: "unavailable";
37
+ }>;
38
+ program: z.ZodNullable<z.ZodString>;
39
+ availablePrograms: z.ZodArray<z.ZodString>;
40
+ remainingMinutes: z.ZodNullable<z.ZodNumber>;
41
+ progressPercent: z.ZodNullable<z.ZodNumber>;
42
+ doorOpen: z.ZodBoolean;
43
+ remoteStartAllowed: z.ZodBoolean;
44
+ powerOn: z.ZodBoolean;
45
+ saltLevel: z.ZodNullable<z.ZodEnum<{
46
+ empty: "empty";
47
+ low: "low";
48
+ ok: "ok";
49
+ }>>;
50
+ rinseAidLevel: z.ZodNullable<z.ZodEnum<{
51
+ empty: "empty";
52
+ low: "low";
53
+ ok: "ok";
54
+ }>>;
55
+ halfLoad: z.ZodBoolean;
56
+ hygienePlus: z.ZodBoolean;
57
+ errorCode: z.ZodNullable<z.ZodNumber>;
58
+ errorLabel: z.ZodNullable<z.ZodString>;
59
+ lastFetchedAt: z.ZodNumber;
60
+ }, z.core.$strip>;
61
+ export type DishwasherStatus = z.infer<typeof DishwasherStatusSchema>;
62
+ export declare const dishwasherCapability: {
63
+ readonly name: 'dishwasher';
64
+ readonly scope: 'device';
65
+ readonly deviceNative: true;
66
+ readonly mode: 'singleton';
67
+ readonly deviceTypes: readonly [DeviceType.Dishwasher];
68
+ readonly methods: {
69
+ readonly start: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
70
+ deviceId: z.ZodNumber;
71
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
72
+ readonly pause: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
73
+ deviceId: z.ZodNumber;
74
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
75
+ readonly stop: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
76
+ deviceId: z.ZodNumber;
77
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
78
+ readonly setProgram: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
79
+ deviceId: z.ZodNumber;
80
+ program: z.ZodString;
81
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
82
+ readonly setPower: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
83
+ deviceId: z.ZodNumber;
84
+ on: z.ZodBoolean;
85
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
86
+ readonly setHalfLoad: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
87
+ deviceId: z.ZodNumber;
88
+ on: z.ZodBoolean;
89
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
90
+ readonly setHygienePlus: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
91
+ deviceId: z.ZodNumber;
92
+ on: z.ZodBoolean;
93
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
94
+ readonly setOption: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
95
+ deviceId: z.ZodNumber;
96
+ key: z.ZodString;
97
+ value: z.ZodUnion<readonly [z.ZodBoolean, z.ZodString, z.ZodNumber]>;
98
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
99
+ };
100
+ readonly status: {
101
+ readonly schema: z.ZodObject<{
102
+ state: z.ZodEnum<{
103
+ error: "error";
104
+ finished: "finished";
105
+ idle: "idle";
106
+ paused: "paused";
107
+ running: "running";
108
+ unavailable: "unavailable";
109
+ }>;
110
+ program: z.ZodNullable<z.ZodString>;
111
+ availablePrograms: z.ZodArray<z.ZodString>;
112
+ remainingMinutes: z.ZodNullable<z.ZodNumber>;
113
+ progressPercent: z.ZodNullable<z.ZodNumber>;
114
+ doorOpen: z.ZodBoolean;
115
+ remoteStartAllowed: z.ZodBoolean;
116
+ powerOn: z.ZodBoolean;
117
+ saltLevel: z.ZodNullable<z.ZodEnum<{
118
+ empty: "empty";
119
+ low: "low";
120
+ ok: "ok";
121
+ }>>;
122
+ rinseAidLevel: z.ZodNullable<z.ZodEnum<{
123
+ empty: "empty";
124
+ low: "low";
125
+ ok: "ok";
126
+ }>>;
127
+ halfLoad: z.ZodBoolean;
128
+ hygienePlus: z.ZodBoolean;
129
+ errorCode: z.ZodNullable<z.ZodNumber>;
130
+ errorLabel: z.ZodNullable<z.ZodString>;
131
+ lastFetchedAt: z.ZodNumber;
132
+ }, z.core.$strip>;
133
+ readonly kind: 'poll';
134
+ };
135
+ readonly runtimeState: z.ZodObject<{
136
+ state: z.ZodEnum<{
137
+ error: "error";
138
+ finished: "finished";
139
+ idle: "idle";
140
+ paused: "paused";
141
+ running: "running";
142
+ unavailable: "unavailable";
143
+ }>;
144
+ program: z.ZodNullable<z.ZodString>;
145
+ availablePrograms: z.ZodArray<z.ZodString>;
146
+ remainingMinutes: z.ZodNullable<z.ZodNumber>;
147
+ progressPercent: z.ZodNullable<z.ZodNumber>;
148
+ doorOpen: z.ZodBoolean;
149
+ remoteStartAllowed: z.ZodBoolean;
150
+ powerOn: z.ZodBoolean;
151
+ saltLevel: z.ZodNullable<z.ZodEnum<{
152
+ empty: "empty";
153
+ low: "low";
154
+ ok: "ok";
155
+ }>>;
156
+ rinseAidLevel: z.ZodNullable<z.ZodEnum<{
157
+ empty: "empty";
158
+ low: "low";
159
+ ok: "ok";
160
+ }>>;
161
+ halfLoad: z.ZodBoolean;
162
+ hygienePlus: z.ZodBoolean;
163
+ errorCode: z.ZodNullable<z.ZodNumber>;
164
+ errorLabel: z.ZodNullable<z.ZodString>;
165
+ lastFetchedAt: z.ZodNumber;
166
+ }, z.core.$strip>;
167
+ readonly durability: 'session';
168
+ readonly history: {
169
+ readonly fields: {
170
+ readonly progressPercent: {
171
+ readonly kind: 'gauge';
172
+ readonly unit: '%';
173
+ readonly deadband: 2;
174
+ };
175
+ };
176
+ };
177
+ };
178
+ export type IDishwasherProvider = InferProvider<typeof dishwasherCapability>;
@@ -0,0 +1,39 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ export declare const HeatingValveStatusSchema: z.ZodObject<{
5
+ position: z.ZodNullable<z.ZodNumber>;
6
+ lastFetchedAt: z.ZodNumber;
7
+ }, z.core.$strip>;
8
+ export type HeatingValveStatus = z.infer<typeof HeatingValveStatusSchema>;
9
+ export declare const heatingValveCapability: {
10
+ readonly name: 'heating-valve';
11
+ readonly scope: 'device';
12
+ readonly deviceNative: true;
13
+ readonly mode: 'singleton';
14
+ readonly deviceTypes: readonly [DeviceType.Thermostat];
15
+ readonly methods: {};
16
+ readonly status: {
17
+ readonly schema: z.ZodObject<{
18
+ position: z.ZodNullable<z.ZodNumber>;
19
+ lastFetchedAt: z.ZodNumber;
20
+ }, z.core.$strip>;
21
+ readonly kind: 'push';
22
+ };
23
+ readonly runtimeState: z.ZodObject<{
24
+ position: z.ZodNullable<z.ZodNumber>;
25
+ lastFetchedAt: z.ZodNumber;
26
+ }, z.core.$strip>;
27
+ readonly durability: 'session';
28
+ readonly history: {
29
+ readonly fields: {
30
+ readonly position: {
31
+ readonly kind: 'gauge';
32
+ readonly unit: '%';
33
+ readonly deadband: 1;
34
+ };
35
+ };
36
+ };
37
+ readonly volatileStateFields: readonly ["lastFetchedAt"];
38
+ };
39
+ export type IHeatingValveProvider = InferProvider<typeof heatingValveCapability>;