homebridge 2.0.0-beta.5 → 2.0.0-beta.51

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 (286) hide show
  1. package/README.md +16 -17
  2. package/bin/homebridge.js +22 -0
  3. package/config-sample.json +3 -3
  4. package/dist/api.d.ts +137 -0
  5. package/dist/api.d.ts.map +1 -0
  6. package/dist/api.js +151 -0
  7. package/dist/api.js.map +1 -0
  8. package/{lib → dist}/bridgeService.d.ts +16 -32
  9. package/dist/bridgeService.d.ts.map +1 -0
  10. package/dist/bridgeService.js +341 -0
  11. package/dist/bridgeService.js.map +1 -0
  12. package/dist/childBridgeFork.d.ts +40 -0
  13. package/dist/childBridgeFork.d.ts.map +1 -0
  14. package/dist/childBridgeFork.js +362 -0
  15. package/dist/childBridgeFork.js.map +1 -0
  16. package/dist/childBridgeService.d.ts +146 -0
  17. package/dist/childBridgeService.d.ts.map +1 -0
  18. package/dist/childBridgeService.js +416 -0
  19. package/dist/childBridgeService.js.map +1 -0
  20. package/dist/cli.d.ts +3 -0
  21. package/dist/cli.d.ts.map +1 -0
  22. package/dist/cli.js +88 -0
  23. package/dist/cli.js.map +1 -0
  24. package/dist/externalPortService.d.ts +26 -0
  25. package/dist/externalPortService.d.ts.map +1 -0
  26. package/dist/externalPortService.js +77 -0
  27. package/dist/externalPortService.js.map +1 -0
  28. package/dist/index.d.ts +29 -0
  29. package/dist/index.d.ts.map +1 -0
  30. package/dist/index.js +9 -0
  31. package/dist/index.js.map +1 -0
  32. package/dist/ipcService.d.ts +58 -0
  33. package/dist/ipcService.d.ts.map +1 -0
  34. package/dist/ipcService.js +43 -0
  35. package/dist/ipcService.js.map +1 -0
  36. package/dist/logger.d.ts +38 -0
  37. package/dist/logger.d.ts.map +1 -0
  38. package/dist/logger.js +102 -0
  39. package/dist/logger.js.map +1 -0
  40. package/dist/matter/BaseMatterManager.d.ts +20 -0
  41. package/dist/matter/BaseMatterManager.d.ts.map +1 -0
  42. package/dist/matter/BaseMatterManager.js +183 -0
  43. package/dist/matter/BaseMatterManager.js.map +1 -0
  44. package/dist/matter/ChildBridgeMatterManager.d.ts +35 -0
  45. package/dist/matter/ChildBridgeMatterManager.d.ts.map +1 -0
  46. package/dist/matter/ChildBridgeMatterManager.js +222 -0
  47. package/dist/matter/ChildBridgeMatterManager.js.map +1 -0
  48. package/dist/matter/ClusterCommandMapper.d.ts +5 -0
  49. package/dist/matter/ClusterCommandMapper.d.ts.map +1 -0
  50. package/dist/matter/ClusterCommandMapper.js +222 -0
  51. package/dist/matter/ClusterCommandMapper.js.map +1 -0
  52. package/dist/matter/ExternalMatterAccessoryPublisher.d.ts +22 -0
  53. package/dist/matter/ExternalMatterAccessoryPublisher.d.ts.map +1 -0
  54. package/dist/matter/ExternalMatterAccessoryPublisher.js +49 -0
  55. package/dist/matter/ExternalMatterAccessoryPublisher.js.map +1 -0
  56. package/dist/matter/MatterAPIImpl.d.ts +443 -0
  57. package/dist/matter/MatterAPIImpl.d.ts.map +1 -0
  58. package/dist/matter/MatterAPIImpl.js +210 -0
  59. package/dist/matter/MatterAPIImpl.js.map +1 -0
  60. package/dist/matter/MatterBridgeManager.d.ts +40 -0
  61. package/dist/matter/MatterBridgeManager.d.ts.map +1 -0
  62. package/dist/matter/MatterBridgeManager.js +340 -0
  63. package/dist/matter/MatterBridgeManager.js.map +1 -0
  64. package/dist/matter/MatterConfigCollector.d.ts +7 -0
  65. package/dist/matter/MatterConfigCollector.d.ts.map +1 -0
  66. package/dist/matter/MatterConfigCollector.js +65 -0
  67. package/dist/matter/MatterConfigCollector.js.map +1 -0
  68. package/dist/matter/accessoryCache.d.ts +57 -0
  69. package/dist/matter/accessoryCache.d.ts.map +1 -0
  70. package/dist/matter/accessoryCache.js +155 -0
  71. package/dist/matter/accessoryCache.js.map +1 -0
  72. package/dist/matter/behaviors/AirQualityBehavior.d.ts +8 -0
  73. package/dist/matter/behaviors/AirQualityBehavior.d.ts.map +1 -0
  74. package/dist/matter/behaviors/AirQualityBehavior.js +11 -0
  75. package/dist/matter/behaviors/AirQualityBehavior.js.map +1 -0
  76. package/dist/matter/behaviors/BehaviorRegistry.d.ts +27 -0
  77. package/dist/matter/behaviors/BehaviorRegistry.d.ts.map +1 -0
  78. package/dist/matter/behaviors/BehaviorRegistry.js +110 -0
  79. package/dist/matter/behaviors/BehaviorRegistry.js.map +1 -0
  80. package/dist/matter/behaviors/ColorControlBehavior.d.ts +12 -0
  81. package/dist/matter/behaviors/ColorControlBehavior.d.ts.map +1 -0
  82. package/dist/matter/behaviors/ColorControlBehavior.js +139 -0
  83. package/dist/matter/behaviors/ColorControlBehavior.js.map +1 -0
  84. package/dist/matter/behaviors/ConcentrationMeasurementBehavior.d.ts +32 -0
  85. package/dist/matter/behaviors/ConcentrationMeasurementBehavior.d.ts.map +1 -0
  86. package/dist/matter/behaviors/ConcentrationMeasurementBehavior.js +51 -0
  87. package/dist/matter/behaviors/ConcentrationMeasurementBehavior.js.map +1 -0
  88. package/dist/matter/behaviors/DoorLockBehavior.d.ts +7 -0
  89. package/dist/matter/behaviors/DoorLockBehavior.d.ts.map +1 -0
  90. package/dist/matter/behaviors/DoorLockBehavior.js +48 -0
  91. package/dist/matter/behaviors/DoorLockBehavior.js.map +1 -0
  92. package/dist/matter/behaviors/FanControlBehavior.d.ts +7 -0
  93. package/dist/matter/behaviors/FanControlBehavior.d.ts.map +1 -0
  94. package/dist/matter/behaviors/FanControlBehavior.js +57 -0
  95. package/dist/matter/behaviors/FanControlBehavior.js.map +1 -0
  96. package/dist/matter/behaviors/IdentifyBehavior.d.ts +7 -0
  97. package/dist/matter/behaviors/IdentifyBehavior.d.ts.map +1 -0
  98. package/dist/matter/behaviors/IdentifyBehavior.js +25 -0
  99. package/dist/matter/behaviors/IdentifyBehavior.js.map +1 -0
  100. package/dist/matter/behaviors/LevelControlBehavior.d.ts +11 -0
  101. package/dist/matter/behaviors/LevelControlBehavior.d.ts.map +1 -0
  102. package/dist/matter/behaviors/LevelControlBehavior.js +100 -0
  103. package/dist/matter/behaviors/LevelControlBehavior.js.map +1 -0
  104. package/dist/matter/behaviors/OnOffBehavior.d.ts +8 -0
  105. package/dist/matter/behaviors/OnOffBehavior.d.ts.map +1 -0
  106. package/dist/matter/behaviors/OnOffBehavior.js +60 -0
  107. package/dist/matter/behaviors/OnOffBehavior.js.map +1 -0
  108. package/dist/matter/behaviors/RegistryManager.d.ts +15 -0
  109. package/dist/matter/behaviors/RegistryManager.d.ts.map +1 -0
  110. package/dist/matter/behaviors/RegistryManager.js +31 -0
  111. package/dist/matter/behaviors/RegistryManager.js.map +1 -0
  112. package/dist/matter/behaviors/RvcCleanModeBehavior.d.ts +14 -0
  113. package/dist/matter/behaviors/RvcCleanModeBehavior.d.ts.map +1 -0
  114. package/dist/matter/behaviors/RvcCleanModeBehavior.js +29 -0
  115. package/dist/matter/behaviors/RvcCleanModeBehavior.js.map +1 -0
  116. package/dist/matter/behaviors/RvcOperationalStateBehavior.d.ts +10 -0
  117. package/dist/matter/behaviors/RvcOperationalStateBehavior.d.ts.map +1 -0
  118. package/dist/matter/behaviors/RvcOperationalStateBehavior.js +81 -0
  119. package/dist/matter/behaviors/RvcOperationalStateBehavior.js.map +1 -0
  120. package/dist/matter/behaviors/RvcRunModeBehavior.d.ts +14 -0
  121. package/dist/matter/behaviors/RvcRunModeBehavior.d.ts.map +1 -0
  122. package/dist/matter/behaviors/RvcRunModeBehavior.js +29 -0
  123. package/dist/matter/behaviors/RvcRunModeBehavior.js.map +1 -0
  124. package/dist/matter/behaviors/ServiceAreaBehavior.d.ts +9 -0
  125. package/dist/matter/behaviors/ServiceAreaBehavior.d.ts.map +1 -0
  126. package/dist/matter/behaviors/ServiceAreaBehavior.js +62 -0
  127. package/dist/matter/behaviors/ServiceAreaBehavior.js.map +1 -0
  128. package/dist/matter/behaviors/ThermostatBehavior.d.ts +9 -0
  129. package/dist/matter/behaviors/ThermostatBehavior.d.ts.map +1 -0
  130. package/dist/matter/behaviors/ThermostatBehavior.js +92 -0
  131. package/dist/matter/behaviors/ThermostatBehavior.js.map +1 -0
  132. package/dist/matter/behaviors/WindowCoveringBehavior.d.ts +12 -0
  133. package/dist/matter/behaviors/WindowCoveringBehavior.d.ts.map +1 -0
  134. package/dist/matter/behaviors/WindowCoveringBehavior.js +108 -0
  135. package/dist/matter/behaviors/WindowCoveringBehavior.js.map +1 -0
  136. package/dist/matter/behaviors/index.d.ts +18 -0
  137. package/dist/matter/behaviors/index.d.ts.map +1 -0
  138. package/dist/matter/behaviors/index.js +17 -0
  139. package/dist/matter/behaviors/index.js.map +1 -0
  140. package/dist/matter/clusterTypes.d.ts +178 -0
  141. package/dist/matter/clusterTypes.d.ts.map +1 -0
  142. package/dist/matter/clusterTypes.js +2 -0
  143. package/dist/matter/clusterTypes.js.map +1 -0
  144. package/dist/matter/configValidator.d.ts +26 -0
  145. package/dist/matter/configValidator.d.ts.map +1 -0
  146. package/dist/matter/configValidator.js +173 -0
  147. package/dist/matter/configValidator.js.map +1 -0
  148. package/dist/matter/errorHandler.d.ts +11 -0
  149. package/dist/matter/errorHandler.d.ts.map +1 -0
  150. package/dist/matter/errorHandler.js +81 -0
  151. package/dist/matter/errorHandler.js.map +1 -0
  152. package/dist/matter/errors.d.ts +46 -0
  153. package/dist/matter/errors.d.ts.map +1 -0
  154. package/dist/matter/errors.js +68 -0
  155. package/dist/matter/errors.js.map +1 -0
  156. package/dist/matter/index.d.ts +97 -0
  157. package/dist/matter/index.d.ts.map +1 -0
  158. package/dist/matter/index.js +10 -0
  159. package/dist/matter/index.js.map +1 -0
  160. package/dist/matter/logFormatter.d.ts +2 -0
  161. package/dist/matter/logFormatter.d.ts.map +1 -0
  162. package/dist/matter/logFormatter.js +100 -0
  163. package/dist/matter/logFormatter.js.map +1 -0
  164. package/dist/matter/managerTypes.d.ts +57 -0
  165. package/dist/matter/managerTypes.d.ts.map +1 -0
  166. package/dist/matter/managerTypes.js +2 -0
  167. package/dist/matter/managerTypes.js.map +1 -0
  168. package/dist/matter/server.d.ts +112 -0
  169. package/dist/matter/server.d.ts.map +1 -0
  170. package/dist/matter/server.js +1508 -0
  171. package/dist/matter/server.js.map +1 -0
  172. package/dist/matter/serverHelpers.d.ts +31 -0
  173. package/dist/matter/serverHelpers.d.ts.map +1 -0
  174. package/dist/matter/serverHelpers.js +273 -0
  175. package/dist/matter/serverHelpers.js.map +1 -0
  176. package/dist/matter/sharedTypes.d.ts +93 -0
  177. package/dist/matter/sharedTypes.d.ts.map +1 -0
  178. package/dist/matter/sharedTypes.js +20 -0
  179. package/dist/matter/sharedTypes.js.map +1 -0
  180. package/dist/matter/storage.d.ts +45 -0
  181. package/dist/matter/storage.d.ts.map +1 -0
  182. package/dist/matter/storage.js +325 -0
  183. package/dist/matter/storage.js.map +1 -0
  184. package/dist/matter/typeHelpers.d.ts +15 -0
  185. package/dist/matter/typeHelpers.d.ts.map +1 -0
  186. package/dist/matter/typeHelpers.js +33 -0
  187. package/dist/matter/typeHelpers.js.map +1 -0
  188. package/dist/matter/types.d.ts +565 -0
  189. package/dist/matter/types.d.ts.map +1 -0
  190. package/dist/matter/types.js +132 -0
  191. package/dist/matter/types.js.map +1 -0
  192. package/dist/matter/utils.d.ts +13 -0
  193. package/dist/matter/utils.d.ts.map +1 -0
  194. package/dist/matter/utils.js +21 -0
  195. package/dist/matter/utils.js.map +1 -0
  196. package/{lib → dist}/platformAccessory.d.ts +8 -21
  197. package/dist/platformAccessory.d.ts.map +1 -0
  198. package/dist/platformAccessory.js +79 -0
  199. package/dist/platformAccessory.js.map +1 -0
  200. package/{lib → dist}/plugin.d.ts +2 -6
  201. package/dist/plugin.d.ts.map +1 -0
  202. package/dist/plugin.js +159 -0
  203. package/dist/plugin.js.map +1 -0
  204. package/{lib → dist}/pluginManager.d.ts +3 -25
  205. package/dist/pluginManager.d.ts.map +1 -0
  206. package/{lib → dist}/pluginManager.js +87 -115
  207. package/dist/pluginManager.js.map +1 -0
  208. package/{lib → dist}/server.d.ts +15 -20
  209. package/dist/server.d.ts.map +1 -0
  210. package/dist/server.js +732 -0
  211. package/dist/server.js.map +1 -0
  212. package/{lib → dist}/storageService.d.ts.map +1 -1
  213. package/dist/storageService.js +41 -0
  214. package/dist/storageService.js.map +1 -0
  215. package/{lib → dist}/user.d.ts +1 -3
  216. package/dist/user.d.ts.map +1 -0
  217. package/dist/user.js +29 -0
  218. package/dist/user.js.map +1 -0
  219. package/{lib → dist}/util/mac.d.ts +1 -0
  220. package/dist/util/mac.d.ts.map +1 -0
  221. package/dist/util/mac.js +13 -0
  222. package/dist/util/mac.js.map +1 -0
  223. package/dist/version.d.ts.map +1 -0
  224. package/dist/version.js +16 -0
  225. package/dist/version.js.map +1 -0
  226. package/package.json +49 -50
  227. package/bin/homebridge +0 -17
  228. package/lib/api.d.ts +0 -210
  229. package/lib/api.d.ts.map +0 -1
  230. package/lib/api.js +0 -155
  231. package/lib/api.js.map +0 -1
  232. package/lib/bridgeService.d.ts.map +0 -1
  233. package/lib/bridgeService.js +0 -426
  234. package/lib/bridgeService.js.map +0 -1
  235. package/lib/childBridgeFork.d.ts +0 -37
  236. package/lib/childBridgeFork.d.ts.map +0 -1
  237. package/lib/childBridgeFork.js +0 -244
  238. package/lib/childBridgeFork.js.map +0 -1
  239. package/lib/childBridgeService.d.ts +0 -199
  240. package/lib/childBridgeService.d.ts.map +0 -1
  241. package/lib/childBridgeService.js +0 -428
  242. package/lib/childBridgeService.js.map +0 -1
  243. package/lib/cli.d.ts +0 -4
  244. package/lib/cli.d.ts.map +0 -1
  245. package/lib/cli.js +0 -111
  246. package/lib/cli.js.map +0 -1
  247. package/lib/externalPortService.d.ts +0 -33
  248. package/lib/externalPortService.d.ts.map +0 -1
  249. package/lib/externalPortService.js +0 -64
  250. package/lib/externalPortService.js.map +0 -1
  251. package/lib/index.d.ts +0 -76
  252. package/lib/index.d.ts.map +0 -1
  253. package/lib/index.js +0 -72
  254. package/lib/index.js.map +0 -1
  255. package/lib/ipcService.d.ts +0 -33
  256. package/lib/ipcService.d.ts.map +0 -1
  257. package/lib/ipcService.js +0 -49
  258. package/lib/ipcService.js.map +0 -1
  259. package/lib/logger.d.ts +0 -78
  260. package/lib/logger.d.ts.map +0 -1
  261. package/lib/logger.js +0 -147
  262. package/lib/logger.js.map +0 -1
  263. package/lib/platformAccessory.d.ts.map +0 -1
  264. package/lib/platformAccessory.js +0 -102
  265. package/lib/platformAccessory.js.map +0 -1
  266. package/lib/plugin.d.ts.map +0 -1
  267. package/lib/plugin.js +0 -194
  268. package/lib/plugin.js.map +0 -1
  269. package/lib/pluginManager.d.ts.map +0 -1
  270. package/lib/pluginManager.js.map +0 -1
  271. package/lib/server.d.ts.map +0 -1
  272. package/lib/server.js +0 -457
  273. package/lib/server.js.map +0 -1
  274. package/lib/storageService.js +0 -70
  275. package/lib/storageService.js.map +0 -1
  276. package/lib/user.d.ts.map +0 -1
  277. package/lib/user.js +0 -36
  278. package/lib/user.js.map +0 -1
  279. package/lib/util/mac.d.ts.map +0 -1
  280. package/lib/util/mac.js +0 -20
  281. package/lib/util/mac.js.map +0 -1
  282. package/lib/version.d.ts.map +0 -1
  283. package/lib/version.js +0 -21
  284. package/lib/version.js.map +0 -1
  285. /package/{lib → dist}/storageService.d.ts +0 -0
  286. /package/{lib → dist}/version.d.ts +0 -0
