@camstack/types 1.1.29 → 1.1.31

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.js CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_sleep = require("./sleep-B8cp-HUn.js");
2
+ const require_sleep = require("./sleep-Dirr8nGw.js");
3
3
  const require_err_msg = require("./err-msg-COpsHMw2.js");
4
4
  exports.BaseAddon = require_sleep.BaseAddon;
5
5
  exports.DATAPLANE_SECRET_HEADER = require_sleep.DATAPLANE_SECRET_HEADER;
package/dist/addon.mjs CHANGED
@@ -1,3 +1,3 @@
1
- import { A as ReadinessRegistry, C as asJsonObject, O as parseJsonUnknown, P as scopeKey, T as asString, a as adminUiCapability, b as DeviceType, gt as DisposerChain, ht as EventCategory, i as deviceOpsCapability, j as ReadinessTimeoutError, k as DATAPLANE_SECRET_HEADER, o as createDeviceProxy, ot as BaseAddon, p as expandCapMethods, st as normalizeAddonInitResult, t as sleep, ut as emitReadiness } from "./sleep-BiDFW0E7.mjs";
1
+ import { A as ReadinessRegistry, C as asJsonObject, O as parseJsonUnknown, P as scopeKey, T as asString, a as adminUiCapability, b as DeviceType, gt as DisposerChain, ht as EventCategory, i as deviceOpsCapability, j as ReadinessTimeoutError, k as DATAPLANE_SECRET_HEADER, o as createDeviceProxy, ot as BaseAddon, p as expandCapMethods, st as normalizeAddonInitResult, t as sleep, ut as emitReadiness } from "./sleep-CZDdRBua.mjs";
2
2
  import { t as errMsg } from "./err-msg-IQTHeDzc.mjs";
3
3
  export { BaseAddon, DATAPLANE_SECRET_HEADER, DeviceType, DisposerChain, EventCategory, ReadinessRegistry, ReadinessTimeoutError, adminUiCapability, asJsonObject, asString, createDeviceProxy, deviceOpsCapability, emitReadiness, errMsg, expandCapMethods, normalizeAddonInitResult, parseJsonUnknown, scopeKey, sleep };
