matterbridge 1.6.3-dev.1 → 1.6.4

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.
@@ -38,7 +38,7 @@ import { BooleanStateServer } from '@matter/node/behaviors/boolean-state';
38
38
  import { OccupancySensingServer } from '@matter/node/behaviors/occupancy-sensing';
39
39
  import { AirQualityServer, BasicInformationServer, CarbonDioxideConcentrationMeasurementServer, CarbonMonoxideConcentrationMeasurementServer, ElectricalEnergyMeasurementServer, ElectricalPowerMeasurementServer, FixedLabelServer, FormaldehydeConcentrationMeasurementServer, ModeSelectServer, NitrogenDioxideConcentrationMeasurementServer, OzoneConcentrationMeasurementServer, Pm10ConcentrationMeasurementServer, Pm1ConcentrationMeasurementServer, Pm25ConcentrationMeasurementServer, PowerSourceServer, PowerTopologyServer, RadonConcentrationMeasurementServer, SmokeCoAlarmServer, SwitchServer, TotalVolatileOrganicCompoundsConcentrationMeasurementServer, UserLabelServer } from '@matter/main/behaviors';
40
40
  import { DeviceTypeDefinition, EndpointOptions } from '@project-chip/matter.js/device';
41
- import { ClusterServerHandlers, ClusterServerObj } from '@project-chip/matter.js/cluster';
41
+ import { ClusterServer, ClusterServerHandlers, ClusterServerObj } from '@project-chip/matter.js/cluster';
42
42
  import { SerializedMatterbridgeDevice } from './matterbridgeDevice.js';