@@ -0,0 +1,565 @@
1
+ import type { Endpoint, EndpointType } from '@matter/main';
2
+ import { EventEmitter } from 'node:events';
3
+ import * as clusters from '@matter/main/clusters';
4
+ import * as devices from '@matter/main/devices';
5
+ import { BehaviorType } from './typeHelpers.js';
6
+ export type { EndpointType };
7
+ export interface MatterHandlerContext {
8
+ uuid: string;
9
+ partId?: string;
10
+ }
11
+ export type MatterCommandHandler<TArgs = unknown> = (args?: TArgs, context?: MatterHandlerContext) => Promise<void> | void;
12
+ export interface MatterClusterHandlers {
13
+ [commandName: string]: MatterCommandHandler<any>;
14
+ }
15
+ export interface MatterAccessoryPart {
16
+ id: string;
17
+ displayName?: string;
18
+ deviceType: EndpointType;
19
+ clusters: {
20
+ [clusterName: string]: {
21
+ [attributeName: string]: unknown;
22
+ };
23
+ };
24
+ handlers?: {
25
+ [clusterName: string]: MatterClusterHandlers;
26
+ };
27
+ }
28
+ export interface MatterAccessory<T = Record<string, unknown>> {
29
+ uuid: string;
30
+ displayName: string;
31
+ deviceType: EndpointType;
32
+ serialNumber: string;
33
+ manufacturer: string;
34
+ model: string;
35
+ firmwareRevision?: string;
36
+ hardwareRevision?: string;
37
+ softwareVersion?: string;
38
+ context?: T;
39
+ clusters?: {
40
+ [clusterName: string]: {
41
+ [attributeName: string]: unknown;
42
+ };
43
+ };
44
+ handlers?: {
45
+ [clusterName: string]: MatterClusterHandlers;
46
+ };
47
+ getState?: (cluster: string, attribute: string) => Promise<unknown> | unknown;
48
+ parts?: MatterAccessoryPart[];
49
+ _eventEmitter?: MatterAccessoryEventEmitter;
50
+ }
51
+ export interface MatterConfig extends Record<string, unknown> {
52
+ port?: number;
53
+ name?: string;
54
+ }
55
+ export interface MatterServerEvents {
56
+ 'commissioning-status-changed': (commissioned: boolean, fabricCount: number) => void;
57
+ }
58
+ export declare enum MatterAccessoryEventTypes {
59
+ READY = "ready"
60
+ }
61
+ export interface MatterAccessoryEventEmitter extends EventEmitter {
62
+ on: (event: 'ready', listener: (port: number) => void) => this;
63
+ emit: (event: 'ready', port: number) => boolean;
64
+ }
65
+ export interface InternalMatterAccessoryPart extends MatterAccessoryPart {
66
+ endpoint?: Endpoint;
67
+ }
68
+ export interface InternalMatterAccessory extends MatterAccessory {
69
+ _associatedPlugin?: string;
70
+ _associatedPlatform?: string;
71
+ endpoint?: Endpoint;
72
+ registered: boolean;
73
+ _parts?: InternalMatterAccessoryPart[];
74
+ }
75
+ export declare enum MatterErrorType {
76
+ INITIALIZATION = "INITIALIZATION",
77
+ NETWORK = "NETWORK",
78
+ COMMISSIONING = "COMMISSIONING",
79
+ DEVICE_SYNC = "DEVICE_SYNC",
80
+ SERVER = "SERVER",
81
+ STORAGE = "STORAGE",
82
+ CONFIGURATION = "CONFIGURATION",
83
+ DEVICE_ERROR = "DEVICE_ERROR",
84
+ UNKNOWN = "UNKNOWN"
85
+ }
86
+ export interface MatterErrorDetails {
87
+ type?: MatterErrorType;
88
+ recoverable?: boolean;
89
+ code?: string;
90
+ context?: string;
91
+ originalError?: Error;
92
+ }
93
+ export declare class MatterError extends Error {
94
+ readonly code: string;
95
+ readonly details?: MatterErrorDetails | undefined;
96
+ readonly type: MatterErrorType;
97
+ readonly timestamp: Date;
98
+ readonly recoverable: boolean;
99
+ constructor(message: string, code: string, details?: MatterErrorDetails | undefined);
100
+ }
101
+ export declare class MatterCommissioningError extends MatterError {
102
+ constructor(message: string, details?: MatterErrorDetails);
103
+ }
104
+ export declare class MatterStorageError extends MatterError {
105
+ constructor(message: string, details?: MatterErrorDetails);
106
+ }
107
+ export declare class MatterDeviceError extends MatterError {
108
+ constructor(message: string, details?: MatterErrorDetails);
109
+ }
110
+ export declare class MatterNetworkError extends MatterError {
111
+ constructor(message: string, details?: MatterErrorDetails);
112
+ }
113
+ export { clusters };
114
+ export { devices };
115
+ export declare const deviceTypes: {
116
+ readonly OnOffLight: devices.OnOffLightDevice;
117
+ readonly DimmableLight: devices.DimmableLightDevice;
118
+ readonly ColorTemperatureLight: devices.ColorTemperatureLightDevice;
119
+ readonly ExtendedColorLight: devices.ExtendedColorLightDevice;
120
+ readonly OnOffSwitch: devices.OnOffLightSwitchDevice;
121
+ readonly OnOffOutlet: devices.OnOffPlugInUnitDevice;
122
+ readonly DimmableOutlet: devices.DimmablePlugInUnitDevice;
123
+ readonly AirQualitySensor: devices.AirQualitySensorDevice;
124
+ readonly TemperatureSensor: devices.TemperatureSensorDevice;
125
+ readonly HumiditySensor: devices.HumiditySensorDevice;
126
+ readonly LightSensor: devices.LightSensorDevice;
127
+ readonly MotionSensor: devices.OccupancySensorDevice;
128
+ readonly ContactSensor: devices.ContactSensorDevice;
129
+ readonly LeakSensor: devices.WaterLeakDetectorDevice;
130
+ readonly SmokeSensor: devices.SmokeCoAlarmDevice;
131
+ readonly Thermostat: import("@matter/main").MutableEndpoint.With<EndpointType.For<{
132
+ readonly name: "Thermostat";
133
+ readonly deviceType: 769;
134
+ readonly deviceRevision: 4;
135
+ readonly requirements: typeof devices.ThermostatRequirements;
136
+ readonly behaviors: {
137
+ readonly identify: typeof import("@matter/node/behaviors").IdentifyServer;
138
+ };
139
+ }>, import("@matter/main").SupportedBehaviors.With<{
140
+ readonly identify: typeof import("@matter/node/behaviors").IdentifyServer;
141
+ }, readonly [import("@matter/main").ClusterBehavior.Type<import("@matter/types").ClusterComposer.WithFeatures<import("@matter/types").ClusterType.Of<{
142
+ readonly id: 513;
143
+ readonly name: "Thermostat";
144
+ readonly revision: 9;
145
+ readonly features: {
146
+ readonly heating: import("@matter/types").BitFlag;
147
+ readonly cooling: import("@matter/types").BitFlag;
148
+ readonly occupancy: import("@matter/types").BitFlag;
149
+ readonly scheduleConfiguration: import("@matter/types").BitFlag;
150
+ readonly setback: import("@matter/types").BitFlag;
151
+ readonly autoMode: import("@matter/types").BitFlag;
152
+ readonly localTemperatureNotExposed: import("@matter/types").BitFlag;
153
+ readonly matterScheduleConfiguration: import("@matter/types").BitFlag;
154
+ readonly presets: import("@matter/types").BitFlag;
155
+ };
156
+ readonly attributes: {
157
+ readonly localTemperature: import("@matter/types").Attribute<number | null, any>;
158
+ readonly outdoorTemperature: import("@matter/types").OptionalAttribute<number | null, any>;
159
+ readonly hvacSystemTypeConfiguration: import("@matter/types").OptionalWritableAttribute<import("@matter/types").TypeFromPartialBitSchema<{
160
+ coolingStage: import("@matter/types").BitField;
161
+ heatingStage: import("@matter/types").BitField;
162
+ heatingIsHeatPump: import("@matter/types").BitFlag;
163
+ heatingUsesFuel: import("@matter/types").BitFlag;
164
+ }>, any>;
165
+ readonly remoteSensing: import("@matter/types").OptionalWritableAttribute<import("@matter/types").TypeFromPartialBitSchema<{
166
+ localTemperature: import("@matter/types").BitFlag;
167
+ outdoorTemperature: import("@matter/types").BitFlag;
168
+ occupancy: import("@matter/types").BitFlag;
169
+ }>, any>;
170
+ readonly controlSequenceOfOperation: import("@matter/types").WritableAttribute<clusters.Thermostat.ControlSequenceOfOperation, any>;
171
+ readonly systemMode: import("@matter/types").WritableAttribute<clusters.Thermostat.SystemMode, any>;
172
+ readonly temperatureSetpointHold: import("@matter/types").OptionalWritableAttribute<clusters.Thermostat.TemperatureSetpointHold, any>;
173
+ readonly temperatureSetpointHoldDuration: import("@matter/types").OptionalWritableAttribute<number | null, any>;
174
+ readonly thermostatProgrammingOperationMode: import("@matter/types").OptionalWritableAttribute<import("@matter/types").TypeFromPartialBitSchema<{
175
+ scheduleActive: import("@matter/types").BitFlag;
176
+ autoRecovery: import("@matter/types").BitFlag;
177
+ economy: import("@matter/types").BitFlag;
178
+ }>, any>;
179
+ readonly thermostatRunningState: import("@matter/types").OptionalAttribute<import("@matter/types").TypeFromPartialBitSchema<{
180
+ heat: import("@matter/types").BitFlag;
181
+ cool: import("@matter/types").BitFlag;
182
+ fan: import("@matter/types").BitFlag;
183
+ heatStage2: import("@matter/types").BitFlag;
184
+ coolStage2: import("@matter/types").BitFlag;
185
+ fanStage2: import("@matter/types").BitFlag;
186
+ fanStage3: import("@matter/types").BitFlag;
187
+ }>, any>;
188
+ readonly setpointChangeSource: import("@matter/types").OptionalAttribute<clusters.Thermostat.SetpointChangeSource, any>;
189
+ readonly setpointChangeAmount: import("@matter/types").OptionalAttribute<number | null, any>;
190
+ readonly setpointChangeSourceTimestamp: import("@matter/types").OptionalAttribute<number, any>;
191
+ readonly emergencyHeatDelta: import("@matter/types").OptionalWritableAttribute<number, any>;
192
+ readonly acType: import("@matter/types").OptionalWritableAttribute<clusters.Thermostat.AcType, any>;
193
+ readonly acCapacity: import("@matter/types").OptionalWritableAttribute<number, any>;
194
+ readonly acRefrigerantType: import("@matter/types").OptionalWritableAttribute<clusters.Thermostat.AcRefrigerantType, any>;
195
+ readonly acCompressorType: import("@matter/types").OptionalWritableAttribute<clusters.Thermostat.AcCompressorType, any>;
196
+ readonly acErrorCode: import("@matter/types").OptionalWritableAttribute<import("@matter/types").TypeFromPartialBitSchema<{
197
+ compressorFail: import("@matter/types").BitFlag;
198
+ roomSensorFail: import("@matter/types").BitFlag;
199
+ outdoorSensorFail: import("@matter/types").BitFlag;
200
+ coilSensorFail: import("@matter/types").BitFlag;
201
+ fanFail: import("@matter/types").BitFlag;
202
+ }>, any>;
203
+ readonly acLouverPosition: import("@matter/types").OptionalWritableAttribute<clusters.Thermostat.AcLouverPosition, any>;
204
+ readonly acCoilTemperature: import("@matter/types").OptionalAttribute<number | null, any>;
205
+ readonly acCapacityFormat: import("@matter/types").OptionalWritableAttribute<clusters.Thermostat.AcCapacityFormat, any>;
206
+ readonly setpointHoldExpiryTimestamp: import("@matter/types").OptionalAttribute<number | null, any>;
207
+ };
208
+ readonly commands: {
209
+ readonly setpointRaiseLower: import("@matter/types").Command<import("@matter/types").TypeFromFields<{
210
+ mode: import("@matter/types").FieldType<clusters.Thermostat.SetpointRaiseLowerMode>;
211
+ amount: import("@matter/types").FieldType<number>;
212
+ }>, void, any>;
213
+ readonly atomicRequest: import("@matter/types").Command<import("@matter/types").TypeFromFields<{
214
+ requestType: import("@matter/types").FieldType<clusters.Thermostat.RequestType>;
215
+ attributeRequests: import("@matter/types").FieldType<import("@matter/main").AttributeId[]>;
216
+ timeout: import("@matter/types").OptionalFieldType<number>;
217
+ }>, import("@matter/types").TypeFromFields<{
218
+ statusCode: import("@matter/types").FieldType<import("@matter/types").Status>;
219
+ attributeStatus: import("@matter/types").FieldType<import("@matter/types").TypeFromFields<{
220
+ attributeId: import("@matter/types").FieldType<import("@matter/main").AttributeId>;
221
+ statusCode: import("@matter/types").FieldType<import("@matter/types").Status>;
222
+ }>[]>;
223
+ timeout: import("@matter/types").OptionalFieldType<number>;
224
+ }>, any>;
225
+ };
226
+ readonly extensions: readonly [{
227
+ readonly flags: {
228
+ readonly occupancy: true;
229
+ };
230
+ readonly component: {
231
+ readonly attributes: {
232
+ readonly occupancy: import("@matter/types").Attribute<import("@matter/types").TypeFromPartialBitSchema<{
233
+ occupied: import("@matter/types").BitFlag;
234
+ }>, any>;
235
+ };
236
+ };
237
+ }, {
238
+ readonly flags: {
239
+ readonly heating: true;
240
+ };
241
+ readonly component: {
242
+ readonly attributes: {
243
+ readonly absMinHeatSetpointLimit: import("@matter/types").OptionalFixedAttribute<number, any>;
244
+ readonly absMaxHeatSetpointLimit: import("@matter/types").OptionalFixedAttribute<number, any>;
245
+ readonly piHeatingDemand: import("@matter/types").OptionalAttribute<number, any>;
246
+ readonly occupiedHeatingSetpoint: import("@matter/types").WritableAttribute<number, any>;
247
+ readonly minHeatSetpointLimit: import("@matter/types").OptionalWritableAttribute<number, any>;
248
+ readonly maxHeatSetpointLimit: import("@matter/types").OptionalWritableAttribute<number, any>;
249
+ };
250
+ };
251
+ }, {
252
+ readonly flags: {
253
+ readonly cooling: true;
254
+ };
255
+ readonly component: {
256
+ readonly attributes: {
257
+ readonly absMinCoolSetpointLimit: import("@matter/types").OptionalFixedAttribute<number, any>;
258
+ readonly absMaxCoolSetpointLimit: import("@matter/types").OptionalFixedAttribute<number, any>;
259
+ readonly piCoolingDemand: import("@matter/types").OptionalAttribute<number, any>;
260
+ readonly occupiedCoolingSetpoint: import("@matter/types").WritableAttribute<number, any>;
261
+ readonly minCoolSetpointLimit: import("@matter/types").OptionalWritableAttribute<number, any>;
262
+ readonly maxCoolSetpointLimit: import("@matter/types").OptionalWritableAttribute<number, any>;
263
+ };
264
+ };
265
+ }, {
266
+ readonly flags: {
267
+ readonly localTemperatureNotExposed: false;
268
+ };
269
+ readonly component: {
270
+ readonly attributes: {
271
+ readonly localTemperatureCalibration: import("@matter/types").OptionalWritableAttribute<number, any>;
272
+ };
273
+ };
274
+ }, {
275
+ readonly flags: {
276
+ readonly cooling: true;
277
+ readonly occupancy: true;
278
+ };
279
+ readonly component: {
280
+ readonly attributes: {
281
+ readonly unoccupiedCoolingSetpoint: import("@matter/types").WritableAttribute<number, any>;
282
+ };
283
+ };
284
+ }, {
285
+ readonly flags: {
286
+ readonly heating: true;
287
+ readonly occupancy: true;
288
+ };
289
+ readonly component: {
290
+ readonly attributes: {
291
+ readonly unoccupiedHeatingSetpoint: import("@matter/types").WritableAttribute<number, any>;
292
+ };
293
+ };
294
+ }, {
295
+ readonly flags: {
296
+ readonly autoMode: true;
297
+ };
298
+ readonly component: {
299
+ readonly attributes: {
300
+ readonly minSetpointDeadBand: import("@matter/types").WritableAttribute<number, any>;
301
+ readonly thermostatRunningMode: import("@matter/types").OptionalAttribute<clusters.Thermostat.ThermostatRunningMode, any>;
302
+ };
303
+ };
304
+ }, {
305
+ readonly flags: {
306
+ readonly scheduleConfiguration: true;
307
+ };
308
+ readonly component: {
309
+ readonly attributes: {
310
+ readonly startOfWeek: import("@matter/types").FixedAttribute<clusters.Thermostat.StartOfWeek, any>;
311
+ readonly numberOfWeeklyTransitions: import("@matter/types").FixedAttribute<number, any>;
312
+ readonly numberOfDailyTransitions: import("@matter/types").FixedAttribute<number, any>;
313
+ };
314
+ readonly commands: {
315
+ readonly setWeeklySchedule: import("@matter/types").Command<import("@matter/types").TypeFromFields<{
316
+ numberOfTransitionsForSequence: import("@matter/types").FieldType<number>;
317
+ dayOfWeekForSequence: import("@matter/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
318
+ sunday: import("@matter/types").BitFlag;
319
+ monday: import("@matter/types").BitFlag;
320
+ tuesday: import("@matter/types").BitFlag;
321
+ wednesday: import("@matter/types").BitFlag;
322
+ thursday: import("@matter/types").BitFlag;
323
+ friday: import("@matter/types").BitFlag;
324
+ saturday: import("@matter/types").BitFlag;
325
+ away: import("@matter/types").BitFlag;
326
+ }>>;
327
+ modeForSequence: import("@matter/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
328
+ heatSetpointPresent: import("@matter/types").BitFlag;
329
+ coolSetpointPresent: import("@matter/types").BitFlag;
330
+ }>>;
331
+ transitions: import("@matter/types").FieldType<import("@matter/types").TypeFromFields<{
332
+ transitionTime: import("@matter/types").FieldType<number>;
333
+ heatSetpoint: import("@matter/types").FieldType<number | null>;
334
+ coolSetpoint: import("@matter/types").FieldType<number | null>;
335
+ }>[]>;
336
+ }>, void, any>;
337
+ readonly getWeeklySchedule: import("@matter/types").Command<import("@matter/types").TypeFromFields<{
338
+ daysToReturn: import("@matter/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
339
+ sunday: import("@matter/types").BitFlag;
340
+ monday: import("@matter/types").BitFlag;
341
+ tuesday: import("@matter/types").BitFlag;
342
+ wednesday: import("@matter/types").BitFlag;
343
+ thursday: import("@matter/types").BitFlag;
344
+ friday: import("@matter/types").BitFlag;
345
+ saturday: import("@matter/types").BitFlag;
346
+ away: import("@matter/types").BitFlag;
347
+ }>>;
348
+ modeToReturn: import("@matter/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
349
+ heatSetpointPresent: import("@matter/types").BitFlag;
350
+ coolSetpointPresent: import("@matter/types").BitFlag;
351
+ }>>;
352
+ }>, import("@matter/types").TypeFromFields<{
353
+ numberOfTransitionsForSequence: import("@matter/types").FieldType<number>;
354
+ dayOfWeekForSequence: import("@matter/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
355
+ sunday: import("@matter/types").BitFlag;
356
+ monday: import("@matter/types").BitFlag;
357
+ tuesday: import("@matter/types").BitFlag;
358
+ wednesday: import("@matter/types").BitFlag;
359
+ thursday: import("@matter/types").BitFlag;
360
+ friday: import("@matter/types").BitFlag;
361
+ saturday: import("@matter/types").BitFlag;
362
+ away: import("@matter/types").BitFlag;
363
+ }>>;
364
+ modeForSequence: import("@matter/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
365
+ heatSetpointPresent: import("@matter/types").BitFlag;
366
+ coolSetpointPresent: import("@matter/types").BitFlag;
367
+ }>>;
368
+ transitions: import("@matter/types").FieldType<import("@matter/types").TypeFromFields<{
369
+ transitionTime: import("@matter/types").FieldType<number>;
370
+ heatSetpoint: import("@matter/types").FieldType<number | null>;
371
+ coolSetpoint: import("@matter/types").FieldType<number | null>;
372
+ }>[]>;
373
+ }>, any>;
374
+ readonly clearWeeklySchedule: import("@matter/types").Command<void, void, any>;
375
+ };
376
+ };
377
+ }, {
378
+ readonly flags: {
379
+ readonly setback: true;
380
+ };
381
+ readonly component: {
382
+ readonly attributes: {
383
+ readonly occupiedSetback: import("@matter/types").WritableAttribute<number | null, any>;
384
+ readonly occupiedSetbackMin: import("@matter/types").FixedAttribute<number | null, any>;
385
+ readonly occupiedSetbackMax: import("@matter/types").FixedAttribute<number | null, any>;
386
+ };
387
+ };
388
+ }, {
389
+ readonly flags: {
390
+ readonly setback: true;
391
+ readonly occupancy: true;
392
+ };
393
+ readonly component: {
394
+ readonly attributes: {
395
+ readonly unoccupiedSetback: import("@matter/types").WritableAttribute<number | null, any>;
396
+ readonly unoccupiedSetbackMin: import("@matter/types").FixedAttribute<number | null, any>;
397
+ readonly unoccupiedSetbackMax: import("@matter/types").FixedAttribute<number | null, any>;
398
+ };
399
+ };
400
+ }, {
401
+ readonly flags: {
402
+ readonly presets: true;
403
+ };
404
+ readonly component: {
405
+ readonly attributes: {
406
+ readonly presetTypes: import("@matter/types").FixedAttribute<import("@matter/types").TypeFromFields<{
407
+ presetScenario: import("@matter/types").FieldType<clusters.Thermostat.PresetScenario>;
408
+ numberOfPresets: import("@matter/types").FieldType<number>;
409
+ presetTypeFeatures: import("@matter/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
410
+ automatic: import("@matter/types").BitFlag;
411
+ supportsNames: import("@matter/types").BitFlag;
412
+ }>>;
413
+ }>[], any>;
414
+ readonly numberOfPresets: import("@matter/types").FixedAttribute<number, any>;
415
+ readonly activePresetHandle: import("@matter/types").Attribute<AllowSharedBufferSource | null, any>;
416
+ readonly presets: import("@matter/types").WritableAttribute<import("@matter/types").TypeFromFields<{
417
+ presetHandle: import("@matter/types").FieldType<AllowSharedBufferSource | null>;
418
+ presetScenario: import("@matter/types").FieldType<clusters.Thermostat.PresetScenario>;
419
+ name: import("@matter/types").OptionalFieldType<string | null>;
420
+ coolingSetpoint: import("@matter/types").OptionalFieldType<number>;
421
+ heatingSetpoint: import("@matter/types").OptionalFieldType<number>;
422
+ builtIn: import("@matter/types").FieldType<boolean | null>;
423
+ }>[], any>;
424
+ };
425
+ readonly commands: {
426
+ readonly setActivePresetRequest: import("@matter/types").Command<import("@matter/types").TypeFromFields<{
427
+ presetHandle: import("@matter/types").FieldType<AllowSharedBufferSource | null>;
428
+ }>, void, any>;
429
+ };
430
+ };
431
+ }, {
432
+ readonly flags: {
433
+ readonly matterScheduleConfiguration: true;
434
+ };
435
+ readonly component: {
436
+ readonly attributes: {
437
+ readonly scheduleTypes: import("@matter/types").FixedAttribute<import("@matter/types").TypeFromFields<{
438
+ systemMode: import("@matter/types").FieldType<clusters.Thermostat.SystemMode>;
439
+ numberOfSchedules: import("@matter/types").FieldType<number>;
440
+ scheduleTypeFeatures: import("@matter/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
441
+ supportsPresets: import("@matter/types").BitFlag;
442
+ supportsSetpoints: import("@matter/types").BitFlag;
443
+ supportsNames: import("@matter/types").BitFlag;
444
+ supportsOff: import("@matter/types").BitFlag;
445
+ }>>;
446
+ }>[], any>;
447
+ readonly numberOfSchedules: import("@matter/types").FixedAttribute<number, any>;
448
+ readonly numberOfScheduleTransitions: import("@matter/types").FixedAttribute<number, any>;
449
+ readonly numberOfScheduleTransitionPerDay: import("@matter/types").FixedAttribute<number | null, any>;
450
+ readonly activeScheduleHandle: import("@matter/types").Attribute<AllowSharedBufferSource | null, any>;
451
+ readonly schedules: import("@matter/types").WritableAttribute<import("@matter/types").TypeFromFields<{
452
+ scheduleHandle: import("@matter/types").FieldType<AllowSharedBufferSource | null>;
453
+ systemMode: import("@matter/types").FieldType<clusters.Thermostat.SystemMode>;
454
+ name: import("@matter/types").OptionalFieldType<string>;
455
+ presetHandle: import("@matter/types").OptionalFieldType<AllowSharedBufferSource>;
456
+ transitions: import("@matter/types").FieldType<import("@matter/types").TypeFromFields<{
457
+ dayOfWeek: import("@matter/types").FieldType<import("@matter/types").TypeFromPartialBitSchema<{
458
+ sunday: import("@matter/types").BitFlag;
459
+ monday: import("@matter/types").BitFlag;
460
+ tuesday: import("@matter/types").BitFlag;
461
+ wednesday: import("@matter/types").BitFlag;
462
+ thursday: import("@matter/types").BitFlag;
463
+ friday: import("@matter/types").BitFlag;
464
+ saturday: import("@matter/types").BitFlag;
465
+ away: import("@matter/types").BitFlag;
466
+ }>>;
467
+ transitionTime: import("@matter/types").FieldType<number>;
468
+ presetHandle: import("@matter/types").OptionalFieldType<AllowSharedBufferSource>;
469
+ systemMode: import("@matter/types").OptionalFieldType<clusters.Thermostat.SystemMode>;
470
+ coolingSetpoint: import("@matter/types").OptionalFieldType<number>;
471
+ heatingSetpoint: import("@matter/types").OptionalFieldType<number>;
472
+ }>[]>;
473
+ builtIn: import("@matter/types").FieldType<boolean | null>;
474
+ }>[], any>;
475
+ };
476
+ readonly commands: {
477
+ readonly setActiveScheduleRequest: import("@matter/types").Command<import("@matter/types").TypeFromFields<{
478
+ scheduleHandle: import("@matter/types").FieldType<AllowSharedBufferSource>;
479
+ }>, void, any>;
480
+ };
481
+ };
482
+ }, {
483
+ readonly flags: {
484
+ readonly autoMode: true;
485
+ readonly heating: false;
486
+ };
487
+ readonly component: false;
488
+ }, {
489
+ readonly flags: {
490
+ readonly autoMode: true;
491
+ readonly cooling: false;
492
+ };
493
+ readonly component: false;
494
+ }, {
495
+ readonly flags: {
496
+ readonly heating: false;
497
+ readonly cooling: false;
498
+ };
499
+ readonly component: false;
500
+ }];
501
+ }>, readonly ["Heating", "Cooling"]>, typeof import("@matter/node/behaviors").ThermostatServer, import("@matter/node/behaviors").ThermostatInterface>]>>;
502
+ readonly Fan: devices.FanDevice;
503
+ readonly DoorLock: devices.DoorLockDevice;
504
+ readonly WindowCovering: devices.WindowCoveringDevice;
505
+ readonly RoboticVacuumCleaner: devices.RoboticVacuumCleanerDevice;
506
+ readonly GenericSwitch: devices.GenericSwitchDevice;
507
+ readonly Pump: devices.PumpDevice;
508
+ readonly RoomAirConditioner: devices.RoomAirConditionerDevice;
509
+ };
510
+ export declare const clusterNames: {
511
+ readonly OnOff: "onOff";
512
+ readonly LevelControl: "levelControl";
513
+ readonly ColorControl: "colorControl";
514
+ readonly DoorLock: "doorLock";
515
+ readonly WindowCovering: "windowCovering";
516
+ readonly Thermostat: "thermostat";
517
+ readonly FanControl: "fanControl";
518
+ readonly AirQuality: "airQuality";
519
+ readonly CarbonMonoxideConcentrationMeasurement: "carbonMonoxideConcentrationMeasurement";
520
+ readonly NitrogenDioxideConcentrationMeasurement: "nitrogenDioxideConcentrationMeasurement";
521
+ readonly OzoneConcentrationMeasurement: "ozoneConcentrationMeasurement";
522
+ readonly Pm10ConcentrationMeasurement: "pm10ConcentrationMeasurement";
523
+ readonly Pm25ConcentrationMeasurement: "pm25ConcentrationMeasurement";
524
+ readonly TemperatureMeasurement: "temperatureMeasurement";
525
+ readonly RelativeHumidityMeasurement: "relativeHumidityMeasurement";
526
+ readonly IlluminanceMeasurement: "illuminanceMeasurement";
527
+ readonly OccupancySensing: "occupancySensing";
528
+ readonly BooleanState: "booleanState";
529
+ readonly SmokeCoAlarm: "smokeCoAlarm";
530
+ readonly RvcRunMode: "rvcRunMode";
531
+ readonly RvcOperationalState: "rvcOperationalState";
532
+ readonly RvcCleanMode: "rvcCleanMode";
533
+ readonly ServiceArea: "serviceArea";
534
+ readonly PumpConfigurationAndControl: "pumpConfigurationAndControl";
535
+ readonly Identify: "identify";
536
+ readonly BasicInformation: "basicInformation";
537
+ readonly BridgedDeviceBasicInformation: "bridgedDeviceBasicInformation";
538
+ };
539
+ export type MatterClusterName = typeof clusterNames[keyof typeof clusterNames];
540
+ export type MatterAccessoryMap = Map<string, InternalMatterAccessory>;
541
+ export type EndpointWithSettableState = Endpoint & {
542
+ state: Record<string, unknown>;
543
+ set: (values: Record<string, Record<string, unknown>>) => Promise<void>;
544
+ };
545
+ export declare function hasEndpointState(endpoint: Endpoint): endpoint is EndpointWithSettableState;
546
+ export declare function updateEndpointState(endpoint: Endpoint, cluster: string, attributes: Record<string, unknown>): Promise<void>;
547
+ export interface DeviceTypeWithBehaviors extends EndpointType {
548
+ with: (...behaviors: BehaviorType[]) => DeviceTypeWithBehaviors;
549
+ }
550
+ export interface WindowCoveringCluster {
551
+ type?: number;
552
+ configStatus?: {
553
+ liftPositionAware?: boolean;
554
+ tiltPositionAware?: boolean;
555
+ liftEncoderControlled?: boolean;
556
+ tiltEncoderControlled?: boolean;
557
+ };
558
+ targetPositionLiftPercent100ths?: number;
559
+ currentPositionLiftPercent100ths?: number;
560
+ targetPositionTiltPercent100ths?: number;
561
+ currentPositionTiltPercent100ths?: number;
562
+ operationalStatus?: number;
563
+ }
564
+ export declare function getWindowCoveringCluster(accessory: MatterAccessory): WindowCoveringCluster | undefined;
565
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/matter/types.ts"],"names":[],"mappings":"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"}