@digital-alchemy/hass 25.10.25 → 25.10.26-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/dist/dev/mappings.d.mts +13 -7
  2. package/dist/dev/registry.d.mts +238 -0
  3. package/dist/hass.module.d.mts +5 -1
  4. package/dist/hass.module.mjs +5 -1
  5. package/dist/hass.module.mjs.map +1 -1
  6. package/dist/helpers/fetch/service-list.d.mts +15 -4
  7. package/dist/helpers/index.d.mts +1 -0
  8. package/dist/helpers/index.mjs +1 -0
  9. package/dist/helpers/index.mjs.map +1 -1
  10. package/dist/helpers/supported-features.d.mts +447 -0
  11. package/dist/helpers/supported-features.mjs +290 -0
  12. package/dist/helpers/supported-features.mjs.map +1 -0
  13. package/dist/mock_assistant/mock-assistant.module.d.mts +2 -0
  14. package/dist/services/feature.service.d.mts +10 -0
  15. package/dist/services/feature.service.mjs +95 -0
  16. package/dist/services/feature.service.mjs.map +1 -0
  17. package/dist/services/index.d.mts +1 -0
  18. package/dist/services/index.mjs +1 -0
  19. package/dist/services/index.mjs.map +1 -1
  20. package/dist/testing/feature.spec.d.mts +1 -0
  21. package/dist/testing/feature.spec.mjs +203 -0
  22. package/dist/testing/feature.spec.mjs.map +1 -0
  23. package/dist/testing/id-by.spec.mjs +3 -3
  24. package/dist/testing/id-by.spec.mjs.map +1 -1
  25. package/dist/testing/ref-by.spec.mjs +2 -2
  26. package/dist/testing/ref-by.spec.mjs.map +1 -1
  27. package/package.json +1 -1
  28. package/src/dev/mappings.mts +38 -7
  29. package/src/dev/registry.mts +232 -0
  30. package/src/hass.module.mts +6 -0
  31. package/src/helpers/fetch/service-list.mts +13 -5
  32. package/src/helpers/index.mts +1 -0
  33. package/src/helpers/supported-features.mts +328 -0
  34. package/src/services/feature.service.mts +127 -0
  35. package/src/services/index.mts +1 -0
  36. package/src/testing/feature.spec.mts +219 -0
  37. package/src/testing/id-by.spec.mts +3 -3
  38. package/src/testing/ref-by.spec.mts +2 -2
