@digital-alchemy/hass 0.3.21 → 0.3.23

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 (132) hide show
  1. package/dist/dynamic.d.ts +3227 -202
  2. package/dist/dynamic.js +335 -85
  3. package/dist/dynamic.js.map +1 -1
  4. package/dist/e2e/app/entities.d.ts +5 -0
  5. package/dist/e2e/app/entities.js +21 -0
  6. package/dist/e2e/app/entities.js.map +1 -0
  7. package/dist/e2e/app/main.d.ts +10 -0
  8. package/dist/e2e/app/main.js +15 -0
  9. package/dist/e2e/app/main.js.map +1 -0
  10. package/dist/e2e/area.spec.d.ts +1 -0
  11. package/dist/e2e/area.spec.js +99 -0
  12. package/dist/e2e/area.spec.js.map +1 -0
  13. package/dist/e2e/call-proxy.spec.d.ts +1 -0
  14. package/dist/e2e/call-proxy.spec.js +57 -0
  15. package/dist/e2e/call-proxy.spec.js.map +1 -0
  16. package/dist/e2e/device.spec.d.ts +1 -0
  17. package/dist/e2e/device.spec.js +27 -0
  18. package/dist/e2e/device.spec.js.map +1 -0
  19. package/dist/e2e/entity.spec.d.ts +1 -0
  20. package/dist/e2e/entity.spec.js +328 -0
  21. package/dist/e2e/entity.spec.js.map +1 -0
  22. package/dist/e2e/fetch.spec.d.ts +1 -0
  23. package/dist/e2e/fetch.spec.js +79 -0
  24. package/dist/e2e/fetch.spec.js.map +1 -0
  25. package/dist/e2e/floor.spec.d.ts +1 -0
  26. package/dist/e2e/floor.spec.js +81 -0
  27. package/dist/e2e/floor.spec.js.map +1 -0
  28. package/dist/e2e/label.spec.d.ts +1 -0
  29. package/dist/e2e/label.spec.js +82 -0
  30. package/dist/e2e/label.spec.js.map +1 -0
  31. package/dist/e2e/utils.d.ts +2 -0
  32. package/dist/e2e/utils.js +7 -0
  33. package/dist/e2e/utils.js.map +1 -0
  34. package/dist/extensions/area.extension.d.ts +5 -5
  35. package/dist/extensions/area.extension.js +60 -51
  36. package/dist/extensions/area.extension.js.map +1 -1
  37. package/dist/extensions/call-proxy.extension.d.ts +1 -1
  38. package/dist/extensions/call-proxy.extension.js +13 -26
  39. package/dist/extensions/call-proxy.extension.js.map +1 -1
  40. package/dist/extensions/conversation.extension.js +1 -1
  41. package/dist/extensions/conversation.extension.js.map +1 -1
  42. package/dist/extensions/device.extension.d.ts +1 -1
  43. package/dist/extensions/device.extension.js +2 -1
  44. package/dist/extensions/device.extension.js.map +1 -1
  45. package/dist/extensions/entity.extension.d.ts +23 -10
  46. package/dist/extensions/entity.extension.js +51 -27
  47. package/dist/extensions/entity.extension.js.map +1 -1
  48. package/dist/extensions/fetch-api.extension.d.ts +5 -4
  49. package/dist/extensions/fetch-api.extension.js +41 -30
  50. package/dist/extensions/fetch-api.extension.js.map +1 -1
  51. package/dist/extensions/floor.extension.d.ts +0 -5
  52. package/dist/extensions/floor.extension.js +1 -2
  53. package/dist/extensions/floor.extension.js.map +1 -1
  54. package/dist/extensions/label.extension.d.ts +4 -9
  55. package/dist/extensions/label.extension.js +35 -33
  56. package/dist/extensions/label.extension.js.map +1 -1
  57. package/dist/extensions/websocket-api.extension.d.ts +21 -4
  58. package/dist/extensions/websocket-api.extension.js +94 -57
  59. package/dist/extensions/websocket-api.extension.js.map +1 -1
  60. package/dist/extensions/zone.extension.d.ts +0 -6
  61. package/dist/extensions/zone.extension.js +0 -2
  62. package/dist/extensions/zone.extension.js.map +1 -1
  63. package/dist/hass.module.d.ts +10 -0
  64. package/dist/hass.module.js +13 -0
  65. package/dist/hass.module.js.map +1 -1
  66. package/dist/helpers/constants.helper.d.ts +1 -40
  67. package/dist/helpers/constants.helper.js +2 -45
  68. package/dist/helpers/constants.helper.js.map +1 -1
  69. package/dist/helpers/fetch/calendar.d.ts +1 -1
  70. package/dist/helpers/fetch/configuration.d.ts +4 -4
  71. package/dist/helpers/metrics.helper.d.ts +4 -0
  72. package/dist/helpers/metrics.helper.js +15 -7
  73. package/dist/helpers/metrics.helper.js.map +1 -1
  74. package/dist/helpers/registry.d.ts +1 -1
  75. package/dist/helpers/utility.helper.d.ts +3 -2
  76. package/dist/helpers/utility.helper.js.map +1 -1
  77. package/dist/helpers/websocket.helper.d.ts +12 -12
  78. package/dist/mock_assistant/extensions/events.extension.d.ts +6 -0
  79. package/dist/mock_assistant/extensions/events.extension.js +32 -0
  80. package/dist/mock_assistant/extensions/events.extension.js.map +1 -0
  81. package/dist/mock_assistant/extensions/fixtures.extension.d.ts +13 -0
  82. package/dist/mock_assistant/extensions/fixtures.extension.js +57 -0
  83. package/dist/mock_assistant/extensions/fixtures.extension.js.map +1 -0
  84. package/dist/mock_assistant/extensions/index.d.ts +2 -0
  85. package/dist/mock_assistant/extensions/index.js +6 -0
  86. package/dist/mock_assistant/extensions/index.js.map +1 -0
  87. package/dist/mock_assistant/helpers/fixtures.d.ts +11 -0
  88. package/dist/mock_assistant/helpers/fixtures.js +3 -0
  89. package/dist/mock_assistant/helpers/fixtures.js.map +1 -0
  90. package/dist/mock_assistant/helpers/index.d.ts +2 -0
  91. package/dist/mock_assistant/helpers/index.js +6 -0
  92. package/dist/mock_assistant/helpers/index.js.map +1 -0
  93. package/dist/mock_assistant/helpers/utils.d.ts +4 -0
  94. package/dist/mock_assistant/helpers/utils.js +49 -0
  95. package/dist/mock_assistant/helpers/utils.js.map +1 -0
  96. package/dist/mock_assistant/index.d.ts +3 -0
  97. package/dist/mock_assistant/index.js +7 -0
  98. package/dist/mock_assistant/index.js.map +1 -0
  99. package/dist/mock_assistant/main.d.ts +2 -0
  100. package/dist/mock_assistant/main.js +38 -0
  101. package/dist/mock_assistant/main.js.map +1 -0
  102. package/dist/mock_assistant/mock-assistant.module.d.ts +16 -0
  103. package/dist/mock_assistant/mock-assistant.module.js +22 -0
  104. package/dist/mock_assistant/mock-assistant.module.js.map +1 -0
  105. package/dist/testing/area.spec.d.ts +1 -0
  106. package/dist/testing/area.spec.js +224 -0
  107. package/dist/testing/area.spec.js.map +1 -0
  108. package/dist/testing/config.spec.d.ts +1 -0
  109. package/dist/testing/config.spec.js +232 -0
  110. package/dist/testing/config.spec.js.map +1 -0
  111. package/dist/testing/device.spec.d.ts +1 -0
  112. package/dist/testing/device.spec.js +81 -0
  113. package/dist/testing/device.spec.js.map +1 -0
  114. package/dist/testing/entity.spec.d.ts +1 -0
  115. package/dist/testing/entity.spec.js +29 -0
  116. package/dist/testing/entity.spec.js.map +1 -0
  117. package/dist/testing/fetch-api.spec.d.ts +1 -0
  118. package/dist/testing/fetch-api.spec.js +476 -0
  119. package/dist/testing/fetch-api.spec.js.map +1 -0
  120. package/dist/testing/floor.spec.d.ts +1 -0
  121. package/dist/testing/floor.spec.js +223 -0
  122. package/dist/testing/floor.spec.js.map +1 -0
  123. package/dist/testing/label.spec.d.ts +1 -0
  124. package/dist/testing/label.spec.js +223 -0
  125. package/dist/testing/label.spec.js.map +1 -0
  126. package/dist/testing/websocket.spec.d.ts +8 -0
  127. package/dist/testing/websocket.spec.js +71 -0
  128. package/dist/testing/websocket.spec.js.map +1 -0
  129. package/dist/testing/workflow.spec.d.ts +1 -0
  130. package/dist/testing/workflow.spec.js +119 -0
  131. package/dist/testing/workflow.spec.js.map +1 -0
  132. package/package.json +36 -9
package/dist/dynamic.d.ts CHANGED
@@ -1,233 +1,3258 @@
1
1
  import { PICK_ENTITY } from "./helpers";