@@ -0,0 +1,162 @@
1
+ import { z } from 'zod';
2
+ import { type InferNativeProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Vendor-neutral day/night (IR-cut) control — the per-camera config cap
6
+ * shared by reolink / hikvision / amcrest. Models the common firmware
7
+ * surface: the IR-cut switching MODE plus the two knobs that gate it
8
+ * (photocell `sensitivity` + `switchDelaySec`). Each vendor maps these
9
+ * onto its own ISAPI / Baichuan / Dahua-CGI fields; the cap standardises
10
+ * the shape so ONE derived-form renders every camera.
11
+ *
12
+ * Follows the D14 `deviceConfig` archetype (see `stream-params.cap.ts`):
13
+ * `getOptions` advertises per-camera availability, `getStatus` (auto-
14
+ * injected from `status`) reports the live values, and a single
15
+ * `setSettings` mutation applies a partial change. No hand-written
16
+ * settings-contribution methods — the framework derives the UI + save
17
+ * routing from this surface.
18
+ */
19
+ /** IR-cut switching mode. `schedule` = time-of-day table configured on the camera. */
20
+ export declare const DayNightModeSchema: z.ZodEnum<{
21
+ schedule: "schedule";
22
+ night: "night";
23
+ auto: "auto";
24
+ day: "day";
25
+ }>;
26
+ /**
27
+ * Current day/night state. Optional fields are absent when the camera
28
+ * does not expose that knob (a photocell-less model reports no
29
+ * `sensitivity`). `lastFetchedAt` feeds the runtime-state bridge.
30
+ */
31
+ export declare const DayNightStatusSchema: z.ZodObject<{
32
+ mode: z.ZodEnum<{
33
+ schedule: "schedule";
34
+ night: "night";
35
+ auto: "auto";
36
+ day: "day";
37
+ }>;
38
+ sensitivity: z.ZodOptional<z.ZodNumber>;
39
+ switchDelaySec: z.ZodOptional<z.ZodNumber>;
40
+ lastFetchedAt: z.ZodNumber;
41
+ }, z.core.$strip>;
42
+ /**
43
+ * Per-camera availability descriptor — drives which controls the admin UI
44
+ * renders. Booleans as `supportsX`; numeric ranges as `{ min, max, step }`
45
+ * (normalized 0–100); the mode choice-set as an array. A provider returns
46
+ * honest, camera-probed values — never hardcoded.
47
+ */
48
+ export declare const DayNightOptionsSchema: z.ZodObject<{
49
+ modes: z.ZodArray<z.ZodEnum<{
50
+ schedule: "schedule";
51
+ night: "night";
52
+ auto: "auto";
53
+ day: "day";
54
+ }>>;
55
+ supportsSensitivity: z.ZodBoolean;
56
+ sensitivity: z.ZodOptional<z.ZodObject<{
57
+ min: z.ZodNumber;
58
+ max: z.ZodNumber;
59
+ step: z.ZodNumber;
60
+ }, z.core.$strip>>;
61
+ supportsSwitchDelay: z.ZodBoolean;
62
+ switchDelaySec: z.ZodOptional<z.ZodObject<{
63
+ min: z.ZodNumber;
64
+ max: z.ZodNumber;
65
+ step: z.ZodNumber;
66
+ }, z.core.$strip>>;
67
+ }, z.core.$strip>;
68
+ /**
69
+ * Partial change to the day/night config — every field optional. A
70
+ * provider ignores fields it does not support.
71
+ */
72
+ export declare const DayNightSettingsPatchSchema: z.ZodObject<{
73
+ mode: z.ZodOptional<z.ZodEnum<{
74
+ schedule: "schedule";
75
+ night: "night";
76
+ auto: "auto";
77
+ day: "day";
78
+ }>>;
79
+ sensitivity: z.ZodOptional<z.ZodNumber>;
80
+ switchDelaySec: z.ZodOptional<z.ZodNumber>;
81
+ }, z.core.$strip>;
82
+ export type DayNightMode = z.infer<typeof DayNightModeSchema>;
83
+ export type DayNightStatus = z.infer<typeof DayNightStatusSchema>;
84
+ export type DayNightOptions = z.infer<typeof DayNightOptionsSchema>;
85
+ export type DayNightSettingsPatch = z.infer<typeof DayNightSettingsPatchSchema>;
86
+ export declare const dayNightCapability: {
87
+ readonly name: "day-night";
88
+ readonly scope: "device";
89
+ readonly deviceNative: true;
90
+ readonly mode: "singleton";
91
+ readonly deviceTypes: readonly [DeviceType.Camera];
92
+ readonly deviceConfig: {
93
+ readonly ui: {
94
+ readonly kind: "derived-form";
95
+ readonly builderId: "day-night";
96
+ readonly tab: "image";
97
+ };
98
+ };
99
+ readonly methods: {
100
+ readonly getOptions: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
101
+ deviceId: z.ZodNumber;
102
+ }, z.core.$strip>, z.ZodObject<{
103
+ modes: z.ZodArray<z.ZodEnum<{
104
+ schedule: "schedule";
105
+ night: "night";
106
+ auto: "auto";
107
+ day: "day";
108
+ }>>;
109
+ supportsSensitivity: z.ZodBoolean;
110
+ sensitivity: z.ZodOptional<z.ZodObject<{
111
+ min: z.ZodNumber;
112
+ max: z.ZodNumber;
113
+ step: z.ZodNumber;
114
+ }, z.core.$strip>>;
115
+ supportsSwitchDelay: z.ZodBoolean;
116
+ switchDelaySec: z.ZodOptional<z.ZodObject<{
117
+ min: z.ZodNumber;
118
+ max: z.ZodNumber;
119
+ step: z.ZodNumber;
120
+ }, z.core.$strip>>;
121
+ }, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
122
+ readonly setSettings: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
123
+ deviceId: z.ZodNumber;
124
+ settings: z.ZodObject<{
125
+ mode: z.ZodOptional<z.ZodEnum<{
126
+ schedule: "schedule";
127
+ night: "night";
128
+ auto: "auto";
129
+ day: "day";
130
+ }>>;
131
+ sensitivity: z.ZodOptional<z.ZodNumber>;
132
+ switchDelaySec: z.ZodOptional<z.ZodNumber>;
133
+ }, z.core.$strip>;
134
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
135
+ };
136
+ readonly status: {
137
+ readonly schema: z.ZodObject<{
138
+ mode: z.ZodEnum<{
139
+ schedule: "schedule";
140
+ night: "night";
141
+ auto: "auto";
142
+ day: "day";
143
+ }>;
144
+ sensitivity: z.ZodOptional<z.ZodNumber>;
145
+ switchDelaySec: z.ZodOptional<z.ZodNumber>;
146
+ lastFetchedAt: z.ZodNumber;
147
+ }, z.core.$strip>;
148
+ readonly kind: "poll";
149
+ };
150
+ readonly runtimeState: z.ZodObject<{
151
+ mode: z.ZodEnum<{
152
+ schedule: "schedule";
153
+ night: "night";
154
+ auto: "auto";
155
+ day: "day";
156
+ }>;
157
+ sensitivity: z.ZodOptional<z.ZodNumber>;
158
+ switchDelaySec: z.ZodOptional<z.ZodNumber>;
159
+ lastFetchedAt: z.ZodNumber;
160
+ }, z.core.$strip>;
161
+ };
162
+ export type IDayNightProvider = InferNativeProvider<typeof dayNightCapability>;
@@ -83,6 +83,7 @@ export declare const decoderCapability: {
83
83
  callback: "callback";
84
84
  shm: "shm";
85
85
  }>>;
86
+ debug: z.ZodOptional<z.ZodBoolean>;
86
87
  }, z.core.$strip>, z.ZodObject<{
87
88
  sessionId: z.ZodString;
88
89
  nodeId: z.ZodString;
@@ -212,6 +213,7 @@ export declare const decoderCapability: {
212
213
  callback: "callback";
213
214
  shm: "shm";
214
215
  }>>>;
216
+ debug: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
215
217
  }, z.core.$strip>;
216
218
  }, z.core.$strip>, z.ZodVoid, import("./capability-definition.js").CapabilityMethodKind>;
217
219
  readonly getStats: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