@@ -0,0 +1,447 @@
1
+ import type { ALL_DOMAINS } from "../user.mts";
2
+ /**
3
+ * homeassistant/components/light/const.py
4
+ */
5
+ export declare const LIGHT: {
6
+ readonly EFFECT: 4;
7
+ readonly FLASH: 8;
8
+ readonly TRANSITION: 32;
9
+ };
10
+ /**
11
+ * homeassistant/components/vacuum/__init__.py
12
+ */
13
+ export declare const VACUUM: {
14
+ /**
15
+ * Deprecated
16
+ */
17
+ readonly TURN_ON: 1;
18
+ /**
19
+ * Deprecated
20
+ */
21
+ readonly TURN_OFF: 2;
22
+ readonly PAUSE: 4;
23
+ readonly STOP: 8;
24
+ readonly RETURN_HOME: 16;
25
+ readonly FAN_SPEED: 32;
26
+ readonly BATTERY: 64;
27
+ /**
28
+ * Deprecated
29
+ */
30
+ readonly STATUS: 128;
31
+ readonly SEND_COMMAND: 256;
32
+ readonly LOCATE: 512;
33
+ readonly CLEAN_SPOT: 1024;
34
+ readonly MAP: 2048;
35
+ readonly STATE: 4096;
36
+ readonly START: 8192;
37
+ };
38
+ /**
39
+ * homeassistant/components/water_heater/__init__.py
40
+ */
41
+ export declare const WATER_HEATER: {
42
+ readonly TARGET_TEMPERATURE: 1;
43
+ readonly OPERATION_MODE: 2;
44
+ readonly AWAY_MODE: 4;
45
+ readonly ON_OFF: 8;
46
+ };
47
+ /**
48
+ * homeassistant/components/valve/__init__.py
49
+ */
50
+ export declare const VALVE: {
51
+ readonly OPEN: 1;
52
+ readonly CLOSE: 2;
53
+ readonly SET_POSITION: 4;
54
+ readonly STOP: 8;
55
+ };
56
+ /**
57
+ * homeassistant/components/weather/const.py
58
+ */
59
+ export declare const WEATHER: {
60
+ readonly FORECAST_DAILY: 1;
61
+ readonly FORECAST_HOURLY: 2;
62
+ readonly FORECAST_TWICE_DAILY: 4;
63
+ };
64
+ /**
65
+ * homeassistant/components/ai_task/const.py
66
+ */
67
+ export declare const AI_TASK: {
68
+ readonly ATTACHMENTS: 2;
69
+ };
70
+ /**
71
+ * homeassistant/components/switch/__init__.py
72
+ */
73
+ export declare const SWITCH: {
74
+ readonly TURN_ON: 1;
75
+ readonly TURN_OFF: 2;
76
+ };
77
+ /**
78
+ * homeassistant/components/cover/__init__.py
79
+ */
80
+ export declare const COVER: {
81
+ readonly OPEN: 1;
82
+ readonly CLOSE: 2;
83
+ readonly SET_POSITION: 4;
84
+ readonly STOP: 8;
85
+ readonly OPEN_TILT: 16;
86
+ readonly CLOSE_TILT: 32;
87
+ readonly STOP_TILT: 64;
88
+ readonly SET_TILT_POSITION: 128;
89
+ };
90
+ /**
91
+ * homeassistant/components/fan/__init__.py
92
+ */
93
+ export declare const FAN: {
94
+ readonly SET_SPEED: 1;
95
+ readonly OSCILLATE: 2;
96
+ readonly DIRECTION: 4;
97
+ readonly PRESET_MODE: 8;
98
+ readonly TURN_OFF: 16;
99
+ readonly TURN_ON: 32;
100
+ };
101
+ /**
102
+ * homeassistant/components/climate/const.py
103
+ */
104
+ export declare const CLIMATE: {
105
+ readonly TARGET_TEMPERATURE: 1;
106
+ readonly TARGET_TEMPERATURE_RANGE: 2;
107
+ readonly TARGET_HUMIDITY: 4;
108
+ readonly FAN_MODE: 8;
109
+ readonly PRESET_MODE: 16;
110
+ readonly SWING_MODE: 32;
111
+ readonly TURN_OFF: 128;
112
+ readonly TURN_ON: 256;
113
+ readonly SWING_HORIZONTAL_MODE: 512;
114
+ };
115
+ /**
116
+ * homeassistant/components/media_player/const.py
117
+ */
118
+ export declare const MEDIA_PLAYER: {
119
+ readonly PAUSE: 1;
120
+ readonly SEEK: 2;
121
+ readonly VOLUME_SET: 4;
122
+ readonly VOLUME_MUTE: 8;
123
+ readonly PREVIOUS_TRACK: 16;
124
+ readonly NEXT_TRACK: 32;
125
+ readonly TURN_ON: 128;
126
+ readonly TURN_OFF: 256;
127
+ readonly PLAY_MEDIA: 512;
128
+ readonly VOLUME_STEP: 1024;
129
+ readonly SELECT_SOURCE: 2048;
130
+ readonly STOP: 4096;
131
+ readonly CLEAR_PLAYLIST: 8192;
132
+ readonly PLAY: 16384;
133
+ readonly SHUFFLE_SET: 32768;
134
+ readonly SELECT_SOUND_MODE: 65536;
135
+ readonly BROWSE_MEDIA: 131072;
136
+ readonly REPEAT_SET: 262144;
137
+ readonly GROUPING: 524288;
138
+ readonly MEDIA_ANNOUNCE: 1048576;
139
+ readonly MEDIA_ENQUEUE: 2097152;
140
+ readonly SEARCH_MEDIA: 4194304;
141
+ };
142
+ /**
143
+ * homeassistant/components/camera/__init__.py
144
+ */
145
+ export declare const CAMERA: {
146
+ readonly ON_OFF: 1;
147
+ readonly STREAM: 2;
148
+ };
149
+ /**
150
+ * homeassistant/components/lock/__init__.py
151
+ */
152
+ export declare const LOCK: {
153
+ readonly OPEN: 1;
154
+ };
155
+ /**
156
+ * homeassistant/components/alarm_control_panel/__init__.py
157
+ */
158
+ export declare const ALARM_CONTROL_PANEL: {
159
+ readonly ARM_HOME: 1;
160
+ readonly ARM_AWAY: 2;
161
+ readonly ARM_NIGHT: 4;
162
+ readonly ARM_VACATION: 8;
163
+ readonly ARM_CUSTOM_BYPASS: 16;
164
+ };
165
+ /**
166
+ * homeassistant/components/binary_sensor/__init__.py
167
+ */
168
+ export declare const BINARY_SENSOR: {
169
+ readonly TURN_ON: 1;
170
+ readonly TURN_OFF: 2;
171
+ };
172
+ /**
173
+ * homeassistant/components/sensor/__init__.py
174
+ */
175
+ export declare const SENSOR: {
176
+ readonly TURN_ON: 1;
177
+ readonly TURN_OFF: 2;
178
+ };
179
+ /**
180
+ * homeassistant/components/update/const.py
181
+ */
182
+ export declare const UPDATE: {
183
+ readonly INSTALL: 1;
184
+ readonly SPECIFIC_VERSION: 2;
185
+ readonly PROGRESS: 4;
186
+ readonly BACKUP: 8;
187
+ readonly RELEASE_NOTES: 16;
188
+ };
189
+ /**
190
+ * homeassistant/components/button/__init__.py
191
+ */
192
+ export declare const BUTTON: {
193
+ readonly TURN_ON: 1;
194
+ readonly TURN_OFF: 2;
195
+ };
196
+ /**
197
+ * homeassistant/components/number/__init__.py
198
+ */
199
+ export declare const NUMBER: {
200
+ readonly TURN_ON: 1;
201
+ readonly TURN_OFF: 2;
202
+ };
203
+ /**
204
+ * homeassistant/components/select/__init__.py
205
+ */
206
+ export declare const SELECT: {
207
+ readonly TURN_ON: 1;
208
+ readonly TURN_OFF: 2;
209
+ };
210
+ /**
211
+ * homeassistant/components/siren/const.py
212
+ */
213
+ export declare const SIREN: {
214
+ readonly TURN_ON: 1;
215
+ readonly TURN_OFF: 2;
216
+ readonly TONES: 4;
217
+ readonly VOLUME_SET: 8;
218
+ readonly DURATION: 16;
219
+ };
220
+ /**
221
+ * homeassistant/components/text/__init__.py
222
+ */
223
+ export declare const TEXT: {
224
+ readonly TURN_ON: 1;
225
+ readonly TURN_OFF: 2;
226
+ };
227
+ /**
228
+ * homeassistant/components/todo/const.py
229
+ */
230
+ export declare const TODO: {
231
+ readonly CREATE_TODO_ITEM: 1;
232
+ readonly DELETE_TODO_ITEM: 2;
233
+ readonly UPDATE_TODO_ITEM: 4;
234
+ readonly MOVE_TODO_ITEM: 8;
235
+ readonly SET_DUE_DATE_ON_ITEM: 16;
236
+ readonly SET_DUE_DATETIME_ON_ITEM: 32;
237
+ readonly SET_DESCRIPTION_ON_ITEM: 64;
238
+ };
239
+ /**
240
+ * homeassistant/components/humidifier/const.py
241
+ */
242
+ export declare const HUMIDIFIER: {
243
+ readonly MODES: 1;
244
+ };
245
+ /**
246
+ * homeassistant/components/remote/__init__.py
247
+ */
248
+ export declare const REMOTE: {
249
+ readonly LEARN_COMMAND: 1;
250
+ readonly DELETE_COMMAND: 2;
251
+ readonly ACTIVITY: 4;
252
+ };
253
+ /**
254
+ * homeassistant/components/notify/__init__.py
255
+ */
256
+ export declare const NOTIFY: {
257
+ readonly TITLE: 1;
258
+ };
259
+ /**
260
+ * Registry for other library logic to take advantage of
261
+ */
262
+ export declare const SUPPORTED_FEATURES: {
263
+ readonly AI_TASK: {
264
+ readonly ATTACHMENTS: 2;
265
+ };
266
+ readonly ALARM_CONTROL_PANEL: {
267
+ readonly ARM_HOME: 1;
268
+ readonly ARM_AWAY: 2;
269
+ readonly ARM_NIGHT: 4;
270
+ readonly ARM_VACATION: 8;
271
+ readonly ARM_CUSTOM_BYPASS: 16;
272
+ };
273
+ readonly BINARY_SENSOR: {
274
+ readonly TURN_ON: 1;
275
+ readonly TURN_OFF: 2;
276
+ };
277
+ readonly BUTTON: {
278
+ readonly TURN_ON: 1;
279
+ readonly TURN_OFF: 2;
280
+ };
281
+ readonly CAMERA: {
282
+ readonly ON_OFF: 1;
283
+ readonly STREAM: 2;
284
+ };
285
+ readonly CLIMATE: {
286
+ readonly TARGET_TEMPERATURE: 1;
287
+ readonly TARGET_TEMPERATURE_RANGE: 2;
288
+ readonly TARGET_HUMIDITY: 4;
289
+ readonly FAN_MODE: 8;
290
+ readonly PRESET_MODE: 16;
291
+ readonly SWING_MODE: 32;
292
+ readonly TURN_OFF: 128;
293
+ readonly TURN_ON: 256;
294
+ readonly SWING_HORIZONTAL_MODE: 512;
295
+ };
296
+ readonly COVER: {
297
+ readonly OPEN: 1;
298
+ readonly CLOSE: 2;
299
+ readonly SET_POSITION: 4;
300
+ readonly STOP: 8;
301
+ readonly OPEN_TILT: 16;
302
+ readonly CLOSE_TILT: 32;
303
+ readonly STOP_TILT: 64;
304
+ readonly SET_TILT_POSITION: 128;
305
+ };
306
+ readonly FAN: {
307
+ readonly SET_SPEED: 1;
308
+ readonly OSCILLATE: 2;
309
+ readonly DIRECTION: 4;
310
+ readonly PRESET_MODE: 8;
311
+ readonly TURN_OFF: 16;
312
+ readonly TURN_ON: 32;
313
+ };
314
+ readonly HUMIDIFIER: {
315
+ readonly MODES: 1;
316
+ };
317
+ readonly LIGHT: {
318
+ readonly EFFECT: 4;
319
+ readonly FLASH: 8;
320
+ readonly TRANSITION: 32;
321
+ };
322
+ readonly LOCK: {
323
+ readonly OPEN: 1;
324
+ };
325
+ readonly MEDIA_PLAYER: {
326
+ readonly PAUSE: 1;
327
+ readonly SEEK: 2;
328
+ readonly VOLUME_SET: 4;
329
+ readonly VOLUME_MUTE: 8;
330
+ readonly PREVIOUS_TRACK: 16;
331
+ readonly NEXT_TRACK: 32;
332
+ readonly TURN_ON: 128;
333
+ readonly TURN_OFF: 256;
334
+ readonly PLAY_MEDIA: 512;
335
+ readonly VOLUME_STEP: 1024;
336
+ readonly SELECT_SOURCE: 2048;
337
+ readonly STOP: 4096;
338
+ readonly CLEAR_PLAYLIST: 8192;
339
+ readonly PLAY: 16384;
340
+ readonly SHUFFLE_SET: 32768;
341
+ readonly SELECT_SOUND_MODE: 65536;
342
+ readonly BROWSE_MEDIA: 131072;
343
+ readonly REPEAT_SET: 262144;
344
+ readonly GROUPING: 524288;
345
+ readonly MEDIA_ANNOUNCE: 1048576;
346
+ readonly MEDIA_ENQUEUE: 2097152;
347
+ readonly SEARCH_MEDIA: 4194304;
348
+ };
349
+ readonly NOTIFY: {
350
+ readonly TITLE: 1;
351
+ };
352
+ readonly NUMBER: {
353
+ readonly TURN_ON: 1;
354
+ readonly TURN_OFF: 2;
355
+ };
356
+ readonly REMOTE: {
357
+ readonly LEARN_COMMAND: 1;
358
+ readonly DELETE_COMMAND: 2;
359
+ readonly ACTIVITY: 4;
360
+ };
361
+ readonly SELECT: {
362
+ readonly TURN_ON: 1;
363
+ readonly TURN_OFF: 2;
364
+ };
365
+ readonly SENSOR: {
366
+ readonly TURN_ON: 1;
367
+ readonly TURN_OFF: 2;
368
+ };
369
+ readonly SIREN: {
370
+ readonly TURN_ON: 1;
371
+ readonly TURN_OFF: 2;
372
+ readonly TONES: 4;
373
+ readonly VOLUME_SET: 8;
374
+ readonly DURATION: 16;
375
+ };
376
+ readonly SWITCH: {
377
+ readonly TURN_ON: 1;
378
+ readonly TURN_OFF: 2;
379
+ };
380
+ readonly TEXT: {
381
+ readonly TURN_ON: 1;
382
+ readonly TURN_OFF: 2;
383
+ };
384
+ readonly TODO: {
385
+ readonly CREATE_TODO_ITEM: 1;
386
+ readonly DELETE_TODO_ITEM: 2;
387
+ readonly UPDATE_TODO_ITEM: 4;
388
+ readonly MOVE_TODO_ITEM: 8;
389
+ readonly SET_DUE_DATE_ON_ITEM: 16;
390
+ readonly SET_DUE_DATETIME_ON_ITEM: 32;
391
+ readonly SET_DESCRIPTION_ON_ITEM: 64;
392
+ };
393
+ readonly UPDATE: {
394
+ readonly INSTALL: 1;
395
+ readonly SPECIFIC_VERSION: 2;
396
+ readonly PROGRESS: 4;
397
+ readonly BACKUP: 8;
398
+ readonly RELEASE_NOTES: 16;
399
+ };
400
+ readonly VACUUM: {
401
+ /**
402
+ * Deprecated
403
+ */
404
+ readonly TURN_ON: 1;
405
+ /**
406
+ * Deprecated
407
+ */
408
+ readonly TURN_OFF: 2;
409
+ readonly PAUSE: 4;
410
+ readonly STOP: 8;
411
+ readonly RETURN_HOME: 16;
412
+ readonly FAN_SPEED: 32;
413
+ readonly BATTERY: 64;
414
+ /**
415
+ * Deprecated
416
+ */
417
+ readonly STATUS: 128;
418
+ readonly SEND_COMMAND: 256;
419
+ readonly LOCATE: 512;
420
+ readonly CLEAN_SPOT: 1024;
421
+ readonly MAP: 2048;
422
+ readonly STATE: 4096;
423
+ readonly START: 8192;
424
+ };
425
+ readonly VALVE: {
426
+ readonly OPEN: 1;
427
+ readonly CLOSE: 2;
428
+ readonly SET_POSITION: 4;
429
+ readonly STOP: 8;
430
+ };
431
+ readonly WATER_HEATER: {
432
+ readonly TARGET_TEMPERATURE: 1;
433
+ readonly OPERATION_MODE: 2;
434
+ readonly AWAY_MODE: 4;
435
+ readonly ON_OFF: 8;
436
+ };
437
+ readonly WEATHER: {
438
+ readonly FORECAST_DAILY: 1;
439
+ readonly FORECAST_HOURLY: 2;
440
+ readonly FORECAST_TWICE_DAILY: 4;
441
+ };
442
+ };
443
+ export type SUPPORTED_FEATURES = typeof SUPPORTED_FEATURES;
444
+ export type SupportedFeatureDomains = Extract<keyof SUPPORTED_FEATURES, string>;
445
+ export type UsedSupportedFeatureDomains = Extract<Lowercase<SupportedFeatureDomains>, ALL_DOMAINS>;
446
+ export type SupportedFeatures<DOMAIN extends SupportedFeatureDomains = SupportedFeatureDomains> = `${DOMAIN}.${Extract<keyof SUPPORTED_FEATURES[DOMAIN], string>}`;
447
+ export type SupportedEntityFeatures<DOMAIN extends UsedSupportedFeatureDomains = UsedSupportedFeatureDomains> = `${Uppercase<DOMAIN>}.${Extract<keyof SUPPORTED_FEATURES[Uppercase<DOMAIN>], string>}`;
@@ -0,0 +1,290 @@
1
+ /* eslint-disable sort-keys-fix/sort-keys-fix */
2
+ /**
3
+ * homeassistant/components/light/const.py
4
+ */
5
+ export const LIGHT = {
6
+ EFFECT: 4,
7
+ FLASH: 8,
8
+ TRANSITION: 32,
9
+ };
10
+ /**
11
+ * homeassistant/components/vacuum/__init__.py
12
+ */
13
+ export const VACUUM = {
14
+ /**
15
+ * Deprecated
16
+ */
17
+ TURN_ON: 1,
18
+ /**
19
+ * Deprecated
20
+ */
21
+ TURN_OFF: 2,
22
+ PAUSE: 4,
23
+ STOP: 8,
24
+ RETURN_HOME: 16,
25
+ FAN_SPEED: 32,
26
+ BATTERY: 64,
27
+ /**
28
+ * Deprecated
29
+ */
30
+ STATUS: 128,
31
+ SEND_COMMAND: 256,
32
+ LOCATE: 512,
33
+ CLEAN_SPOT: 1024,
34
+ MAP: 2048,
35
+ STATE: 4096,
36
+ START: 8192,
37
+ };
38
+ /**
39
+ * homeassistant/components/water_heater/__init__.py
40
+ */
41
+ export const WATER_HEATER = {
42
+ TARGET_TEMPERATURE: 1,
43
+ OPERATION_MODE: 2,
44
+ AWAY_MODE: 4,
45
+ ON_OFF: 8,
46
+ };
47
+ /**
48
+ * homeassistant/components/valve/__init__.py
49
+ */
50
+ export const VALVE = {
51
+ OPEN: 1,
52
+ CLOSE: 2,
53
+ SET_POSITION: 4,
54
+ STOP: 8,
55
+ };
56
+ /**
57
+ * homeassistant/components/weather/const.py
58
+ */
59
+ export const WEATHER = {
60
+ FORECAST_DAILY: 1,
61
+ FORECAST_HOURLY: 2,
62
+ FORECAST_TWICE_DAILY: 4,
63
+ };
64
+ /**
65
+ * homeassistant/components/ai_task/const.py
66
+ */
67
+ export const AI_TASK = {
68
+ ATTACHMENTS: 2,
69
+ };
70
+ /**
71
+ * homeassistant/components/switch/__init__.py
72
+ */
73
+ export const SWITCH = {
74
+ TURN_ON: 1,
75
+ TURN_OFF: 2,
76
+ };
77
+ /**
78
+ * homeassistant/components/cover/__init__.py
79
+ */
80
+ export const COVER = {
81
+ OPEN: 1,
82
+ CLOSE: 2,
83
+ SET_POSITION: 4,
84
+ STOP: 8,
85
+ OPEN_TILT: 16,
86
+ CLOSE_TILT: 32,
87
+ STOP_TILT: 64,
88
+ SET_TILT_POSITION: 128,
89
+ };
90
+ /**
91
+ * homeassistant/components/fan/__init__.py
92
+ */
93
+ export const FAN = {
94
+ SET_SPEED: 1,
95
+ OSCILLATE: 2,
96
+ DIRECTION: 4,
97
+ PRESET_MODE: 8,
98
+ TURN_OFF: 16,
99
+ TURN_ON: 32,
100
+ };
101
+ /**
102
+ * homeassistant/components/climate/const.py
103
+ */
104
+ export const CLIMATE = {
105
+ TARGET_TEMPERATURE: 1,
106
+ TARGET_TEMPERATURE_RANGE: 2,
107
+ TARGET_HUMIDITY: 4,
108
+ FAN_MODE: 8,
109
+ PRESET_MODE: 16,
110
+ SWING_MODE: 32,
111
+ TURN_OFF: 128,
112
+ TURN_ON: 256,
113
+ SWING_HORIZONTAL_MODE: 512,
114
+ };
115
+ /**
116
+ * homeassistant/components/media_player/const.py
117
+ */
118
+ export const MEDIA_PLAYER = {
119
+ PAUSE: 1,
120
+ SEEK: 2,
121
+ VOLUME_SET: 4,
122
+ VOLUME_MUTE: 8,
123
+ PREVIOUS_TRACK: 16,
124
+ NEXT_TRACK: 32,
125
+ TURN_ON: 128,
126
+ TURN_OFF: 256,
127
+ PLAY_MEDIA: 512,
128
+ VOLUME_STEP: 1024,
129
+ SELECT_SOURCE: 2048,
130
+ STOP: 4096,
131
+ CLEAR_PLAYLIST: 8192,
132
+ PLAY: 16384,
133
+ SHUFFLE_SET: 32768,
134
+ SELECT_SOUND_MODE: 65536,
135
+ BROWSE_MEDIA: 131072,
136
+ REPEAT_SET: 262144,
137
+ GROUPING: 524288,
138
+ MEDIA_ANNOUNCE: 1048576,
139
+ MEDIA_ENQUEUE: 2097152,
140
+ SEARCH_MEDIA: 4194304,
141
+ };
142
+ /**
143
+ * homeassistant/components/camera/__init__.py
144
+ */
145
+ export const CAMERA = {
146
+ ON_OFF: 1,
147
+ STREAM: 2,
148
+ };
149
+ /**
150
+ * homeassistant/components/lock/__init__.py
151
+ */
152
+ export const LOCK = {
153
+ OPEN: 1,
154
+ };
155
+ /**
156
+ * homeassistant/components/alarm_control_panel/__init__.py
157
+ */
158
+ export const ALARM_CONTROL_PANEL = {
159
+ ARM_HOME: 1,
160
+ ARM_AWAY: 2,
161
+ ARM_NIGHT: 4,
162
+ ARM_VACATION: 8,
163
+ ARM_CUSTOM_BYPASS: 16,
164
+ };
165
+ /**
166
+ * homeassistant/components/binary_sensor/__init__.py
167
+ */
168
+ export const BINARY_SENSOR = {
169
+ TURN_ON: 1,
170
+ TURN_OFF: 2,
171
+ };
172
+ /**
173
+ * homeassistant/components/sensor/__init__.py
174
+ */
175
+ export const SENSOR = {
176
+ TURN_ON: 1,
177
+ TURN_OFF: 2,
178
+ };
179
+ /**
180
+ * homeassistant/components/update/const.py
181
+ */
182
+ export const UPDATE = {
183
+ INSTALL: 1,
184
+ SPECIFIC_VERSION: 2,
185
+ PROGRESS: 4,
186
+ BACKUP: 8,
187
+ RELEASE_NOTES: 16,
188
+ };
189
+ /**
190
+ * homeassistant/components/button/__init__.py
191
+ */
192
+ export const BUTTON = {
193
+ TURN_ON: 1,
194
+ TURN_OFF: 2,
195
+ };
196
+ /**
197
+ * homeassistant/components/number/__init__.py
198
+ */
199
+ export const NUMBER = {
200
+ TURN_ON: 1,
201
+ TURN_OFF: 2,
202
+ };
203
+ /**
204
+ * homeassistant/components/select/__init__.py
205
+ */
206
+ export const SELECT = {
207
+ TURN_ON: 1,
208
+ TURN_OFF: 2,
209
+ };
210
+ /**
211
+ * homeassistant/components/siren/const.py
212
+ */
213
+ export const SIREN = {
214
+ TURN_ON: 1,
215
+ TURN_OFF: 2,
216
+ TONES: 4,
217
+ VOLUME_SET: 8,
218
+ DURATION: 16,
219
+ };
220
+ /**
221
+ * homeassistant/components/text/__init__.py
222
+ */
223
+ export const TEXT = {
224
+ TURN_ON: 1,
225
+ TURN_OFF: 2,
226
+ };
227
+ /**
228
+ * homeassistant/components/todo/const.py
229
+ */
230
+ export const TODO = {
231
+ CREATE_TODO_ITEM: 1,
232
+ DELETE_TODO_ITEM: 2,
233
+ UPDATE_TODO_ITEM: 4,
234
+ MOVE_TODO_ITEM: 8,
235
+ SET_DUE_DATE_ON_ITEM: 16,
236
+ SET_DUE_DATETIME_ON_ITEM: 32,
237
+ SET_DESCRIPTION_ON_ITEM: 64,
238
+ };
239
+ /**
240
+ * homeassistant/components/humidifier/const.py
241
+ */
242
+ export const HUMIDIFIER = {
243
+ MODES: 1,
244
+ };
245
+ /**
246
+ * homeassistant/components/remote/__init__.py
247
+ */
248
+ export const REMOTE = {
249
+ LEARN_COMMAND: 1,
250
+ DELETE_COMMAND: 2,
251
+ ACTIVITY: 4,
252
+ };
253
+ /**
254
+ * homeassistant/components/notify/__init__.py
255
+ */
256
+ export const NOTIFY = {
257
+ TITLE: 1,
258
+ };
259
+ /**
260
+ * Registry for other library logic to take advantage of
261
+ */
262
+ export const SUPPORTED_FEATURES = {
263
+ AI_TASK,
264
+ ALARM_CONTROL_PANEL,
265
+ BINARY_SENSOR,
266
+ BUTTON,
267
+ CAMERA,
268
+ CLIMATE,
269
+ COVER,
270
+ FAN,
271
+ HUMIDIFIER,
272
+ LIGHT,
273
+ LOCK,
274
+ MEDIA_PLAYER,
275
+ NOTIFY,
276
+ NUMBER,
277
+ REMOTE,
278
+ SELECT,
279
+ SENSOR,
280
+ SIREN,
281
+ SWITCH,
282
+ TEXT,
283
+ TODO,
284
+ UPDATE,
285
+ VACUUM,
286
+ VALVE,
287
+ WATER_HEATER,
288
+ WEATHER,
289
+ };
290
+ //# sourceMappingURL=supported-features.mjs.map