43
43
  export interface MatterbridgeEndpointCommands {
44
44
  identify: MakeMandatory<ClusterServerHandlers<typeof Identify.Complete>['identify']>;
@@ -95,6 +95,8 @@ export declare class MatterbridgeEndpoint extends Endpoint {
95
95
  softwareVersionString: string | undefined;
96
96
  hardwareVersion: number | undefined;
97
97
  hardwareVersionString: string | undefined;
98
+ name: string | undefined;
99
+ deviceType: number;
98
100
  uniqueStorageKey: string | undefined;
99
101
  tagList?: Semtag[];
100
102
  private readonly deviceTypes;
@@ -117,7 +119,778 @@ export declare class MatterbridgeEndpoint extends Endpoint {
117
119
  static loadInstance(definition: DeviceTypeDefinition | AtLeastOne<DeviceTypeDefinition>, options?: EndpointOptions, debug?: boolean): Promise<MatterbridgeEndpoint>;
118
120
  static getBehaviourTypesFromClusterServerIds(clusterServerList: ClusterId[]): Behavior.Type[];
119
121
  static getBehaviourTypesFromClusterClientIds(clusterClientList: ClusterId[]): Behavior.Type[];
120
- static getBehaviourTypeFromClusterServerId(clusterId: ClusterId, type?: string): typeof MatterbridgeIdentifyServer | typeof MatterbridgeOnOffServer | typeof MatterbridgeLevelControlServer | typeof MatterbridgeColorControlServer | typeof MatterbridgeWindowCoveringServer | typeof MatterbridgeDoorLockServer | typeof MatterbridgeFanControlServer | typeof MatterbridgeThermostatServer | typeof MatterbridgeBooleanStateConfigurationServer | typeof GroupsServer | import("@matter/main").ClusterBehavior.Type<import("@matter/main/types").ClusterComposer.WithFeatures<ClusterType.Of<{
122
+ static getBehaviourTypeFromClusterServerId(clusterId: ClusterId, type?: string): typeof MatterbridgeIdentifyServer | typeof MatterbridgeLevelControlServer | typeof MatterbridgeColorControlServer | typeof MatterbridgeWindowCoveringServer | typeof MatterbridgeDoorLockServer | typeof MatterbridgeFanControlServer | typeof MatterbridgeBooleanStateConfigurationServer | typeof GroupsServer | import("@matter/main").ClusterBehavior.Type<import("@matter/main/types").ClusterComposer.WithFeatures<import("@matter/main/types").ClusterComposer.WithFeatures<OnOff.Cluster, readonly [OnOff.Feature.Lighting]>, readonly ["Lighting"]>, typeof MatterbridgeOnOffServer, import("@matter/main/behaviors").OnOffInterface> | import("@matter/main").ClusterBehavior.Type<import("@matter/main/types").ClusterComposer.WithFeatures<import("@matter/main/types").ClusterComposer.WithFeatures<ClusterType.Of<{
123
+ readonly id: 513;
124
+ readonly name: "Thermostat";
125
+ readonly revision: 6;
126
+ readonly features: {
127
+ readonly heating: import("@matter/main/types").BitFlag;
128
+ readonly cooling: import("@matter/main/types").BitFlag;
129
+ readonly occupancy: import("@matter/main/types").BitFlag;
130
+ readonly scheduleConfiguration: import("@matter/main/types").BitFlag;
131
+ readonly setback: import("@matter/main/types").BitFlag;
132
+ readonly autoMode: import("@matter/main/types").BitFlag;
133
+ readonly localTemperatureNotExposed: import("@matter/main/types").BitFlag;
134
+ };
135
+ readonly attributes: {
136
+ readonly localTemperature: import("@matter/main/types").Attribute<number | null, any>;
137
+ readonly outdoorTemperature: import("@matter/main/types").OptionalAttribute<number | null, any>;
138
+ readonly remoteSensing: import("@matter/main/types").OptionalWritableAttribute<import("@matter/types").TypeFromPartialBitSchema<{
139
+ localTemperature: import("@matter/main/types").BitFlag;
140
+ outdoorTemperature: import("@matter/main/types").BitFlag;
141
+ occupancy: import("@matter/main/types").BitFlag;
142
+ }>, any>;
143
+ readonly controlSequenceOfOperation: import("@matter/main/types").WritableAttribute<Thermostat.ControlSequenceOfOperation, any>;
144
+ readonly systemMode: import("@matter/main/types").WritableAttribute<Thermostat.SystemMode, any>;
145
+ readonly temperatureSetpointHold: import("@matter/main/types").OptionalWritableAttribute<Thermostat.TemperatureSetpointHold, any>;
146
+ readonly temperatureSetpointHoldDuration: import("@matter/main/types").OptionalWritableAttribute<number | null, any>;
147
+ readonly thermostatProgrammingOperationMode: import("@matter/main/types").OptionalWritableAttribute<import("@matter/types").TypeFromPartialBitSchema<{
148
+ scheduleActive: import("@matter/main/types").BitFlag;
149
+ autoRecovery: import("@matter/main/types").BitFlag;
150
+ economy: import("@matter/main/types").BitFlag;
151
+ }>, any>;
152
+ readonly thermostatRunningState: import("@matter/main/types").OptionalAttribute<import("@matter/types").TypeFromPartialBitSchema<{
153
+ heat: import("@matter/main/types").BitFlag;
154
+ cool: import("@matter/main/types").BitFlag;
155
+ fan: import("@matter/main/types").BitFlag;
156
+ heatStage2: import("@matter/main/types").BitFlag;
157
+ coolStage2: import("@matter/main/types").BitFlag;
158
+ fanStage2: import("@matter/main/types").BitFlag;
159
+ fanStage3: import("@matter/main/types").BitFlag;
160
+ }>, any>;
161
+ readonly setpointChangeSource: import("@matter/main/types").OptionalAttribute<Thermostat.SetpointChangeSource, any>;
162
+ readonly setpointChangeAmount: import("@matter/main/types").OptionalAttribute<number | null, any>;
163
+ readonly setpointChangeSourceTimestamp: import("@matter/main/types").OptionalAttribute<number, any>;
164
+ readonly emergencyHeatDelta: import("@matter/main/types").OptionalWritableAttribute<number, any>;
165
+ readonly acType: import("@matter/main/types").OptionalWritableAttribute<Thermostat.AcType, any>;
166
+ readonly acCapacity: import("@matter/main/types").OptionalWritableAttribute<number, any>;
167
+ readonly acRefrigerantType: import("@matter/main/types").OptionalWritableAttribute<Thermostat.AcRefrigerantType, any>;
168
+ readonly acCompressorType: import("@matter/main/types").OptionalWritableAttribute<Thermostat.AcCompressorType, any>;
169
+ readonly acErrorCode: import("@matter/main/types").OptionalWritableAttribute<import("@matter/types").TypeFromPartialBitSchema<{
170
+ compressorFail: import("@matter/main/types").BitFlag;
171
+ roomSensorFail: import("@matter/main/types").BitFlag;
172
+ outdoorSensorFail: import("@matter/main/types").BitFlag;
173
+ coilSensorFail: import("@matter/main/types").BitFlag;
174
+ fanFail: import("@matter/main/types").BitFlag;
175
+ }>, any>;
176
+ readonly acLouverPosition: import("@matter/main/types").OptionalWritableAttribute<Thermostat.AcLouverPosition, any>;
177
+ readonly acCoilTemperature: import("@matter/main/types").OptionalAttribute<number | null, any>;
178
+ readonly acCapacityFormat: import("@matter/main/types").OptionalWritableAttribute<Thermostat.AcCapacityFormat, any>;
179
+ };
180
+ readonly commands: {
181
+ readonly setpointRaiseLower: import("@matter/main/types").Command<import("@matter/main/types").TypeFromFields<{
182
+ mode: import("@matter/main/types").FieldType<Thermostat.SetpointRaiseLowerMode>;
183
+ amount: import("@matter/main/types").FieldType<number>;
184
+ }>, void, any>;
185
+ };
186
+ readonly extensions: readonly [{
187
+ readonly flags: {
188
+ readonly occupancy: true;
189
+ };
190
+ readonly component: {
191
+ readonly attributes: {
192
+ readonly occupancy: import("@matter/main/types").Attribute<import("@matter/types").TypeFromPartialBitSchema<{
193
+ occupied: import("@matter/main/types").BitFlag;
194
+ }>, any>;
195
+ };
196
+ };
197
+ }, {
198
+ readonly flags: {
199
+ readonly heating: true;
200
+ };
201
+ readonly component: {
202
+ readonly attributes: {
203
+ readonly absMinHeatSetpointLimit: import("@matter/main/types").OptionalFixedAttribute<number, any>;
204
+ readonly absMaxHeatSetpointLimit: import("@matter/main/types").OptionalFixedAttribute<number, any>;
205
+ readonly piHeatingDemand: import("@matter/main/types").OptionalAttribute<number, any>;
206
+ readonly occupiedHeatingSetpoint: import("@matter/main/types").WritableAttribute<number, any>;
207
+ readonly minHeatSetpointLimit: import("@matter/main/types").OptionalWritableAttribute<number, any>;
208
+ readonly maxHeatSetpointLimit: import("@matter/main/types").OptionalWritableAttribute<number, any>;
209
+ };
210
+ };
211
+ }, {
212
+ readonly flags: {
213
+ readonly cooling: true;
214
+ };
215
+ readonly component: {
216
+ readonly attributes: {
217
+ readonly absMinCoolSetpointLimit: import("@matter/main/types").OptionalFixedAttribute<number, any>;
218
+ readonly absMaxCoolSetpointLimit: import("@matter/main/types").OptionalFixedAttribute<number, any>;
219
+ readonly piCoolingDemand: import("@matter/main/types").OptionalAttribute<number, any>;
220
+ readonly occupiedCoolingSetpoint: import("@matter/main/types").WritableAttribute<number, any>;
221
+ readonly minCoolSetpointLimit: import("@matter/main/types").OptionalWritableAttribute<number, any>;
222
+ readonly maxCoolSetpointLimit: import("@matter/main/types").OptionalWritableAttribute<number, any>;
223
+ };
224
+ };
225
+ }, {
226
+ readonly flags: {
227
+ readonly localTemperatureNotExposed: false;
228
+ };
229
+ readonly component: {
230
+ readonly attributes: {
231
+ readonly localTemperatureCalibration: import("@matter/main/types").OptionalWritableAttribute<number, any>;
232
+ };
233
+ };
234
+ }, {
235
+ readonly flags: {
236
+ readonly cooling: true;
237
+ readonly occupancy: true;
238
+ };
239
+ readonly component: {
240
+ readonly attributes: {
241
+ readonly unoccupiedCoolingSetpoint: import("@matter/main/types").WritableAttribute<number, any>;
242
+ };
243
+ };
244
+ }, {
245
+ readonly flags: {
246
+ readonly heating: true;
247
+ readonly occupancy: true;
248
+ };
249
+ readonly component: {
250
+ readonly attributes: {
251
+ readonly unoccupiedHeatingSetpoint: import("@matter/main/types").WritableAttribute<number, any>;
252
+ };
253
+ };
254
+ }, {
255
+ readonly flags: {
256
+ readonly autoMode: true;
257
+ };
258
+ readonly component: {
259
+ readonly attributes: {
260
+ readonly minSetpointDeadBand: import("@matter/main/types").WritableAttribute<number, any>;
261
+ readonly thermostatRunningMode: import("@matter/main/types").OptionalAttribute<Thermostat.ThermostatRunningMode, any>;
262
+ };
263
+ };
264
+ }, {
265
+ readonly flags: {
266
+ readonly scheduleConfiguration: true;
267
+ };
268
+ readonly component: {
269
+ readonly attributes: {
270
+ readonly startOfWeek: import("@matter/main/types").FixedAttribute<Thermostat.StartOfWeek, any>;
271
+ readonly numberOfWeeklyTransitions: import("@matter/main/types").FixedAttribute<number, any>;
272
+ readonly numberOfDailyTransitions: import("@matter/main/types").FixedAttribute<number, any>;
273
+ };
274
+ readonly commands: {
275
+ readonly setWeeklySchedule: import("@matter/main/types").Command<import("@matter/main/types").TypeFromFields<{
276
+ numberOfTransitionsForSequence: import("@matter/main/types").FieldType<number>;
277
+ dayOfWeekForSequence: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
278
+ sunday: import("@matter/main/types").BitFlag;
279
+ monday: import("@matter/main/types").BitFlag;
280
+ tuesday: import("@matter/main/types").BitFlag;
281
+ wednesday: import("@matter/main/types").BitFlag;
282
+ thursday: import("@matter/main/types").BitFlag;
283
+ friday: import("@matter/main/types").BitFlag;
284
+ saturday: import("@matter/main/types").BitFlag;
285
+ away: import("@matter/main/types").BitFlag;
286
+ }>>;
287
+ modeForSequence: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
288
+ heatSetpointPresent: import("@matter/main/types").BitFlag;
289
+ coolSetpointPresent: import("@matter/main/types").BitFlag;
290
+ }>>;
291
+ transitions: import("@matter/main/types").FieldType<import("@matter/main/types").TypeFromFields<{
292
+ transitionTime: import("@matter/main/types").FieldType<number>;
293
+ heatSetpoint: import("@matter/main/types").FieldType<number | null>;
294
+ coolSetpoint: import("@matter/main/types").FieldType<number | null>;
295
+ }>[]>;
296
+ }>, void, any>;
297
+ readonly getWeeklySchedule: import("@matter/main/types").Command<import("@matter/main/types").TypeFromFields<{
298
+ daysToReturn: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
299
+ sunday: import("@matter/main/types").BitFlag;
300
+ monday: import("@matter/main/types").BitFlag;
301
+ tuesday: import("@matter/main/types").BitFlag;
302
+ wednesday: import("@matter/main/types").BitFlag;
303
+ thursday: import("@matter/main/types").BitFlag;
304
+ friday: import("@matter/main/types").BitFlag;
305
+ saturday: import("@matter/main/types").BitFlag;
306
+ away: import("@matter/main/types").BitFlag;
307
+ }>>;
308
+ modeToReturn: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
309
+ heatSetpointPresent: import("@matter/main/types").BitFlag;
310
+ coolSetpointPresent: import("@matter/main/types").BitFlag;
311
+ }>>;
312
+ }>, import("@matter/main/types").TypeFromFields<{
313
+ numberOfTransitionsForSequence: import("@matter/main/types").FieldType<number>;
314
+ dayOfWeekForSequence: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
315
+ sunday: import("@matter/main/types").BitFlag;
316
+ monday: import("@matter/main/types").BitFlag;
317
+ tuesday: import("@matter/main/types").BitFlag;
318
+ wednesday: import("@matter/main/types").BitFlag;
319
+ thursday: import("@matter/main/types").BitFlag;
320
+ friday: import("@matter/main/types").BitFlag;
321
+ saturday: import("@matter/main/types").BitFlag;
322
+ away: import("@matter/main/types").BitFlag;
323
+ }>>;
324
+ modeForSequence: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
325
+ heatSetpointPresent: import("@matter/main/types").BitFlag;
326
+ coolSetpointPresent: import("@matter/main/types").BitFlag;
327
+ }>>;
328
+ transitions: import("@matter/main/types").FieldType<import("@matter/main/types").TypeFromFields<{
329
+ transitionTime: import("@matter/main/types").FieldType<number>;
330
+ heatSetpoint: import("@matter/main/types").FieldType<number | null>;
331
+ coolSetpoint: import("@matter/main/types").FieldType<number | null>;
332
+ }>[]>;
333
+ }>, any>;
334
+ readonly clearWeeklySchedule: import("@matter/main/types").Command<void, void, any>;
335
+ };
336
+ };
337
+ }, {
338
+ readonly flags: {
339
+ readonly setback: true;
340
+ };
341
+ readonly component: {
342
+ readonly attributes: {
343
+ readonly occupiedSetback: import("@matter/main/types").WritableAttribute<number | null, any>;
344
+ readonly occupiedSetbackMin: import("@matter/main/types").FixedAttribute<number | null, any>;
345
+ readonly occupiedSetbackMax: import("@matter/main/types").FixedAttribute<number | null, any>;
346
+ };
347
+ };
348
+ }, {
349
+ readonly flags: {
350
+ readonly setback: true;
351
+ readonly occupancy: true;
352
+ };
353
+ readonly component: {
354
+ readonly attributes: {
355
+ readonly unoccupiedSetback: import("@matter/main/types").WritableAttribute<number | null, any>;
356
+ readonly unoccupiedSetbackMin: import("@matter/main/types").FixedAttribute<number | null, any>;
357
+ readonly unoccupiedSetbackMax: import("@matter/main/types").FixedAttribute<number | null, any>;
358
+ };
359
+ };
360
+ }, {
361
+ readonly flags: {
362
+ readonly autoMode: true;
363
+ readonly heating: false;
364
+ };
365
+ readonly component: false;
366
+ }, {
367
+ readonly flags: {
368
+ readonly autoMode: true;
369
+ readonly cooling: false;
370
+ };
371
+ readonly component: false;
372
+ }, {
373
+ readonly flags: {
374
+ readonly heating: false;
375
+ readonly cooling: false;
376
+ };
377
+ readonly component: false;
378
+ }];
379
+ }>, readonly [Thermostat.Feature.Cooling, Thermostat.Feature.Heating, Thermostat.Feature.AutoMode]>, readonly ["AutoMode", "Heating", "Cooling"]>, typeof MatterbridgeThermostatServer, import("@matter/main/behaviors").ThermostatInterface> | import("@matter/main").ClusterBehavior.Type<import("@matter/main/types").ClusterComposer.WithFeatures<import("@matter/main/types").ClusterComposer.WithFeatures<ClusterType.Of<{
380
+ readonly id: 513;
381
+ readonly name: "Thermostat";
382
+ readonly revision: 6;
383
+ readonly features: {
384
+ readonly heating: import("@matter/main/types").BitFlag;
385
+ readonly cooling: import("@matter/main/types").BitFlag;
386
+ readonly occupancy: import("@matter/main/types").BitFlag;
387
+ readonly scheduleConfiguration: import("@matter/main/types").BitFlag;
388
+ readonly setback: import("@matter/main/types").BitFlag;
389
+ readonly autoMode: import("@matter/main/types").BitFlag;
390
+ readonly localTemperatureNotExposed: import("@matter/main/types").BitFlag;
391
+ };
392
+ readonly attributes: {
393
+ readonly localTemperature: import("@matter/main/types").Attribute<number | null, any>;
394
+ readonly outdoorTemperature: import("@matter/main/types").OptionalAttribute<number | null, any>;
395
+ readonly remoteSensing: import("@matter/main/types").OptionalWritableAttribute<import("@matter/types").TypeFromPartialBitSchema<{
396
+ localTemperature: import("@matter/main/types").BitFlag;
397
+ outdoorTemperature: import("@matter/main/types").BitFlag;
398
+ occupancy: import("@matter/main/types").BitFlag;
399
+ }>, any>;
400
+ readonly controlSequenceOfOperation: import("@matter/main/types").WritableAttribute<Thermostat.ControlSequenceOfOperation, any>;
401
+ readonly systemMode: import("@matter/main/types").WritableAttribute<Thermostat.SystemMode, any>;
402
+ readonly temperatureSetpointHold: import("@matter/main/types").OptionalWritableAttribute<Thermostat.TemperatureSetpointHold, any>;
403
+ readonly temperatureSetpointHoldDuration: import("@matter/main/types").OptionalWritableAttribute<number | null, any>;
404
+ readonly thermostatProgrammingOperationMode: import("@matter/main/types").OptionalWritableAttribute<import("@matter/types").TypeFromPartialBitSchema<{
405
+ scheduleActive: import("@matter/main/types").BitFlag;
406
+ autoRecovery: import("@matter/main/types").BitFlag;
407
+ economy: import("@matter/main/types").BitFlag;
408
+ }>, any>;
409
+ readonly thermostatRunningState: import("@matter/main/types").OptionalAttribute<import("@matter/types").TypeFromPartialBitSchema<{
410
+ heat: import("@matter/main/types").BitFlag;
411
+ cool: import("@matter/main/types").BitFlag;
412
+ fan: import("@matter/main/types").BitFlag;
413
+ heatStage2: import("@matter/main/types").BitFlag;
414
+ coolStage2: import("@matter/main/types").BitFlag;
415
+ fanStage2: import("@matter/main/types").BitFlag;
416
+ fanStage3: import("@matter/main/types").BitFlag;
417
+ }>, any>;
418
+ readonly setpointChangeSource: import("@matter/main/types").OptionalAttribute<Thermostat.SetpointChangeSource, any>;
419
+ readonly setpointChangeAmount: import("@matter/main/types").OptionalAttribute<number | null, any>;
420
+ readonly setpointChangeSourceTimestamp: import("@matter/main/types").OptionalAttribute<number, any>;
421
+ readonly emergencyHeatDelta: import("@matter/main/types").OptionalWritableAttribute<number, any>;
422
+ readonly acType: import("@matter/main/types").OptionalWritableAttribute<Thermostat.AcType, any>;
423
+ readonly acCapacity: import("@matter/main/types").OptionalWritableAttribute<number, any>;
424
+ readonly acRefrigerantType: import("@matter/main/types").OptionalWritableAttribute<Thermostat.AcRefrigerantType, any>;
425
+ readonly acCompressorType: import("@matter/main/types").OptionalWritableAttribute<Thermostat.AcCompressorType, any>;
426
+ readonly acErrorCode: import("@matter/main/types").OptionalWritableAttribute<import("@matter/types").TypeFromPartialBitSchema<{
427
+ compressorFail: import("@matter/main/types").BitFlag;
428
+ roomSensorFail: import("@matter/main/types").BitFlag;
429
+ outdoorSensorFail: import("@matter/main/types").BitFlag;
430
+ coilSensorFail: import("@matter/main/types").BitFlag;
431
+ fanFail: import("@matter/main/types").BitFlag;
432
+ }>, any>;
433
+ readonly acLouverPosition: import("@matter/main/types").OptionalWritableAttribute<Thermostat.AcLouverPosition, any>;
434
+ readonly acCoilTemperature: import("@matter/main/types").OptionalAttribute<number | null, any>;
435
+ readonly acCapacityFormat: import("@matter/main/types").OptionalWritableAttribute<Thermostat.AcCapacityFormat, any>;
436
+ };
437
+ readonly commands: {
438
+ readonly setpointRaiseLower: import("@matter/main/types").Command<import("@matter/main/types").TypeFromFields<{
439
+ mode: import("@matter/main/types").FieldType<Thermostat.SetpointRaiseLowerMode>;
440
+ amount: import("@matter/main/types").FieldType<number>;
441
+ }>, void, any>;
442
+ };
443
+ readonly extensions: readonly [{
444
+ readonly flags: {
445
+ readonly occupancy: true;
446
+ };
447
+ readonly component: {
448
+ readonly attributes: {
449
+ readonly occupancy: import("@matter/main/types").Attribute<import("@matter/types").TypeFromPartialBitSchema<{
450
+ occupied: import("@matter/main/types").BitFlag;
451
+ }>, any>;
452
+ };
453
+ };
454
+ }, {
455
+ readonly flags: {
456
+ readonly heating: true;
457
+ };
458
+ readonly component: {
459
+ readonly attributes: {
460
+ readonly absMinHeatSetpointLimit: import("@matter/main/types").OptionalFixedAttribute<number, any>;
461
+ readonly absMaxHeatSetpointLimit: import("@matter/main/types").OptionalFixedAttribute<number, any>;
462
+ readonly piHeatingDemand: import("@matter/main/types").OptionalAttribute<number, any>;
463
+ readonly occupiedHeatingSetpoint: import("@matter/main/types").WritableAttribute<number, any>;
464
+ readonly minHeatSetpointLimit: import("@matter/main/types").OptionalWritableAttribute<number, any>;
465
+ readonly maxHeatSetpointLimit: import("@matter/main/types").OptionalWritableAttribute<number, any>;
466
+ };
467
+ };
468
+ }, {
469
+ readonly flags: {
470
+ readonly cooling: true;
471
+ };
472
+ readonly component: {
473
+ readonly attributes: {
474
+ readonly absMinCoolSetpointLimit: import("@matter/main/types").OptionalFixedAttribute<number, any>;
475
+ readonly absMaxCoolSetpointLimit: import("@matter/main/types").OptionalFixedAttribute<number, any>;
476
+ readonly piCoolingDemand: import("@matter/main/types").OptionalAttribute<number, any>;
477
+ readonly occupiedCoolingSetpoint: import("@matter/main/types").WritableAttribute<number, any>;
478
+ readonly minCoolSetpointLimit: import("@matter/main/types").OptionalWritableAttribute<number, any>;
479
+ readonly maxCoolSetpointLimit: import("@matter/main/types").OptionalWritableAttribute<number, any>;
480
+ };
481
+ };
482
+ }, {
483
+ readonly flags: {
484
+ readonly localTemperatureNotExposed: false;
485
+ };
486
+ readonly component: {
487
+ readonly attributes: {
488
+ readonly localTemperatureCalibration: import("@matter/main/types").OptionalWritableAttribute<number, any>;
489
+ };
490
+ };
491
+ }, {
492
+ readonly flags: {
493
+ readonly cooling: true;
494
+ readonly occupancy: true;
495
+ };
496
+ readonly component: {
497
+ readonly attributes: {
498
+ readonly unoccupiedCoolingSetpoint: import("@matter/main/types").WritableAttribute<number, any>;
499
+ };
500
+ };
501
+ }, {
502
+ readonly flags: {
503
+ readonly heating: true;
504
+ readonly occupancy: true;
505
+ };
506
+ readonly component: {
507
+ readonly attributes: {
508
+ readonly unoccupiedHeatingSetpoint: import("@matter/main/types").WritableAttribute<number, any>;
509
+ };
510
+ };
511
+ }, {
512
+ readonly flags: {
513
+ readonly autoMode: true;
514
+ };
515
+ readonly component: {
516
+ readonly attributes: {
517
+ readonly minSetpointDeadBand: import("@matter/main/types").WritableAttribute<number, any>;
518
+ readonly thermostatRunningMode: import("@matter/main/types").OptionalAttribute<Thermostat.ThermostatRunningMode, any>;
519
+ };
520
+ };
521
+ }, {
522
+ readonly flags: {
523
+ readonly scheduleConfiguration: true;
524
+ };
525
+ readonly component: {
526
+ readonly attributes: {
527
+ readonly startOfWeek: import("@matter/main/types").FixedAttribute<Thermostat.StartOfWeek, any>;
528
+ readonly numberOfWeeklyTransitions: import("@matter/main/types").FixedAttribute<number, any>;
529
+ readonly numberOfDailyTransitions: import("@matter/main/types").FixedAttribute<number, any>;
530
+ };
531
+ readonly commands: {
532
+ readonly setWeeklySchedule: import("@matter/main/types").Command<import("@matter/main/types").TypeFromFields<{
533
+ numberOfTransitionsForSequence: import("@matter/main/types").FieldType<number>;
534
+ dayOfWeekForSequence: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
535
+ sunday: import("@matter/main/types").BitFlag;
536
+ monday: import("@matter/main/types").BitFlag;
537
+ tuesday: import("@matter/main/types").BitFlag;
538
+ wednesday: import("@matter/main/types").BitFlag;
539
+ thursday: import("@matter/main/types").BitFlag;
540
+ friday: import("@matter/main/types").BitFlag;
541
+ saturday: import("@matter/main/types").BitFlag;
542
+ away: import("@matter/main/types").BitFlag;
543
+ }>>;
544
+ modeForSequence: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
545
+ heatSetpointPresent: import("@matter/main/types").BitFlag;
546
+ coolSetpointPresent: import("@matter/main/types").BitFlag;
547
+ }>>;
548
+ transitions: import("@matter/main/types").FieldType<import("@matter/main/types").TypeFromFields<{
549
+ transitionTime: import("@matter/main/types").FieldType<number>;
550
+ heatSetpoint: import("@matter/main/types").FieldType<number | null>;
551
+ coolSetpoint: import("@matter/main/types").FieldType<number | null>;
552
+ }>[]>;
553
+ }>, void, any>;
554
+ readonly getWeeklySchedule: import("@matter/main/types").Command<import("@matter/main/types").TypeFromFields<{
555
+ daysToReturn: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
556
+ sunday: import("@matter/main/types").BitFlag;
557
+ monday: import("@matter/main/types").BitFlag;
558
+ tuesday: import("@matter/main/types").BitFlag;
559
+ wednesday: import("@matter/main/types").BitFlag;
560
+ thursday: import("@matter/main/types").BitFlag;
561
+ friday: import("@matter/main/types").BitFlag;
562
+ saturday: import("@matter/main/types").BitFlag;
563
+ away: import("@matter/main/types").BitFlag;
564
+ }>>;
565
+ modeToReturn: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
566
+ heatSetpointPresent: import("@matter/main/types").BitFlag;
567
+ coolSetpointPresent: import("@matter/main/types").BitFlag;
568
+ }>>;
569
+ }>, import("@matter/main/types").TypeFromFields<{
570
+ numberOfTransitionsForSequence: import("@matter/main/types").FieldType<number>;
571
+ dayOfWeekForSequence: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
572
+ sunday: import("@matter/main/types").BitFlag;
573
+ monday: import("@matter/main/types").BitFlag;
574
+ tuesday: import("@matter/main/types").BitFlag;
575
+ wednesday: import("@matter/main/types").BitFlag;
576
+ thursday: import("@matter/main/types").BitFlag;
577
+ friday: import("@matter/main/types").BitFlag;
578
+ saturday: import("@matter/main/types").BitFlag;
579
+ away: import("@matter/main/types").BitFlag;
580
+ }>>;
581
+ modeForSequence: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
582
+ heatSetpointPresent: import("@matter/main/types").BitFlag;
583
+ coolSetpointPresent: import("@matter/main/types").BitFlag;
584
+ }>>;
585
+ transitions: import("@matter/main/types").FieldType<import("@matter/main/types").TypeFromFields<{
586
+ transitionTime: import("@matter/main/types").FieldType<number>;
587
+ heatSetpoint: import("@matter/main/types").FieldType<number | null>;
588
+ coolSetpoint: import("@matter/main/types").FieldType<number | null>;
589
+ }>[]>;
590
+ }>, any>;
591
+ readonly clearWeeklySchedule: import("@matter/main/types").Command<void, void, any>;
592
+ };
593
+ };
594
+ }, {
595
+ readonly flags: {
596
+ readonly setback: true;
597
+ };
598
+ readonly component: {
599
+ readonly attributes: {
600
+ readonly occupiedSetback: import("@matter/main/types").WritableAttribute<number | null, any>;
601
+ readonly occupiedSetbackMin: import("@matter/main/types").FixedAttribute<number | null, any>;
602
+ readonly occupiedSetbackMax: import("@matter/main/types").FixedAttribute<number | null, any>;
603
+ };
604
+ };
605
+ }, {
606
+ readonly flags: {
607
+ readonly setback: true;
608
+ readonly occupancy: true;
609
+ };
610
+ readonly component: {
611
+ readonly attributes: {
612
+ readonly unoccupiedSetback: import("@matter/main/types").WritableAttribute<number | null, any>;
613
+ readonly unoccupiedSetbackMin: import("@matter/main/types").FixedAttribute<number | null, any>;
614
+ readonly unoccupiedSetbackMax: import("@matter/main/types").FixedAttribute<number | null, any>;
615
+ };
616
+ };
617
+ }, {
618
+ readonly flags: {
619
+ readonly autoMode: true;
620
+ readonly heating: false;
621
+ };
622
+ readonly component: false;
623
+ }, {
624
+ readonly flags: {
625
+ readonly autoMode: true;
626
+ readonly cooling: false;
627
+ };
628
+ readonly component: false;
629
+ }, {
630
+ readonly flags: {
631
+ readonly heating: false;
632
+ readonly cooling: false;
633
+ };
634
+ readonly component: false;
635
+ }];
636
+ }>, readonly [Thermostat.Feature.Cooling, Thermostat.Feature.Heating, Thermostat.Feature.AutoMode]>, readonly ["Heating"]>, typeof MatterbridgeThermostatServer, import("@matter/main/behaviors").ThermostatInterface> | import("@matter/main").ClusterBehavior.Type<import("@matter/main/types").ClusterComposer.WithFeatures<import("@matter/main/types").ClusterComposer.WithFeatures<ClusterType.Of<{
637
+ readonly id: 513;
638
+ readonly name: "Thermostat";
639
+ readonly revision: 6;
640
+ readonly features: {
641
+ readonly heating: import("@matter/main/types").BitFlag;
642
+ readonly cooling: import("@matter/main/types").BitFlag;
643
+ readonly occupancy: import("@matter/main/types").BitFlag;
644
+ readonly scheduleConfiguration: import("@matter/main/types").BitFlag;
645
+ readonly setback: import("@matter/main/types").BitFlag;
646
+ readonly autoMode: import("@matter/main/types").BitFlag;
647
+ readonly localTemperatureNotExposed: import("@matter/main/types").BitFlag;
648
+ };
649
+ readonly attributes: {
650
+ readonly localTemperature: import("@matter/main/types").Attribute<number | null, any>;
651
+ readonly outdoorTemperature: import("@matter/main/types").OptionalAttribute<number | null, any>;
652
+ readonly remoteSensing: import("@matter/main/types").OptionalWritableAttribute<import("@matter/types").TypeFromPartialBitSchema<{
653
+ localTemperature: import("@matter/main/types").BitFlag;
654
+ outdoorTemperature: import("@matter/main/types").BitFlag;
655
+ occupancy: import("@matter/main/types").BitFlag;
656
+ }>, any>;
657
+ readonly controlSequenceOfOperation: import("@matter/main/types").WritableAttribute<Thermostat.ControlSequenceOfOperation, any>;
658
+ readonly systemMode: import("@matter/main/types").WritableAttribute<Thermostat.SystemMode, any>;
659
+ readonly temperatureSetpointHold: import("@matter/main/types").OptionalWritableAttribute<Thermostat.TemperatureSetpointHold, any>;
660
+ readonly temperatureSetpointHoldDuration: import("@matter/main/types").OptionalWritableAttribute<number | null, any>;
661
+ readonly thermostatProgrammingOperationMode: import("@matter/main/types").OptionalWritableAttribute<import("@matter/types").TypeFromPartialBitSchema<{
662
+ scheduleActive: import("@matter/main/types").BitFlag;
663
+ autoRecovery: import("@matter/main/types").BitFlag;
664
+ economy: import("@matter/main/types").BitFlag;
665
+ }>, any>;
666
+ readonly thermostatRunningState: import("@matter/main/types").OptionalAttribute<import("@matter/types").TypeFromPartialBitSchema<{
667
+ heat: import("@matter/main/types").BitFlag;
668
+ cool: import("@matter/main/types").BitFlag;
669
+ fan: import("@matter/main/types").BitFlag;
670
+ heatStage2: import("@matter/main/types").BitFlag;
671
+ coolStage2: import("@matter/main/types").BitFlag;
672
+ fanStage2: import("@matter/main/types").BitFlag;
673
+ fanStage3: import("@matter/main/types").BitFlag;
674
+ }>, any>;
675
+ readonly setpointChangeSource: import("@matter/main/types").OptionalAttribute<Thermostat.SetpointChangeSource, any>;
676
+ readonly setpointChangeAmount: import("@matter/main/types").OptionalAttribute<number | null, any>;
677
+ readonly setpointChangeSourceTimestamp: import("@matter/main/types").OptionalAttribute<number, any>;
678
+ readonly emergencyHeatDelta: import("@matter/main/types").OptionalWritableAttribute<number, any>;
679
+ readonly acType: import("@matter/main/types").OptionalWritableAttribute<Thermostat.AcType, any>;
680
+ readonly acCapacity: import("@matter/main/types").OptionalWritableAttribute<number, any>;
681
+ readonly acRefrigerantType: import("@matter/main/types").OptionalWritableAttribute<Thermostat.AcRefrigerantType, any>;
682
+ readonly acCompressorType: import("@matter/main/types").OptionalWritableAttribute<Thermostat.AcCompressorType, any>;
683
+ readonly acErrorCode: import("@matter/main/types").OptionalWritableAttribute<import("@matter/types").TypeFromPartialBitSchema<{
684
+ compressorFail: import("@matter/main/types").BitFlag;
685
+ roomSensorFail: import("@matter/main/types").BitFlag;
686
+ outdoorSensorFail: import("@matter/main/types").BitFlag;
687
+ coilSensorFail: import("@matter/main/types").BitFlag;
688
+ fanFail: import("@matter/main/types").BitFlag;
689
+ }>, any>;
690
+ readonly acLouverPosition: import("@matter/main/types").OptionalWritableAttribute<Thermostat.AcLouverPosition, any>;
691
+ readonly acCoilTemperature: import("@matter/main/types").OptionalAttribute<number | null, any>;
692
+ readonly acCapacityFormat: import("@matter/main/types").OptionalWritableAttribute<Thermostat.AcCapacityFormat, any>;
693
+ };
694
+ readonly commands: {
695
+ readonly setpointRaiseLower: import("@matter/main/types").Command<import("@matter/main/types").TypeFromFields<{
696
+ mode: import("@matter/main/types").FieldType<Thermostat.SetpointRaiseLowerMode>;
697
+ amount: import("@matter/main/types").FieldType<number>;
698
+ }>, void, any>;
699
+ };
700
+ readonly extensions: readonly [{
701
+ readonly flags: {
702
+ readonly occupancy: true;
703
+ };
704
+ readonly component: {
705
+ readonly attributes: {
706
+ readonly occupancy: import("@matter/main/types").Attribute<import("@matter/types").TypeFromPartialBitSchema<{
707
+ occupied: import("@matter/main/types").BitFlag;
708
+ }>, any>;
709
+ };
710
+ };
711
+ }, {
712
+ readonly flags: {
713
+ readonly heating: true;
714
+ };
715
+ readonly component: {
716
+ readonly attributes: {
717
+ readonly absMinHeatSetpointLimit: import("@matter/main/types").OptionalFixedAttribute<number, any>;
718
+ readonly absMaxHeatSetpointLimit: import("@matter/main/types").OptionalFixedAttribute<number, any>;
719
+ readonly piHeatingDemand: import("@matter/main/types").OptionalAttribute<number, any>;
720
+ readonly occupiedHeatingSetpoint: import("@matter/main/types").WritableAttribute<number, any>;
721
+ readonly minHeatSetpointLimit: import("@matter/main/types").OptionalWritableAttribute<number, any>;
722
+ readonly maxHeatSetpointLimit: import("@matter/main/types").OptionalWritableAttribute<number, any>;
723
+ };
724
+ };
725
+ }, {
726
+ readonly flags: {
727
+ readonly cooling: true;
728
+ };
729
+ readonly component: {
730
+ readonly attributes: {
731
+ readonly absMinCoolSetpointLimit: import("@matter/main/types").OptionalFixedAttribute<number, any>;
732
+ readonly absMaxCoolSetpointLimit: import("@matter/main/types").OptionalFixedAttribute<number, any>;
733
+ readonly piCoolingDemand: import("@matter/main/types").OptionalAttribute<number, any>;
734
+ readonly occupiedCoolingSetpoint: import("@matter/main/types").WritableAttribute<number, any>;
735
+ readonly minCoolSetpointLimit: import("@matter/main/types").OptionalWritableAttribute<number, any>;
736
+ readonly maxCoolSetpointLimit: import("@matter/main/types").OptionalWritableAttribute<number, any>;
737
+ };
738
+ };
739
+ }, {
740
+ readonly flags: {
741
+ readonly localTemperatureNotExposed: false;
742
+ };
743
+ readonly component: {
744
+ readonly attributes: {
745
+ readonly localTemperatureCalibration: import("@matter/main/types").OptionalWritableAttribute<number, any>;
746
+ };
747
+ };
748
+ }, {
749
+ readonly flags: {
750
+ readonly cooling: true;
751
+ readonly occupancy: true;
752
+ };
753
+ readonly component: {
754
+ readonly attributes: {
755
+ readonly unoccupiedCoolingSetpoint: import("@matter/main/types").WritableAttribute<number, any>;
756
+ };
757
+ };
758
+ }, {
759
+ readonly flags: {
760
+ readonly heating: true;
761
+ readonly occupancy: true;
762
+ };
763
+ readonly component: {
764
+ readonly attributes: {
765
+ readonly unoccupiedHeatingSetpoint: import("@matter/main/types").WritableAttribute<number, any>;
766
+ };
767
+ };
768
+ }, {
769
+ readonly flags: {
770
+ readonly autoMode: true;
771
+ };
772
+ readonly component: {
773
+ readonly attributes: {
774
+ readonly minSetpointDeadBand: import("@matter/main/types").WritableAttribute<number, any>;
775
+ readonly thermostatRunningMode: import("@matter/main/types").OptionalAttribute<Thermostat.ThermostatRunningMode, any>;
776
+ };
777
+ };
778
+ }, {
779
+ readonly flags: {
780
+ readonly scheduleConfiguration: true;
781
+ };
782
+ readonly component: {
783
+ readonly attributes: {
784
+ readonly startOfWeek: import("@matter/main/types").FixedAttribute<Thermostat.StartOfWeek, any>;
785
+ readonly numberOfWeeklyTransitions: import("@matter/main/types").FixedAttribute<number, any>;
786
+ readonly numberOfDailyTransitions: import("@matter/main/types").FixedAttribute<number, any>;
787
+ };
788
+ readonly commands: {
789
+ readonly setWeeklySchedule: import("@matter/main/types").Command<import("@matter/main/types").TypeFromFields<{
790
+ numberOfTransitionsForSequence: import("@matter/main/types").FieldType<number>;
791
+ dayOfWeekForSequence: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
792
+ sunday: import("@matter/main/types").BitFlag;
793
+ monday: import("@matter/main/types").BitFlag;
794
+ tuesday: import("@matter/main/types").BitFlag;
795
+ wednesday: import("@matter/main/types").BitFlag;
796
+ thursday: import("@matter/main/types").BitFlag;
797
+ friday: import("@matter/main/types").BitFlag;
798
+ saturday: import("@matter/main/types").BitFlag;
799
+ away: import("@matter/main/types").BitFlag;
800
+ }>>;
801
+ modeForSequence: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
802
+ heatSetpointPresent: import("@matter/main/types").BitFlag;
803
+ coolSetpointPresent: import("@matter/main/types").BitFlag;
804
+ }>>;
805
+ transitions: import("@matter/main/types").FieldType<import("@matter/main/types").TypeFromFields<{
806
+ transitionTime: import("@matter/main/types").FieldType<number>;
807
+ heatSetpoint: import("@matter/main/types").FieldType<number | null>;
808
+ coolSetpoint: import("@matter/main/types").FieldType<number | null>;
809
+ }>[]>;
810
+ }>, void, any>;
811
+ readonly getWeeklySchedule: import("@matter/main/types").Command<import("@matter/main/types").TypeFromFields<{
812
+ daysToReturn: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
813
+ sunday: import("@matter/main/types").BitFlag;
814
+ monday: import("@matter/main/types").BitFlag;
815
+ tuesday: import("@matter/main/types").BitFlag;
816
+ wednesday: import("@matter/main/types").BitFlag;
817
+ thursday: import("@matter/main/types").BitFlag;
818
+ friday: import("@matter/main/types").BitFlag;
819
+ saturday: import("@matter/main/types").BitFlag;
820
+ away: import("@matter/main/types").BitFlag;
821
+ }>>;
822
+ modeToReturn: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
823
+ heatSetpointPresent: import("@matter/main/types").BitFlag;
824
+ coolSetpointPresent: import("@matter/main/types").BitFlag;
825
+ }>>;
826
+ }>, import("@matter/main/types").TypeFromFields<{
827
+ numberOfTransitionsForSequence: import("@matter/main/types").FieldType<number>;
828
+ dayOfWeekForSequence: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
829
+ sunday: import("@matter/main/types").BitFlag;
830
+ monday: import("@matter/main/types").BitFlag;
831
+ tuesday: import("@matter/main/types").BitFlag;
832
+ wednesday: import("@matter/main/types").BitFlag;
833
+ thursday: import("@matter/main/types").BitFlag;
834
+ friday: import("@matter/main/types").BitFlag;
835
+ saturday: import("@matter/main/types").BitFlag;
836
+ away: import("@matter/main/types").BitFlag;
837
+ }>>;
838
+ modeForSequence: import("@matter/main/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
839
+ heatSetpointPresent: import("@matter/main/types").BitFlag;
840
+ coolSetpointPresent: import("@matter/main/types").BitFlag;
841
+ }>>;
842
+ transitions: import("@matter/main/types").FieldType<import("@matter/main/types").TypeFromFields<{
843
+ transitionTime: import("@matter/main/types").FieldType<number>;
844
+ heatSetpoint: import("@matter/main/types").FieldType<number | null>;
845
+ coolSetpoint: import("@matter/main/types").FieldType<number | null>;
846
+ }>[]>;
847
+ }>, any>;
848
+ readonly clearWeeklySchedule: import("@matter/main/types").Command<void, void, any>;
849
+ };
850
+ };
851
+ }, {
852
+ readonly flags: {
853
+ readonly setback: true;
854
+ };
855
+ readonly component: {
856
+ readonly attributes: {
857
+ readonly occupiedSetback: import("@matter/main/types").WritableAttribute<number | null, any>;
858
+ readonly occupiedSetbackMin: import("@matter/main/types").FixedAttribute<number | null, any>;
859
+ readonly occupiedSetbackMax: import("@matter/main/types").FixedAttribute<number | null, any>;
860
+ };
861
+ };
862
+ }, {
863
+ readonly flags: {
864
+ readonly setback: true;
865
+ readonly occupancy: true;
866
+ };
867
+ readonly component: {
868
+ readonly attributes: {
869
+ readonly unoccupiedSetback: import("@matter/main/types").WritableAttribute<number | null, any>;
870
+ readonly unoccupiedSetbackMin: import("@matter/main/types").FixedAttribute<number | null, any>;
871
+ readonly unoccupiedSetbackMax: import("@matter/main/types").FixedAttribute<number | null, any>;
872
+ };
873
+ };
874
+ }, {
875
+ readonly flags: {
876
+ readonly autoMode: true;
877
+ readonly heating: false;
878
+ };
879
+ readonly component: false;
880
+ }, {
881
+ readonly flags: {
882
+ readonly autoMode: true;
883
+ readonly cooling: false;
884
+ };
885
+ readonly component: false;
886
+ }, {
887
+ readonly flags: {
888
+ readonly heating: false;
889
+ readonly cooling: false;
890
+ };
891
+ readonly component: false;
892
+ }];
893
+ }>, readonly [Thermostat.Feature.Cooling, Thermostat.Feature.Heating, Thermostat.Feature.AutoMode]>, readonly ["Cooling"]>, typeof MatterbridgeThermostatServer, import("@matter/main/behaviors").ThermostatInterface> | import("@matter/main").ClusterBehavior.Type<import("@matter/main/types").ClusterComposer.WithFeatures<ClusterType.Of<{
121
894
  readonly id: 59;
122
895
  readonly name: "Switch";
123
896
  readonly revision: 1;
@@ -445,7 +1218,7 @@ export declare class MatterbridgeEndpoint extends Endpoint {
445
1218
  };
446
1219
  readonly component: false;
447
1220
  }];
