@camstack/types 0.1.39 → 0.1.41
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/addon/base-addon.d.ts +14 -2
- package/dist/addon/base-addon.d.ts.map +1 -1
- package/dist/addon/durable-state.d.ts +33 -0
- package/dist/addon/durable-state.d.ts.map +1 -0
- package/dist/capabilities/accessories.cap.d.ts +56 -8
- package/dist/capabilities/accessories.cap.d.ts.map +1 -1
- package/dist/capabilities/addon-settings.cap.d.ts +1 -0
- package/dist/capabilities/addon-settings.cap.d.ts.map +1 -1
- package/dist/capabilities/addons.cap.d.ts +187 -1
- package/dist/capabilities/addons.cap.d.ts.map +1 -1
- package/dist/capabilities/advanced-notifier.cap.d.ts +4 -0
- package/dist/capabilities/advanced-notifier.cap.d.ts.map +1 -1
- package/dist/capabilities/air-quality-sensor.cap.d.ts +56 -0
- package/dist/capabilities/air-quality-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/alarm-panel.cap.d.ts +154 -0
- package/dist/capabilities/alarm-panel.cap.d.ts.map +1 -0
- package/dist/capabilities/alerts.cap.d.ts +5 -5
- package/dist/capabilities/ambient-light-sensor.cap.d.ts +39 -0
- package/dist/capabilities/ambient-light-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/audio-analyzer.cap.d.ts +2 -2
- package/dist/capabilities/automation-control.cap.d.ts +65 -0
- package/dist/capabilities/automation-control.cap.d.ts.map +1 -0
- package/dist/capabilities/battery.cap.d.ts +30 -1
- package/dist/capabilities/battery.cap.d.ts.map +1 -1
- package/dist/capabilities/binary.cap.d.ts +40 -0
- package/dist/capabilities/binary.cap.d.ts.map +1 -0
- package/dist/capabilities/brightness.cap.d.ts +3 -2
- package/dist/capabilities/brightness.cap.d.ts.map +1 -1
- package/dist/capabilities/broker.cap.d.ts +291 -0
- package/dist/capabilities/broker.cap.d.ts.map +1 -0
- package/dist/capabilities/button.cap.d.ts +27 -0
- package/dist/capabilities/button.cap.d.ts.map +1 -0
- package/dist/capabilities/camera-credentials.cap.d.ts +1 -0
- package/dist/capabilities/camera-credentials.cap.d.ts.map +1 -1
- package/dist/capabilities/camera-pipeline-config.cap.d.ts +43 -0
- package/dist/capabilities/camera-pipeline-config.cap.d.ts.map +1 -0
- package/dist/capabilities/camera-streams.cap.d.ts +147 -10
- package/dist/capabilities/camera-streams.cap.d.ts.map +1 -1
- package/dist/capabilities/capability-definition.d.ts +15 -0
- package/dist/capabilities/capability-definition.d.ts.map +1 -1
- package/dist/capabilities/carbon-monoxide.cap.d.ts +33 -0
- package/dist/capabilities/carbon-monoxide.cap.d.ts.map +1 -0
- package/dist/capabilities/climate-control.cap.d.ts +183 -0
- package/dist/capabilities/climate-control.cap.d.ts.map +1 -0
- package/dist/capabilities/color.cap.d.ts +186 -0
- package/dist/capabilities/color.cap.d.ts.map +1 -0
- package/dist/capabilities/connectivity.cap.d.ts +37 -0
- package/dist/capabilities/connectivity.cap.d.ts.map +1 -0
- package/dist/capabilities/consumables.cap.d.ts +105 -0
- package/dist/capabilities/consumables.cap.d.ts.map +1 -0
- package/dist/capabilities/contact.cap.d.ts +41 -0
- package/dist/capabilities/contact.cap.d.ts.map +1 -0
- package/dist/capabilities/control.cap.d.ts +167 -0
- package/dist/capabilities/control.cap.d.ts.map +1 -0
- package/dist/capabilities/cover.cap.d.ts +104 -0
- package/dist/capabilities/cover.cap.d.ts.map +1 -0
- package/dist/capabilities/custom-actions.d.ts +6 -0
- package/dist/capabilities/custom-actions.d.ts.map +1 -1
- package/dist/capabilities/decoder.cap.d.ts +1 -1
- package/dist/capabilities/device-adoption.cap.d.ts +203 -0
- package/dist/capabilities/device-adoption.cap.d.ts.map +1 -0
- package/dist/capabilities/device-discovery.cap.d.ts +44 -143
- package/dist/capabilities/device-discovery.cap.d.ts.map +1 -1
- package/dist/capabilities/device-manager.cap.d.ts +469 -0
- package/dist/capabilities/device-manager.cap.d.ts.map +1 -1
- package/dist/capabilities/device-ops.cap.d.ts +30 -0
- package/dist/capabilities/device-ops.cap.d.ts.map +1 -1
- package/dist/capabilities/device-provider.cap.d.ts +36 -0
- package/dist/capabilities/device-provider.cap.d.ts.map +1 -1
- package/dist/capabilities/device-status.cap.d.ts +1 -0
- package/dist/capabilities/device-status.cap.d.ts.map +1 -1
- package/dist/capabilities/doorbell.cap.d.ts +1 -0
- package/dist/capabilities/doorbell.cap.d.ts.map +1 -1
- package/dist/capabilities/enum-sensor.cap.d.ts +60 -0
- package/dist/capabilities/enum-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/event-emitter.cap.d.ts +79 -0
- package/dist/capabilities/event-emitter.cap.d.ts.map +1 -0
- package/dist/capabilities/fan-control.cap.d.ts +100 -0
- package/dist/capabilities/fan-control.cap.d.ts.map +1 -0
- package/dist/capabilities/feature-probe.cap.d.ts +1 -0
- package/dist/capabilities/feature-probe.cap.d.ts.map +1 -1
- package/dist/capabilities/flood.cap.d.ts +37 -0
- package/dist/capabilities/flood.cap.d.ts.map +1 -0
- package/dist/capabilities/gas.cap.d.ts +34 -0
- package/dist/capabilities/gas.cap.d.ts.map +1 -0
- package/dist/capabilities/humidifier.cap.d.ts +82 -0
- package/dist/capabilities/humidifier.cap.d.ts.map +1 -0
- package/dist/capabilities/humidity-sensor.cap.d.ts +43 -0
- package/dist/capabilities/humidity-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/image.cap.d.ts +44 -0
- package/dist/capabilities/image.cap.d.ts.map +1 -0
- package/dist/capabilities/index.d.ts +103 -15
- package/dist/capabilities/index.d.ts.map +1 -1
- package/dist/capabilities/integrations.cap.d.ts +12 -0
- package/dist/capabilities/integrations.cap.d.ts.map +1 -1
- package/dist/capabilities/intercom.cap.d.ts +49 -9
- package/dist/capabilities/intercom.cap.d.ts.map +1 -1
- package/dist/capabilities/lawn-mower-control.cap.d.ts +83 -0
- package/dist/capabilities/lawn-mower-control.cap.d.ts.map +1 -0
- package/dist/capabilities/local-network.cap.d.ts +1 -1
- package/dist/capabilities/lock-control.cap.d.ts +92 -0
- package/dist/capabilities/lock-control.cap.d.ts.map +1 -0
- package/dist/capabilities/mask-shape.d.ts +99 -0
- package/dist/capabilities/mask-shape.d.ts.map +1 -0
- package/dist/capabilities/media-player.cap.d.ts +201 -0
- package/dist/capabilities/media-player.cap.d.ts.map +1 -0
- package/dist/capabilities/mesh-network.cap.d.ts +3 -3
- package/dist/capabilities/motion-trigger.cap.d.ts +1 -0
- package/dist/capabilities/motion-trigger.cap.d.ts.map +1 -1
- package/dist/capabilities/motion-zones.cap.d.ts +95 -13
- package/dist/capabilities/motion-zones.cap.d.ts.map +1 -1
- package/dist/capabilities/mqtt-broker.cap.d.ts +3 -3
- package/dist/capabilities/native-object-detection.cap.d.ts +74 -3
- package/dist/capabilities/native-object-detection.cap.d.ts.map +1 -1
- package/dist/capabilities/network-access.cap.d.ts +7 -7
- package/dist/capabilities/network-quality.cap.d.ts +5 -0
- package/dist/capabilities/network-quality.cap.d.ts.map +1 -1
- package/dist/capabilities/notifier.cap.d.ts +173 -0
- package/dist/capabilities/notifier.cap.d.ts.map +1 -0
- package/dist/capabilities/numeric-sensor.cap.d.ts +52 -0
- package/dist/capabilities/numeric-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/oauth-integration.cap.d.ts +4 -2
- package/dist/capabilities/oauth-integration.cap.d.ts.map +1 -1
- package/dist/capabilities/osd.cap.d.ts +1 -0
- package/dist/capabilities/osd.cap.d.ts.map +1 -1
- package/dist/capabilities/pipeline-analytics.cap.d.ts +69 -22
- package/dist/capabilities/pipeline-analytics.cap.d.ts.map +1 -1
- package/dist/capabilities/pipeline-executor.cap.d.ts +2 -2
- package/dist/capabilities/pipeline-orchestrator.cap.d.ts +1 -1
- package/dist/capabilities/pipeline-runner.cap.d.ts +4 -2
- package/dist/capabilities/pipeline-runner.cap.d.ts.map +1 -1
- package/dist/capabilities/platform-probe.cap.d.ts +25 -0
- package/dist/capabilities/platform-probe.cap.d.ts.map +1 -1
- package/dist/capabilities/power-meter.cap.d.ts +65 -0
- package/dist/capabilities/power-meter.cap.d.ts.map +1 -0
- package/dist/capabilities/presence.cap.d.ts +79 -0
- package/dist/capabilities/presence.cap.d.ts.map +1 -0
- package/dist/capabilities/pressure-sensor.cap.d.ts +43 -0
- package/dist/capabilities/pressure-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/privacy-mask.cap.d.ts +207 -0
- package/dist/capabilities/privacy-mask.cap.d.ts.map +1 -0
- package/dist/capabilities/ptz-autotrack.cap.d.ts +1 -0
- package/dist/capabilities/ptz-autotrack.cap.d.ts.map +1 -1
- package/dist/capabilities/ptz.cap.d.ts +1 -0
- package/dist/capabilities/ptz.cap.d.ts.map +1 -1
- package/dist/capabilities/reboot.cap.d.ts +1 -0
- package/dist/capabilities/reboot.cap.d.ts.map +1 -1
- package/dist/capabilities/recording.cap.d.ts +238 -32
- package/dist/capabilities/recording.cap.d.ts.map +1 -1
- package/dist/capabilities/restreamer.cap.d.ts +2 -2
- package/dist/capabilities/schemas/detection-shared.d.ts +14 -1
- package/dist/capabilities/schemas/detection-shared.d.ts.map +1 -1
- package/dist/capabilities/schemas/orchestrator-metrics.d.ts +2 -2
- package/dist/capabilities/schemas/streaming-shared.d.ts +64 -1
- package/dist/capabilities/schemas/streaming-shared.d.ts.map +1 -1
- package/dist/capabilities/script-runner.cap.d.ts +62 -0
- package/dist/capabilities/script-runner.cap.d.ts.map +1 -0
- package/dist/capabilities/settings-store.cap.d.ts +25 -0
- package/dist/capabilities/settings-store.cap.d.ts.map +1 -1
- package/dist/capabilities/smoke.cap.d.ts +38 -0
- package/dist/capabilities/smoke.cap.d.ts.map +1 -0
- package/dist/capabilities/snapshot-provider.cap.d.ts +1 -1
- package/dist/capabilities/snapshot.cap.d.ts +1 -0
- package/dist/capabilities/snapshot.cap.d.ts.map +1 -1
- package/dist/capabilities/sso-bridge.cap.d.ts +3 -3
- package/dist/capabilities/storage-evictable.cap.d.ts +54 -0
- package/dist/capabilities/storage-evictable.cap.d.ts.map +1 -0
- package/dist/capabilities/storage-provider.cap.d.ts +31 -186
- package/dist/capabilities/storage-provider.cap.d.ts.map +1 -1
- package/dist/capabilities/storage.cap.d.ts +35 -226
- package/dist/capabilities/storage.cap.d.ts.map +1 -1
- package/dist/capabilities/stream-broker.cap.d.ts +309 -25
- package/dist/capabilities/stream-broker.cap.d.ts.map +1 -1
- package/dist/capabilities/stream-catalog.cap.d.ts +85 -0
- package/dist/capabilities/stream-catalog.cap.d.ts.map +1 -0
- package/dist/capabilities/stream-params.cap.d.ts +27 -26
- package/dist/capabilities/stream-params.cap.d.ts.map +1 -1
- package/dist/capabilities/switch.cap.d.ts +1 -0
- package/dist/capabilities/switch.cap.d.ts.map +1 -1
- package/dist/capabilities/tamper.cap.d.ts +33 -0
- package/dist/capabilities/tamper.cap.d.ts.map +1 -0
- package/dist/capabilities/temperature-sensor.cap.d.ts +51 -0
- package/dist/capabilities/temperature-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/update.cap.d.ts +49 -0
- package/dist/capabilities/update.cap.d.ts.map +1 -0
- package/dist/capabilities/user-management.cap.d.ts +20 -20
- package/dist/capabilities/vacuum-control.cap.d.ts +229 -0
- package/dist/capabilities/vacuum-control.cap.d.ts.map +1 -0
- package/dist/capabilities/valve.cap.d.ts +93 -0
- package/dist/capabilities/valve.cap.d.ts.map +1 -0
- package/dist/capabilities/vibration.cap.d.ts +33 -0
- package/dist/capabilities/vibration.cap.d.ts.map +1 -0
- package/dist/capabilities/water-heater.cap.d.ts +78 -0
- package/dist/capabilities/water-heater.cap.d.ts.map +1 -0
- package/dist/capabilities/weather.cap.d.ts +76 -0
- package/dist/capabilities/weather.cap.d.ts.map +1 -0
- package/dist/capabilities/webrtc-session.cap.d.ts +128 -0
- package/dist/capabilities/webrtc-session.cap.d.ts.map +1 -1
- package/dist/constants.d.ts +0 -2
- package/dist/constants.d.ts.map +1 -1
- package/dist/device/base-device-provider.d.ts +11 -0
- package/dist/device/base-device-provider.d.ts.map +1 -1
- package/dist/device/base-device.d.ts +52 -0
- package/dist/device/base-device.d.ts.map +1 -1
- package/dist/device/device-context.d.ts +29 -0
- package/dist/device/device-context.d.ts.map +1 -1
- package/dist/device/device-link-transform.d.ts +6 -0
- package/dist/device/device-link-transform.d.ts.map +1 -0
- package/dist/device/device-management.d.ts +116 -4
- package/dist/device/device-management.d.ts.map +1 -1
- package/dist/device/device-type.d.ts +214 -3
- package/dist/device/device-type.d.ts.map +1 -1
- package/dist/device/device.d.ts +25 -0
- package/dist/device/device.d.ts.map +1 -1
- package/dist/device/index.d.ts +5 -1
- package/dist/device/index.d.ts.map +1 -1
- package/dist/device/path-util.d.ts +13 -0
- package/dist/device/path-util.d.ts.map +1 -0
- package/dist/device/schema-fields.d.ts +12 -0
- package/dist/device/schema-fields.d.ts.map +1 -0
- package/dist/device/source-info.d.ts +87 -0
- package/dist/device/source-info.d.ts.map +1 -0
- package/dist/device/system-mirror.d.ts +6 -2
- package/dist/device/system-mirror.d.ts.map +1 -1
- package/dist/encode-profile.d.ts +126 -0
- package/dist/encode-profile.d.ts.map +1 -0
- package/dist/enums/event-category.d.ts +92 -7
- package/dist/enums/event-category.d.ts.map +1 -1
- package/dist/generated/addon-api.d.ts +12821 -8025
- package/dist/generated/addon-api.d.ts.map +1 -1
- package/dist/generated/cap-status-types.d.ts +87 -1
- package/dist/generated/cap-status-types.d.ts.map +1 -1
- package/dist/generated/capability-router-map.d.ts +142 -7
- package/dist/generated/capability-router-map.d.ts.map +1 -1
- package/dist/generated/device-local-state.d.ts +123 -0
- package/dist/generated/device-local-state.d.ts.map +1 -1
- package/dist/generated/device-proxy.d.ts +132 -5
- package/dist/generated/device-proxy.d.ts.map +1 -1
- package/dist/generated/method-access-map.d.ts +1 -1
- package/dist/generated/method-access-map.d.ts.map +1 -1
- package/dist/generated/provider-kind-map.d.ts +1 -1
- package/dist/generated/provider-kind-map.d.ts.map +1 -1
- package/dist/generated/system-proxy.d.ts +10 -8
- package/dist/generated/system-proxy.d.ts.map +1 -1
- package/dist/health/wiring-health.d.ts +136 -0
- package/dist/health/wiring-health.d.ts.map +1 -0
- package/dist/{index-CMM1Y9W6.js → index-BSA_TBea.js} +4774 -923
- package/dist/index-BSA_TBea.js.map +1 -0
- package/dist/{index-QRlzao1I.mjs → index-Bpj3ScIH.mjs} +5142 -1291
- package/dist/index-Bpj3ScIH.mjs.map +1 -0
- package/dist/index.d.ts +23 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1498 -119
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1806 -427
- package/dist/index.mjs.map +1 -1
- package/dist/interfaces/addon-data-plane.d.ts +76 -0
- package/dist/interfaces/addon-data-plane.d.ts.map +1 -0
- package/dist/interfaces/addon.d.ts +61 -1
- package/dist/interfaces/addon.d.ts.map +1 -1
- package/dist/interfaces/advanced-notifier.d.ts +4 -0
- package/dist/interfaces/advanced-notifier.d.ts.map +1 -1
- package/dist/interfaces/capability.d.ts +59 -1
- package/dist/interfaces/capability.d.ts.map +1 -1
- package/dist/interfaces/config-ui.d.ts +70 -6
- package/dist/interfaces/config-ui.d.ts.map +1 -1
- package/dist/interfaces/device-capabilities/camera.d.ts +2 -1
- package/dist/interfaces/device-capabilities/camera.d.ts.map +1 -1
- package/dist/interfaces/event-bus.d.ts +105 -4
- package/dist/interfaces/event-bus.d.ts.map +1 -1
- package/dist/interfaces/kernel-abstractions.d.ts +10 -1
- package/dist/interfaces/kernel-abstractions.d.ts.map +1 -1
- package/dist/interfaces/network-quality.d.ts +8 -0
- package/dist/interfaces/network-quality.d.ts.map +1 -1
- package/dist/interfaces/pipeline-executor-capability.d.ts +2 -2
- package/dist/interfaces/pipeline-orchestrator-capability.d.ts +2 -1
- package/dist/interfaces/pipeline-orchestrator-capability.d.ts.map +1 -1
- package/dist/interfaces/pipeline-runner-capability.d.ts +7 -0
- package/dist/interfaces/pipeline-runner-capability.d.ts.map +1 -1
- package/dist/interfaces/recording-config.d.ts +91 -0
- package/dist/interfaces/recording-config.d.ts.map +1 -0
- package/dist/interfaces/rtp-egress.d.ts +2 -3
- package/dist/interfaces/rtp-egress.d.ts.map +1 -1
- package/dist/interfaces/storage-location-declaration.d.ts +34 -0
- package/dist/interfaces/storage-location-declaration.d.ts.map +1 -0
- package/dist/interfaces/storage-location.d.ts +18 -74
- package/dist/interfaces/storage-location.d.ts.map +1 -1
- package/dist/interfaces/storage.d.ts +15 -4
- package/dist/interfaces/storage.d.ts.map +1 -1
- package/dist/interfaces/stream-broker.d.ts +39 -4
- package/dist/interfaces/stream-broker.d.ts.map +1 -1
- package/dist/interfaces/timezones.d.ts +59 -0
- package/dist/interfaces/timezones.d.ts.map +1 -0
- package/dist/node.d.ts +3 -0
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +50 -8
- package/dist/node.js.map +1 -1
- package/dist/node.mjs +51 -9
- package/dist/node.mjs.map +1 -1
- package/dist/readiness/readiness-registry.d.ts.map +1 -1
- package/dist/schemas/auth-records.d.ts +4 -4
- package/dist/storage/filesystem-storage-provider.d.ts +2 -1
- package/dist/storage/filesystem-storage-provider.d.ts.map +1 -1
- package/dist/stream-selection.d.ts +85 -0
- package/dist/stream-selection.d.ts.map +1 -0
- package/dist/types/detection.d.ts +3 -3
- package/dist/types/io.d.ts +13 -1
- package/dist/types/io.d.ts.map +1 -1
- package/dist/util/location-match.d.ts +15 -0
- package/dist/util/location-match.d.ts.map +1 -0
- package/dist/utils/canonical-hash.d.ts +20 -0
- package/dist/utils/canonical-hash.d.ts.map +1 -0
- package/dist/utils/export-reconciler.d.ts +101 -0
- package/dist/utils/export-reconciler.d.ts.map +1 -0
- package/dist/utils/privacy-grid-raster.d.ts +48 -0
- package/dist/utils/privacy-grid-raster.d.ts.map +1 -0
- package/dist/utils/sleep.d.ts +36 -0
- package/dist/utils/sleep.d.ts.map +1 -0
- package/package.json +1 -1
- package/dist/capabilities/recording-engine.cap.d.ts +0 -477
- package/dist/capabilities/recording-engine.cap.d.ts.map +0 -1
- package/dist/index-CMM1Y9W6.js.map +0 -1
- package/dist/index-QRlzao1I.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device-ops.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/device-ops.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"device-ops.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/device-ops.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAsClG,eAAO,MAAM,oBAAoB;;;iBAK/B,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEjE,eAAO,MAAM,mBAAmB;;;;;;QAY5B;;;WAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAMH;;;WAGG;;;;;;;QAMH;;;;WAIG;;;;;QAUH;;;;;WAKG;;;;;;QAWH;;;;WAIG;;;;QAOH;;;;;;;;;;;;;WAaG;;;;QAMH;;;;;;WAMG;;;;;;;;CAOkC,CAAA;AAEzC,MAAM,MAAM,kBAAkB,GAAG,aAAa,CAAC,OAAO,mBAAmB,CAAC,CAAA"}
|
|
@@ -22,6 +22,12 @@ declare const DiscoveryCandidateSchema: z.ZodObject<{
|
|
|
22
22
|
type: z.ZodEnum<typeof DeviceType>;
|
|
23
23
|
suggestedName: z.ZodString;
|
|
24
24
|
prefilledConfig: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
25
|
+
sourceInfo: z.ZodOptional<z.ZodObject<{
|
|
26
|
+
id: z.ZodString;
|
|
27
|
+
system: z.ZodString;
|
|
28
|
+
uniqueId: z.ZodOptional<z.ZodString>;
|
|
29
|
+
raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
30
|
+
}, z.core.$strip>>;
|
|
25
31
|
}, z.core.$strip>;
|
|
26
32
|
/**
|
|
27
33
|
* Flat device summary returned by `createDevice` / `adoptDiscoveredDevice`.
|
|
@@ -38,6 +44,12 @@ declare const DeviceSummarySchema: z.ZodObject<{
|
|
|
38
44
|
online: z.ZodBoolean;
|
|
39
45
|
features: z.ZodArray<z.ZodString>;
|
|
40
46
|
config: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
47
|
+
sourceInfo: z.ZodOptional<z.ZodObject<{
|
|
48
|
+
id: z.ZodString;
|
|
49
|
+
system: z.ZodString;
|
|
50
|
+
uniqueId: z.ZodOptional<z.ZodString>;
|
|
51
|
+
raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
52
|
+
}, z.core.$strip>>;
|
|
41
53
|
}, z.core.$strip>;
|
|
42
54
|
/**
|
|
43
55
|
* Result of a live field test (e.g. probing an RTSP URL during device
|
|
@@ -76,6 +88,12 @@ export declare const deviceProviderCapability: {
|
|
|
76
88
|
type: z.ZodEnum<typeof DeviceType>;
|
|
77
89
|
suggestedName: z.ZodString;
|
|
78
90
|
prefilledConfig: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
91
|
+
sourceInfo: z.ZodOptional<z.ZodObject<{
|
|
92
|
+
id: z.ZodString;
|
|
93
|
+
system: z.ZodString;
|
|
94
|
+
uniqueId: z.ZodOptional<z.ZodString>;
|
|
95
|
+
raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
96
|
+
}, z.core.$strip>>;
|
|
79
97
|
}, z.core.$strip>>, "mutation">;
|
|
80
98
|
readonly adoptDiscoveredDevice: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
81
99
|
candidate: z.ZodObject<{
|
|
@@ -83,6 +101,12 @@ export declare const deviceProviderCapability: {
|
|
|
83
101
|
type: z.ZodEnum<typeof DeviceType>;
|
|
84
102
|
suggestedName: z.ZodString;
|
|
85
103
|
prefilledConfig: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
104
|
+
sourceInfo: z.ZodOptional<z.ZodObject<{
|
|
105
|
+
id: z.ZodString;
|
|
106
|
+
system: z.ZodString;
|
|
107
|
+
uniqueId: z.ZodOptional<z.ZodString>;
|
|
108
|
+
raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
109
|
+
}, z.core.$strip>>;
|
|
86
110
|
}, z.core.$strip>;
|
|
87
111
|
}, z.core.$strip>, z.ZodObject<{
|
|
88
112
|
id: z.ZodNumber;
|
|
@@ -94,6 +118,12 @@ export declare const deviceProviderCapability: {
|
|
|
94
118
|
online: z.ZodBoolean;
|
|
95
119
|
features: z.ZodArray<z.ZodString>;
|
|
96
120
|
config: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
121
|
+
sourceInfo: z.ZodOptional<z.ZodObject<{
|
|
122
|
+
id: z.ZodString;
|
|
123
|
+
system: z.ZodString;
|
|
124
|
+
uniqueId: z.ZodOptional<z.ZodString>;
|
|
125
|
+
raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
126
|
+
}, z.core.$strip>>;
|
|
97
127
|
}, z.core.$strip>, "mutation">;
|
|
98
128
|
readonly supportsManualCreation: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{}, z.core.$strip>, z.ZodBoolean, import("./capability-definition.js").CapabilityMethodKind>;
|
|
99
129
|
/**
|
|
@@ -118,6 +148,12 @@ export declare const deviceProviderCapability: {
|
|
|
118
148
|
online: z.ZodBoolean;
|
|
119
149
|
features: z.ZodArray<z.ZodString>;
|
|
120
150
|
config: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
151
|
+
sourceInfo: z.ZodOptional<z.ZodObject<{
|
|
152
|
+
id: z.ZodString;
|
|
153
|
+
system: z.ZodString;
|
|
154
|
+
uniqueId: z.ZodOptional<z.ZodString>;
|
|
155
|
+
raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
156
|
+
}, z.core.$strip>>;
|
|
121
157
|
}, z.core.$strip>, "mutation">;
|
|
122
158
|
/**
|
|
123
159
|
* Test a single field in the creation form before the device has
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device-provider.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/device-provider.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"device-provider.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/device-provider.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAGrD,QAAA,MAAM,oBAAoB;;;;iBAIxB,CAAA;AAEF,QAAA,MAAM,sBAAsB;;;;;iBAK1B,CAAA;AAEF;;;;GAIG;AACH,QAAA,MAAM,wBAAwB;;;;;;;;;;;iBAY5B,CAAA;AAEF;;;;GAIG;AACH,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;iBAevB,CAAA;AAEF;;;;;GAKG;AACH,QAAA,MAAM,sBAAsB;;;;;;;iBAI1B,CAAA;AAYF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA8BjC;;;;;WAKG;;;;;;;;;;;;;;;;;;;;;;;;QAaH;;;;;;;;;;;WAWG;;;;;;;;;;;;;;;CAYkC,CAAA;AAEzC,MAAM,MAAM,eAAe,GAAG,aAAa,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAE5E,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,mBAAmB,EACnB,sBAAsB,GACvB,CAAA"}
|
|
@@ -23,6 +23,7 @@ export type DeviceStatus = z.infer<typeof DeviceStatusSchema>;
|
|
|
23
23
|
export declare const deviceStatusCapability: {
|
|
24
24
|
readonly name: "device-status";
|
|
25
25
|
readonly scope: "device";
|
|
26
|
+
readonly deviceNative: true;
|
|
26
27
|
readonly mode: "singleton";
|
|
27
28
|
readonly methods: {};
|
|
28
29
|
readonly events: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device-status.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/device-status.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE1F;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,kBAAkB;;;iBAY7B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,sBAAsB
|
|
1
|
+
{"version":3,"file":"device-status.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/device-status.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE1F;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,kBAAkB;;;iBAY7B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,sBAAsB;;;;;;;QAO/B;yCACiC;;;;;;;;;;;;;;;;;;;;;;CAWI,CAAA;AAEzC,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
|
|
@@ -24,6 +24,7 @@ export type DoorbellPressEvent = z.infer<typeof DoorbellPressEventSchema>;
|
|
|
24
24
|
export declare const doorbellCapability: {
|
|
25
25
|
readonly name: "doorbell";
|
|
26
26
|
readonly scope: "device";
|
|
27
|
+
readonly deviceNative: true;
|
|
27
28
|
readonly mode: "singleton";
|
|
28
29
|
readonly deviceTypes: readonly [DeviceType.Button];
|
|
29
30
|
readonly methods: {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doorbell.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/doorbell.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB;;;iBAK/B,CAAA;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEjE,eAAO,MAAM,wBAAwB;;;iBAGnC,CAAA;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEzE,eAAO,MAAM,kBAAkB
|
|
1
|
+
{"version":3,"file":"doorbell.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/doorbell.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB;;;iBAK/B,CAAA;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEjE,eAAO,MAAM,wBAAwB;;;iBAGnC,CAAA;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEzE,eAAO,MAAM,kBAAkB;;;;;;;;QAQ3B;;;;WAIG;;;;;;;;;;;;;;;IAOL;;;;;OAKG;;;;;CAEoC,CAAA;AAEzC,MAAM,MAAM,iBAAiB,GAAG,aAAa,CAAC,OAAO,kBAAkB,CAAC,CAAA"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { type InferProvider } from './capability-definition.js';
|
|
3
|
+
import { DeviceType } from '../device/device-type.js';
|
|
4
|
+
/**
|
|
5
|
+
* Enum-state sensor — a string value picked from a finite option set.
|
|
6
|
+
* Drives HA `sensor` entries with `state_class: enum` (HVAC action
|
|
7
|
+
* states, weather conditions, contact-source channels, mode strings).
|
|
8
|
+
* The option set is stable across observations; it is persisted in the
|
|
9
|
+
* device config blob (via the control slice at adoption) and is NOT
|
|
10
|
+
* stored in `sourceInfo`.
|
|
11
|
+
*/
|
|
12
|
+
/** Locale-render shape for an ISO `value` carried by a `DateTimeSensor`-role
|
|
13
|
+
* enum sensor: `date` (date-only), `time` (time-only), `datetime` (both). */
|
|
14
|
+
export declare const EnumSensorDateTimeFormatSchema: z.ZodEnum<{
|
|
15
|
+
date: "date";
|
|
16
|
+
datetime: "datetime";
|
|
17
|
+
time: "time";
|
|
18
|
+
}>;
|
|
19
|
+
export type EnumSensorDateTimeFormat = z.infer<typeof EnumSensorDateTimeFormatSchema>;
|
|
20
|
+
export declare const EnumSensorStatusSchema: z.ZodObject<{
|
|
21
|
+
value: z.ZodString;
|
|
22
|
+
format: z.ZodOptional<z.ZodEnum<{
|
|
23
|
+
date: "date";
|
|
24
|
+
datetime: "datetime";
|
|
25
|
+
time: "time";
|
|
26
|
+
}>>;
|
|
27
|
+
lastFetchedAt: z.ZodNumber;
|
|
28
|
+
}, z.core.$strip>;
|
|
29
|
+
export type EnumSensorStatus = z.infer<typeof EnumSensorStatusSchema>;
|
|
30
|
+
export declare const enumSensorCapability: {
|
|
31
|
+
readonly name: "enum-sensor";
|
|
32
|
+
readonly scope: "device";
|
|
33
|
+
readonly deviceNative: true;
|
|
34
|
+
readonly mode: "singleton";
|
|
35
|
+
readonly deviceTypes: readonly [DeviceType.Sensor];
|
|
36
|
+
readonly methods: {};
|
|
37
|
+
readonly status: {
|
|
38
|
+
readonly schema: z.ZodObject<{
|
|
39
|
+
value: z.ZodString;
|
|
40
|
+
format: z.ZodOptional<z.ZodEnum<{
|
|
41
|
+
date: "date";
|
|
42
|
+
datetime: "datetime";
|
|
43
|
+
time: "time";
|
|
44
|
+
}>>;
|
|
45
|
+
lastFetchedAt: z.ZodNumber;
|
|
46
|
+
}, z.core.$strip>;
|
|
47
|
+
readonly kind: "push";
|
|
48
|
+
};
|
|
49
|
+
readonly runtimeState: z.ZodObject<{
|
|
50
|
+
value: z.ZodString;
|
|
51
|
+
format: z.ZodOptional<z.ZodEnum<{
|
|
52
|
+
date: "date";
|
|
53
|
+
datetime: "datetime";
|
|
54
|
+
time: "time";
|
|
55
|
+
}>>;
|
|
56
|
+
lastFetchedAt: z.ZodNumber;
|
|
57
|
+
}, z.core.$strip>;
|
|
58
|
+
};
|
|
59
|
+
export type IEnumSensorProvider = InferProvider<typeof enumSensorCapability>;
|
|
60
|
+
//# sourceMappingURL=enum-sensor.cap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enum-sensor.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/enum-sensor.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;;GAOG;AACH;8EAC8E;AAC9E,eAAO,MAAM,8BAA8B;;;;EAAuC,CAAA;AAElF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAA;AAErF,eAAO,MAAM,sBAAsB;;;;;;;;iBAWjC,CAAA;AAEF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAErE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAYQ,CAAA;AAEzC,MAAM,MAAM,mBAAmB,GAAG,aAAa,CAAC,OAAO,oBAAoB,CAAC,CAAA"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { type InferProvider } from './capability-definition.js';
|
|
3
|
+
import { DeviceType } from '../device/device-type.js';
|
|
4
|
+
/**
|
|
5
|
+
* Generic stateless event emitter. Installed on a `DeviceType.EventEmitter`
|
|
6
|
+
* device. Carries the device's EXACT declared event vocabulary verbatim
|
|
7
|
+
* (NO normalization). Two shapes:
|
|
8
|
+
* - structured source (HA `event.*` entity) → `eventTypes` is the fixed
|
|
9
|
+
* declared vocabulary (e.g. ['press_short','press_long',...]).
|
|
10
|
+
* - generic/legacy source (HA bus events, e.g. zha_event) → `eventTypes`
|
|
11
|
+
* is [] (open) and `lastEvent.data` carries the complex payload.
|
|
12
|
+
* `seq` is monotonic so two identical events still produce distinct slice writes.
|
|
13
|
+
*/
|
|
14
|
+
export declare const EventFireSchema: z.ZodObject<{
|
|
15
|
+
deviceId: z.ZodNumber;
|
|
16
|
+
eventType: z.ZodString;
|
|
17
|
+
data: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
18
|
+
timestamp: z.ZodNumber;
|
|
19
|
+
seq: z.ZodNumber;
|
|
20
|
+
}, z.core.$strip>;
|
|
21
|
+
export type EventFire = z.infer<typeof EventFireSchema>;
|
|
22
|
+
export declare const EventEmitterStatusSchema: z.ZodObject<{
|
|
23
|
+
eventTypes: z.ZodArray<z.ZodString>;
|
|
24
|
+
lastEvent: z.ZodNullable<z.ZodObject<{
|
|
25
|
+
deviceId: z.ZodNumber;
|
|
26
|
+
eventType: z.ZodString;
|
|
27
|
+
data: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
28
|
+
timestamp: z.ZodNumber;
|
|
29
|
+
seq: z.ZodNumber;
|
|
30
|
+
}, z.core.$strip>>;
|
|
31
|
+
eventCountSinceStart: z.ZodNumber;
|
|
32
|
+
}, z.core.$strip>;
|
|
33
|
+
export type EventEmitterStatus = z.infer<typeof EventEmitterStatusSchema>;
|
|
34
|
+
export declare const eventEmitterCapability: {
|
|
35
|
+
readonly name: "event-emitter";
|
|
36
|
+
readonly scope: "device";
|
|
37
|
+
readonly deviceNative: true;
|
|
38
|
+
readonly mode: "singleton";
|
|
39
|
+
readonly deviceTypes: readonly [DeviceType.EventEmitter];
|
|
40
|
+
readonly methods: {};
|
|
41
|
+
readonly events: {
|
|
42
|
+
readonly onEvent: {
|
|
43
|
+
readonly data: z.ZodObject<{
|
|
44
|
+
deviceId: z.ZodNumber;
|
|
45
|
+
eventType: z.ZodString;
|
|
46
|
+
data: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
47
|
+
timestamp: z.ZodNumber;
|
|
48
|
+
seq: z.ZodNumber;
|
|
49
|
+
}, z.core.$strip>;
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
readonly status: {
|
|
53
|
+
readonly schema: z.ZodObject<{
|
|
54
|
+
eventTypes: z.ZodArray<z.ZodString>;
|
|
55
|
+
lastEvent: z.ZodNullable<z.ZodObject<{
|
|
56
|
+
deviceId: z.ZodNumber;
|
|
57
|
+
eventType: z.ZodString;
|
|
58
|
+
data: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
59
|
+
timestamp: z.ZodNumber;
|
|
60
|
+
seq: z.ZodNumber;
|
|
61
|
+
}, z.core.$strip>>;
|
|
62
|
+
eventCountSinceStart: z.ZodNumber;
|
|
63
|
+
}, z.core.$strip>;
|
|
64
|
+
readonly kind: "push";
|
|
65
|
+
};
|
|
66
|
+
readonly runtimeState: z.ZodObject<{
|
|
67
|
+
eventTypes: z.ZodArray<z.ZodString>;
|
|
68
|
+
lastEvent: z.ZodNullable<z.ZodObject<{
|
|
69
|
+
deviceId: z.ZodNumber;
|
|
70
|
+
eventType: z.ZodString;
|
|
71
|
+
data: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
72
|
+
timestamp: z.ZodNumber;
|
|
73
|
+
seq: z.ZodNumber;
|
|
74
|
+
}, z.core.$strip>>;
|
|
75
|
+
eventCountSinceStart: z.ZodNumber;
|
|
76
|
+
}, z.core.$strip>;
|
|
77
|
+
};
|
|
78
|
+
export type IEventEmitterProvider = InferProvider<typeof eventEmitterCapability>;
|
|
79
|
+
//# sourceMappingURL=event-emitter.cap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-emitter.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/event-emitter.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe;;;;;;iBAM1B,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAEvD,eAAO,MAAM,wBAAwB;;;;;;;;;;iBAInC,CAAA;AACF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEzE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAUM,CAAA;AAEzC,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { type InferProvider } from './capability-definition.js';
|
|
3
|
+
import { DeviceType } from '../device/device-type.js';
|
|
4
|
+
/**
|
|
5
|
+
* Fan-control cap. Models HA `fan.*` entity-specific surfaces:
|
|
6
|
+
* speed percentage, preset modes, ceiling-fan direction, and
|
|
7
|
+
* oscillation. The on/off state lives on the existing `switch` cap
|
|
8
|
+
* (Fan devices register `switch + fan-control`, mirroring the
|
|
9
|
+
* Light pattern of `switch + brightness + color`).
|
|
10
|
+
*
|
|
11
|
+
* `availablePresets` mirrors HA's `preset_modes` attribute so the
|
|
12
|
+
* UI renders a closed-list picker without a separate `getOptions`
|
|
13
|
+
* round-trip. `direction` and `oscillating` are nullable — most
|
|
14
|
+
* fans don't expose them.
|
|
15
|
+
*
|
|
16
|
+
* Sub-surface gating paired with `DeviceFeature` flags:
|
|
17
|
+
* - `FanSpeed` — speed-percentage slider
|
|
18
|
+
* - `FanPreset` — preset selector
|
|
19
|
+
* - `FanDirection` — direction toggle (ceiling fans)
|
|
20
|
+
* - `FanOscillating` — oscillation toggle
|
|
21
|
+
*/
|
|
22
|
+
export declare const FanDirectionSchema: z.ZodEnum<{
|
|
23
|
+
reverse: "reverse";
|
|
24
|
+
forward: "forward";
|
|
25
|
+
}>;
|
|
26
|
+
export type FanDirection = z.infer<typeof FanDirectionSchema>;
|
|
27
|
+
export declare const FanControlStatusSchema: z.ZodObject<{
|
|
28
|
+
percentage: z.ZodNullable<z.ZodNumber>;
|
|
29
|
+
percentageStep: z.ZodOptional<z.ZodNumber>;
|
|
30
|
+
preset: z.ZodString;
|
|
31
|
+
availablePresets: z.ZodArray<z.ZodString>;
|
|
32
|
+
direction: z.ZodNullable<z.ZodEnum<{
|
|
33
|
+
reverse: "reverse";
|
|
34
|
+
forward: "forward";
|
|
35
|
+
}>>;
|
|
36
|
+
oscillating: z.ZodNullable<z.ZodBoolean>;
|
|
37
|
+
lastChangedAt: z.ZodNumber;
|
|
38
|
+
}, z.core.$strip>;
|
|
39
|
+
export type FanControlStatus = z.infer<typeof FanControlStatusSchema>;
|
|
40
|
+
export declare const fanControlCapability: {
|
|
41
|
+
readonly name: "fan-control";
|
|
42
|
+
readonly scope: "device";
|
|
43
|
+
readonly deviceNative: true;
|
|
44
|
+
readonly mode: "singleton";
|
|
45
|
+
readonly deviceTypes: readonly [DeviceType.Fan];
|
|
46
|
+
readonly methods: {
|
|
47
|
+
readonly setPercentage: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
48
|
+
deviceId: z.ZodNumber;
|
|
49
|
+
percentage: z.ZodNumber;
|
|
50
|
+
}, z.core.$strip>, z.ZodVoid, "mutation">;
|
|
51
|
+
readonly setPreset: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
52
|
+
deviceId: z.ZodNumber;
|
|
53
|
+
preset: z.ZodString;
|
|
54
|
+
}, z.core.$strip>, z.ZodVoid, "mutation">;
|
|
55
|
+
readonly setDirection: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
56
|
+
deviceId: z.ZodNumber;
|
|
57
|
+
direction: z.ZodEnum<{
|
|
58
|
+
reverse: "reverse";
|
|
59
|
+
forward: "forward";
|
|
60
|
+
}>;
|
|
61
|
+
}, z.core.$strip>, z.ZodVoid, "mutation">;
|
|
62
|
+
readonly setOscillating: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
63
|
+
deviceId: z.ZodNumber;
|
|
64
|
+
oscillating: z.ZodBoolean;
|
|
65
|
+
}, z.core.$strip>, z.ZodVoid, "mutation">;
|
|
66
|
+
};
|
|
67
|
+
readonly status: {
|
|
68
|
+
readonly schema: z.ZodObject<{
|
|
69
|
+
percentage: z.ZodNullable<z.ZodNumber>;
|
|
70
|
+
percentageStep: z.ZodOptional<z.ZodNumber>;
|
|
71
|
+
preset: z.ZodString;
|
|
72
|
+
availablePresets: z.ZodArray<z.ZodString>;
|
|
73
|
+
direction: z.ZodNullable<z.ZodEnum<{
|
|
74
|
+
reverse: "reverse";
|
|
75
|
+
forward: "forward";
|
|
76
|
+
}>>;
|
|
77
|
+
oscillating: z.ZodNullable<z.ZodBoolean>;
|
|
78
|
+
lastChangedAt: z.ZodNumber;
|
|
79
|
+
}, z.core.$strip>;
|
|
80
|
+
readonly kind: "push";
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* Runtime-state slice — mirrored by the kernel. UI fan speed
|
|
84
|
+
* sliders read `percentage` for live updates.
|
|
85
|
+
*/
|
|
86
|
+
readonly runtimeState: z.ZodObject<{
|
|
87
|
+
percentage: z.ZodNullable<z.ZodNumber>;
|
|
88
|
+
percentageStep: z.ZodOptional<z.ZodNumber>;
|
|
89
|
+
preset: z.ZodString;
|
|
90
|
+
availablePresets: z.ZodArray<z.ZodString>;
|
|
91
|
+
direction: z.ZodNullable<z.ZodEnum<{
|
|
92
|
+
reverse: "reverse";
|
|
93
|
+
forward: "forward";
|
|
94
|
+
}>>;
|
|
95
|
+
oscillating: z.ZodNullable<z.ZodBoolean>;
|
|
96
|
+
lastChangedAt: z.ZodNumber;
|
|
97
|
+
}, z.core.$strip>;
|
|
98
|
+
};
|
|
99
|
+
export type IFanControlProvider = InferProvider<typeof fanControlCapability>;
|
|
100
|
+
//# sourceMappingURL=fan-control.cap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fan-control.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/fan-control.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;;;;;;;;;;;;GAiBG;AAEH,eAAO,MAAM,kBAAkB;;;EAAiC,CAAA;AAChE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,sBAAsB;;;;;;;;;;;iBAoBjC,CAAA;AAEF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAErE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA4C/B;;;OAGG;;;;;;;;;;;;;CAEoC,CAAA;AAEzC,MAAM,MAAM,mBAAmB,GAAG,aAAa,CAAC,OAAO,oBAAoB,CAAC,CAAA"}
|
|
@@ -36,6 +36,7 @@ export type FeatureProbeStatus = z.infer<typeof FeatureProbeStatusSchema>;
|
|
|
36
36
|
export declare const featureProbeCapability: {
|
|
37
37
|
readonly name: "feature-probe";
|
|
38
38
|
readonly scope: "device";
|
|
39
|
+
readonly deviceNative: true;
|
|
39
40
|
readonly mode: "singleton";
|
|
40
41
|
readonly methods: {};
|
|
41
42
|
readonly events: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature-probe.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/feature-probe.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE1F;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,wBAAwB;;;;;;;iBAgCnC,CAAA;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEzE,eAAO,MAAM,sBAAsB
|
|
1
|
+
{"version":3,"file":"feature-probe.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/feature-probe.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE1F;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,wBAAwB;;;;;;;iBAgCnC,CAAA;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEzE,eAAO,MAAM,sBAAsB;;;;;;;QAO/B;mEAC2D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAWtB,CAAA;AAEzC,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { type InferProvider } from './capability-definition.js';
|
|
3
|
+
import { DeviceType } from '../device/device-type.js';
|
|
4
|
+
/**
|
|
5
|
+
* Water leak / moisture sensor. Boolean "is liquid currently
|
|
6
|
+
* detected" with the timestamp of the last transition. Drives Home
|
|
7
|
+
* Assistant `binary_sensor` entries with `device_class: moisture`,
|
|
8
|
+
* and any future native flood sensor.
|
|
9
|
+
*
|
|
10
|
+
* Push-driven from the upstream source.
|
|
11
|
+
*/
|
|
12
|
+
export declare const FloodStatusSchema: z.ZodObject<{
|
|
13
|
+
flooded: z.ZodBoolean;
|
|
14
|
+
lastChangedAt: z.ZodNumber;
|
|
15
|
+
}, z.core.$strip>;
|
|
16
|
+
export type FloodStatus = z.infer<typeof FloodStatusSchema>;
|
|
17
|
+
export declare const floodCapability: {
|
|
18
|
+
readonly name: "flood";
|
|
19
|
+
readonly scope: "device";
|
|
20
|
+
readonly deviceNative: true;
|
|
21
|
+
readonly mode: "singleton";
|
|
22
|
+
readonly deviceTypes: readonly [DeviceType.Sensor];
|
|
23
|
+
readonly methods: {};
|
|
24
|
+
readonly status: {
|
|
25
|
+
readonly schema: z.ZodObject<{
|
|
26
|
+
flooded: z.ZodBoolean;
|
|
27
|
+
lastChangedAt: z.ZodNumber;
|
|
28
|
+
}, z.core.$strip>;
|
|
29
|
+
readonly kind: "push";
|
|
30
|
+
};
|
|
31
|
+
readonly runtimeState: z.ZodObject<{
|
|
32
|
+
flooded: z.ZodBoolean;
|
|
33
|
+
lastChangedAt: z.ZodNumber;
|
|
34
|
+
}, z.core.$strip>;
|
|
35
|
+
};
|
|
36
|
+
export type IFloodProvider = InferProvider<typeof floodCapability>;
|
|
37
|
+
//# sourceMappingURL=flood.cap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flood.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/flood.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB;;;iBAK5B,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;CAYa,CAAA;AAEzC,MAAM,MAAM,cAAc,GAAG,aAAa,CAAC,OAAO,eAAe,CAAC,CAAA"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { type InferProvider } from './capability-definition.js';
|
|
3
|
+
import { DeviceType } from '../device/device-type.js';
|
|
4
|
+
/**
|
|
5
|
+
* Combustible-gas (LPG / methane / hydrogen) alarm sensor. Drives
|
|
6
|
+
* Home Assistant `binary_sensor` entries with `device_class: gas`.
|
|
7
|
+
* Push-driven.
|
|
8
|
+
*/
|
|
9
|
+
export declare const GasStatusSchema: z.ZodObject<{
|
|
10
|
+
detected: z.ZodBoolean;
|
|
11
|
+
lastChangedAt: z.ZodNumber;
|
|
12
|
+
}, z.core.$strip>;
|
|
13
|
+
export type GasStatus = z.infer<typeof GasStatusSchema>;
|
|
14
|
+
export declare const gasCapability: {
|
|
15
|
+
readonly name: "gas";
|
|
16
|
+
readonly scope: "device";
|
|
17
|
+
readonly deviceNative: true;
|
|
18
|
+
readonly mode: "singleton";
|
|
19
|
+
readonly deviceTypes: readonly [DeviceType.Sensor];
|
|
20
|
+
readonly methods: {};
|
|
21
|
+
readonly status: {
|
|
22
|
+
readonly schema: z.ZodObject<{
|
|
23
|
+
detected: z.ZodBoolean;
|
|
24
|
+
lastChangedAt: z.ZodNumber;
|
|
25
|
+
}, z.core.$strip>;
|
|
26
|
+
readonly kind: "push";
|
|
27
|
+
};
|
|
28
|
+
readonly runtimeState: z.ZodObject<{
|
|
29
|
+
detected: z.ZodBoolean;
|
|
30
|
+
lastChangedAt: z.ZodNumber;
|
|
31
|
+
}, z.core.$strip>;
|
|
32
|
+
};
|
|
33
|
+
export type IGasProvider = InferProvider<typeof gasCapability>;
|
|
34
|
+
//# sourceMappingURL=gas.cap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gas.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/gas.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;iBAI1B,CAAA;AAEF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAEvD,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;CAYe,CAAA;AAEzC,MAAM,MAAM,YAAY,GAAG,aAAa,CAAC,OAAO,aAAa,CAAC,CAAA"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { type InferProvider } from './capability-definition.js';
|
|
3
|
+
import { DeviceType } from '../device/device-type.js';
|
|
4
|
+
/**
|
|
5
|
+
* Humidifier / dehumidifier cap. Models HA `humidifier.*` entities —
|
|
6
|
+
* an on/off actuator with an optional target-humidity setpoint and an
|
|
7
|
+
* optional vendor mode (`auto` / `normal` / `baby` / …).
|
|
8
|
+
*
|
|
9
|
+
* A climate-family sibling: the slice carries the on/off state, the
|
|
10
|
+
* current + target relative humidity (0..100), the active mode and its
|
|
11
|
+
* available set, plus HA's free-form `action` readout
|
|
12
|
+
* (`humidifying` / `drying` / `idle` / `off`). `minHumidity` /
|
|
13
|
+
* `maxHumidity` mirror HA's `min_humidity` / `max_humidity` attributes
|
|
14
|
+
* (null → the UI falls back to a 0..100 range).
|
|
15
|
+
*
|
|
16
|
+
* Providers populate only what the hardware reports — `mode` and the
|
|
17
|
+
* humidity fields stay null when the device has no such surface.
|
|
18
|
+
*/
|
|
19
|
+
export declare const HumidifierStatusSchema: z.ZodObject<{
|
|
20
|
+
on: z.ZodBoolean;
|
|
21
|
+
currentHumidity: z.ZodNullable<z.ZodNumber>;
|
|
22
|
+
targetHumidity: z.ZodNullable<z.ZodNumber>;
|
|
23
|
+
mode: z.ZodNullable<z.ZodString>;
|
|
24
|
+
availableModes: z.ZodArray<z.ZodString>;
|
|
25
|
+
action: z.ZodNullable<z.ZodString>;
|
|
26
|
+
minHumidity: z.ZodNullable<z.ZodNumber>;
|
|
27
|
+
maxHumidity: z.ZodNullable<z.ZodNumber>;
|
|
28
|
+
lastChangedAt: z.ZodNumber;
|
|
29
|
+
}, z.core.$strip>;
|
|
30
|
+
export type HumidifierStatus = z.infer<typeof HumidifierStatusSchema>;
|
|
31
|
+
export declare const humidifierCapability: {
|
|
32
|
+
readonly name: "humidifier";
|
|
33
|
+
readonly scope: "device";
|
|
34
|
+
readonly deviceNative: true;
|
|
35
|
+
readonly mode: "singleton";
|
|
36
|
+
readonly deviceTypes: readonly [DeviceType.Humidifier];
|
|
37
|
+
readonly methods: {
|
|
38
|
+
readonly setOn: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
39
|
+
deviceId: z.ZodNumber;
|
|
40
|
+
on: z.ZodBoolean;
|
|
41
|
+
}, z.core.$strip>, z.ZodVoid, "mutation">;
|
|
42
|
+
readonly setTargetHumidity: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
43
|
+
deviceId: z.ZodNumber;
|
|
44
|
+
humidity: z.ZodNumber;
|
|
45
|
+
}, z.core.$strip>, z.ZodVoid, "mutation">;
|
|
46
|
+
readonly setMode: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
47
|
+
deviceId: z.ZodNumber;
|
|
48
|
+
mode: z.ZodString;
|
|
49
|
+
}, z.core.$strip>, z.ZodVoid, "mutation">;
|
|
50
|
+
};
|
|
51
|
+
readonly status: {
|
|
52
|
+
readonly schema: z.ZodObject<{
|
|
53
|
+
on: z.ZodBoolean;
|
|
54
|
+
currentHumidity: z.ZodNullable<z.ZodNumber>;
|
|
55
|
+
targetHumidity: z.ZodNullable<z.ZodNumber>;
|
|
56
|
+
mode: z.ZodNullable<z.ZodString>;
|
|
57
|
+
availableModes: z.ZodArray<z.ZodString>;
|
|
58
|
+
action: z.ZodNullable<z.ZodString>;
|
|
59
|
+
minHumidity: z.ZodNullable<z.ZodNumber>;
|
|
60
|
+
maxHumidity: z.ZodNullable<z.ZodNumber>;
|
|
61
|
+
lastChangedAt: z.ZodNumber;
|
|
62
|
+
}, z.core.$strip>;
|
|
63
|
+
readonly kind: "push";
|
|
64
|
+
};
|
|
65
|
+
/**
|
|
66
|
+
* Runtime-state slice — mirrored by the kernel. UI controls watch the
|
|
67
|
+
* slice for live humidity / mode changes.
|
|
68
|
+
*/
|
|
69
|
+
readonly runtimeState: z.ZodObject<{
|
|
70
|
+
on: z.ZodBoolean;
|
|
71
|
+
currentHumidity: z.ZodNullable<z.ZodNumber>;
|
|
72
|
+
targetHumidity: z.ZodNullable<z.ZodNumber>;
|
|
73
|
+
mode: z.ZodNullable<z.ZodString>;
|
|
74
|
+
availableModes: z.ZodArray<z.ZodString>;
|
|
75
|
+
action: z.ZodNullable<z.ZodString>;
|
|
76
|
+
minHumidity: z.ZodNullable<z.ZodNumber>;
|
|
77
|
+
maxHumidity: z.ZodNullable<z.ZodNumber>;
|
|
78
|
+
lastChangedAt: z.ZodNumber;
|
|
79
|
+
}, z.core.$strip>;
|
|
80
|
+
};
|
|
81
|
+
export type IHumidifierProvider = InferProvider<typeof humidifierCapability>;
|
|
82
|
+
//# sourceMappingURL=humidifier.cap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"humidifier.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/humidifier.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;;;;;;;;;GAcG;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;iBAqBjC,CAAA;AAEF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAErE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAoC/B;;;OAGG;;;;;;;;;;;;CAEoC,CAAA;AAEzC,MAAM,MAAM,mBAAmB,GAAG,aAAa,CAAC,OAAO,oBAAoB,CAAC,CAAA"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { type InferProvider } from './capability-definition.js';
|
|
3
|
+
import { DeviceType } from '../device/device-type.js';
|
|
4
|
+
/**
|
|
5
|
+
* Single-metric humidity reading. Drives Home Assistant `sensor`
|
|
6
|
+
* entries with `device_class: humidity`.
|
|
7
|
+
*
|
|
8
|
+
* Unit normalisation: percent. The canonical display unit (`%`) is a
|
|
9
|
+
* descriptor constant in the UI (ROLE_DESCRIPTOR), not stored in
|
|
10
|
+
* `sourceInfo`.
|
|
11
|
+
*/
|
|
12
|
+
export declare const HumiditySensorStatusSchema: z.ZodObject<{
|
|
13
|
+
percent: z.ZodNumber;
|
|
14
|
+
lastFetchedAt: z.ZodNumber;
|
|
15
|
+
unit: z.ZodOptional<z.ZodString>;
|
|
16
|
+
precision: z.ZodOptional<z.ZodNumber>;
|
|
17
|
+
}, z.core.$strip>;
|
|
18
|
+
export type HumiditySensorStatus = z.infer<typeof HumiditySensorStatusSchema>;
|
|
19
|
+
export declare const humiditySensorCapability: {
|
|
20
|
+
readonly name: "humidity-sensor";
|
|
21
|
+
readonly scope: "device";
|
|
22
|
+
readonly deviceNative: true;
|
|
23
|
+
readonly mode: "singleton";
|
|
24
|
+
readonly deviceTypes: readonly [DeviceType.Sensor, DeviceType.Thermostat];
|
|
25
|
+
readonly methods: {};
|
|
26
|
+
readonly status: {
|
|
27
|
+
readonly schema: z.ZodObject<{
|
|
28
|
+
percent: z.ZodNumber;
|
|
29
|
+
lastFetchedAt: z.ZodNumber;
|
|
30
|
+
unit: z.ZodOptional<z.ZodString>;
|
|
31
|
+
precision: z.ZodOptional<z.ZodNumber>;
|
|
32
|
+
}, z.core.$strip>;
|
|
33
|
+
readonly kind: "push";
|
|
34
|
+
};
|
|
35
|
+
readonly runtimeState: z.ZodObject<{
|
|
36
|
+
percent: z.ZodNumber;
|
|
37
|
+
lastFetchedAt: z.ZodNumber;
|
|
38
|
+
unit: z.ZodOptional<z.ZodString>;
|
|
39
|
+
precision: z.ZodOptional<z.ZodNumber>;
|
|
40
|
+
}, z.core.$strip>;
|
|
41
|
+
};
|
|
42
|
+
export type IHumiditySensorProvider = InferProvider<typeof humiditySensorCapability>;
|
|
43
|
+
//# sourceMappingURL=humidity-sensor.cap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"humidity-sensor.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/humidity-sensor.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B;;;;;iBAcrC,CAAA;AAEF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAE7E,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;CAYI,CAAA;AAEzC,MAAM,MAAM,uBAAuB,GAAG,aAAa,CAAC,OAAO,wBAAwB,CAAC,CAAA"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { type InferProvider } from './capability-definition.js';
|
|
3
|
+
import { DeviceType } from '../device/device-type.js';
|
|
4
|
+
/**
|
|
5
|
+
* Image display cap. Models HA `image.*` entities — a single still image
|
|
6
|
+
* exposed by an integration (a snapshot, a chart, a generated picture).
|
|
7
|
+
*
|
|
8
|
+
* Read-only: there are no setters. The provider resolves the HA
|
|
9
|
+
* `entity_picture` (a relative, signed-token path) into an ABSOLUTE URL
|
|
10
|
+
* the browser loads directly — the token stays in the query string so no
|
|
11
|
+
* auth header is required. The slice carries that URL plus the upstream
|
|
12
|
+
* last-updated timestamp; the image changes when the entity state (a
|
|
13
|
+
* timestamp) changes.
|
|
14
|
+
*/
|
|
15
|
+
export declare const ImageStatusSchema: z.ZodObject<{
|
|
16
|
+
url: z.ZodNullable<z.ZodString>;
|
|
17
|
+
lastUpdated: z.ZodNullable<z.ZodNumber>;
|
|
18
|
+
}, z.core.$strip>;
|
|
19
|
+
export type ImageStatus = z.infer<typeof ImageStatusSchema>;
|
|
20
|
+
export declare const imageCapability: {
|
|
21
|
+
readonly name: "image";
|
|
22
|
+
readonly scope: "device";
|
|
23
|
+
readonly deviceNative: true;
|
|
24
|
+
readonly mode: "singleton";
|
|
25
|
+
readonly deviceTypes: readonly [DeviceType.Image];
|
|
26
|
+
readonly methods: {};
|
|
27
|
+
readonly status: {
|
|
28
|
+
readonly schema: z.ZodObject<{
|
|
29
|
+
url: z.ZodNullable<z.ZodString>;
|
|
30
|
+
lastUpdated: z.ZodNullable<z.ZodNumber>;
|
|
31
|
+
}, z.core.$strip>;
|
|
32
|
+
readonly kind: "push";
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Runtime-state slice — mirrored by the kernel. The UI reads `url`
|
|
36
|
+
* directly and renders the still image.
|
|
37
|
+
*/
|
|
38
|
+
readonly runtimeState: z.ZodObject<{
|
|
39
|
+
url: z.ZodNullable<z.ZodString>;
|
|
40
|
+
lastUpdated: z.ZodNullable<z.ZodNumber>;
|
|
41
|
+
}, z.core.$strip>;
|
|
42
|
+
};
|
|
43
|
+
export type IImageProvider = InferProvider<typeof imageCapability>;
|
|
44
|
+
//# sourceMappingURL=image.cap.d.ts.map
|