2
- export type TFloorId = "example_floor" | "example_floor_2";
3
- export type TAreaId = "example_area" | "empty_area";
4
- export type TLabelId = "example_label" | "example_label_2";
5
- export type TDeviceId = "example_device" | "example_device_2";
6
- export type TPlatformId = "synapse" | "sun";
7
- export type TZoneId = string & {
8
- zone: true;
9
- };
2
+ type PICK_FROM_PLATFORM<ID extends TPlatformId, DOMAIN extends TRawDomains = TRawDomains> = Extract<REGISTRY_SETUP["platform"][`_${ID}`], PICK_ENTITY<DOMAIN>>;
10
3
  export declare const ENTITY_SETUP: {
11
- readonly binary_sensor: {
12
- readonly example_binary_sensor: {
13
- readonly attributes: {
14
- readonly friendly_name: "Example binary sensor";
15
- };
16
- readonly context: {
17
- readonly id: "abc123";
18
- readonly parent_id: any;
19
- readonly user_id: any;
20
- };
21
- readonly entity_id: "binary_sensor.example_binary_sensor";
22
- readonly last_changed: "2024-01-01T01:01:01.000000+00:00";
23
- readonly last_updated: "2024-01-01T01:01:01.000000+00:00";
24
- readonly state: "on";
25
- };
26
- };
27
- readonly button: {
28
- readonly example_button: {
29
- readonly attributes: {
30
- readonly friendly_name: "Example button";
31
- };
32
- readonly context: {
33
- readonly id: "abc123";
34
- readonly parent_id: any;
35
- readonly user_id: any;
36
- };
37
- readonly entity_id: "button.example_button";
38
- readonly last_changed: "2024-01-01T01:01:01.000000+00:00";
39
- };
40
- };
41
- readonly calendar: {
42
- readonly example_calendar: {
43
- readonly attributes: {
44
- readonly friendly_name: "Example calendar";
45
- readonly offset_reached: false;
46
- };
47
- readonly context: {
48
- readonly id: "abc123";
49
- readonly parent_id: any;
50
- readonly user_id: any;
51
- };
52
- readonly entity_id: "calendar.example_calendar";
53
- readonly last_changed: "2024-01-01T01:01:01.000000+00:00";
54
- readonly last_updated: "2024-01-01T01:01:01.000000+00:00";
55
- readonly state: "off";
56
- };
57
- };
58
- readonly light: {
59
- readonly example_light: {
60
- readonly attributes: {
61
- readonly brightness: 255;
62
- readonly color_mode: "color_temp";
63
- readonly color_temp: 253;
64
- readonly color_temp_kelvin: 3952;
65
- readonly dynamics: "none";
66
- readonly friendly_name: "Example light";
67
- readonly hs_color: readonly [26.835, 35.746];
68
- readonly max_color_temp_kelvin: 6535;
69
- readonly max_mireds: 500;
70
- readonly min_color_temp_kelvin: 2000;
71
- readonly min_mireds: 153;
72
- readonly mode: "normal";
73
- readonly rgb_color: readonly [255, 204, 163];
74
- readonly supported_color_modes: readonly ["color_temp", "xy"];
75
- readonly supported_features: 40;
76
- readonly xy_color: readonly [0.424, 0.366];
77
- };
78
- readonly context: {
79
- readonly id: "abc123";
80
- readonly parent_id: any;
81
- readonly user_id: any;
82
- };
83
- readonly entity_id: "light.example_light";
84
- readonly last_changed: "2024-01-01T01:01:01.000000+00:00";
85
- readonly last_updated: "2024-01-01T01:01:01.000000+00:00";
86
- readonly state: "on";
87
- };
88
- };
89
- readonly scene: {
90
- readonly example_scene: {
91
- readonly attributes: {
92
- readonly friendly_name: "Example scene";
93
- };
94
- readonly context: {
95
- readonly id: "abc123";
96
- readonly parent_id: any;
97
- readonly user_id: any;
98
- };
99
- readonly entity_id: "scene.example_scene";
100
- readonly last_changed: "2024-01-01T01:01:01.000000+00:00";
101
- readonly last_updated: "2024-01-01T01:01:01.000000+00:00";
102
- readonly state: "2024-01-01T01:01:01.000000+00:00";
103
- };
104
- };
105
- readonly sensor: {
106
- readonly example_sensor: {
107
- readonly attributes: {
108
- readonly friendly_name: "Example sensor";
109
- };
110
- readonly context: {
111
- readonly id: "abc123";
112
- readonly parent_id: any;
113
- readonly user_id: any;
114
- };
115
- readonly entity_id: "sensor.example_sensor";
116
- readonly last_changed: "2024-01-01T01:01:01.000000+00:00";
117
- readonly last_updated: "2024-01-01T01:01:01.000000+00:00";
118
- readonly state: "High";
119
- };
120
- };
121
- readonly switch: {
122
- readonly example_switch: {
123
- readonly attributes: {
124
- readonly friendly_name: "Example switch";
125
- };
126
- readonly context: {
127
- readonly id: "abc123";
128
- readonly parent_id: any;
129
- readonly user_id: any;
130
- };
131
- readonly entity_id: "switch.example_switch";
132
- readonly last_changed: "2024-01-01T01:01:01.000000+00:00";
133
- readonly last_updated: "2024-01-01T01:01:01.000000+00:00";
134
- readonly state: "off";
4
+ binary_sensor: {
5
+ hass_e2e_online: {
6
+ attributes: {
7
+ friendly_name: string;
8
+ restored: boolean;
9
+ supported_features: number;
10
+ };
11
+ context: {
12
+ id: string;
13
+ parent_id: any;
14
+ user_id: any;
15
+ };
16
+ entity_id: string;
17
+ last_changed: string;
18
+ last_reported: string;
19
+ last_updated: string;
20
+ state: string;
21
+ };
22
+ toggles: {
23
+ attributes: {
24
+ friendly_name: string;
25
+ icon: string;
26
+ restored: boolean;
27
+ supported_features: number;
28
+ };
29
+ context: {
30
+ id: string;
31
+ parent_id: any;
32
+ user_id: any;
33
+ };
34
+ entity_id: string;
35
+ last_changed: string;
36
+ last_reported: string;
37
+ last_updated: string;
38
+ state: string;
135
39
  };
136
40
  };
137
- };
138
- export type TRawDomains = "binary_sensor" | "button" | "calendar" | "light" | "scene" | "sensor" | "switch";
139
- export type TRawEntityIds = "binary_sensor.example_binary_sensor" | "button.example_button" | "calendar.example_calendar" | "light.example_light" | "scene.example_scene" | "sensor.example_sensor" | "switch.example_switch";
140
- export type REGISTRY_SETUP = {
141
- platform: {
142
- _synapse: "switch.example_switch";
143
- _sun: "sun.sun";
41
+ calendar: {
42
+ united_states_tx: {
43
+ attributes: {
44
+ all_day: boolean;
45
+ description: string;
46
+ end_time: string;
47
+ friendly_name: string;
48
+ location: string;
49
+ message: string;
50
+ start_time: string;
51
+ };
52
+ context: {
53
+ id: string;
54
+ parent_id: any;
55
+ user_id: any;
56
+ };
57
+ entity_id: string;
58
+ last_changed: string;
59
+ last_reported: string;
60
+ last_updated: string;
61
+ state: string;
62
+ };
144
63
  };
145
- area: {
146
- _example_area: "sensor.example_sensor";
147
- _empty_area: never;
64
+ person: {
65
+ digital_alchemy: {
66
+ attributes: {
67
+ device_trackers: any[];
68
+ editable: boolean;
69
+ friendly_name: string;
70
+ id: string;
71
+ user_id: string;
72
+ };
73
+ context: {
74
+ id: string;
75
+ parent_id: any;
76
+ user_id: any;
77
+ };
78
+ entity_id: string;
79
+ last_changed: string;
80
+ last_reported: string;
81
+ last_updated: string;
82
+ state: string;
83
+ };
148
84
  };
149
- label: {
150
- _example_label_2: "switch.example_switch";
151
- _example_label: "switch.example_switch";
85
+ sensor: {
86
+ magic: {
87
+ attributes: {
88
+ friendly_name: string;
89
+ icon: string;
90
+ restored: boolean;
91
+ supported_features: number;
92
+ };
93
+ context: {
94
+ id: string;
95
+ parent_id: any;
96
+ user_id: any;
97
+ };
98
+ entity_id: string;
99
+ last_changed: string;
100
+ last_reported: string;
101
+ last_updated: string;
102
+ state: string;
103
+ };
104
+ sun_next_dawn: {
105
+ attributes: {
106
+ device_class: string;
107
+ friendly_name: string;
108
+ };
109
+ context: {
110
+ id: string;
111
+ parent_id: any;
112
+ user_id: any;
113
+ };
114
+ entity_id: string;
115
+ last_changed: string;
116
+ last_reported: string;
117
+ last_updated: string;
118
+ state: string;
119
+ };
120
+ sun_next_dusk: {
121
+ attributes: {
122
+ device_class: string;
123
+ friendly_name: string;
124
+ };
125
+ context: {
126
+ id: string;
127
+ parent_id: any;
128
+ user_id: any;
129
+ };
130
+ entity_id: string;
131
+ last_changed: string;
132
+ last_reported: string;
133
+ last_updated: string;
134
+ state: string;
135
+ };
136
+ sun_next_midnight: {
137
+ attributes: {
138
+ device_class: string;
139
+ friendly_name: string;
140
+ };
141
+ context: {
142
+ id: string;
143
+ parent_id: any;
144
+ user_id: any;
145
+ };
146
+ entity_id: string;
147
+ last_changed: string;
148
+ last_reported: string;
149
+ last_updated: string;
150
+ state: string;
151
+ };
152
+ sun_next_noon: {
153
+ attributes: {
154
+ device_class: string;
155
+ friendly_name: string;
156
+ };
157
+ context: {
158
+ id: string;
159
+ parent_id: any;
160
+ user_id: any;
161
+ };
162
+ entity_id: string;
163
+ last_changed: string;
164
+ last_reported: string;
165
+ last_updated: string;
166
+ state: string;
167
+ };
168
+ sun_next_rising: {
169
+ attributes: {
170
+ device_class: string;
171
+ friendly_name: string;
172
+ };
173
+ context: {
174
+ id: string;
175
+ parent_id: any;
176
+ user_id: any;
177
+ };
178
+ entity_id: string;
179
+ last_changed: string;
180
+ last_reported: string;
181
+ last_updated: string;
182
+ state: string;
183
+ };
184
+ sun_next_setting: {
185
+ attributes: {
186
+ device_class: string;
187
+ friendly_name: string;
188
+ };
189
+ context: {
190
+ id: string;
191
+ parent_id: any;
192
+ user_id: any;
193
+ };
194
+ entity_id: string;
195
+ last_changed: string;
196
+ last_reported: string;
197
+ last_updated: string;
198
+ state: string;
199
+ };
152
200
  };
153
- floor: {
154
- _example_floor_2: "button.example_button" | "button.example_button";
155
- _example_floor: "button.example_button" | "button.example_button";
201
+ sun: {
202
+ sun: {
203
+ attributes: {
204
+ azimuth: number;
205
+ elevation: number;
206
+ friendly_name: string;
207
+ next_dawn: string;
208
+ next_dusk: string;
209
+ next_midnight: string;
210
+ next_noon: string;
211
+ next_rising: string;
212
+ next_setting: string;
213
+ rising: boolean;
214
+ };
215
+ context: {
216
+ id: string;
217
+ parent_id: any;
218
+ user_id: any;
219
+ };
220
+ entity_id: string;
221
+ last_changed: string;
222
+ last_reported: string;
223
+ last_updated: string;
224
+ state: string;
225
+ };
156
226
  };
157
- device: {
158
- _example_device_2: "button.example_button" | "button.example_button";
159
- _example_device: "button.example_button" | "button.example_button";
227
+ switch: {
228
+ bedroom_lamp: {
229
+ attributes: {
230
+ friendly_name: string;
231
+ restored: boolean;
232
+ supported_features: number;
233
+ };
234
+ context: {
235
+ id: string;
236
+ parent_id: any;
237
+ user_id: any;
238
+ };
239
+ entity_id: string;
240
+ last_changed: string;
241
+ last_reported: string;
242
+ last_updated: string;
243
+ state: string;
244
+ };
245
+ kitchen_cabinets: {
246
+ attributes: {
247
+ friendly_name: string;
248
+ restored: boolean;
249
+ supported_features: number;
250
+ };
251
+ context: {
252
+ id: string;
253
+ parent_id: any;
254
+ user_id: any;
255
+ };
256
+ entity_id: string;
257
+ last_changed: string;
258
+ last_reported: string;
259
+ last_updated: string;
260
+ state: string;
261
+ };
262
+ living_room_mood_lights: {
263
+ attributes: {
264
+ friendly_name: string;
265
+ restored: boolean;
266
+ supported_features: number;
267
+ };
268
+ context: {
269
+ id: string;
270
+ parent_id: any;
271
+ user_id: any;
272
+ };
273
+ entity_id: string;
274
+ last_changed: string;
275
+ last_reported: string;
276
+ last_updated: string;
277
+ state: string;
278
+ };
279
+ porch_light: {
280
+ attributes: {
281
+ friendly_name: string;
282
+ restored: boolean;
283
+ supported_features: number;
284
+ };
285
+ context: {
286
+ id: string;
287
+ parent_id: any;
288
+ user_id: any;
289
+ };
290
+ entity_id: string;
291
+ last_changed: string;
292
+ last_reported: string;
293
+ last_updated: string;
294
+ state: string;
295
+ };
296
+ };
297
+ todo: {
298
+ shopping_list: {
299
+ attributes: {
300
+ friendly_name: string;
301
+ supported_features: number;
302
+ };
303
+ context: {
304
+ id: string;
305
+ parent_id: any;
306
+ user_id: any;
307
+ };
308
+ entity_id: string;
309
+ last_changed: string;
310
+ last_reported: string;
311
+ last_updated: string;
312
+ state: string;
313
+ };
314
+ };
315
+ tts: {
316
+ google_en_com: {
317
+ attributes: {
318
+ friendly_name: string;
319
+ };
320
+ context: {
321
+ id: string;
322
+ parent_id: any;
323
+ user_id: any;
324
+ };
325
+ entity_id: string;
326
+ last_changed: string;
327
+ last_reported: string;
328
+ last_updated: string;
329
+ state: string;
330
+ };
331
+ };
332
+ zone: {
333
+ home: {
334
+ attributes: {
335
+ editable: boolean;
336
+ friendly_name: string;
337
+ icon: string;
338
+ latitude: number;
339
+ longitude: number;
340
+ passive: boolean;
341
+ persons: any[];
342
+ radius: number;
343
+ };
344
+ context: {
345
+ id: string;
346
+ parent_id: any;
347
+ user_id: any;
348
+ };
349
+ entity_id: string;
350
+ last_changed: string;
351
+ last_reported: string;
352
+ last_updated: string;
353
+ state: string;
354
+ };
160
355
  };
161
356
  };
162
357
  export type iCallService = {
163
- switch: {
164
- turn_off(service_data: {
165
- entity_id: string | string[];
358
+ automation: {
359
+ /**
360
+ * ### Reload
361
+ *
362
+ * > Reloads the automation configuration.
363
+ */
364
+ reload(service_data: {}): Promise<void>;
365
+ /**
366
+ * ### Toggle
367
+ *
368
+ * > Toggles (enable / disable) an automation.
369
+ */
370
+ toggle(service_data: {
371
+ /**
372
+ * Assisted definition
373
+ * > ```yaml
374
+ * > entity:
375
+ * > - domain:
376
+ * > - automation
377
+ * > ```
378
+ */
379
+ entity_id: PICK_ENTITY<"automation"> | PICK_ENTITY<"automation">[];
380
+ }): Promise<void>;
381
+ /**
382
+ * ### Trigger
383
+ *
384
+ * > Triggers the actions of an automation.
385
+ */
386
+ trigger(service_data?: {
387
+ /**
388
+ * ## Skip conditions
389
+ *
390
+ * > Defines whether or not the conditions will be skipped.
391
+ *
392
+ * ### Default
393
+ *
394
+ * > ```json
395
+ * > true
396
+ * > ```
397
+ */
398
+ skip_condition?: boolean;
399
+ /**
400
+ * Assisted definition
401
+ * > ```yaml
402
+ * > entity:
403
+ * > - domain:
404
+ * > - automation
405
+ * > ```
406
+ */
407
+ entity_id: PICK_ENTITY<"automation"> | PICK_ENTITY<"automation">[];
408
+ }): Promise<void>;
409
+ /**
410
+ * ### Turn off
411
+ *
412
+ * > Disables an automation.
413
+ */
414
+ turn_off(service_data?: {
415
+ /**
416
+ * ## Stop actions
417
+ *
418
+ * > Stops currently running actions.
419
+ *
420
+ * ### Default
421
+ *
422
+ * > ```json
423
+ * > true
424
+ * > ```
425
+ */
426
+ stop_actions?: boolean;
427
+ /**
428
+ * Assisted definition
429
+ * > ```yaml
430
+ * > entity:
431
+ * > - domain:
432
+ * > - automation
433
+ * > ```
434
+ */
435
+ entity_id: PICK_ENTITY<"automation"> | PICK_ENTITY<"automation">[];
166
436
  }): Promise<void>;
437
+ /**
438
+ * ### Turn on
439
+ *
440
+ * > Enables an automation.
441
+ */
167
442
  turn_on(service_data: {
168
- entity_id: string | string[];
443
+ /**
444
+ * Assisted definition
445
+ * > ```yaml
446
+ * > entity:
447
+ * > - domain:
448
+ * > - automation
449
+ * > ```
450
+ */
451
+ entity_id: PICK_ENTITY<"automation"> | PICK_ENTITY<"automation">[];
169
452
  }): Promise<void>;
170
- toggle(service_data: {
171
- entity_id: string | string[];
453
+ };
454
+ backup: {
455
+ /**
456
+ * ### Create backup
457
+ *
458
+ * > Creates a new backup.
459
+ */
460
+ create(service_data: {}): Promise<void>;
461
+ };
462
+ button: {
463
+ /**
464
+ * ### Press
465
+ *
466
+ * > Press the button entity.
467
+ */
468
+ press(service_data: {
469
+ /**
470
+ * Assisted definition
471
+ * > ```yaml
472
+ * > entity:
473
+ * > - domain:
474
+ * > - button
475
+ * > ```
476
+ */
477
+ entity_id: PICK_ENTITY<"button"> | PICK_ENTITY<"button">[];
172
478
  }): Promise<void>;
173
479
  };
174
- light: {
175
- turn_on(service_data: {
176
- transition?: number;
177
- rgb_color?: unknown;
178
- rgbw_color?: Record<string, unknown> | unknown[];
179
- rgbww_color?: Record<string, unknown> | unknown[];
180
- color_name?: "homeassistant" | "yellowgreen";
181
- hs_color?: Record<string, unknown> | unknown[];
182
- xy_color?: Record<string, unknown> | unknown[];
183
- color_temp?: unknown;
184
- kelvin?: number;
185
- brightness?: number;
186
- brightness_pct?: number;
187
- brightness_step?: number;
188
- brightness_step_pct?: number;
189
- white?: unknown;
190
- profile?: string;
191
- flash?: "long" | "short";
192
- effect?: string;
193
- entity_id: string | string[];
480
+ calendar: {
481
+ /**
482
+ * ### Create event
483
+ *
484
+ * > Adds a new calendar event.
485
+ */
486
+ create_event(service_data?: {
487
+ /**
488
+ * ## Description
489
+ *
490
+ * > A more complete description of the event than the one provided by the summary.
491
+ *
492
+ * ### Example
493
+ *
494
+ * > ```json
495
+ * > {
496
+ * > "description": "Meeting to provide technical review for 'Phoenix' design."
497
+ * > }
498
+ * > ```
499
+ */
500
+ description?: string;
501
+ /**
502
+ * ## End date
503
+ *
504
+ * > The date the all-day event should end (exclusive).
505
+ *
506
+ * ### Example
507
+ *
508
+ * > ```json
509
+ * > {
510
+ * > "end_date": "2022-03-23"
511
+ * > }
512
+ * > ```
513
+ *
514
+ * ## Selector
515
+ *
516
+ * > ```yaml
517
+ * > date: null
518
+ * > ```
519
+ */
520
+ end_date?: unknown;
521
+ /**
522
+ * ## End time
523
+ *
524
+ * > The date and time the event should end.
525
+ *
526
+ * ### Example
527
+ *
528
+ * > ```json
529
+ * > {
530
+ * > "end_date_time": "2022-03-22 22:00:00"
531
+ * > }
532
+ * > ```
533
+ *
534
+ * ## Selector
535
+ *
536
+ * > ```yaml
537
+ * > datetime: null
538
+ * > ```
539
+ */
540
+ end_date_time?: unknown;
541
+ /**
542
+ * ## In
543
+ *
544
+ * > Days or weeks that you want to create the event in.
545
+ *
546
+ * ### Example
547
+ *
548
+ * > ```json
549
+ * > {
550
+ * > "in": "{\"days\": 2} or {\"weeks\": 2}"
551
+ * > }
552
+ * > ```
553
+ *
554
+ * ## Selector
555
+ *
556
+ * > ```yaml
557
+ * >
558
+ * > ```
559
+ */
560
+ in?: unknown;
561
+ /**
562
+ * ## Location
563
+ *
564
+ * > The location of the event.
565
+ *
566
+ * ### Example
567
+ *
568
+ * > ```json
569
+ * > {
570
+ * > "location": "Conference Room - F123, Bldg. 002"
571
+ * > }
572
+ * > ```
573
+ */
574
+ location?: string;
575
+ /**
576
+ * ## Start date
577
+ *
578
+ * > The date the all-day event should start.
579
+ *
580
+ * ### Example
581
+ *
582
+ * > ```json
583
+ * > {
584
+ * > "start_date": "2022-03-22"
585
+ * > }
586
+ * > ```
587
+ *
588
+ * ## Selector
589
+ *
590
+ * > ```yaml
591
+ * > date: null
592
+ * > ```
593
+ */
594
+ start_date?: unknown;
595
+ /**
596
+ * ## Start time
597
+ *
598
+ * > The date and time the event should start.
599
+ *
600
+ * ### Example
601
+ *
602
+ * > ```json
603
+ * > {
604
+ * > "start_date_time": "2022-03-22 20:00:00"
605
+ * > }
606
+ * > ```
607
+ *
608
+ * ## Selector
609
+ *
610
+ * > ```yaml
611
+ * > datetime: null
612
+ * > ```
613
+ */
614
+ start_date_time?: unknown;
615
+ /**
616
+ * ## Summary
617
+ *
618
+ * > Defines the short summary or subject for the event.
619
+ *
620
+ * ### Example
621
+ *
622
+ * > ```json
623
+ * > {
624
+ * > "summary": "Department Party"
625
+ * > }
626
+ * > ```
627
+ */
628
+ summary: string;
629
+ /**
630
+ * Assisted definition
631
+ * > ```yaml
632
+ * > entity:
633
+ * > - domain:
634
+ * > - calendar
635
+ * > supported_features:
636
+ * > - 1
637
+ * > ```
638
+ */
639
+ entity_id: PICK_ENTITY<"calendar"> | PICK_ENTITY<"calendar">[];
640
+ }): Promise<void>;
641
+ /**
642
+ * ### Get events
643
+ *
644
+ * > Get events on a calendar within a time range.
645
+ */
646
+ get_events(service_data?: {
647
+ /**
648
+ * ## Duration
649
+ *
650
+ * > Returns active events from start_date_time until the specified duration.
651
+ *
652
+ * ## Selector
653
+ *
654
+ * > ```yaml
655
+ * > duration: null
656
+ * > ```
657
+ */
658
+ duration?: unknown;
659
+ /**
660
+ * ## End time
661
+ *
662
+ * > Returns active events before this time (exclusive). Cannot be used with 'duration'.
663
+ *
664
+ * ### Example
665
+ *
666
+ * > ```json
667
+ * > {
668
+ * > "end_date_time": "2022-03-22 22:00:00"
669
+ * > }
670
+ * > ```
671
+ *
672
+ * ## Selector
673
+ *
674
+ * > ```yaml
675
+ * > datetime: null
676
+ * > ```
677
+ */
678
+ end_date_time?: unknown;
679
+ /**
680
+ * ## Start time
681
+ *
682
+ * > Returns active events after this time (exclusive). When not set, defaults to now.
683
+ *
684
+ * ### Example
685
+ *
686
+ * > ```json
687
+ * > {
688
+ * > "start_date_time": "2022-03-22 20:00:00"
689
+ * > }
690
+ * > ```
691
+ *
692
+ * ## Selector
693
+ *
694
+ * > ```yaml
695
+ * > datetime: null
696
+ * > ```
697
+ */
698
+ start_date_time?: unknown;
699
+ /**
700
+ * Assisted definition
701
+ * > ```yaml
702
+ * > entity:
703
+ * > - domain:
704
+ * > - calendar
705
+ * > ```
706
+ */
707
+ entity_id: PICK_ENTITY<"calendar"> | PICK_ENTITY<"calendar">[];
194
708
  }): Promise<void>;
709
+ /**
710
+ * ### List event
711
+ *
712
+ * > Lists events on a calendar within a time range.
713
+ */
714
+ list_events(service_data?: {
715
+ /**
716
+ * ## Duration
717
+ *
718
+ * > Returns active events from start_date_time until the specified duration.
719
+ *
720
+ * ## Selector
721
+ *
722
+ * > ```yaml
723
+ * > duration: null
724
+ * > ```
725
+ */
726
+ duration?: unknown;
727
+ /**
728
+ * ## End time
729
+ *
730
+ * > Returns active events before this time (exclusive). Cannot be used with 'duration'.
731
+ *
732
+ * ### Example
733
+ *
734
+ * > ```json
735
+ * > {
736
+ * > "end_date_time": "2022-03-22 22:00:00"
737
+ * > }
738
+ * > ```
739
+ *
740
+ * ## Selector
741
+ *
742
+ * > ```yaml
743
+ * > datetime: null
744
+ * > ```
745
+ */
746
+ end_date_time?: unknown;
747
+ /**
748
+ * ## Start time
749
+ *
750
+ * > Returns active events after this time (exclusive). When not set, defaults to now.
751
+ *
752
+ * ### Example
753
+ *
754
+ * > ```json
755
+ * > {
756
+ * > "start_date_time": "2022-03-22 20:00:00"
757
+ * > }
758
+ * > ```
759
+ *
760
+ * ## Selector
761
+ *
762
+ * > ```yaml
763
+ * > datetime: null
764
+ * > ```
765
+ */
766
+ start_date_time?: unknown;
767
+ /**
768
+ * Assisted definition
769
+ * > ```yaml
770
+ * > entity:
771
+ * > - domain:
772
+ * > - calendar
773
+ * > ```
774
+ */
775
+ entity_id: PICK_ENTITY<"calendar"> | PICK_ENTITY<"calendar">[];
776
+ }): Promise<void>;
777
+ };
778
+ cloud: {
779
+ /**
780
+ * ### Remote connect
781
+ *
782
+ * > Makes the instance UI accessible from outside of the local network by using Home Assistant Cloud.
783
+ */
784
+ remote_connect(service_data: {}): Promise<void>;
785
+ /**
786
+ * ### Remote disconnect
787
+ *
788
+ * > Disconnects the Home Assistant UI from the Home Assistant Cloud. You will no longer be able to access your Home Assistant instance from outside your local network.
789
+ */
790
+ remote_disconnect(service_data: {}): Promise<void>;
791
+ };
792
+ conversation: {
793
+ /**
794
+ * ### Process
795
+ *
796
+ * > Launches a conversation from a transcribed text.
797
+ */
798
+ process(service_data?: {
799
+ /**
800
+ * ## Agent
801
+ *
802
+ * > Conversation agent to process your request. The conversation agent is the brains of your assistant. It processes the incoming text commands.
803
+ *
804
+ * ### Example
805
+ *
806
+ * > ```json
807
+ * > {
808
+ * > "agent_id": "homeassistant"
809
+ * > }
810
+ * > ```
811
+ *
812
+ * ## Selector
813
+ *
814
+ * > ```yaml
815
+ * > conversation_agent: null
816
+ * > ```
817
+ */
818
+ agent_id?: unknown;
819
+ /**
820
+ * ## Conversation ID
821
+ *
822
+ * > ID of the conversation, to be able to continue a previous conversation
823
+ *
824
+ * ### Example
825
+ *
826
+ * > ```json
827
+ * > {
828
+ * > "conversation_id": "my_conversation_1"
829
+ * > }
830
+ * > ```
831
+ */
832
+ conversation_id?: string;
833
+ /**
834
+ * ## Language
835
+ *
836
+ * > Language of text. Defaults to server language.
837
+ *
838
+ * ### Example
839
+ *
840
+ * > ```json
841
+ * > {
842
+ * > "language": "NL"
843
+ * > }
844
+ * > ```
845
+ */
846
+ language?: string;
847
+ /**
848
+ * ## Text
849
+ *
850
+ * > Transcribed text input.
851
+ *
852
+ * ### Example
853
+ *
854
+ * > ```json
855
+ * > {
856
+ * > "text": "Turn all lights on"
857
+ * > }
858
+ * > ```
859
+ */
860
+ text: string;
861
+ }): Promise<void>;
862
+ /**
863
+ * ### Reload
864
+ *
865
+ * > Reloads the intent configuration.
866
+ */
867
+ reload(service_data?: {
868
+ /**
869
+ * ## Agent
870
+ *
871
+ * > Conversation agent to reload.
872
+ *
873
+ * ### Example
874
+ *
875
+ * > ```json
876
+ * > {
877
+ * > "agent_id": "homeassistant"
878
+ * > }
879
+ * > ```
880
+ *
881
+ * ## Selector
882
+ *
883
+ * > ```yaml
884
+ * > conversation_agent: null
885
+ * > ```
886
+ */
887
+ agent_id?: unknown;
888
+ /**
889
+ * ## Language
890
+ *
891
+ * > Language to clear cached intents for. Defaults to server language.
892
+ *
893
+ * ### Example
894
+ *
895
+ * > ```json
896
+ * > {
897
+ * > "language": "NL"
898
+ * > }
899
+ * > ```
900
+ */
901
+ language?: string;
902
+ }): Promise<void>;
903
+ };
904
+ counter: {
905
+ /**
906
+ * ### Decrement
907
+ *
908
+ * > Decrements a counter.
909
+ */
910
+ decrement(service_data: {
911
+ /**
912
+ * Assisted definition
913
+ * > ```yaml
914
+ * > entity:
915
+ * > - domain:
916
+ * > - counter
917
+ * > ```
918
+ */
919
+ entity_id: PICK_ENTITY<"counter"> | PICK_ENTITY<"counter">[];
920
+ }): Promise<void>;
921
+ /**
922
+ * ### Increment
923
+ *
924
+ * > Increments a counter.
925
+ */
926
+ increment(service_data: {
927
+ /**
928
+ * Assisted definition
929
+ * > ```yaml
930
+ * > entity:
931
+ * > - domain:
932
+ * > - counter
933
+ * > ```
934
+ */
935
+ entity_id: PICK_ENTITY<"counter"> | PICK_ENTITY<"counter">[];
936
+ }): Promise<void>;
937
+ /**
938
+ * ### Reset
939
+ *
940
+ * > Resets a counter.
941
+ */
942
+ reset(service_data: {
943
+ /**
944
+ * Assisted definition
945
+ * > ```yaml
946
+ * > entity:
947
+ * > - domain:
948
+ * > - counter
949
+ * > ```
950
+ */
951
+ entity_id: PICK_ENTITY<"counter"> | PICK_ENTITY<"counter">[];
952
+ }): Promise<void>;
953
+ /**
954
+ * ### Set
955
+ *
956
+ * > Sets the counter value.
957
+ */
958
+ set_value(service_data: {
959
+ /**
960
+ * ## Value
961
+ *
962
+ * > The new counter value the entity should be set to.
963
+ *
964
+ * ## Selector
965
+ *
966
+ * > ```yaml
967
+ * > number:
968
+ * > min: 0
969
+ * > max: 9223372036854776000
970
+ * > mode: box
971
+ * > ```
972
+ */
973
+ value: number;
974
+ /**
975
+ * Assisted definition
976
+ * > ```yaml
977
+ * > entity:
978
+ * > - domain:
979
+ * > - counter
980
+ * > ```
981
+ */
982
+ entity_id: PICK_ENTITY<"counter"> | PICK_ENTITY<"counter">[];
983
+ }): Promise<void>;
984
+ };
985
+ ffmpeg: {
986
+ /**
987
+ * ### Restart
988
+ *
989
+ * > Sends a restart command to a ffmpeg based sensor.
990
+ */
991
+ restart(service_data?: {
992
+ /**
993
+ * ## Entity
994
+ *
995
+ * > Name of entity that will restart. Platform dependent.
996
+ *
997
+ * ## Selector
998
+ *
999
+ * > ```yaml
1000
+ * > entity:
1001
+ * > integration: ffmpeg
1002
+ * > domain: binary_sensor
1003
+ * > ```
1004
+ */
1005
+ entity_id?: PICK_FROM_PLATFORM<"ffmpeg", "binary_sensor"> | PICK_FROM_PLATFORM<"ffmpeg", "binary_sensor">[];
1006
+ }): Promise<void>;
1007
+ /**
1008
+ * ### Start
1009
+ *
1010
+ * > Sends a start command to a ffmpeg based sensor.
1011
+ */
1012
+ start(service_data?: {
1013
+ /**
1014
+ * ## Entity
1015
+ *
1016
+ * > Name of entity that will start. Platform dependent.
1017
+ *
1018
+ * ## Selector
1019
+ *
1020
+ * > ```yaml
1021
+ * > entity:
1022
+ * > integration: ffmpeg
1023
+ * > domain: binary_sensor
1024
+ * > ```
1025
+ */
1026
+ entity_id?: PICK_FROM_PLATFORM<"ffmpeg", "binary_sensor"> | PICK_FROM_PLATFORM<"ffmpeg", "binary_sensor">[];
1027
+ }): Promise<void>;
1028
+ /**
1029
+ * ### Stop
1030
+ *
1031
+ * > Sends a stop command to a ffmpeg based sensor.
1032
+ */
1033
+ stop(service_data?: {
1034
+ /**
1035
+ * ## Entity
1036
+ *
1037
+ * > Name of entity that will stop. Platform dependent.
1038
+ *
1039
+ * ## Selector
1040
+ *
1041
+ * > ```yaml
1042
+ * > entity:
1043
+ * > integration: ffmpeg
1044
+ * > domain: binary_sensor
1045
+ * > ```
1046
+ */
1047
+ entity_id?: PICK_FROM_PLATFORM<"ffmpeg", "binary_sensor"> | PICK_FROM_PLATFORM<"ffmpeg", "binary_sensor">[];
1048
+ }): Promise<void>;
1049
+ };
1050
+ frontend: {
1051
+ /**
1052
+ * ### Reload themes
1053
+ *
1054
+ * > Reloads themes from the YAML-configuration.
1055
+ */
1056
+ reload_themes(service_data: {}): Promise<void>;
1057
+ /**
1058
+ * ### Set the default theme
1059
+ *
1060
+ * > Sets the default theme Home Assistant uses. Can be overridden by a user.
1061
+ */
1062
+ set_theme(service_data?: {
1063
+ /**
1064
+ * ## Mode
1065
+ *
1066
+ * > Theme mode.
1067
+ *
1068
+ * ### Default
1069
+ *
1070
+ * > ```json
1071
+ * > "light"
1072
+ * > ```
1073
+ */
1074
+ mode?: "dark" | "light";
1075
+ /**
1076
+ * ## Theme
1077
+ *
1078
+ * > Name of a theme.
1079
+ *
1080
+ * ### Example
1081
+ *
1082
+ * > ```json
1083
+ * > {
1084
+ * > "name": "default"
1085
+ * > }
1086
+ * > ```
1087
+ *
1088
+ * ## Selector
1089
+ *
1090
+ * > ```yaml
1091
+ * > theme:
1092
+ * > include_default: true
1093
+ * > ```
1094
+ */
1095
+ name: unknown;
1096
+ }): Promise<void>;
1097
+ };
1098
+ homeassistant: {
1099
+ /**
1100
+ * ### Check configuration
1101
+ *
1102
+ * > Checks the Home Assistant YAML-configuration files for errors. Errors will be shown in the Home Assistant logs.
1103
+ */
1104
+ check_config(service_data: {}): Promise<void>;
1105
+ /**
1106
+ * ### Reload all
1107
+ *
1108
+ * > Reload all YAML configuration that can be reloaded without restarting Home Assistant.
1109
+ */
1110
+ reload_all(service_data: {}): Promise<void>;
1111
+ /**
1112
+ * ### Reload config entry
1113
+ *
1114
+ * > Reloads the specified config entry.
1115
+ */
1116
+ reload_config_entry(service_data?: {
1117
+ /**
1118
+ * ## Config entry ID
1119
+ *
1120
+ * > The configuration entry ID of the entry to be reloaded.
1121
+ *
1122
+ * ### Example
1123
+ *
1124
+ * > ```json
1125
+ * > {
1126
+ * > "entry_id": "8955375327824e14ba89e4b29cc3ec9a"
1127
+ * > }
1128
+ * > ```
1129
+ */
1130
+ entry_id?: string;
1131
+ /**
1132
+ * Assisted definition
1133
+ * > ```yaml
1134
+ * > entity:
1135
+ * > - {}
1136
+ * > device:
1137
+ * > - {}
1138
+ * > ```
1139
+ */
1140
+ entity_id: PICK_ENTITY | PICK_ENTITY[];
1141
+ }): Promise<void>;
1142
+ /**
1143
+ * ### Reload core configuration
1144
+ *
1145
+ * > Reloads the core configuration from the YAML-configuration.
1146
+ */
1147
+ reload_core_config(service_data: {}): Promise<void>;
1148
+ /**
1149
+ * ### Reload custom Jinja2 templates
1150
+ *
1151
+ * > Reloads Jinja2 templates found in the `custom_templates` folder in your config. New values will be applied on the next render of the template.
1152
+ */
1153
+ reload_custom_templates(service_data: {}): Promise<void>;
1154
+ /**
1155
+ * ### Restart
1156
+ *
1157
+ * > Restarts Home Assistant.
1158
+ */
1159
+ restart(service_data: {}): Promise<void>;
1160
+ /**
1161
+ * ### Save persistent states
1162
+ *
1163
+ * > Saves the persistent states immediately. Maintains the normal periodic saving interval.
1164
+ */
1165
+ save_persistent_states(service_data: {}): Promise<void>;
1166
+ /**
1167
+ * ### Set location
1168
+ *
1169
+ * > Updates the Home Assistant location.
1170
+ */
1171
+ set_location(service_data?: {
1172
+ /**
1173
+ * ## Elevation
1174
+ *
1175
+ * > Elevation of your location.
1176
+ *
1177
+ * ### Example
1178
+ *
1179
+ * > ```json
1180
+ * > {
1181
+ * > "elevation": "120"
1182
+ * > }
1183
+ * > ```
1184
+ *
1185
+ * ## Selector
1186
+ *
1187
+ * > ```yaml
1188
+ * > number:
1189
+ * > mode: box
1190
+ * > step: any
1191
+ * > ```
1192
+ */
1193
+ elevation?: number;
1194
+ /**
1195
+ * ## Latitude
1196
+ *
1197
+ * > Latitude of your location.
1198
+ *
1199
+ * ### Example
1200
+ *
1201
+ * > ```json
1202
+ * > {
1203
+ * > "latitude": "32.87336"
1204
+ * > }
1205
+ * > ```
1206
+ *
1207
+ * ## Selector
1208
+ *
1209
+ * > ```yaml
1210
+ * > number:
1211
+ * > mode: box
1212
+ * > min: -90
1213
+ * > max: 90
1214
+ * > step: any
1215
+ * > ```
1216
+ */
1217
+ latitude: number;
1218
+ /**
1219
+ * ## Longitude
1220
+ *
1221
+ * > Longitude of your location.
1222
+ *
1223
+ * ### Example
1224
+ *
1225
+ * > ```json
1226
+ * > {
1227
+ * > "longitude": "117.22743"
1228
+ * > }
1229
+ * > ```
1230
+ *
1231
+ * ## Selector
1232
+ *
1233
+ * > ```yaml
1234
+ * > number:
1235
+ * > mode: box
1236
+ * > min: -180
1237
+ * > max: 180
1238
+ * > step: any
1239
+ * > ```
1240
+ */
1241
+ longitude: number;
1242
+ }): Promise<void>;
1243
+ /**
1244
+ * ### Stop
1245
+ *
1246
+ * > Stops Home Assistant.
1247
+ */
1248
+ stop(service_data: {}): Promise<void>;
1249
+ /**
1250
+ * ### Generic toggle
1251
+ *
1252
+ * > Generic service to toggle devices on/off under any domain.
1253
+ */
1254
+ toggle(service_data: {
1255
+ /**
1256
+ * Assisted definition
1257
+ * > ```yaml
1258
+ * > entity:
1259
+ * > - {}
1260
+ * > ```
1261
+ */
1262
+ entity_id: PICK_ENTITY | PICK_ENTITY[];
1263
+ }): Promise<void>;
1264
+ /**
1265
+ * ### Generic turn off
1266
+ *
1267
+ * > Generic service to turn devices off under any domain.
1268
+ */
195
1269
  turn_off(service_data: {
196
- transition?: number;
197
- flash?: "long" | "short";
198
- entity_id: string | string[];
1270
+ /**
1271
+ * Assisted definition
1272
+ * > ```yaml
1273
+ * > entity:
1274
+ * > - {}
1275
+ * > ```
1276
+ */
1277
+ entity_id: PICK_ENTITY | PICK_ENTITY[];
1278
+ }): Promise<void>;
1279
+ /**
1280
+ * ### Generic turn on
1281
+ *
1282
+ * > Generic service to turn devices on under any domain.
1283
+ */
1284
+ turn_on(service_data: {
1285
+ /**
1286
+ * Assisted definition
1287
+ * > ```yaml
1288
+ * > entity:
1289
+ * > - {}
1290
+ * > ```
1291
+ */
1292
+ entity_id: PICK_ENTITY | PICK_ENTITY[];
1293
+ }): Promise<void>;
1294
+ /**
1295
+ * ### Update entity
1296
+ *
1297
+ * > Forces one or more entities to update its data.
1298
+ */
1299
+ update_entity(service_data: {
1300
+ /**
1301
+ * Assisted definition
1302
+ * > ```yaml
1303
+ * > entity:
1304
+ * > - {}
1305
+ * > ```
1306
+ */
1307
+ entity_id: PICK_ENTITY | PICK_ENTITY[];
199
1308
  }): Promise<void>;
1309
+ };
1310
+ input_boolean: {
1311
+ /**
1312
+ * ### Reload
1313
+ *
1314
+ * > Reloads helpers from the YAML-configuration.
1315
+ */
1316
+ reload(service_data: {}): Promise<void>;
1317
+ /**
1318
+ * ### Toggle
1319
+ *
1320
+ * > Toggles the helper on/off.
1321
+ */
200
1322
  toggle(service_data: {
201
- transition?: number;
202
- rgb_color?: unknown;
203
- color_name?: "homeassistant" | "yellowgreen";
204
- hs_color?: Record<string, unknown> | unknown[];
205
- xy_color?: Record<string, unknown> | unknown[];
206
- color_temp?: unknown;
207
- kelvin?: number;
208
- brightness?: number;
209
- brightness_pct?: number;
210
- white?: unknown;
211
- profile?: string;
212
- flash?: "long" | "short";
213
- effect?: string;
214
- entity_id: string | string[];
1323
+ /**
1324
+ * Assisted definition
1325
+ * > ```yaml
1326
+ * > entity:
1327
+ * > - domain:
1328
+ * > - input_boolean
1329
+ * > ```
1330
+ */
1331
+ entity_id: PICK_ENTITY<"input_boolean"> | PICK_ENTITY<"input_boolean">[];
1332
+ }): Promise<void>;
1333
+ /**
1334
+ * ### Turn off
1335
+ *
1336
+ * > Turns off the helper.
1337
+ */
1338
+ turn_off(service_data: {
1339
+ /**
1340
+ * Assisted definition
1341
+ * > ```yaml
1342
+ * > entity:
1343
+ * > - domain:
1344
+ * > - input_boolean
1345
+ * > ```
1346
+ */
1347
+ entity_id: PICK_ENTITY<"input_boolean"> | PICK_ENTITY<"input_boolean">[];
1348
+ }): Promise<void>;
1349
+ /**
1350
+ * ### Turn on
1351
+ *
1352
+ * > Turns on the helper.
1353
+ */
1354
+ turn_on(service_data: {
1355
+ /**
1356
+ * Assisted definition
1357
+ * > ```yaml
1358
+ * > entity:
1359
+ * > - domain:
1360
+ * > - input_boolean
1361
+ * > ```
1362
+ */
1363
+ entity_id: PICK_ENTITY<"input_boolean"> | PICK_ENTITY<"input_boolean">[];
215
1364
  }): Promise<void>;
216
1365
  };
217
- scene: {
1366
+ input_button: {
1367
+ /**
1368
+ * ### Press
1369
+ *
1370
+ * > Mimics the physical button press on the device.
1371
+ */
1372
+ press(service_data: {
1373
+ /**
1374
+ * Assisted definition
1375
+ * > ```yaml
1376
+ * > entity:
1377
+ * > - domain:
1378
+ * > - input_button
1379
+ * > ```
1380
+ */
1381
+ entity_id: PICK_ENTITY<"input_button"> | PICK_ENTITY<"input_button">[];
1382
+ }): Promise<void>;
1383
+ /**
1384
+ * ### Reload
1385
+ *
1386
+ * > Reloads helpers from the YAML-configuration.
1387
+ */
1388
+ reload(service_data: {}): Promise<void>;
1389
+ };
1390
+ input_datetime: {
1391
+ /**
1392
+ * ### Reload
1393
+ *
1394
+ * > Reloads helpers from the YAML-configuration.
1395
+ */
218
1396
  reload(service_data: {}): Promise<void>;
219
- apply(service_data: {
220
- entities: Partial<Record<PICK_ENTITY, unknown>> | unknown[];
1397
+ /**
1398
+ * ### Set
1399
+ *
1400
+ * > Sets the date and/or time.
1401
+ */
1402
+ set_datetime(service_data?: {
1403
+ /**
1404
+ * ## Date
1405
+ *
1406
+ * > The target date.
1407
+ *
1408
+ * ### Example
1409
+ *
1410
+ * > ```json
1411
+ * > {
1412
+ * > "date": "\"2019-04-20\""
1413
+ * > }
1414
+ * > ```
1415
+ */
1416
+ date?: string;
1417
+ /**
1418
+ * ## Date & time
1419
+ *
1420
+ * > The target date & time.
1421
+ *
1422
+ * ### Example
1423
+ *
1424
+ * > ```json
1425
+ * > {
1426
+ * > "datetime": "\"2019-04-20 05:04:20\""
1427
+ * > }
1428
+ * > ```
1429
+ */
1430
+ datetime?: string;
1431
+ /**
1432
+ * ## Time
1433
+ *
1434
+ * > The target time.
1435
+ *
1436
+ * ### Example
1437
+ *
1438
+ * > ```json
1439
+ * > {
1440
+ * > "time": "\"05:04:20\""
1441
+ * > }
1442
+ * > ```
1443
+ */
1444
+ time?: string;
1445
+ /**
1446
+ * ## Timestamp
1447
+ *
1448
+ * > The target date & time, expressed by a UNIX timestamp.
1449
+ *
1450
+ * ## Selector
1451
+ *
1452
+ * > ```yaml
1453
+ * > number:
1454
+ * > min: 0
1455
+ * > max: 9223372036854776000
1456
+ * > mode: box
1457
+ * > ```
1458
+ */
1459
+ timestamp?: number;
1460
+ /**
1461
+ * Assisted definition
1462
+ * > ```yaml
1463
+ * > entity:
1464
+ * > - domain:
1465
+ * > - input_datetime
1466
+ * > ```
1467
+ */
1468
+ entity_id: PICK_ENTITY<"input_datetime"> | PICK_ENTITY<"input_datetime">[];
1469
+ }): Promise<void>;
1470
+ };
1471
+ input_number: {
1472
+ /**
1473
+ * ### Decrement
1474
+ *
1475
+ * > Decrements the current value by 1 step.
1476
+ */
1477
+ decrement(service_data: {
1478
+ /**
1479
+ * Assisted definition
1480
+ * > ```yaml
1481
+ * > entity:
1482
+ * > - domain:
1483
+ * > - input_number
1484
+ * > ```
1485
+ */
1486
+ entity_id: PICK_ENTITY<"input_number"> | PICK_ENTITY<"input_number">[];
1487
+ }): Promise<void>;
1488
+ /**
1489
+ * ### Increment
1490
+ *
1491
+ * > Increments the value by 1 step.
1492
+ */
1493
+ increment(service_data: {
1494
+ /**
1495
+ * Assisted definition
1496
+ * > ```yaml
1497
+ * > entity:
1498
+ * > - domain:
1499
+ * > - input_number
1500
+ * > ```
1501
+ */
1502
+ entity_id: PICK_ENTITY<"input_number"> | PICK_ENTITY<"input_number">[];
1503
+ }): Promise<void>;
1504
+ /**
1505
+ * ### Reload
1506
+ *
1507
+ * > Reloads helpers from the YAML-configuration.
1508
+ */
1509
+ reload(service_data: {}): Promise<void>;
1510
+ /**
1511
+ * ### Set
1512
+ *
1513
+ * > Sets the value.
1514
+ */
1515
+ set_value(service_data: {
1516
+ /**
1517
+ * ## Value
1518
+ *
1519
+ * > The target value.
1520
+ *
1521
+ * ## Selector
1522
+ *
1523
+ * > ```yaml
1524
+ * > number:
1525
+ * > min: 0
1526
+ * > max: 9223372036854776000
1527
+ * > step: 0.001
1528
+ * > mode: box
1529
+ * > ```
1530
+ */
1531
+ value: number;
1532
+ /**
1533
+ * Assisted definition
1534
+ * > ```yaml
1535
+ * > entity:
1536
+ * > - domain:
1537
+ * > - input_number
1538
+ * > ```
1539
+ */
1540
+ entity_id: PICK_ENTITY<"input_number"> | PICK_ENTITY<"input_number">[];
1541
+ }): Promise<void>;
1542
+ };
1543
+ input_select: {
1544
+ /**
1545
+ * ### Reload
1546
+ *
1547
+ * > Reloads helpers from the YAML-configuration.
1548
+ */
1549
+ reload(service_data: {}): Promise<void>;
1550
+ /**
1551
+ * ### First
1552
+ *
1553
+ * > Selects the first option.
1554
+ */
1555
+ select_first(service_data: {
1556
+ /**
1557
+ * Assisted definition
1558
+ * > ```yaml
1559
+ * > entity:
1560
+ * > - domain:
1561
+ * > - input_select
1562
+ * > ```
1563
+ */
1564
+ entity_id: PICK_ENTITY<"input_select"> | PICK_ENTITY<"input_select">[];
1565
+ }): Promise<void>;
1566
+ /**
1567
+ * ### Last
1568
+ *
1569
+ * > Selects the last option.
1570
+ */
1571
+ select_last(service_data: {
1572
+ /**
1573
+ * Assisted definition
1574
+ * > ```yaml
1575
+ * > entity:
1576
+ * > - domain:
1577
+ * > - input_select
1578
+ * > ```
1579
+ */
1580
+ entity_id: PICK_ENTITY<"input_select"> | PICK_ENTITY<"input_select">[];
1581
+ }): Promise<void>;
1582
+ /**
1583
+ * ### Next
1584
+ *
1585
+ * > Select the next option.
1586
+ */
1587
+ select_next(service_data?: {
1588
+ /**
1589
+ * ## Cycle
1590
+ *
1591
+ * > If the option should cycle from the last to the first option on the list.
1592
+ *
1593
+ * ### Default
1594
+ *
1595
+ * > ```json
1596
+ * > true
1597
+ * > ```
1598
+ */
1599
+ cycle?: boolean;
1600
+ /**
1601
+ * Assisted definition
1602
+ * > ```yaml
1603
+ * > entity:
1604
+ * > - domain:
1605
+ * > - input_select
1606
+ * > ```
1607
+ */
1608
+ entity_id: PICK_ENTITY<"input_select"> | PICK_ENTITY<"input_select">[];
1609
+ }): Promise<void>;
1610
+ /**
1611
+ * ### Select
1612
+ *
1613
+ * > Selects an option.
1614
+ */
1615
+ select_option(service_data: {
1616
+ /**
1617
+ * ## Option
1618
+ *
1619
+ * > Option to be selected.
1620
+ *
1621
+ * ### Example
1622
+ *
1623
+ * > ```json
1624
+ * > {
1625
+ * > "option": "\"Item A\""
1626
+ * > }
1627
+ * > ```
1628
+ */
1629
+ option: string;
1630
+ /**
1631
+ * Assisted definition
1632
+ * > ```yaml
1633
+ * > entity:
1634
+ * > - domain:
1635
+ * > - input_select
1636
+ * > ```
1637
+ */
1638
+ entity_id: PICK_ENTITY<"input_select"> | PICK_ENTITY<"input_select">[];
1639
+ }): Promise<void>;
1640
+ /**
1641
+ * ### Previous
1642
+ *
1643
+ * > Selects the previous option.
1644
+ */
1645
+ select_previous(service_data?: {
1646
+ /**
1647
+ * ## Cycle
1648
+ *
1649
+ * > If the option should cycle from the last to the first option on the list.
1650
+ *
1651
+ * ### Default
1652
+ *
1653
+ * > ```json
1654
+ * > true
1655
+ * > ```
1656
+ */
1657
+ cycle?: boolean;
1658
+ /**
1659
+ * Assisted definition
1660
+ * > ```yaml
1661
+ * > entity:
1662
+ * > - domain:
1663
+ * > - input_select
1664
+ * > ```
1665
+ */
1666
+ entity_id: PICK_ENTITY<"input_select"> | PICK_ENTITY<"input_select">[];
1667
+ }): Promise<void>;
1668
+ /**
1669
+ * ### Set options
1670
+ *
1671
+ * > Sets the options.
1672
+ */
1673
+ set_options(service_data: {
1674
+ /**
1675
+ * ## Options
1676
+ *
1677
+ * > List of options.
1678
+ *
1679
+ * ### Example
1680
+ *
1681
+ * > ```json
1682
+ * > {
1683
+ * > "options": "[\"Item A\", \"Item B\", \"Item C\"]"
1684
+ * > }
1685
+ * > ```
1686
+ *
1687
+ * ## Selector
1688
+ *
1689
+ * > ```yaml
1690
+ * > object: null
1691
+ * > ```
1692
+ */
1693
+ options: unknown;
1694
+ /**
1695
+ * Assisted definition
1696
+ * > ```yaml
1697
+ * > entity:
1698
+ * > - domain:
1699
+ * > - input_select
1700
+ * > ```
1701
+ */
1702
+ entity_id: PICK_ENTITY<"input_select"> | PICK_ENTITY<"input_select">[];
1703
+ }): Promise<void>;
1704
+ };
1705
+ input_text: {
1706
+ /**
1707
+ * ### Reload
1708
+ *
1709
+ * > Reloads helpers from the YAML-configuration.
1710
+ */
1711
+ reload(service_data: {}): Promise<void>;
1712
+ /**
1713
+ * ### Set
1714
+ *
1715
+ * > Sets the value.
1716
+ */
1717
+ set_value(service_data: {
1718
+ /**
1719
+ * ## Value
1720
+ *
1721
+ * > The target value.
1722
+ *
1723
+ * ### Example
1724
+ *
1725
+ * > ```json
1726
+ * > {
1727
+ * > "value": "This is an example text"
1728
+ * > }
1729
+ * > ```
1730
+ */
1731
+ value: string;
1732
+ /**
1733
+ * Assisted definition
1734
+ * > ```yaml
1735
+ * > entity:
1736
+ * > - domain:
1737
+ * > - input_text
1738
+ * > ```
1739
+ */
1740
+ entity_id: PICK_ENTITY<"input_text"> | PICK_ENTITY<"input_text">[];
1741
+ }): Promise<void>;
1742
+ };
1743
+ logbook: {
1744
+ /**
1745
+ * ### Log
1746
+ *
1747
+ * > Creates a custom entry in the logbook.
1748
+ */
1749
+ log(service_data?: {
1750
+ /**
1751
+ * ## Domain
1752
+ *
1753
+ * > Determines which icon is used in the logbook entry. The icon illustrates the integration domain related to this logbook entry.
1754
+ *
1755
+ * ### Example
1756
+ *
1757
+ * > ```json
1758
+ * > {
1759
+ * > "domain": "light"
1760
+ * > }
1761
+ * > ```
1762
+ */
1763
+ domain?: string;
1764
+ /**
1765
+ * ## Entity ID
1766
+ *
1767
+ * > Entity to reference in the logbook entry.
1768
+ *
1769
+ * ## Selector
1770
+ *
1771
+ * > ```yaml
1772
+ * > entity: null
1773
+ * > ```
1774
+ */
1775
+ entity_id?: PICK_ENTITY | PICK_ENTITY[];
1776
+ /**
1777
+ * ## Message
1778
+ *
1779
+ * > Message of the logbook entry.
1780
+ *
1781
+ * ### Example
1782
+ *
1783
+ * > ```json
1784
+ * > {
1785
+ * > "message": "is being used"
1786
+ * > }
1787
+ * > ```
1788
+ */
1789
+ message: string;
1790
+ /**
1791
+ * ## Name
1792
+ *
1793
+ * > Custom name for an entity, can be referenced using an `entity_id`.
1794
+ *
1795
+ * ### Example
1796
+ *
1797
+ * > ```json
1798
+ * > {
1799
+ * > "name": "Kitchen"
1800
+ * > }
1801
+ * > ```
1802
+ */
1803
+ name: string;
1804
+ }): Promise<void>;
1805
+ };
1806
+ logger: {
1807
+ /**
1808
+ * ### Set default level
1809
+ *
1810
+ * > Sets the default log level for integrations.
1811
+ */
1812
+ set_default_level(service_data?: {
1813
+ /**
1814
+ * ## Level
1815
+ *
1816
+ * > Default severity level for all integrations.
1817
+ */
1818
+ level?: "debug" | "info" | "warning" | "error" | "fatal" | "critical";
1819
+ }): Promise<void>;
1820
+ /**
1821
+ * ### Set level
1822
+ *
1823
+ * > Sets the log level for one or more integrations.
1824
+ */
1825
+ set_level(service_data: {}): Promise<void>;
1826
+ };
1827
+ notify: {
1828
+ /**
1829
+ * ### Send a notification with notify
1830
+ *
1831
+ * > Sends a notification message using the notify service.
1832
+ */
1833
+ notify(service_data?: {
1834
+ /**
1835
+ * ## data
1836
+ *
1837
+ * ### Example
1838
+ *
1839
+ * > ```json
1840
+ * > {
1841
+ * > "data": "platform specific"
1842
+ * > }
1843
+ * > ```
1844
+ *
1845
+ * ## Selector
1846
+ *
1847
+ * > ```yaml
1848
+ * > object: null
1849
+ * > ```
1850
+ */
1851
+ data?: unknown;
1852
+ /**
1853
+ * ## message
1854
+ *
1855
+ * ### Example
1856
+ *
1857
+ * > ```json
1858
+ * > {
1859
+ * > "message": "The garage door has been open for 10 minutes."
1860
+ * > }
1861
+ * > ```
1862
+ */
1863
+ message: string;
1864
+ /**
1865
+ * ## target
1866
+ *
1867
+ * ### Example
1868
+ *
1869
+ * > ```json
1870
+ * > {
1871
+ * > "target": "platform specific"
1872
+ * > }
1873
+ * > ```
1874
+ *
1875
+ * ## Selector
1876
+ *
1877
+ * > ```yaml
1878
+ * > object: null
1879
+ * > ```
1880
+ */
1881
+ target?: unknown;
1882
+ /**
1883
+ * ## title
1884
+ *
1885
+ * ### Example
1886
+ *
1887
+ * > ```json
1888
+ * > {
1889
+ * > "title": "Your Garage Door Friend"
1890
+ * > }
1891
+ * > ```
1892
+ */
1893
+ title?: string;
1894
+ }): Promise<void>;
1895
+ /**
1896
+ * ### Send a persistent notification
1897
+ *
1898
+ * > Sends a notification that is visible in the **Notifications** panel.
1899
+ */
1900
+ persistent_notification(service_data?: {
1901
+ /**
1902
+ * ## Data
1903
+ *
1904
+ * > Some integrations provide extended functionality. For information on how to use _data_, refer to the integration documentation..
1905
+ *
1906
+ * ### Example
1907
+ *
1908
+ * > ```json
1909
+ * > {
1910
+ * > "data": "platform specific"
1911
+ * > }
1912
+ * > ```
1913
+ *
1914
+ * ## Selector
1915
+ *
1916
+ * > ```yaml
1917
+ * > object: null
1918
+ * > ```
1919
+ */
1920
+ data?: unknown;
1921
+ /**
1922
+ * ## Message
1923
+ *
1924
+ * > Message body of the notification.
1925
+ *
1926
+ * ### Example
1927
+ *
1928
+ * > ```json
1929
+ * > {
1930
+ * > "message": "The garage door has been open for 10 minutes."
1931
+ * > }
1932
+ * > ```
1933
+ */
1934
+ message: string;
1935
+ /**
1936
+ * ## Title
1937
+ *
1938
+ * > Title of the notification.
1939
+ *
1940
+ * ### Example
1941
+ *
1942
+ * > ```json
1943
+ * > {
1944
+ * > "title": "Your Garage Door Friend"
1945
+ * > }
1946
+ * > ```
1947
+ */
1948
+ title?: string;
1949
+ }): Promise<void>;
1950
+ };
1951
+ persistent_notification: {
1952
+ /**
1953
+ * ### Create
1954
+ *
1955
+ * > Shows a notification on the **Notifications** panel.
1956
+ */
1957
+ create(service_data?: {
1958
+ /**
1959
+ * ## Message
1960
+ *
1961
+ * > Message body of the notification.
1962
+ *
1963
+ * ### Example
1964
+ *
1965
+ * > ```json
1966
+ * > {
1967
+ * > "message": "Please check your configuration.yaml."
1968
+ * > }
1969
+ * > ```
1970
+ */
1971
+ message: string;
1972
+ /**
1973
+ * ## Notification ID
1974
+ *
1975
+ * > ID of the notification. This new notification will overwrite an existing notification with the same ID.
1976
+ *
1977
+ * ### Example
1978
+ *
1979
+ * > ```json
1980
+ * > {
1981
+ * > "notification_id": "1234"
1982
+ * > }
1983
+ * > ```
1984
+ */
1985
+ notification_id?: string;
1986
+ /**
1987
+ * ## Title
1988
+ *
1989
+ * > Optional title of the notification.
1990
+ *
1991
+ * ### Example
1992
+ *
1993
+ * > ```json
1994
+ * > {
1995
+ * > "title": "Test notification"
1996
+ * > }
1997
+ * > ```
1998
+ */
1999
+ title?: string;
2000
+ }): Promise<void>;
2001
+ /**
2002
+ * ### Dismiss
2003
+ *
2004
+ * > Removes a notification from the **Notifications** panel.
2005
+ */
2006
+ dismiss(service_data: {
2007
+ /**
2008
+ * ## Notification ID
2009
+ *
2010
+ * > ID of the notification to be removed.
2011
+ *
2012
+ * ### Example
2013
+ *
2014
+ * > ```json
2015
+ * > {
2016
+ * > "notification_id": "1234"
2017
+ * > }
2018
+ * > ```
2019
+ */
2020
+ notification_id: string;
2021
+ }): Promise<void>;
2022
+ /**
2023
+ * ### Dismiss all
2024
+ *
2025
+ * > Removes all notifications from the **Notifications** panel.
2026
+ */
2027
+ dismiss_all(service_data: {}): Promise<void>;
2028
+ };
2029
+ person: {
2030
+ /**
2031
+ * ### Reload
2032
+ *
2033
+ * > Reloads persons from the YAML-configuration.
2034
+ */
2035
+ reload(service_data: {}): Promise<void>;
2036
+ };
2037
+ recorder: {
2038
+ /**
2039
+ * ### Disable
2040
+ *
2041
+ * > Stops the recording of events and state changes.
2042
+ */
2043
+ disable(service_data: {}): Promise<void>;
2044
+ /**
2045
+ * ### Enable
2046
+ *
2047
+ * > Starts the recording of events and state changes.
2048
+ */
2049
+ enable(service_data: {}): Promise<void>;
2050
+ /**
2051
+ * ### Purge
2052
+ *
2053
+ * > Starts purge task - to clean up old data from your database.
2054
+ */
2055
+ purge(service_data?: {
2056
+ /**
2057
+ * ## Apply filter
2058
+ *
2059
+ * > Apply `entity_id` and `event_type` filters in addition to time-based purge.
2060
+ *
2061
+ * ### Default
2062
+ *
2063
+ * > ```json
2064
+ * > false
2065
+ * > ```
2066
+ */
2067
+ apply_filter?: boolean;
2068
+ /**
2069
+ * ## Days to keep
2070
+ *
2071
+ * > Number of days to keep the data in the database. Starting today, counting backward. A value of `7` means that everything older than a week will be purged.
2072
+ *
2073
+ * ## Selector
2074
+ *
2075
+ * > ```yaml
2076
+ * > number:
2077
+ * > min: 0
2078
+ * > max: 365
2079
+ * > unit_of_measurement: days
2080
+ * > ```
2081
+ */
2082
+ keep_days?: number;
2083
+ /**
2084
+ * ## Repack
2085
+ *
2086
+ * > Attempt to save disk space by rewriting the entire database file.
2087
+ *
2088
+ * ### Default
2089
+ *
2090
+ * > ```json
2091
+ * > false
2092
+ * > ```
2093
+ */
2094
+ repack?: boolean;
2095
+ }): Promise<void>;
2096
+ /**
2097
+ * ### Purge entities
2098
+ *
2099
+ * > Starts a purge task to remove the data related to specific entities from your database.
2100
+ */
2101
+ purge_entities(service_data?: {
2102
+ /**
2103
+ * ## Domains to remove
2104
+ *
2105
+ * > List of domains for which the data needs to be removed from the recorder database.
2106
+ *
2107
+ * ### Example
2108
+ *
2109
+ * > ```json
2110
+ * > {
2111
+ * > "domains": "sun"
2112
+ * > }
2113
+ * > ```
2114
+ *
2115
+ * ### Default
2116
+ *
2117
+ * > ```json
2118
+ * > []
2119
+ * > ```
2120
+ *
2121
+ * ## Selector
2122
+ *
2123
+ * > ```yaml
2124
+ * > object: null
2125
+ * > ```
2126
+ */
2127
+ domains?: unknown;
2128
+ /**
2129
+ * ## Entity globs to remove
2130
+ *
2131
+ * > List of glob patterns used to select the entities for which the data is to be removed from the recorder database.
2132
+ *
2133
+ * ### Example
2134
+ *
2135
+ * > ```json
2136
+ * > {
2137
+ * > "entity_globs": "domain*.object_id*"
2138
+ * > }
2139
+ * > ```
2140
+ *
2141
+ * ### Default
2142
+ *
2143
+ * > ```json
2144
+ * > []
2145
+ * > ```
2146
+ *
2147
+ * ## Selector
2148
+ *
2149
+ * > ```yaml
2150
+ * > object: null
2151
+ * > ```
2152
+ */
2153
+ entity_globs?: unknown;
2154
+ /**
2155
+ * ## Days to keep
2156
+ *
2157
+ * > Number of days to keep the data for rows matching the filter. Starting today, counting backward. A value of `7` means that everything older than a week will be purged. The default of 0 days will remove all matching rows immediately.
2158
+ *
2159
+ * ### Default
2160
+ *
2161
+ * > ```json
2162
+ * > 0
2163
+ * > ```
2164
+ *
2165
+ * ## Selector
2166
+ *
2167
+ * > ```yaml
2168
+ * > number:
2169
+ * > min: 0
2170
+ * > max: 365
2171
+ * > unit_of_measurement: days
2172
+ * > ```
2173
+ */
2174
+ keep_days?: number;
2175
+ /**
2176
+ * Assisted definition
2177
+ * > ```yaml
2178
+ * > entity:
2179
+ * > - {}
2180
+ * > ```
2181
+ */
2182
+ entity_id: PICK_ENTITY | PICK_ENTITY[];
2183
+ }): Promise<void>;
2184
+ };
2185
+ scene: {
2186
+ /**
2187
+ * ### Apply
2188
+ *
2189
+ * > Activates a scene with configuration.
2190
+ */
2191
+ apply(service_data?: {
2192
+ /**
2193
+ * ## Entities state
2194
+ *
2195
+ * > List of entities and their target state.
2196
+ *
2197
+ * ### Example
2198
+ *
2199
+ * > ```json
2200
+ * > {
2201
+ * > "entities": "light.kitchen: \"on\"\nlight.ceiling:\n state: \"on\"\n brightness: 80\n"
2202
+ * > }
2203
+ * > ```
2204
+ *
2205
+ * ## Selector
2206
+ *
2207
+ * > ```yaml
2208
+ * > object: null
2209
+ * > ```
2210
+ */
2211
+ entities: unknown;
2212
+ /**
2213
+ * ## Transition
2214
+ *
2215
+ * > Time it takes the devices to transition into the states defined in the scene.
2216
+ *
2217
+ * ## Selector
2218
+ *
2219
+ * > ```yaml
2220
+ * > number:
2221
+ * > min: 0
2222
+ * > max: 300
2223
+ * > unit_of_measurement: seconds
2224
+ * > ```
2225
+ */
221
2226
  transition?: number;
222
2227
  }): Promise<void>;
223
- create(service_data: {
2228
+ /**
2229
+ * ### Create
2230
+ *
2231
+ * > Creates a new scene.
2232
+ */
2233
+ create(service_data?: {
2234
+ /**
2235
+ * ## Entities state
2236
+ *
2237
+ * > List of entities and their target state. If your entities are already in the target state right now, use `snapshot_entities` instead.
2238
+ *
2239
+ * ### Example
2240
+ *
2241
+ * > ```json
2242
+ * > {
2243
+ * > "entities": "light.tv_back_light: \"on\"\nlight.ceiling:\n state: \"on\"\n brightness: 200\n"
2244
+ * > }
2245
+ * > ```
2246
+ *
2247
+ * ## Selector
2248
+ *
2249
+ * > ```yaml
2250
+ * > object: null
2251
+ * > ```
2252
+ */
2253
+ entities?: unknown;
2254
+ /**
2255
+ * ## Scene entity ID
2256
+ *
2257
+ * > The entity ID of the new scene.
2258
+ *
2259
+ * ### Example
2260
+ *
2261
+ * > ```json
2262
+ * > {
2263
+ * > "scene_id": "all_lights"
2264
+ * > }
2265
+ * > ```
2266
+ */
224
2267
  scene_id: string;
225
- entities?: Record<string, unknown> | unknown[];
226
- snapshot_entities?: string;
2268
+ /**
2269
+ * ## Snapshot entities
2270
+ *
2271
+ * > List of entities to be included in the snapshot. By taking a snapshot, you record the current state of those entities. If you do not want to use the current state of all your entities for this scene, you can combine the `snapshot_entities` with `entities`.
2272
+ *
2273
+ * ### Example
2274
+ *
2275
+ * > ```json
2276
+ * > {
2277
+ * > "snapshot_entities": "- light.ceiling\n- light.kitchen\n"
2278
+ * > }
2279
+ * > ```
2280
+ */
2281
+ snapshot_entities?: PICK_ENTITY | PICK_ENTITY[];
227
2282
  }): Promise<void>;
228
- turn_on(service_data: {
2283
+ /**
2284
+ * ### Delete
2285
+ *
2286
+ * > Deletes a dynamically created scene.
2287
+ */
2288
+ delete(service_data: {
2289
+ /**
2290
+ * Assisted definition
2291
+ * > ```yaml
2292
+ * > entity:
2293
+ * > - integration: homeassistant
2294
+ * > domain:
2295
+ * > - scene
2296
+ * > ```
2297
+ */
2298
+ entity_id: PICK_FROM_PLATFORM<"homeassistant", "scene"> | PICK_FROM_PLATFORM<"homeassistant", "scene">[];
2299
+ }): Promise<void>;
2300
+ /**
2301
+ * ### Reload
2302
+ *
2303
+ * > Reloads the scenes from the YAML-configuration.
2304
+ */
2305
+ reload(service_data: {}): Promise<void>;
2306
+ /**
2307
+ * ### Activate
2308
+ *
2309
+ * > Activates a scene.
2310
+ */
2311
+ turn_on(service_data?: {
2312
+ /**
2313
+ * ## Transition
2314
+ *
2315
+ * > Time it takes the devices to transition into the states defined in the scene.
2316
+ *
2317
+ * ## Selector
2318
+ *
2319
+ * > ```yaml
2320
+ * > number:
2321
+ * > min: 0
2322
+ * > max: 300
2323
+ * > unit_of_measurement: seconds
2324
+ * > ```
2325
+ */
229
2326
  transition?: number;
230
- entity_id: string | string[];
2327
+ /**
2328
+ * Assisted definition
2329
+ * > ```yaml
2330
+ * > entity:
2331
+ * > - domain:
2332
+ * > - scene
2333
+ * > ```
2334
+ */
2335
+ entity_id: PICK_ENTITY<"scene"> | PICK_ENTITY<"scene">[];
2336
+ }): Promise<void>;
2337
+ };
2338
+ schedule: {
2339
+ /**
2340
+ * ### Reload
2341
+ *
2342
+ * > Reloads schedules from the YAML-configuration.
2343
+ */
2344
+ reload(service_data: {}): Promise<void>;
2345
+ };
2346
+ script: {
2347
+ /**
2348
+ * ### Reload
2349
+ *
2350
+ * > Reloads all the available scripts.
2351
+ */
2352
+ reload(service_data: {}): Promise<void>;
2353
+ /**
2354
+ * ### Toggle
2355
+ *
2356
+ * > Toggle a script. Starts it, if isn't running, stops it otherwise.
2357
+ */
2358
+ toggle(service_data: {
2359
+ /**
2360
+ * Assisted definition
2361
+ * > ```yaml
2362
+ * > entity:
2363
+ * > - domain:
2364
+ * > - script
2365
+ * > ```
2366
+ */
2367
+ entity_id: PICK_ENTITY<"script"> | PICK_ENTITY<"script">[];
231
2368
  }): Promise<void>;
2369
+ /**
2370
+ * ### Turn off
2371
+ *
2372
+ * > Stops a running script.
2373
+ */
2374
+ turn_off(service_data: {
2375
+ /**
2376
+ * Assisted definition
2377
+ * > ```yaml
2378
+ * > entity:
2379
+ * > - domain:
2380
+ * > - script
2381
+ * > ```
2382
+ */
2383
+ entity_id: PICK_ENTITY<"script"> | PICK_ENTITY<"script">[];
2384
+ }): Promise<void>;
2385
+ /**
2386
+ * ### Turn on
2387
+ *
2388
+ * > Runs the sequence of actions defined in a script.
2389
+ */
2390
+ turn_on(service_data: {
2391
+ /**
2392
+ * Assisted definition
2393
+ * > ```yaml
2394
+ * > entity:
2395
+ * > - domain:
2396
+ * > - script
2397
+ * > ```
2398
+ */
2399
+ entity_id: PICK_ENTITY<"script"> | PICK_ENTITY<"script">[];
2400
+ }): Promise<void>;
2401
+ };
2402
+ shopping_list: {
2403
+ /**
2404
+ * ### Add item
2405
+ *
2406
+ * > Adds an item to the shopping list.
2407
+ */
2408
+ add_item(service_data: {
2409
+ /**
2410
+ * ## Name
2411
+ *
2412
+ * > The name of the item to add.
2413
+ *
2414
+ * ### Example
2415
+ *
2416
+ * > ```json
2417
+ * > {
2418
+ * > "name": "Beer"
2419
+ * > }
2420
+ * > ```
2421
+ */
2422
+ name: string;
2423
+ }): Promise<void>;
2424
+ /**
2425
+ * ### Clear completed items
2426
+ *
2427
+ * > Clears completed items from the shopping list.
2428
+ */
2429
+ clear_completed_items(service_data: {}): Promise<void>;
2430
+ /**
2431
+ * ### Complete all
2432
+ *
2433
+ * > Marks all items as completed in the shopping list (without removing them from the list).
2434
+ */
2435
+ complete_all(service_data: {}): Promise<void>;
2436
+ /**
2437
+ * ### Complete item
2438
+ *
2439
+ * > Marks the first item with matching name as completed in the shopping list.
2440
+ */
2441
+ complete_item(service_data: {
2442
+ /**
2443
+ * ## Name
2444
+ *
2445
+ * > The name of the item to mark as completed (without removing).
2446
+ *
2447
+ * ### Example
2448
+ *
2449
+ * > ```json
2450
+ * > {
2451
+ * > "name": "Beer"
2452
+ * > }
2453
+ * > ```
2454
+ */
2455
+ name: string;
2456
+ }): Promise<void>;
2457
+ /**
2458
+ * ### Incomplete all
2459
+ *
2460
+ * > Marks all items as incomplete in the shopping list.
2461
+ */
2462
+ incomplete_all(service_data: {}): Promise<void>;
2463
+ /**
2464
+ * ### Incomplete item
2465
+ *
2466
+ * > Marks the first item with matching name as incomplete in the shopping list.
2467
+ */
2468
+ incomplete_item(service_data: {
2469
+ /**
2470
+ * ## Name
2471
+ *
2472
+ * > The name of the item to mark as incomplete.
2473
+ *
2474
+ * ### Example
2475
+ *
2476
+ * > ```json
2477
+ * > {
2478
+ * > "name": "Beer"
2479
+ * > }
2480
+ * > ```
2481
+ */
2482
+ name: string;
2483
+ }): Promise<void>;
2484
+ /**
2485
+ * ### Remove item
2486
+ *
2487
+ * > Removes the first item with matching name from the shopping list.
2488
+ */
2489
+ remove_item(service_data: {
2490
+ /**
2491
+ * ## Name
2492
+ *
2493
+ * > The name of the item to remove.
2494
+ *
2495
+ * ### Example
2496
+ *
2497
+ * > ```json
2498
+ * > {
2499
+ * > "name": "Beer"
2500
+ * > }
2501
+ * > ```
2502
+ */
2503
+ name: string;
2504
+ }): Promise<void>;
2505
+ /**
2506
+ * ### Sort all items
2507
+ *
2508
+ * > Sorts all items by name in the shopping list.
2509
+ */
2510
+ sort(service_data?: {
2511
+ /**
2512
+ * ## Sort reverse
2513
+ *
2514
+ * > Whether to sort in reverse (descending) order.
2515
+ *
2516
+ * ### Default
2517
+ *
2518
+ * > ```json
2519
+ * > false
2520
+ * > ```
2521
+ */
2522
+ reverse?: boolean;
2523
+ }): Promise<void>;
2524
+ };
2525
+ switch: {
2526
+ /**
2527
+ * ### Toggle
2528
+ *
2529
+ * > Toggles a switch on/off.
2530
+ */
2531
+ toggle(service_data: {
2532
+ /**
2533
+ * Assisted definition
2534
+ * > ```yaml
2535
+ * > entity:
2536
+ * > - domain:
2537
+ * > - switch
2538
+ * > ```
2539
+ */
2540
+ entity_id: PICK_ENTITY<"switch"> | PICK_ENTITY<"switch">[];
2541
+ }): Promise<void>;
2542
+ /**
2543
+ * ### Turn off
2544
+ *
2545
+ * > Turns a switch off.
2546
+ */
2547
+ turn_off(service_data: {
2548
+ /**
2549
+ * Assisted definition
2550
+ * > ```yaml
2551
+ * > entity:
2552
+ * > - domain:
2553
+ * > - switch
2554
+ * > ```
2555
+ */
2556
+ entity_id: PICK_ENTITY<"switch"> | PICK_ENTITY<"switch">[];
2557
+ }): Promise<void>;
2558
+ /**
2559
+ * ### Turn on
2560
+ *
2561
+ * > Turns a switch on.
2562
+ */
2563
+ turn_on(service_data: {
2564
+ /**
2565
+ * Assisted definition
2566
+ * > ```yaml
2567
+ * > entity:
2568
+ * > - domain:
2569
+ * > - switch
2570
+ * > ```
2571
+ */
2572
+ entity_id: PICK_ENTITY<"switch"> | PICK_ENTITY<"switch">[];
2573
+ }): Promise<void>;
2574
+ };
2575
+ synapse: {
2576
+ /**
2577
+ * ### reload
2578
+ *
2579
+ * > Ask synapse application to re-send the entity list. Sent to all connected by default
2580
+ */
2581
+ reload(service_data?: {
2582
+ /**
2583
+ * ## app
2584
+ *
2585
+ * > The name of the app to target for the reload. If omitted, targets all apps.
2586
+ *
2587
+ * ### Example
2588
+ *
2589
+ * > ```json
2590
+ * > {
2591
+ * > "app": "home_automation"
2592
+ * > }
2593
+ * > ```
2594
+ *
2595
+ * ## Selector
2596
+ *
2597
+ * > ```yaml
2598
+ * >
2599
+ * > ```
2600
+ */
2601
+ app?: unknown;
2602
+ }): Promise<void>;
2603
+ };
2604
+ system_log: {
2605
+ /**
2606
+ * ### Clear all
2607
+ *
2608
+ * > Clears all log entries.
2609
+ */
2610
+ clear(service_data: {}): Promise<void>;
2611
+ /**
2612
+ * ### Write
2613
+ *
2614
+ * > Write log entry.
2615
+ */
2616
+ write(service_data?: {
2617
+ /**
2618
+ * ## Level
2619
+ *
2620
+ * > Log level.
2621
+ *
2622
+ * ### Default
2623
+ *
2624
+ * > ```json
2625
+ * > "error"
2626
+ * > ```
2627
+ */
2628
+ level?: "debug" | "info" | "warning" | "error" | "critical";
2629
+ /**
2630
+ * ## Logger
2631
+ *
2632
+ * > Logger name under which to log the message. Defaults to `system_log.external`.
2633
+ *
2634
+ * ### Example
2635
+ *
2636
+ * > ```json
2637
+ * > {
2638
+ * > "logger": "mycomponent.myplatform"
2639
+ * > }
2640
+ * > ```
2641
+ */
2642
+ logger?: string;
2643
+ /**
2644
+ * ## Message
2645
+ *
2646
+ * > Message to log.
2647
+ *
2648
+ * ### Example
2649
+ *
2650
+ * > ```json
2651
+ * > {
2652
+ * > "message": "Something went wrong"
2653
+ * > }
2654
+ * > ```
2655
+ */
2656
+ message: string;
2657
+ }): Promise<void>;
2658
+ };
2659
+ timer: {
2660
+ /**
2661
+ * ### Cancel
2662
+ *
2663
+ * > Cancels a timer.
2664
+ */
2665
+ cancel(service_data: {
2666
+ /**
2667
+ * Assisted definition
2668
+ * > ```yaml
2669
+ * > entity:
2670
+ * > - domain:
2671
+ * > - timer
2672
+ * > ```
2673
+ */
2674
+ entity_id: PICK_ENTITY<"timer"> | PICK_ENTITY<"timer">[];
2675
+ }): Promise<void>;
2676
+ /**
2677
+ * ### Change
2678
+ *
2679
+ * > Changes a timer.
2680
+ */
2681
+ change(service_data: {
2682
+ /**
2683
+ * ## Duration
2684
+ *
2685
+ * > Duration to add or subtract to the running timer.
2686
+ *
2687
+ * ### Example
2688
+ *
2689
+ * > ```json
2690
+ * > {
2691
+ * > "duration": "00:01:00, 60 or -60"
2692
+ * > }
2693
+ * > ```
2694
+ *
2695
+ * ### Default
2696
+ *
2697
+ * > ```json
2698
+ * > 0
2699
+ * > ```
2700
+ */
2701
+ duration: string;
2702
+ /**
2703
+ * Assisted definition
2704
+ * > ```yaml
2705
+ * > entity:
2706
+ * > - domain:
2707
+ * > - timer
2708
+ * > ```
2709
+ */
2710
+ entity_id: PICK_ENTITY<"timer"> | PICK_ENTITY<"timer">[];
2711
+ }): Promise<void>;
2712
+ /**
2713
+ * ### Finish
2714
+ *
2715
+ * > Finishes a timer.
2716
+ */
2717
+ finish(service_data: {
2718
+ /**
2719
+ * Assisted definition
2720
+ * > ```yaml
2721
+ * > entity:
2722
+ * > - domain:
2723
+ * > - timer
2724
+ * > ```
2725
+ */
2726
+ entity_id: PICK_ENTITY<"timer"> | PICK_ENTITY<"timer">[];
2727
+ }): Promise<void>;
2728
+ /**
2729
+ * ### Pause
2730
+ *
2731
+ * > Pauses a timer.
2732
+ */
2733
+ pause(service_data: {
2734
+ /**
2735
+ * Assisted definition
2736
+ * > ```yaml
2737
+ * > entity:
2738
+ * > - domain:
2739
+ * > - timer
2740
+ * > ```
2741
+ */
2742
+ entity_id: PICK_ENTITY<"timer"> | PICK_ENTITY<"timer">[];
2743
+ }): Promise<void>;
2744
+ /**
2745
+ * ### Reload
2746
+ *
2747
+ * > Reloads timers from the YAML-configuration.
2748
+ */
2749
+ reload(service_data: {}): Promise<void>;
2750
+ /**
2751
+ * ### Start
2752
+ *
2753
+ * > Starts a timer.
2754
+ */
2755
+ start(service_data?: {
2756
+ /**
2757
+ * ## Duration
2758
+ *
2759
+ * > Duration the timer requires to finish. [optional].
2760
+ *
2761
+ * ### Example
2762
+ *
2763
+ * > ```json
2764
+ * > {
2765
+ * > "duration": "00:01:00 or 60"
2766
+ * > }
2767
+ * > ```
2768
+ */
2769
+ duration?: string;
2770
+ /**
2771
+ * Assisted definition
2772
+ * > ```yaml
2773
+ * > entity:
2774
+ * > - domain:
2775
+ * > - timer
2776
+ * > ```
2777
+ */
2778
+ entity_id: PICK_ENTITY<"timer"> | PICK_ENTITY<"timer">[];
2779
+ }): Promise<void>;
2780
+ };
2781
+ todo: {
2782
+ /**
2783
+ * ### Add to-do list item
2784
+ *
2785
+ * > Add a new to-do list item.
2786
+ */
2787
+ add_item(service_data?: {
2788
+ /**
2789
+ * ## Description
2790
+ *
2791
+ * > A more complete description of the to-do item than provided by the item name.
2792
+ *
2793
+ * ### Example
2794
+ *
2795
+ * > ```json
2796
+ * > {
2797
+ * > "description": "A more complete description of the to-do item than that provided by the summary."
2798
+ * > }
2799
+ * > ```
2800
+ */
2801
+ description?: string;
2802
+ /**
2803
+ * ## Due date
2804
+ *
2805
+ * > The date the to-do item is expected to be completed.
2806
+ *
2807
+ * ### Example
2808
+ *
2809
+ * > ```json
2810
+ * > {
2811
+ * > "due_date": "2023-11-17"
2812
+ * > }
2813
+ * > ```
2814
+ *
2815
+ * ## Selector
2816
+ *
2817
+ * > ```yaml
2818
+ * > date: null
2819
+ * > ```
2820
+ */
2821
+ due_date?: unknown;
2822
+ /**
2823
+ * ## Due date and time
2824
+ *
2825
+ * > The date and time the to-do item is expected to be completed.
2826
+ *
2827
+ * ### Example
2828
+ *
2829
+ * > ```json
2830
+ * > {
2831
+ * > "due_datetime": "2023-11-17 13:30:00"
2832
+ * > }
2833
+ * > ```
2834
+ *
2835
+ * ## Selector
2836
+ *
2837
+ * > ```yaml
2838
+ * > datetime: null
2839
+ * > ```
2840
+ */
2841
+ due_datetime?: unknown;
2842
+ /**
2843
+ * ## Item name
2844
+ *
2845
+ * > The name that represents the to-do item.
2846
+ *
2847
+ * ### Example
2848
+ *
2849
+ * > ```json
2850
+ * > {
2851
+ * > "item": "Submit income tax return"
2852
+ * > }
2853
+ * > ```
2854
+ */
2855
+ item: string;
2856
+ /**
2857
+ * Assisted definition
2858
+ * > ```yaml
2859
+ * > entity:
2860
+ * > - domain:
2861
+ * > - todo
2862
+ * > supported_features:
2863
+ * > - 1
2864
+ * > ```
2865
+ */
2866
+ entity_id: PICK_ENTITY<"todo"> | PICK_ENTITY<"todo">[];
2867
+ }): Promise<void>;
2868
+ /**
2869
+ * ### Get to-do list items
2870
+ *
2871
+ * > Get items on a to-do list.
2872
+ */
2873
+ get_items(service_data?: {
2874
+ /**
2875
+ * ## Status
2876
+ *
2877
+ * > Only return to-do items with the specified statuses. Returns not completed actions by default.
2878
+ *
2879
+ * ### Example
2880
+ *
2881
+ * > ```json
2882
+ * > {
2883
+ * > "status": "needs_action"
2884
+ * > }
2885
+ * > ```
2886
+ *
2887
+ * ### Default
2888
+ *
2889
+ * > ```json
2890
+ * > "needs_action"
2891
+ * > ```
2892
+ */
2893
+ status?: "needs_action" | "completed";
2894
+ /**
2895
+ * Assisted definition
2896
+ * > ```yaml
2897
+ * > entity:
2898
+ * > - domain:
2899
+ * > - todo
2900
+ * > ```
2901
+ */
2902
+ entity_id: PICK_ENTITY<"todo"> | PICK_ENTITY<"todo">[];
2903
+ }): Promise<void>;
2904
+ /**
2905
+ * ### Remove all completed to-do list items
2906
+ *
2907
+ * > Remove all to-do list items that have been completed.
2908
+ */
2909
+ remove_completed_items(service_data: {
2910
+ /**
2911
+ * Assisted definition
2912
+ * > ```yaml
2913
+ * > entity:
2914
+ * > - domain:
2915
+ * > - todo
2916
+ * > supported_features:
2917
+ * > - 2
2918
+ * > ```
2919
+ */
2920
+ entity_id: PICK_ENTITY<"todo"> | PICK_ENTITY<"todo">[];
2921
+ }): Promise<void>;
2922
+ /**
2923
+ * ### Remove a to-do list item
2924
+ *
2925
+ * > Remove an existing to-do list item by its name.
2926
+ */
2927
+ remove_item(service_data: {
2928
+ /**
2929
+ * ## Item name
2930
+ *
2931
+ * > The name for the to-do list items.
2932
+ */
2933
+ item: string;
2934
+ /**
2935
+ * Assisted definition
2936
+ * > ```yaml
2937
+ * > entity:
2938
+ * > - domain:
2939
+ * > - todo
2940
+ * > supported_features:
2941
+ * > - 2
2942
+ * > ```
2943
+ */
2944
+ entity_id: PICK_ENTITY<"todo"> | PICK_ENTITY<"todo">[];
2945
+ }): Promise<void>;
2946
+ /**
2947
+ * ### Update to-do list item
2948
+ *
2949
+ * > Update an existing to-do list item based on its name.
2950
+ */
2951
+ update_item(service_data?: {
2952
+ /**
2953
+ * ## Description
2954
+ *
2955
+ * > A more complete description of the to-do item than provided by the item name.
2956
+ *
2957
+ * ### Example
2958
+ *
2959
+ * > ```json
2960
+ * > {
2961
+ * > "description": "A more complete description of the to-do item than that provided by the summary."
2962
+ * > }
2963
+ * > ```
2964
+ */
2965
+ description?: string;
2966
+ /**
2967
+ * ## Due date
2968
+ *
2969
+ * > The date the to-do item is expected to be completed.
2970
+ *
2971
+ * ### Example
2972
+ *
2973
+ * > ```json
2974
+ * > {
2975
+ * > "due_date": "2023-11-17"
2976
+ * > }
2977
+ * > ```
2978
+ *
2979
+ * ## Selector
2980
+ *
2981
+ * > ```yaml
2982
+ * > date: null
2983
+ * > ```
2984
+ */
2985
+ due_date?: unknown;
2986
+ /**
2987
+ * ## Due date and time
2988
+ *
2989
+ * > The date and time the to-do item is expected to be completed.
2990
+ *
2991
+ * ### Example
2992
+ *
2993
+ * > ```json
2994
+ * > {
2995
+ * > "due_datetime": "2023-11-17 13:30:00"
2996
+ * > }
2997
+ * > ```
2998
+ *
2999
+ * ## Selector
3000
+ *
3001
+ * > ```yaml
3002
+ * > datetime: null
3003
+ * > ```
3004
+ */
3005
+ due_datetime?: unknown;
3006
+ /**
3007
+ * ## Item name
3008
+ *
3009
+ * > The name for the to-do list item.
3010
+ *
3011
+ * ### Example
3012
+ *
3013
+ * > ```json
3014
+ * > {
3015
+ * > "item": "Submit income tax return"
3016
+ * > }
3017
+ * > ```
3018
+ */
3019
+ item: string;
3020
+ /**
3021
+ * ## Rename item
3022
+ *
3023
+ * > The new name of the to-do item
3024
+ *
3025
+ * ### Example
3026
+ *
3027
+ * > ```json
3028
+ * > {
3029
+ * > "rename": "Something else"
3030
+ * > }
3031
+ * > ```
3032
+ */
3033
+ rename?: string;
3034
+ /**
3035
+ * ## Set status
3036
+ *
3037
+ * > A status or confirmation of the to-do item.
3038
+ *
3039
+ * ### Example
3040
+ *
3041
+ * > ```json
3042
+ * > {
3043
+ * > "status": "needs_action"
3044
+ * > }
3045
+ * > ```
3046
+ */
3047
+ status?: "needs_action" | "completed";
3048
+ /**
3049
+ * Assisted definition
3050
+ * > ```yaml
3051
+ * > entity:
3052
+ * > - domain:
3053
+ * > - todo
3054
+ * > supported_features:
3055
+ * > - 4
3056
+ * > ```
3057
+ */
3058
+ entity_id: PICK_ENTITY<"todo"> | PICK_ENTITY<"todo">[];
3059
+ }): Promise<void>;
3060
+ };
3061
+ tts: {
3062
+ /**
3063
+ * ### Clear TTS cache
3064
+ *
3065
+ * > Removes all cached text-to-speech files and purges the memory.
3066
+ */
3067
+ clear_cache(service_data: {}): Promise<void>;
3068
+ /**
3069
+ * ### Say a TTS message with cloud
3070
+ *
3071
+ * > Say something using text-to-speech on a media player with cloud.
3072
+ */
3073
+ cloud_say(service_data?: {
3074
+ /**
3075
+ * ## cache
3076
+ *
3077
+ * ### Default
3078
+ *
3079
+ * > ```json
3080
+ * > false
3081
+ * > ```
3082
+ */
3083
+ cache?: boolean;
3084
+ /**
3085
+ * ## entity_id
3086
+ */
3087
+ entity_id: PICK_ENTITY<"media_player"> | PICK_ENTITY<"media_player">[];
3088
+ /**
3089
+ * ## language
3090
+ *
3091
+ * ### Example
3092
+ *
3093
+ * > ```json
3094
+ * > {
3095
+ * > "language": "ru"
3096
+ * > }
3097
+ * > ```
3098
+ */
3099
+ language?: string;
3100
+ /**
3101
+ * ## message
3102
+ *
3103
+ * ### Example
3104
+ *
3105
+ * > ```json
3106
+ * > {
3107
+ * > "message": "My name is hanna"
3108
+ * > }
3109
+ * > ```
3110
+ */
3111
+ message: string;
3112
+ /**
3113
+ * ## options
3114
+ *
3115
+ * ### Example
3116
+ *
3117
+ * > ```json
3118
+ * > {
3119
+ * > "options": "platform specific"
3120
+ * > }
3121
+ * > ```
3122
+ *
3123
+ * ## Selector
3124
+ *
3125
+ * > ```yaml
3126
+ * > object: null
3127
+ * > ```
3128
+ */
3129
+ options?: unknown;
3130
+ }): Promise<void>;
3131
+ /**
3132
+ * ### Speak
3133
+ *
3134
+ * > Speaks something using text-to-speech on a media player.
3135
+ */
3136
+ speak(service_data?: {
3137
+ /**
3138
+ * ## Cache
3139
+ *
3140
+ * > Stores this message locally so that when the text is requested again, the output can be produced more quickly.
3141
+ *
3142
+ * ### Default
3143
+ *
3144
+ * > ```json
3145
+ * > true
3146
+ * > ```
3147
+ */
3148
+ cache?: boolean;
3149
+ /**
3150
+ * ## Language
3151
+ *
3152
+ * > Language to use for speech generation.
3153
+ *
3154
+ * ### Example
3155
+ *
3156
+ * > ```json
3157
+ * > {
3158
+ * > "language": "ru"
3159
+ * > }
3160
+ * > ```
3161
+ */
3162
+ language?: string;
3163
+ /**
3164
+ * ## Media player entity
3165
+ *
3166
+ * > Media players to play the message.
3167
+ */
3168
+ media_player_entity_id: PICK_ENTITY<"media_player"> | PICK_ENTITY<"media_player">[];
3169
+ /**
3170
+ * ## Message
3171
+ *
3172
+ * > The text you want to convert into speech so that you can listen to it on your device.
3173
+ *
3174
+ * ### Example
3175
+ *
3176
+ * > ```json
3177
+ * > {
3178
+ * > "message": "My name is hanna"
3179
+ * > }
3180
+ * > ```
3181
+ */
3182
+ message: string;
3183
+ /**
3184
+ * ## Options
3185
+ *
3186
+ * > A dictionary containing integration-specific options.
3187
+ *
3188
+ * ### Example
3189
+ *
3190
+ * > ```json
3191
+ * > {
3192
+ * > "options": "platform specific"
3193
+ * > }
3194
+ * > ```
3195
+ *
3196
+ * ## Selector
3197
+ *
3198
+ * > ```yaml
3199
+ * > object: null
3200
+ * > ```
3201
+ */
3202
+ options?: unknown;
3203
+ /**
3204
+ * Assisted definition
3205
+ * > ```yaml
3206
+ * > entity:
3207
+ * > - domain:
3208
+ * > - tts
3209
+ * > ```
3210
+ */
3211
+ entity_id: PICK_ENTITY<"tts"> | PICK_ENTITY<"tts">[];
3212
+ }): Promise<void>;
3213
+ };
3214
+ zone: {
3215
+ /**
3216
+ * ### Reload
3217
+ *
3218
+ * > Reloads zones from the YAML-configuration.
3219
+ */
3220
+ reload(service_data: {}): Promise<void>;
3221
+ };
3222
+ };
3223
+ export type REGISTRY_SETUP = {
3224
+ area: {
3225
+ _living_room: "switch.living_room_mood_lights";
3226
+ _kitchen: "switch.kitchen_cabinets";
3227
+ _bedroom: "switch.bedroom_lamp";
3228
+ };
3229
+ platform: {
3230
+ _sun: "sensor.sun_next_dawn" | "sensor.sun_next_dusk" | "sensor.sun_next_midnight" | "sensor.sun_next_noon" | "sensor.sun_next_rising" | "sensor.sun_next_setting" | "sensor.sun_solar_elevation" | "sensor.sun_solar_azimuth" | "sensor.sun_solar_rising";
3231
+ _person: "person.digital_alchemy";
3232
+ _shopping_list: "todo.shopping_list";
3233
+ _google_translate: "tts.google_en_com";
3234
+ _synapse: "binary_sensor.hass_e2e_online" | "sensor.magic" | "binary_sensor.toggles" | "switch.bedroom_lamp" | "switch.kitchen_cabinets" | "switch.living_room_mood_lights" | "switch.porch_light";
3235
+ _holiday: "calendar.united_states_tx";
3236
+ };
3237
+ label: {
3238
+ _synapse: "binary_sensor.hass_e2e_online" | "sensor.magic" | "binary_sensor.toggles" | "switch.bedroom_lamp" | "switch.kitchen_cabinets" | "switch.living_room_mood_lights" | "switch.porch_light";
3239
+ _test: never;
3240
+ };
3241
+ floor: {
3242
+ _downstairs: "switch.kitchen_cabinets" | "switch.living_room_mood_lights";
3243
+ _upstairs: "switch.bedroom_lamp";
3244
+ };
3245
+ device: {
3246
+ _308e39cf50a9fc6c30b4110724ed1f2e: "sensor.sun_next_dawn" | "sensor.sun_next_dusk" | "sensor.sun_next_midnight" | "sensor.sun_next_noon" | "sensor.sun_next_rising" | "sensor.sun_next_setting" | "sensor.sun_solar_elevation" | "sensor.sun_solar_azimuth" | "sensor.sun_solar_rising";
3247
+ _e58841e47cf86097b310316e55d6bb12: "calendar.united_states_tx";
232
3248
  };
233
3249
  };
3250
+ export type TAreaId = "living_room" | "kitchen" | "bedroom";
3251
+ export type TDeviceId = "308e39cf50a9fc6c30b4110724ed1f2e" | "e58841e47cf86097b310316e55d6bb12";
3252
+ export type TFloorId = "downstairs" | "upstairs";
3253
+ export type TLabelId = "synapse" | "test";
3254
+ export type TZoneId = string;
3255
+ export type TRawEntityIds = "person.digital_alchemy" | "zone.home" | "sun.sun" | "sensor.sun_next_dawn" | "sensor.sun_next_dusk" | "sensor.sun_next_midnight" | "sensor.sun_next_noon" | "sensor.sun_next_rising" | "sensor.sun_next_setting" | "todo.shopping_list" | "tts.google_en_com" | "binary_sensor.hass_e2e_online" | "sensor.magic" | "binary_sensor.toggles" | "switch.bedroom_lamp" | "switch.kitchen_cabinets" | "switch.living_room_mood_lights" | "switch.porch_light" | "calendar.united_states_tx";
3256
+ export type TPlatformId = "sun" | "person" | "shopping_list" | "google_translate" | "synapse" | "holiday";
3257
+ export type TRawDomains = "person" | "zone" | "sun" | "sensor" | "todo" | "tts" | "binary_sensor" | "switch" | "calendar";
3258
+ export {};