448
- }>, readonly [SmokeCoAlarm.Feature.SmokeAlarm, SmokeCoAlarm.Feature.CoAlarm]>, typeof SmokeCoAlarmServer, import("@matter/main/behaviors").SmokeCoAlarmInterface> | import("@matter/main").ClusterBehavior.Type<import("@matter/main/types").ClusterComposer.WithFeatures<AirQuality.Cluster, readonly [AirQuality.Feature.Fair, AirQuality.Feature.Moderate, AirQuality.Feature.VeryPoor, AirQuality.Feature.ExtremelyPoor]>, typeof AirQualityServer, {
1221
+ }>, readonly ["SmokeAlarm", "CoAlarm"]>, typeof SmokeCoAlarmServer, import("@matter/main/behaviors").SmokeCoAlarmInterface> | import("@matter/main").ClusterBehavior.Type<import("@matter/main/types").ClusterComposer.WithFeatures<AirQuality.Cluster, readonly ["Fair", "Moderate", "VeryPoor", "ExtremelyPoor"]>, typeof AirQualityServer, {
449
1222
  components: never[];
450
1223
  }> | import("@matter/main").ClusterBehavior.Type<import("@matter/main/types").ClusterComposer.WithFeatures<ClusterType.Of<{
451
1224
  readonly id: 1036;
@@ -1764,11 +2537,11 @@ export declare class MatterbridgeEndpoint extends Endpoint {
1764
2537
  * @param {string} endpointName - The name of the new enpoint to add.
1765
2538
  * @param {AtLeastOne<DeviceTypeDefinition>} deviceTypes - The device types to add.
1766
2539
  * @param {ClusterId[]} [includeServerList=[]] - The list of cluster IDs to include.
1767
- * @param {EndpointOptions} [options={}] - The options for the device.
2540
+ * @param {MatterbridgeEndpointOptions} [options={}] - The options for the device.
1768
2541
  * @param {boolean} [debug=false] - Whether to enable debug logging.
1769
2542
  * @returns {MatterbridgeEndpoint} - The child endpoint that was found or added.
1770
2543
  */
1771
- addChildDeviceTypeWithClusterServer(endpointName: string, deviceTypes: AtLeastOne<DeviceTypeDefinition>, includeServerList?: ClusterId[], options?: EndpointOptions, debug?: boolean): MatterbridgeEndpoint;
2544
+ addChildDeviceTypeWithClusterServer(endpointName: string, deviceTypes: AtLeastOne<DeviceTypeDefinition>, includeServerList?: ClusterId[], options?: MatterbridgeEndpointOptions, debug?: boolean): MatterbridgeEndpoint;
1772
2545
  /**
1773
2546
  * Retrieves a child endpoint by its name.
1774
2547
  *
@@ -1780,8 +2553,10 @@ export declare class MatterbridgeEndpoint extends Endpoint {
1780
2553
  getChildEndpoints(): Endpoint[];
1781
2554
  getDeviceTypes(): DeviceTypeDefinition[];
1782
2555
  setDeviceTypes(deviceTypes: AtLeastOne<DeviceTypeDefinition>): void;
2556
+ setBridgedDeviceReachability(reachable: boolean): Promise<void>;
1783
2557
  hasClusterServer<F extends BitSchema, SF extends TypeFromPartialBitSchema<F>, A extends Attributes, C extends Commands, E extends Events>(cluster: Cluster<F, SF, A, C, E>): boolean;
1784
2558
  getClusterServer<const T extends ClusterType>(cluster: T): ClusterServerObj<T> | undefined;
2559
+ getAllClusterServers(): ClusterServer[];
1785
2560
  getClusterServerById(clusterId: ClusterId): ClusterServerObj | undefined;
1786
2561
  addTagList(endpoint: Endpoint, mfgCode: VendorId | null, namespaceId: number, tag: number, label?: string | null): void;
1787
2562
  addClusterServer<const T extends ClusterType>(cluster: ClusterServerObj<T>): void;
@@ -1828,7 +2603,7 @@ export declare class MatterbridgeEndpoint extends Endpoint {
1828
2603
  * @param {MatterbridgeEndpoint} [endpoint] - Optional endpoint to subscribe the attribute on. Defaults to the current endpoint.
1829
2604
  * @returns {boolean} - A boolean indicating whether the subscription was successful.
1830
2605
  */
1831
- subscribeAttribute(clusterId: ClusterId, attribute: string, listener: (newValue: any, oldValue: any) => void, log?: AnsiLogger, endpoint?: MatterbridgeEndpoint): boolean;
2606
+ subscribeAttribute(clusterId: ClusterId, attribute: string, listener: (newValue: any, oldValue: any) => void, log?: AnsiLogger, endpoint?: MatterbridgeEndpoint): Promise<boolean>;
1832
2607
  /**
1833
2608
  * Triggers an event on the specified cluster.
1834
2609
  *
@@ -2251,7 +3026,12 @@ export declare class MatterbridgeEndpoint extends Endpoint {
2251
3026
  readonly events: {
2252
3027
  readonly measurementPeriodRanges: import("@matter/main/types").OptionalEvent<import("@matter/main/types").TypeFromFields<{
2253
3028
  ranges: import("@matter/main/types").FieldType<import("@matter/main/types").TypeFromFields<{
2254
- measurementType: import("@matter/main/types").FieldType<MeasurementType>;
3029
+ measurementType: import("@matter/main/types" /**
3030
+ * Get a default momentary switch cluster server.
3031
+ *
3032
+ * @remarks
3033
+ * This method adds a cluster server with default momentary switch features and configurations suitable for (AppleHome) Single Double Long automations.
3034
+ */).FieldType<MeasurementType>;
2255
3035
  min: import("@matter/main/types").FieldType<number | bigint>;
2256
3036
  max: import("@matter/main/types").FieldType<number | bigint>;
2257
3037
  startTimestamp: import("@matter/main/types").OptionalFieldType<number>;
@@ -2344,16 +3124,168 @@ export declare class MatterbridgeEndpoint extends Endpoint {
2344
3124
  /**
2345
3125
  * Get a default OnOff cluster server.
2346
3126
  *
2347
- * @param onOff - The initial state of the OnOff cluster (default: false).
3127
+ * @param {boolean} [onOff=false] - The initial state of the OnOff cluster.
3128
+ * @param {boolean} [globalSceneControl=false] - The global scene control state.
3129
+ * @param {number} [onTime=0] - The on time value.
3130
+ * @param {number} [offWaitTime=0] - The off wait time value.
3131
+ * @param {OnOff.StartUpOnOff | null} [startUpOnOff=null] - The start-up OnOff state. Null means previous state.
3132
+ * @returns {ClusterServer} - The configured OnOff cluster server.
2348
3133
  */
2349
- getDefaultOnOffClusterServer(onOff?: boolean): ClusterServerObj<OnOff.Cluster>;
3134
+ getDefaultOnOffClusterServer(onOff?: boolean, globalSceneControl?: boolean, onTime?: number, offWaitTime?: number, startUpOnOff?: OnOff.StartUpOnOff | null): ClusterServerObj<import("@matter/main/types").ClusterComposer.Of<ClusterType.Of<{
3135
+ readonly base: ClusterType.Of<{
3136
+ readonly id: 6;
3137
+ readonly name: "OnOff";
3138
+ readonly revision: 6;
3139
+ readonly features: {
3140
+ readonly lighting: import("@matter/main/types").BitFlag;
3141
+ readonly deadFrontBehavior: import("@matter/main/types").BitFlag;
3142
+ readonly offOnly: import("@matter/main/types").BitFlag;
3143
+ };
3144
+ readonly attributes: {
3145
+ readonly onOff: import("@matter/main/types").Attribute<boolean, any>;
3146
+ };
3147
+ readonly commands: {
3148
+ readonly off: import("@matter/main/types").Command<void, void, any>;
3149
+ };
3150
+ readonly extensions: readonly [{
3151
+ readonly flags: {
3152
+ readonly lighting: true;
3153
+ };
3154
+ readonly component: {
3155
+ readonly attributes: {
3156
+ readonly globalSceneControl: import("@matter/main/types").Attribute<boolean, any>;
3157
+ readonly onTime: import("@matter/main/types").WritableAttribute<number, any>;
3158
+ readonly offWaitTime: import("@matter/main/types").WritableAttribute<number, any>;
3159
+ readonly startUpOnOff: import("@matter/main/types").WritableAttribute<OnOff.StartUpOnOff | null, any>;
3160
+ };
3161
+ readonly commands: {
3162
+ readonly offWithEffect: import("@matter/main/types").Command<import("@matter/main/types").TypeFromFields<{
3163
+ effectIdentifier: import("@matter/main/types").FieldType<OnOff.EffectIdentifier>;
3164
+ effectVariant: import("@matter/main/types").FieldType<number>;
3165
+ }>, void, any>;
3166
+ readonly onWithRecallGlobalScene: import("@matter/main/types").Command<void, void, any>;
3167
+ readonly onWithTimedOff: import("@matter/main/types").Command<import("@matter/main/types").TypeFromFields<{
3168
+ onOffControl: import("@matter/main/types").FieldType<TypeFromPartialBitSchema<{
3169
+ acceptOnlyWhenOn: import("@matter/main/types").BitFlag;
3170
+ }>>;
3171
+ onTime: import("@matter/main/types").FieldType<number>;
3172
+ offWaitTime: import("@matter/main/types").FieldType<number>;
3173
+ }>, void, any>;
3174
+ };
3175
+ };
3176
+ }, {
3177
+ readonly flags: {
3178
+ readonly offOnly: false;
3179
+ };
3180
+ readonly component: {
3181
+ readonly commands: {
3182
+ readonly on: import("@matter/main/types").Command<void, void, any>;
3183
+ readonly toggle: import("@matter/main/types").Command<void, void, any>;
3184
+ };
3185
+ };
3186
+ }, {
3187
+ readonly flags: {
3188
+ readonly lighting: true;
3189
+ readonly offOnly: true;
3190
+ };
3191
+ readonly component: false;
3192
+ }, {
3193
+ readonly flags: {
3194
+ readonly deadFrontBehavior: true;
3195
+ readonly offOnly: true;
3196
+ };
3197
+ readonly component: false;
3198
+ }, {
3199
+ readonly flags: {
3200
+ readonly offOnly: true;
3201
+ readonly lighting: false;
3202
+ readonly deadFrontBehavior: true;
3203
+ };
3204
+ readonly component: false;
3205
+ }];
3206
+ }>;
3207
+ readonly id: 6;
3208
+ readonly name: "OnOff";
3209
+ readonly revision: 6;
3210
+ readonly features: {
3211
+ readonly lighting: import("@matter/main/types").BitFlag;
3212
+ readonly deadFrontBehavior: import("@matter/main/types").BitFlag;
3213
+ readonly offOnly: import("@matter/main/types").BitFlag;
3214
+ };
3215
+ readonly attributes: {
3216
+ readonly onOff: import("@matter/main/types").Attribute<boolean, any>;
3217
+ };
3218
+ readonly commands: {
3219
+ readonly off: import("@matter/main/types").Command<void, void, any>;
3220
+ };
3221
+ readonly extensions: readonly [{
3222
+ readonly flags: {
3223
+ readonly lighting: true;
3224
+ };
3225
+ readonly component: {
3226
+ readonly attributes: {
3227
+ readonly globalSceneControl: import("@matter/main/types").Attribute<boolean, any>;
3228
+ readonly onTime: import("@matter/main/types").WritableAttribute<number, any>;
3229
+ readonly offWaitTime: import("@matter/main/types").WritableAttribute<number, any>;
3230
+ readonly startUpOnOff: import("@matter/main/types").WritableAttribute<OnOff.StartUpOnOff | null, any>;
3231
+ };
3232
+ readonly commands: {
3233
+ readonly offWithEffect: import("@matter/main/types").Command<import("@matter/main/types").TypeFromFields<{
3234
+ effectIdentifier: import("@matter/main/types").FieldType<OnOff.EffectIdentifier>;
3235
+ effectVariant: import("@matter/main/types").FieldType<number>;
3236
+ }>, void, any>;
3237
+ readonly onWithRecallGlobalScene: import("@matter/main/types").Command<void, void, any>;
3238
+ readonly onWithTimedOff: import("@matter/main/types").Command<import("@matter/main/types").TypeFromFields<{
3239
+ onOffControl: import("@matter/main/types").FieldType<TypeFromPartialBitSchema<{
3240
+ acceptOnlyWhenOn: import("@matter/main/types").BitFlag;
3241
+ }>>;
3242
+ onTime: import("@matter/main/types").FieldType<number>;
3243
+ offWaitTime: import("@matter/main/types").FieldType<number>;
3244
+ }>, void, any>;
3245
+ };
3246
+ };
3247
+ }, {
3248
+ readonly flags: {
3249
+ readonly offOnly: false;
3250
+ };
3251
+ readonly component: {
3252
+ readonly commands: {
3253
+ readonly on: import("@matter/main/types").Command<void, void, any>;
3254
+ readonly toggle: import("@matter/main/types").Command<void, void, any>;
3255
+ };
3256
+ };
3257
+ }, {
3258
+ readonly flags: {
3259
+ readonly lighting: true;
3260
+ readonly offOnly: true;
3261
+ };
3262
+ readonly component: false;
3263
+ }, {
3264
+ readonly flags: {
3265
+ readonly deadFrontBehavior: true;
3266
+ readonly offOnly: true;
3267
+ };
3268
+ readonly component: false;
3269
+ }, {
3270
+ readonly flags: {
3271
+ readonly offOnly: true;
3272
+ readonly lighting: false;
3273
+ readonly deadFrontBehavior: true;
3274
+ };
3275
+ readonly component: false;
3276
+ }];
3277
+ }>, readonly [OnOff.Feature.Lighting]>>;
2350
3278
  /**
2351
3279
  * Creates a default OnOff cluster server.
2352
3280
  *
2353
- * @param onOff - The initial state of the OnOff cluster (default: false).
3281
+ * @param {boolean} [onOff=false] - The initial state of the OnOff cluster.
3282
+ * @param {boolean} [globalSceneControl=false] - The global scene control state.
3283
+ * @param {number} [onTime=0] - The on time value.
3284
+ * @param {number} [offWaitTime=0] - The off wait time value.
3285
+ * @param {OnOff.StartUpOnOff | null} [startUpOnOff=null] - The start-up OnOff state. Null means previous state.
2354
3286
  * @returns {void}
2355
3287
  */
2356
- createDefaultOnOffClusterServer(onOff?: boolean): void;
3288
+ createDefaultOnOffClusterServer(onOff?: boolean, globalSceneControl?: boolean, onTime?: number, offWaitTime?: number, startUpOnOff?: OnOff.StartUpOnOff | null): void;
2357
3289
  /**
2358
3290
  * Get a default level control cluster server.
2359
3291
  *