@@ -221,6 +223,9 @@ export declare const decoderCapability: {
221
223
  outputFps: z.ZodNumber;
222
224
  avgDecodeTimeMs: z.ZodNumber;
223
225
  droppedFrames: z.ZodNumber;
226
+ lagMs: z.ZodOptional<z.ZodNumber>;
227
+ effectiveFps: z.ZodOptional<z.ZodNumber>;
228
+ adaptiveFps: z.ZodOptional<z.ZodNumber>;
224
229
  }, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
225
230
  readonly listActiveSessions: import("./capability-definition.js").CapabilityMethodSchema<z.ZodVoid, z.ZodReadonly<z.ZodArray<z.ZodObject<{
226
231
  sessionId: z.ZodString;
@@ -0,0 +1,357 @@
1
+ import { z } from 'zod';
2
+ import { type InferNativeProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Vendor-neutral image / picture-adjustment cap — the per-camera config
6
+ * cap shared by reolink / hikvision / amcrest. Models the common ISP
7
+ * surface: the four picture sliders (brightness / contrast / saturation /
8
+ * sharpness), orientation (mirror / flip / rotate), white-balance,
9
+ * exposure and backlight-compensation modes.
10
+ *
11
+ * NORMALIZATION: every slider is a normalized int 0–100. Vendors expose
12
+ * these natively as 0–100 or 0–255 (or other ranges); each provider maps
13
+ * its native range to/from this normalized 0–100 space so the cap surface
14
+ * (and the derived form) is identical across cameras. `warmth` (manual
15
+ * white-balance) is likewise normalized 0–100.
16
+ *
17
+ * Follows the D14 `deviceConfig` archetype (see `stream-params.cap.ts`):
18
+ * `getOptions` advertises per-camera availability, `getStatus` (auto-
19
+ * injected from `status`) reports the live values, and a single
20
+ * `setSettings` mutation applies a partial change. No hand-written
21
+ * settings-contribution methods — the framework derives the UI + save
22
+ * routing from this surface.
23
+ */
24
+ /** Sensor/image rotation, degrees clockwise. */
25
+ export declare const ImageRotateSchema: z.ZodEnum<{
26
+ 0: "0";
27
+ 90: "90";
28
+ 180: "180";
29
+ 270: "270";
30
+ }>;
31
+ /** White-balance mode. `manual` unlocks the normalized `warmth` knob. */
32
+ export declare const WhiteBalanceModeSchema: z.ZodEnum<{
33
+ manual: "manual";
34
+ auto: "auto";
35
+ }>;
36
+ /** Exposure mode. */
37
+ export declare const ExposureModeSchema: z.ZodEnum<{
38
+ manual: "manual";
39
+ auto: "auto";
40
+ }>;
41
+ /**
42
+ * Backlight-compensation mode:
43
+ * - `off` — disabled
44
+ * - `blc` — backlight compensation
45
+ * - `wdr` — wide dynamic range
46
+ * - `hlc` — highlight compensation
47
+ */
48
+ export declare const BacklightModeSchema: z.ZodEnum<{
49
+ off: "off";
50
+ blc: "blc";
51
+ wdr: "wdr";
52
+ hlc: "hlc";
53
+ }>;
54
+ /**
55
+ * Current image-adjustment state. Every field optional — absent when the
56
+ * camera does not expose that control. Slider values are NORMALIZED 0–100.
57
+ * `lastFetchedAt` feeds the runtime-state bridge.
58
+ */
59
+ export declare const ImageSettingsStatusSchema: z.ZodObject<{
60
+ brightness: z.ZodOptional<z.ZodNumber>;
61
+ contrast: z.ZodOptional<z.ZodNumber>;
62
+ saturation: z.ZodOptional<z.ZodNumber>;
63
+ sharpness: z.ZodOptional<z.ZodNumber>;
64
+ mirror: z.ZodOptional<z.ZodBoolean>;
65
+ flip: z.ZodOptional<z.ZodBoolean>;
66
+ rotate: z.ZodOptional<z.ZodEnum<{
67
+ 0: "0";
68
+ 90: "90";
69
+ 180: "180";
70
+ 270: "270";
71
+ }>>;
72
+ whiteBalance: z.ZodOptional<z.ZodEnum<{
73
+ manual: "manual";
74
+ auto: "auto";
75
+ }>>;
76
+ warmth: z.ZodOptional<z.ZodNumber>;
77
+ exposureMode: z.ZodOptional<z.ZodEnum<{
78
+ manual: "manual";
79
+ auto: "auto";
80
+ }>>;
81
+ backlightMode: z.ZodOptional<z.ZodEnum<{
82
+ off: "off";
83
+ blc: "blc";
84
+ wdr: "wdr";
85
+ hlc: "hlc";
86
+ }>>;
87
+ lastFetchedAt: z.ZodNumber;
88
+ }, z.core.$strip>;
89
+ /**
90
+ * Per-camera availability descriptor — drives which controls the admin UI
91
+ * renders. Booleans as `supportsX`; numeric ranges as `{ min, max, step }`
92
+ * (the normalized 0–100 range); enums as arrays of supported values (empty
93
+ * array → control hidden). A provider returns honest, camera-probed values
94
+ * — never hardcoded.
95
+ */
96
+ export declare const ImageSettingsOptionsSchema: z.ZodObject<{
97
+ supportsBrightness: z.ZodBoolean;
98
+ brightness: z.ZodOptional<z.ZodObject<{
99
+ min: z.ZodNumber;
100
+ max: z.ZodNumber;
101
+ step: z.ZodNumber;
102
+ }, z.core.$strip>>;
103
+ supportsContrast: z.ZodBoolean;
104
+ contrast: z.ZodOptional<z.ZodObject<{
105
+ min: z.ZodNumber;
106
+ max: z.ZodNumber;
107
+ step: z.ZodNumber;
108
+ }, z.core.$strip>>;
109
+ supportsSaturation: z.ZodBoolean;
110
+ saturation: z.ZodOptional<z.ZodObject<{
111
+ min: z.ZodNumber;
112
+ max: z.ZodNumber;
113
+ step: z.ZodNumber;
114
+ }, z.core.$strip>>;
115
+ supportsSharpness: z.ZodBoolean;
116
+ sharpness: z.ZodOptional<z.ZodObject<{
117
+ min: z.ZodNumber;
118
+ max: z.ZodNumber;
119
+ step: z.ZodNumber;
120
+ }, z.core.$strip>>;
121
+ supportsMirror: z.ZodBoolean;
122
+ supportsFlip: z.ZodBoolean;
123
+ rotateOptions: z.ZodArray<z.ZodEnum<{
124
+ 0: "0";
125
+ 90: "90";
126
+ 180: "180";
127
+ 270: "270";
128
+ }>>;
129
+ whiteBalanceModes: z.ZodArray<z.ZodEnum<{
130
+ manual: "manual";
131
+ auto: "auto";
132
+ }>>;
133
+ supportsWarmth: z.ZodBoolean;
134
+ warmth: z.ZodOptional<z.ZodObject<{
135
+ min: z.ZodNumber;
136
+ max: z.ZodNumber;
137
+ step: z.ZodNumber;
138
+ }, z.core.$strip>>;
139
+ exposureModes: z.ZodArray<z.ZodEnum<{
140
+ manual: "manual";
141
+ auto: "auto";
142
+ }>>;
143
+ backlightModes: z.ZodArray<z.ZodEnum<{
144
+ off: "off";
145
+ blc: "blc";
146
+ wdr: "wdr";
147
+ hlc: "hlc";
148
+ }>>;
149
+ }, z.core.$strip>;
150
+ /**
151
+ * Partial change to the image config — every field optional. Slider values
152
+ * are normalized 0–100. A provider ignores fields it does not support.
153
+ */
154
+ export declare const ImageSettingsPatchSchema: z.ZodObject<{
155
+ brightness: z.ZodOptional<z.ZodNumber>;
156
+ contrast: z.ZodOptional<z.ZodNumber>;
157
+ saturation: z.ZodOptional<z.ZodNumber>;
158
+ sharpness: z.ZodOptional<z.ZodNumber>;
159
+ mirror: z.ZodOptional<z.ZodBoolean>;
160
+ flip: z.ZodOptional<z.ZodBoolean>;
161
+ rotate: z.ZodOptional<z.ZodEnum<{
162
+ 0: "0";
163
+ 90: "90";
164
+ 180: "180";
165
+ 270: "270";
166
+ }>>;
167
+ whiteBalance: z.ZodOptional<z.ZodEnum<{
168
+ manual: "manual";
169
+ auto: "auto";
170
+ }>>;
171
+ warmth: z.ZodOptional<z.ZodNumber>;
172
+ exposureMode: z.ZodOptional<z.ZodEnum<{
173
+ manual: "manual";
174
+ auto: "auto";
175
+ }>>;
176
+ backlightMode: z.ZodOptional<z.ZodEnum<{
177
+ off: "off";
178
+ blc: "blc";
179
+ wdr: "wdr";
180
+ hlc: "hlc";
181
+ }>>;
182
+ }, z.core.$strip>;
183
+ export type ImageRotate = z.infer<typeof ImageRotateSchema>;
184
+ export type WhiteBalanceMode = z.infer<typeof WhiteBalanceModeSchema>;
185
+ export type ExposureMode = z.infer<typeof ExposureModeSchema>;
186
+ export type BacklightMode = z.infer<typeof BacklightModeSchema>;
187
+ export type ImageSettingsStatus = z.infer<typeof ImageSettingsStatusSchema>;
188
+ export type ImageSettingsOptions = z.infer<typeof ImageSettingsOptionsSchema>;
189
+ export type ImageSettingsPatch = z.infer<typeof ImageSettingsPatchSchema>;
190
+ export declare const imageSettingsCapability: {
191
+ readonly name: "image-settings";
192
+ readonly scope: "device";
193
+ readonly deviceNative: true;
194
+ readonly mode: "singleton";
195
+ readonly deviceTypes: readonly [DeviceType.Camera];
196
+ readonly deviceConfig: {
197
+ readonly ui: {
198
+ readonly kind: "derived-form";
199
+ readonly builderId: "image-settings";
200
+ readonly tab: "image";
201
+ };
202
+ };
203
+ readonly methods: {
204
+ readonly getOptions: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
205
+ deviceId: z.ZodNumber;
206
+ }, z.core.$strip>, z.ZodObject<{
207
+ supportsBrightness: z.ZodBoolean;
208
+ brightness: z.ZodOptional<z.ZodObject<{
209
+ min: z.ZodNumber;
210
+ max: z.ZodNumber;
211
+ step: z.ZodNumber;
212
+ }, z.core.$strip>>;
213
+ supportsContrast: z.ZodBoolean;
214
+ contrast: z.ZodOptional<z.ZodObject<{
215
+ min: z.ZodNumber;
216
+ max: z.ZodNumber;
217
+ step: z.ZodNumber;
218
+ }, z.core.$strip>>;
219
+ supportsSaturation: z.ZodBoolean;
220
+ saturation: z.ZodOptional<z.ZodObject<{
221
+ min: z.ZodNumber;
222
+ max: z.ZodNumber;
223
+ step: z.ZodNumber;
224
+ }, z.core.$strip>>;
225
+ supportsSharpness: z.ZodBoolean;
226
+ sharpness: z.ZodOptional<z.ZodObject<{
227
+ min: z.ZodNumber;
228
+ max: z.ZodNumber;
229
+ step: z.ZodNumber;
230
+ }, z.core.$strip>>;
231
+ supportsMirror: z.ZodBoolean;
232
+ supportsFlip: z.ZodBoolean;
233
+ rotateOptions: z.ZodArray<z.ZodEnum<{
234
+ 0: "0";
235
+ 90: "90";
236
+ 180: "180";
237
+ 270: "270";
238
+ }>>;
239
+ whiteBalanceModes: z.ZodArray<z.ZodEnum<{
240
+ manual: "manual";
241
+ auto: "auto";
242
+ }>>;
243
+ supportsWarmth: z.ZodBoolean;
244
+ warmth: z.ZodOptional<z.ZodObject<{
245
+ min: z.ZodNumber;
246
+ max: z.ZodNumber;
247
+ step: z.ZodNumber;
248
+ }, z.core.$strip>>;
249
+ exposureModes: z.ZodArray<z.ZodEnum<{
250
+ manual: "manual";
251
+ auto: "auto";
252
+ }>>;
253
+ backlightModes: z.ZodArray<z.ZodEnum<{
254
+ off: "off";
255
+ blc: "blc";
256
+ wdr: "wdr";
257
+ hlc: "hlc";
258
+ }>>;
259
+ }, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
260
+ readonly setSettings: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
261
+ deviceId: z.ZodNumber;
262
+ settings: z.ZodObject<{
263
+ brightness: z.ZodOptional<z.ZodNumber>;
264
+ contrast: z.ZodOptional<z.ZodNumber>;
265
+ saturation: z.ZodOptional<z.ZodNumber>;
266
+ sharpness: z.ZodOptional<z.ZodNumber>;
267
+ mirror: z.ZodOptional<z.ZodBoolean>;
268
+ flip: z.ZodOptional<z.ZodBoolean>;
269
+ rotate: z.ZodOptional<z.ZodEnum<{
270
+ 0: "0";
271
+ 90: "90";
272
+ 180: "180";
273
+ 270: "270";
274
+ }>>;
275
+ whiteBalance: z.ZodOptional<z.ZodEnum<{
276
+ manual: "manual";
277
+ auto: "auto";
278
+ }>>;
279
+ warmth: z.ZodOptional<z.ZodNumber>;
280
+ exposureMode: z.ZodOptional<z.ZodEnum<{
281
+ manual: "manual";
282
+ auto: "auto";
283
+ }>>;
284
+ backlightMode: z.ZodOptional<z.ZodEnum<{
285
+ off: "off";
286
+ blc: "blc";
287
+ wdr: "wdr";
288
+ hlc: "hlc";
289
+ }>>;
290
+ }, z.core.$strip>;
291
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
292
+ };
293
+ readonly status: {
294
+ readonly schema: z.ZodObject<{
295
+ brightness: z.ZodOptional<z.ZodNumber>;
296
+ contrast: z.ZodOptional<z.ZodNumber>;
297
+ saturation: z.ZodOptional<z.ZodNumber>;
298
+ sharpness: z.ZodOptional<z.ZodNumber>;
299
+ mirror: z.ZodOptional<z.ZodBoolean>;
300
+ flip: z.ZodOptional<z.ZodBoolean>;
301
+ rotate: z.ZodOptional<z.ZodEnum<{
302
+ 0: "0";
303
+ 90: "90";
304
+ 180: "180";
305
+ 270: "270";
306
+ }>>;
307
+ whiteBalance: z.ZodOptional<z.ZodEnum<{
308
+ manual: "manual";
309
+ auto: "auto";
310
+ }>>;
311
+ warmth: z.ZodOptional<z.ZodNumber>;
312
+ exposureMode: z.ZodOptional<z.ZodEnum<{
313
+ manual: "manual";
314
+ auto: "auto";
315
+ }>>;
316
+ backlightMode: z.ZodOptional<z.ZodEnum<{
317
+ off: "off";
318
+ blc: "blc";
319
+ wdr: "wdr";
320
+ hlc: "hlc";
321
+ }>>;
322
+ lastFetchedAt: z.ZodNumber;
323
+ }, z.core.$strip>;
324
+ readonly kind: "poll";
325
+ };
326
+ readonly runtimeState: z.ZodObject<{
327
+ brightness: z.ZodOptional<z.ZodNumber>;
328
+ contrast: z.ZodOptional<z.ZodNumber>;
329
+ saturation: z.ZodOptional<z.ZodNumber>;
330
+ sharpness: z.ZodOptional<z.ZodNumber>;
331
+ mirror: z.ZodOptional<z.ZodBoolean>;
332
+ flip: z.ZodOptional<z.ZodBoolean>;
333
+ rotate: z.ZodOptional<z.ZodEnum<{
334
+ 0: "0";
335
+ 90: "90";
336
+ 180: "180";
337
+ 270: "270";
338
+ }>>;
339
+ whiteBalance: z.ZodOptional<z.ZodEnum<{
340
+ manual: "manual";
341
+ auto: "auto";
342
+ }>>;
343
+ warmth: z.ZodOptional<z.ZodNumber>;
344
+ exposureMode: z.ZodOptional<z.ZodEnum<{
345
+ manual: "manual";
346
+ auto: "auto";
347
+ }>>;
348
+ backlightMode: z.ZodOptional<z.ZodEnum<{
349
+ off: "off";
350
+ blc: "blc";
351
+ wdr: "wdr";
352
+ hlc: "hlc";
353
+ }>>;
354
+ lastFetchedAt: z.ZodNumber;
355
+ }, z.core.$strip>;
356
+ };
357
+ export type IImageSettingsProvider = InferNativeProvider<typeof imageSettingsCapability>;
@@ -122,6 +122,7 @@ export { type ConsumableItem, ConsumableItemSchema, type ConsumablesStatus, Cons
122
122
  export { type ContactStatus, ContactStatusSchema, contactCapability, type IContactProvider, } from './contact.cap.js';
123
123
  export { type ControlKind, ControlKindSchema, type ControlSetValueInput, type ControlStatus, ControlStatusSchema, controlCapability, type IControlProvider, } from './control.cap.js';
124
124
  export { type CoverState, CoverStateSchema, type CoverStatus, CoverStatusSchema, coverCapability, type ICoverProvider, } from './cover.cap.js';
125
+ export { type DayNightMode, DayNightModeSchema, type DayNightOptions, DayNightOptionsSchema, type DayNightSettingsPatch, DayNightSettingsPatchSchema, type DayNightStatus, DayNightStatusSchema, dayNightCapability, type IDayNightProvider, } from './day-night.cap.js';
125
126
  export { type DeviceDiscoveryStatus, DeviceDiscoveryStatusSchema, type DiscoveredChildDevice, DiscoveredChildDeviceSchema, type DiscoveredChildStatus, DiscoveredChildStatusSchema, deviceDiscoveryCapability, type IDeviceDiscoveryNativeProvider, type IDeviceDiscoveryProvider, } from './device-discovery.cap.js';
126
127
  export { deviceOpsCapability, type IDeviceOpsProvider, type RawStateResult, RawStateResultSchema, } from './device-ops.cap.js';
127
128
  export { type DeviceStatus, DeviceStatusSchema, deviceStatusCapability, type IDeviceStatusProvider, } from './device-status.cap.js';
@@ -137,6 +138,7 @@ export { type GasStatus, GasStatusSchema, gasCapability, type IGasProvider } fro
137
138
  export { type HumidifierStatus, HumidifierStatusSchema, humidifierCapability, type IHumidifierProvider, } from './humidifier.cap.js';
138
139
  export { type HumiditySensorStatus, HumiditySensorStatusSchema, humiditySensorCapability, type IHumiditySensorProvider, } from './humidity-sensor.cap.js';
139
140
  export { type IImageProvider, type ImageStatus, ImageStatusSchema, imageCapability, } from './image.cap.js';
141
+ export { type BacklightMode, BacklightModeSchema, type ExposureMode, ExposureModeSchema, type IImageSettingsProvider, type ImageRotate, ImageRotateSchema, type ImageSettingsOptions, ImageSettingsOptionsSchema, type ImageSettingsPatch, ImageSettingsPatchSchema, type ImageSettingsStatus, ImageSettingsStatusSchema, imageSettingsCapability, type WhiteBalanceMode, WhiteBalanceModeSchema, } from './image-settings.cap.js';
140
142
  export { AvailableIntegrationTypeSchema, CreateIntegrationInputSchema, DeleteIntegrationResultSchema, type IIntegrationsProvider, IntegrationLiteSchema, IntegrationWithStateSchema, integrationsCapability, TestConnectionResultSchema, UpdateIntegrationInputSchema, } from './integrations.cap.js';
141
143
  export { type IIntercomProvider, type IntercomAbility, IntercomAbilitySchema, type IntercomStatus, IntercomStatusSchema, intercomCapability, } from './intercom.cap.js';
142
144
  export { type DeviceCodeSeverity, DeviceCodeSeveritySchema, type ILawnMowerControlProvider, type LawnMowerActivity, LawnMowerActivitySchema, type LawnMowerControlStatus, LawnMowerControlStatusSchema, lawnMowerControlCapability, } from './lawn-mower-control.cap.js';
@@ -222,6 +224,7 @@ import type { contactCapability } from './contact.cap.js';
222
224
  import type { controlCapability } from './control.cap.js';
223
225
  import type { coverCapability } from './cover.cap.js';
224
226
  import type { customModelRegistryCapability } from './custom-model-registry.cap.js';
227
+ import type { dayNightCapability } from './day-night.cap.js';
225
228
  import type { decoderCapability } from './decoder.cap.js';
226
229
  import type { detectionPipelineCapability } from './detection-pipeline.cap.js';
227
230
  import type { deviceAdoptionCapability } from './device-adoption.cap.js';
@@ -241,6 +244,7 @@ import type { gasCapability } from './gas.cap.js';
241
244
  import type { humidifierCapability } from './humidifier.cap.js';
242
245
  import type { humiditySensorCapability } from './humidity-sensor.cap.js';
243
246
  import type { imageCapability } from './image.cap.js';
247
+ import type { imageSettingsCapability } from './image-settings.cap.js';
244
248
  import type { integrationsCapability } from './integrations.cap.js';
245
249
  import type { lawnMowerControlCapability } from './lawn-mower-control.cap.js';
246
250
  import type { localNetworkCapability } from './local-network.cap.js';
@@ -308,6 +312,6 @@ import type { webrtcSessionCapability } from './webrtc-session.cap.js';
308
312
  import type { zoneAnalyticsCapability } from './zone-analytics.cap.js';
309
313
  import type { zoneRulesCapability } from './zone-rules.cap.js';
310
314
  import type { zonesCapability } from './zones.cap.js';
311
- type AnyCapability = typeof addonSettingsCapability | typeof alertsCapability | typeof storageCapability | typeof storageProviderCapability | typeof storageEvictableCapability | typeof filesystemBrowseCapability | typeof backupCapability | typeof settingsStoreCapability | typeof logDestinationCapability | typeof adminUiCapability | typeof ssoBridgeCapability | typeof userPasskeysCapability | typeof smtpProviderCapability | typeof mqttBrokerCapability | typeof brokerCapability | typeof deviceAdoptionCapability | typeof deviceExportCapability | typeof addonPagesCapability | typeof addonPagesSourceCapability | typeof addonWidgetsCapability | typeof addonWidgetsSourceCapability | typeof customModelRegistryCapability | typeof modelDistributorCapability | typeof modelConvertCapability | typeof addonRoutesCapability | typeof streamBrokerCapability | typeof decoderCapability | typeof restreamerCapability | typeof webrtcCapability | typeof webrtcSessionCapability | typeof cameraStreamsCapability | typeof streamingEngineCapability | typeof motionDetectionCapability | typeof pipelineExecutorCapability | typeof detectionPipelineCapability | typeof cameraPipelineConfigCapability | typeof pipelineRunnerCapability | typeof pipelineOrchestratorCapability | typeof audioAnalyzerCapability | typeof audioAnalysisCapability | typeof audioCodecCapability | typeof embeddingEncoderCapability | typeof deviceProviderCapability | typeof deviceManagerCapability | typeof deviceStateCapability | typeof authProviderCapability | typeof networkAccessCapability | typeof turnProviderCapability | typeof snapshotCapability | typeof snapshotProviderCapability | typeof notificationOutputCapability | typeof advancedNotifierCapability | typeof pipelineAnalyticsCapability | typeof metricsProviderCapability | typeof ptzCapability | typeof ptzAutotrackCapability | typeof consumablesCapability | typeof rebootCapability | typeof deviceDiscoveryCapability | typeof brightnessCapability | typeof colorCapability | typeof climateControlCapability | typeof coverCapability | typeof valveCapability | typeof humidifierCapability | typeof waterHeaterCapability | typeof weatherCapability | typeof imageCapability | typeof lockControlCapability | typeof vacuumControlCapability | typeof petFeederCapability | typeof lawnMowerControlCapability | typeof fanControlCapability | typeof controlCapability | typeof notifierCapability | typeof mediaPlayerCapability | typeof alarmPanelCapability | typeof presenceCapability | typeof scriptRunnerCapability | typeof automationControlCapability | typeof motionTriggerCapability | typeof eventsCapability | typeof zonesCapability | typeof zoneRulesCapability | typeof zoneAnalyticsCapability | typeof audioMetricsCapability | typeof motionCapability | typeof contactCapability | typeof floodCapability | typeof smokeCapability | typeof carbonMonoxideCapability | typeof gasCapability | typeof tamperCapability | typeof vibrationCapability | typeof connectivityCapability | typeof binaryCapability | typeof temperatureSensorCapability | typeof humiditySensorCapability | typeof ambientLightSensorCapability | typeof pressureSensorCapability | typeof powerMeterCapability | typeof airQualitySensorCapability | typeof numericSensorCapability | typeof enumSensorCapability | typeof recordingCapability | typeof deviceOpsCapability | typeof platformProbeCapability | typeof localNetworkCapability | typeof meshNetworkCapability | typeof userManagementCapability | typeof systemCapability | typeof networkQualityCapability | typeof toastCapability | typeof nodesCapability | typeof integrationsCapability | typeof addonsCapability | typeof oauthIntegrationCapability | typeof streamParamsCapability | typeof streamCatalogCapability | typeof motionZonesCapability | typeof privacyMaskCapability;
315
+ type AnyCapability = typeof addonSettingsCapability | typeof alertsCapability | typeof storageCapability | typeof storageProviderCapability | typeof storageEvictableCapability | typeof filesystemBrowseCapability | typeof backupCapability | typeof settingsStoreCapability | typeof logDestinationCapability | typeof adminUiCapability | typeof ssoBridgeCapability | typeof userPasskeysCapability | typeof smtpProviderCapability | typeof mqttBrokerCapability | typeof brokerCapability | typeof deviceAdoptionCapability | typeof deviceExportCapability | typeof addonPagesCapability | typeof addonPagesSourceCapability | typeof addonWidgetsCapability | typeof addonWidgetsSourceCapability | typeof customModelRegistryCapability | typeof modelDistributorCapability | typeof modelConvertCapability | typeof addonRoutesCapability | typeof streamBrokerCapability | typeof decoderCapability | typeof restreamerCapability | typeof webrtcCapability | typeof webrtcSessionCapability | typeof cameraStreamsCapability | typeof streamingEngineCapability | typeof motionDetectionCapability | typeof pipelineExecutorCapability | typeof detectionPipelineCapability | typeof cameraPipelineConfigCapability | typeof pipelineRunnerCapability | typeof pipelineOrchestratorCapability | typeof audioAnalyzerCapability | typeof audioAnalysisCapability | typeof audioCodecCapability | typeof embeddingEncoderCapability | typeof deviceProviderCapability | typeof deviceManagerCapability | typeof deviceStateCapability | typeof authProviderCapability | typeof networkAccessCapability | typeof turnProviderCapability | typeof snapshotCapability | typeof snapshotProviderCapability | typeof notificationOutputCapability | typeof advancedNotifierCapability | typeof pipelineAnalyticsCapability | typeof metricsProviderCapability | typeof ptzCapability | typeof ptzAutotrackCapability | typeof consumablesCapability | typeof rebootCapability | typeof deviceDiscoveryCapability | typeof brightnessCapability | typeof colorCapability | typeof climateControlCapability | typeof coverCapability | typeof valveCapability | typeof humidifierCapability | typeof waterHeaterCapability | typeof weatherCapability | typeof imageCapability | typeof lockControlCapability | typeof vacuumControlCapability | typeof petFeederCapability | typeof lawnMowerControlCapability | typeof fanControlCapability | typeof controlCapability | typeof notifierCapability | typeof mediaPlayerCapability | typeof alarmPanelCapability | typeof presenceCapability | typeof scriptRunnerCapability | typeof automationControlCapability | typeof motionTriggerCapability | typeof eventsCapability | typeof zonesCapability | typeof zoneRulesCapability | typeof zoneAnalyticsCapability | typeof audioMetricsCapability | typeof motionCapability | typeof contactCapability | typeof floodCapability | typeof smokeCapability | typeof carbonMonoxideCapability | typeof gasCapability | typeof tamperCapability | typeof vibrationCapability | typeof connectivityCapability | typeof binaryCapability | typeof temperatureSensorCapability | typeof humiditySensorCapability | typeof ambientLightSensorCapability | typeof pressureSensorCapability | typeof powerMeterCapability | typeof airQualitySensorCapability | typeof numericSensorCapability | typeof enumSensorCapability | typeof recordingCapability | typeof deviceOpsCapability | typeof platformProbeCapability | typeof localNetworkCapability | typeof meshNetworkCapability | typeof userManagementCapability | typeof systemCapability | typeof networkQualityCapability | typeof toastCapability | typeof nodesCapability | typeof integrationsCapability | typeof addonsCapability | typeof oauthIntegrationCapability | typeof streamParamsCapability | typeof streamCatalogCapability | typeof motionZonesCapability | typeof privacyMaskCapability | typeof dayNightCapability | typeof imageSettingsCapability;
312
316
  export type CapabilityName = AnyCapability['name'];
313
317
  export type ITypedReadinessRegistry = IReadinessRegistry<CapabilityName>;
@@ -169,6 +169,7 @@ declare const RunnerCameraConfigSchema: z.ZodObject<{
169
169
  color: z.ZodDefault<z.ZodString>;
170
170
  }, z.core.$strip>>>>;
171
171
  onboardMotionDrivesAnalyzer: z.ZodDefault<z.ZodBoolean>;
172
+ occupancyRecheckEnabled: z.ZodDefault<z.ZodBoolean>;
172
173
  occupancyRecheckSec: z.ZodDefault<z.ZodNumber>;
173
174
  occupancyRecheckFrames: z.ZodDefault<z.ZodNumber>;
174
175
  frameSource: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
@@ -316,6 +317,7 @@ export declare const pipelineRunnerCapability: {
316
317
  color: z.ZodDefault<z.ZodString>;
317
318
  }, z.core.$strip>>>>;
318
319
  onboardMotionDrivesAnalyzer: z.ZodDefault<z.ZodBoolean>;
320
+ occupancyRecheckEnabled: z.ZodDefault<z.ZodBoolean>;
319
321
  occupancyRecheckSec: z.ZodDefault<z.ZodNumber>;
320
322
  occupancyRecheckFrames: z.ZodDefault<z.ZodNumber>;
321
323
  frameSource: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{