matterbridge 3.4.7-dev-20260103-3152357 → 3.4.7-dev-20260112-a00b2bf

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 (171) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +5 -1
  3. package/dist/broadcastServer.d.ts +29 -0
  4. package/dist/broadcastServerTypes.d.ts +798 -0
  5. package/dist/cli.d.ts +6 -0
  6. package/dist/cliEmitter.d.ts +14 -0
  7. package/dist/cliHistory.d.ts +6 -0
  8. package/dist/clusters/export.d.ts +1 -0
  9. package/dist/deviceManager.d.ts +27 -0
  10. package/dist/devices/airConditioner.d.ts +23 -0
  11. package/dist/devices/batteryStorage.d.ts +5 -0
  12. package/dist/devices/cooktop.d.ts +6 -0
  13. package/dist/devices/dishwasher.d.ts +16 -0
  14. package/dist/devices/evse.d.ts +19 -0
  15. package/dist/devices/export.d.ts +16 -0
  16. package/dist/devices/extractorHood.d.ts +5 -0
  17. package/dist/devices/heatPump.d.ts +4 -0
  18. package/dist/devices/laundryDryer.d.ts +9 -0
  19. package/dist/devices/laundryWasher.d.ts +17 -0
  20. package/dist/devices/microwaveOven.d.ts +92 -0
  21. package/dist/devices/oven.d.ts +23 -0
  22. package/dist/devices/refrigerator.d.ts +18 -0
  23. package/dist/devices/roboticVacuumCleaner.d.ts +29 -0
  24. package/dist/devices/solarPower.d.ts +4 -0
  25. package/dist/devices/speaker.d.ts +8 -0
  26. package/dist/devices/temperatureControl.d.ts +145 -0
  27. package/dist/devices/waterHeater.d.ts +37 -0
  28. package/dist/dgram/coap.d.ts +34 -0
  29. package/dist/dgram/dgram.d.ts +45 -0
  30. package/dist/dgram/dgram.js +7 -0
  31. package/dist/dgram/mb_coap.d.ts +1 -0
  32. package/dist/dgram/mb_coap.js +1 -2
  33. package/dist/dgram/mb_mdns.d.ts +1 -0
  34. package/dist/dgram/mb_mdns.js +39 -50
  35. package/dist/dgram/mdns.d.ts +188 -0
  36. package/dist/dgram/multicast.d.ts +18 -0
  37. package/dist/dgram/unicast.d.ts +11 -0
  38. package/dist/frontend.d.ts +58 -0
  39. package/dist/frontendTypes.d.ts +472 -0
  40. package/dist/helpers.d.ts +5 -0
  41. package/dist/index.d.ts +11 -0
  42. package/dist/jestutils/export.d.ts +1 -0
  43. package/dist/jestutils/jestHelpers.d.ts +90 -0
  44. package/dist/logger/export.d.ts +1 -0
  45. package/dist/matter/behaviors.d.ts +1 -0
  46. package/dist/matter/clusters.d.ts +1 -0
  47. package/dist/matter/devices.d.ts +1 -0
  48. package/dist/matter/endpoints.d.ts +1 -0
  49. package/dist/matter/export.d.ts +4 -0
  50. package/dist/matter/types.d.ts +2 -0
  51. package/dist/matterNode.d.ts +84 -0
  52. package/dist/matterbridge.d.ts +152 -0
  53. package/dist/matterbridgeAccessoryPlatform.d.ts +5 -0
  54. package/dist/matterbridgeBehaviors.d.ts +2380 -0
  55. package/dist/matterbridgeDeviceTypes.d.ts +95 -0
  56. package/dist/matterbridgeDynamicPlatform.d.ts +5 -0
  57. package/dist/matterbridgeEndpoint.d.ts +175 -0
  58. package/dist/matterbridgeEndpointHelpers.d.ts +362 -0
  59. package/dist/matterbridgeEndpointTypes.d.ts +96 -0
  60. package/dist/matterbridgePlatform.d.ts +114 -0
  61. package/dist/matterbridgeTypes.d.ts +206 -0
  62. package/dist/pluginManager.d.ts +67 -0
  63. package/dist/shelly.d.ts +24 -0
  64. package/dist/storage/export.d.ts +1 -0
  65. package/dist/update.d.ts +9 -0
  66. package/dist/utils/colorUtils.d.ts +24 -0
  67. package/dist/utils/commandLine.d.ts +6 -0
  68. package/dist/utils/copyDirectory.d.ts +2 -0
  69. package/dist/utils/createDirectory.d.ts +2 -0
  70. package/dist/utils/createZip.d.ts +1 -0
  71. package/dist/utils/deepCopy.d.ts +1 -0
  72. package/dist/utils/deepEqual.d.ts +1 -0
  73. package/dist/utils/error.d.ts +3 -0
  74. package/dist/utils/export.d.ts +12 -0
  75. package/dist/utils/format.d.ts +4 -0
  76. package/dist/utils/hex.d.ts +4 -0
  77. package/dist/utils/inspector.d.ts +24 -0
  78. package/dist/utils/isValid.d.ts +10 -0
  79. package/dist/utils/network.d.ts +25 -0
  80. package/dist/utils/spawn.d.ts +1 -0
  81. package/dist/utils/tracker.d.ts +52 -0
  82. package/dist/utils/wait.d.ts +3 -0
  83. package/dist/workerGlobalPrefix.d.ts +1 -0
  84. package/dist/workerTypes.d.ts +27 -0
  85. package/dist/workers.d.ts +8 -0
  86. package/npm-shrinkwrap.json +904 -131
  87. package/package.json +9 -2
  88. package/packages/dgram/dist/coap.d.ts +34 -0
  89. package/packages/dgram/dist/coap.js +252 -0
  90. package/packages/dgram/dist/dgram.d.ts +45 -0
  91. package/packages/dgram/dist/dgram.js +255 -0
  92. package/packages/dgram/dist/export.d.ts +5 -0
  93. package/packages/dgram/dist/export.js +5 -0
  94. package/packages/dgram/dist/mdns.d.ts +188 -0
  95. package/packages/dgram/dist/mdns.js +702 -0
  96. package/packages/dgram/dist/multicast.d.ts +18 -0
  97. package/packages/dgram/dist/multicast.js +119 -0
  98. package/packages/dgram/dist/unicast.d.ts +11 -0
  99. package/packages/dgram/dist/unicast.js +40 -0
  100. package/packages/dgram/package.json +106 -0
  101. package/packages/jest-utils/LICENSE +202 -0
  102. package/packages/jest-utils/bmc-button.svg +22 -0
  103. package/packages/jest-utils/dist/export.d.ts +1 -0
  104. package/packages/jest-utils/dist/export.js +1 -0
  105. package/packages/jest-utils/dist/jestHelpers.d.ts +21 -0
  106. package/packages/jest-utils/matterbridge.svg +50 -0
  107. package/packages/{mb-lib-test → jest-utils}/package.json +13 -11
  108. package/packages/utils/LICENSE +202 -0
  109. package/packages/utils/bmc-button.svg +22 -0
  110. package/packages/utils/dist/colorUtils.d.ts +24 -0
  111. package/packages/utils/dist/colorUtils.js +187 -0
  112. package/packages/utils/dist/commandLine.d.ts +6 -0
  113. package/packages/utils/dist/commandLine.js +63 -0
  114. package/packages/utils/dist/copyDirectory.d.ts +2 -0
  115. package/packages/utils/dist/copyDirectory.js +39 -0
  116. package/packages/utils/dist/createDirectory.d.ts +2 -0
  117. package/packages/utils/dist/createDirectory.js +21 -0
  118. package/packages/utils/dist/createZip.d.ts +1 -0
  119. package/packages/utils/dist/createZip.js +69 -0
  120. package/packages/utils/dist/deepCopy.d.ts +1 -0
  121. package/packages/utils/dist/deepCopy.js +40 -0
  122. package/packages/utils/dist/deepEqual.d.ts +1 -0
  123. package/packages/utils/dist/deepEqual.js +58 -0
  124. package/packages/utils/dist/error.d.ts +3 -0
  125. package/packages/utils/dist/error.js +12 -0
  126. package/packages/utils/dist/export.d.ts +15 -0
  127. package/packages/utils/dist/export.js +15 -0
  128. package/packages/utils/dist/format.d.ts +4 -0
  129. package/packages/utils/dist/format.js +29 -0
  130. package/packages/utils/dist/githubVersion.d.ts +11 -0
  131. package/packages/utils/dist/githubVersion.js +37 -0
  132. package/packages/utils/dist/hex.d.ts +4 -0
  133. package/packages/utils/dist/hex.js +118 -0
  134. package/packages/utils/dist/inspector.d.ts +24 -0
  135. package/packages/utils/dist/inspector.js +200 -0
  136. package/packages/utils/dist/isValid.d.ts +10 -0
  137. package/packages/utils/dist/isValid.js +69 -0
  138. package/packages/utils/dist/network.d.ts +12 -0
  139. package/packages/utils/dist/network.js +105 -0
  140. package/packages/utils/dist/npmRoot.d.ts +1 -0
  141. package/packages/utils/dist/npmRoot.js +13 -0
  142. package/packages/utils/dist/npmVersion.d.ts +1 -0
  143. package/packages/utils/dist/npmVersion.js +43 -0
  144. package/packages/utils/dist/tracker.d.ts +52 -0
  145. package/packages/utils/dist/tracker.js +201 -0
  146. package/packages/utils/dist/wait.d.ts +3 -0
  147. package/packages/utils/dist/wait.js +73 -0
  148. package/packages/utils/matterbridge.svg +50 -0
  149. package/packages/utils/package.json +106 -0
  150. package/packages/vitest-utils/LICENSE +202 -0
  151. package/packages/vitest-utils/bmc-button.svg +22 -0
  152. package/packages/vitest-utils/dist/export.d.ts +1 -0
  153. package/packages/vitest-utils/dist/export.js +1 -0
  154. package/packages/vitest-utils/dist/vitestHelpers.d.ts +21 -0
  155. package/packages/vitest-utils/matterbridge.svg +50 -0
  156. package/packages/vitest-utils/package.json +108 -0
  157. package/reflector/DockerDesktopSetup.png +0 -0
  158. package/reflector/Reflector.md +167 -0
  159. package/reflector/ReflectorClient.png +0 -0
  160. package/reflector/ReflectorServer.png +0 -0
  161. package/reflector/docker-compose.yml +32 -0
  162. package/reflector/mDnsPacket.png +0 -0
  163. package/dist/dgram/mdnsReflectorClient.js +0 -176
  164. package/dist/dgram/mdnsReflectorServer.js +0 -301
  165. package/dist/dgram/mdnsReflectorTypes.js +0 -5
  166. package/packages/mb-lib-test/dist/module.js +0 -2
  167. /package/packages/{mb-lib-test → dgram}/LICENSE +0 -0
  168. /package/packages/{mb-lib-test → dgram}/bmc-button.svg +0 -0
  169. /package/packages/{mb-lib-test → dgram}/matterbridge.svg +0 -0
  170. /package/packages/{mb-lib-test/dist/jestutils → jest-utils/dist}/jestHelpers.js +0 -0
  171. /package/packages/{mb-lib-test/dist/vitestutils → vitest-utils/dist}/vitestHelpers.js +0 -0
package/dist/cli.d.ts ADDED
@@ -0,0 +1,6 @@
1
+ import type { Matterbridge } from './matterbridge.js';
2
+ import { Tracker } from './utils/tracker.js';
3
+ import { Inspector } from './utils/inspector.js';
4
+ export declare let instance: Matterbridge | undefined;
5
+ export declare const tracker: Tracker;
6
+ export declare const inspector: Inspector;
@@ -0,0 +1,14 @@
1
+ import { EventEmitter } from 'node:events';
2
+ interface CliEvents {
3
+ shutdown: [];
4
+ cpu: [cpuUsage: number, processCpuUsage: number];
5
+ memory: [totalMememory: string, freeMemory: string, rss: string, heapTotal: string, heapUsed: string, external: string, arrayBuffers: string];
6
+ uptime: [systemUptime: string, processUptime: string];
7
+ ready: [];
8
+ }
9
+ export declare const cliEmitter: EventEmitter<CliEvents>;
10
+ export declare let lastOsCpuUsage: number;
11
+ export declare let lastProcessCpuUsage: number;
12
+ export declare function setLastOsCpuUsage(val: number): void;
13
+ export declare function setLastProcessCpuUsage(val: number): void;
14
+ export {};
@@ -0,0 +1,6 @@
1
+ export type GenerateHistoryPageOptions = {
2
+ outputPath?: string;
3
+ pageTitle?: string;
4
+ hostname?: string;
5
+ };
6
+ export declare function generateHistoryPage(options?: GenerateHistoryPageOptions): string | undefined;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,27 @@
1
+ import { LogLevel } from 'node-ansi-logger';
2
+ import type { MatterbridgeEndpoint } from './matterbridgeEndpoint.js';
3
+ import { type BaseDevice } from './matterbridgeTypes.js';
4
+ export declare function toBaseDevice(device: MatterbridgeEndpoint | BaseDevice): BaseDevice;
5
+ export declare class DeviceManager {
6
+ private readonly _devices;
7
+ private readonly log;
8
+ private readonly server;
9
+ private readonly debug;
10
+ private readonly verbose;
11
+ constructor();
12
+ destroy(): void;
13
+ private msgHandler;
14
+ get length(): number;
15
+ get size(): number;
16
+ has(uniqueId: string): boolean;
17
+ get(uniqueId: string): MatterbridgeEndpoint | undefined;
18
+ set(device: MatterbridgeEndpoint): MatterbridgeEndpoint;
19
+ remove(device: MatterbridgeEndpoint): boolean;
20
+ clear(): void;
21
+ private toBaseDevice;
22
+ array(): MatterbridgeEndpoint[];
23
+ baseArray(pluginName?: string): BaseDevice[];
24
+ [Symbol.iterator](): MapIterator<MatterbridgeEndpoint>;
25
+ forEach(callback: (device: MatterbridgeEndpoint) => Promise<void>): Promise<void>;
26
+ set logLevel(logLevel: LogLevel);
27
+ }
@@ -0,0 +1,23 @@
1
+ import { ThermostatUserInterfaceConfiguration } from '@matter/types/clusters/thermostat-user-interface-configuration';
2
+ import { FanControl } from '@matter/types/clusters/fan-control';
3
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
4
+ export interface AirConditionerOptions {
5
+ localTemperature?: number;
6
+ occupiedHeatingSetpoint?: number;
7
+ occupiedCoolingSetpoint?: number;
8
+ minSetpointDeadBand?: number;
9
+ minHeatSetpointLimit?: number;
10
+ maxHeatSetpointLimit?: number;
11
+ minCoolSetpointLimit?: number;
12
+ maxCoolSetpointLimit?: number;
13
+ temperatureDisplayMode?: ThermostatUserInterfaceConfiguration.TemperatureDisplayMode;
14
+ keypadLockout?: ThermostatUserInterfaceConfiguration.KeypadLockout;
15
+ scheduleProgrammingVisibility?: ThermostatUserInterfaceConfiguration.ScheduleProgrammingVisibility;
16
+ fanMode?: FanControl.FanMode;
17
+ fanModeSequence?: FanControl.FanModeSequence;
18
+ percentSetting?: number;
19
+ percentCurrent?: number;
20
+ }
21
+ export declare class AirConditioner extends MatterbridgeEndpoint {
22
+ constructor(name: string, serial: string, options?: AirConditionerOptions);
23
+ }
@@ -0,0 +1,5 @@
1
+ import { PowerSource } from '@matter/types/clusters/power-source';
2
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
3
+ export declare class BatteryStorage extends MatterbridgeEndpoint {
4
+ constructor(name: string, serial: string, batPercentRemaining?: number, batChargeLevel?: PowerSource.BatChargeLevel, voltage?: number | bigint | null, current?: number | bigint | null, power?: number | bigint | null, energyImported?: number | bigint | null, energyExported?: number | bigint | null, absMinPower?: number, absMaxPower?: number);
5
+ }
@@ -0,0 +1,6 @@
1
+ import { Semtag } from '@matter/types';
2
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
3
+ export declare class Cooktop extends MatterbridgeEndpoint {
4
+ constructor(name: string, serial: string);
5
+ addSurface(name: string, tagList: Semtag[], selectedTemperatureLevel?: number, supportedTemperatureLevels?: string[]): MatterbridgeEndpoint;
6
+ }
@@ -0,0 +1,16 @@
1
+ import { MaybePromise } from '@matter/general';
2
+ import { OperationalState } from '@matter/types/clusters/operational-state';
3
+ import { ModeBase } from '@matter/types/clusters/mode-base';
4
+ import { DishwasherMode } from '@matter/types/clusters/dishwasher-mode';
5
+ import { DishwasherModeServer } from '@matter/node/behaviors/dishwasher-mode';
6
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
7
+ export declare class Dishwasher extends MatterbridgeEndpoint {
8
+ constructor(name: string, serial: string, currentMode?: number, supportedModes?: DishwasherMode.ModeOption[], selectedTemperatureLevel?: number, supportedTemperatureLevels?: string[], temperatureSetpoint?: number, minTemperature?: number, maxTemperature?: number, step?: number, operationalState?: OperationalState.OperationalStateEnum);
9
+ createDefaultDishwasherModeClusterServer(currentMode?: number, supportedModes?: DishwasherMode.ModeOption[]): this;
10
+ createDefaultDishwasherAlarmClusterServer(): this;
11
+ }
12
+ export declare class MatterbridgeDishwasherModeServer extends DishwasherModeServer {
13
+ initialize(): void;
14
+ protected handleOnOffChange(onOff: boolean): void;
15
+ changeToMode(request: ModeBase.ChangeToModeRequest): MaybePromise<ModeBase.ChangeToModeResponse>;
16
+ }
@@ -0,0 +1,19 @@
1
+ import { MaybePromise } from '@matter/general';
2
+ import { EnergyEvseMode } from '@matter/types/clusters/energy-evse-mode';
3
+ import { EnergyEvse } from '@matter/types/clusters/energy-evse';
4
+ import { ModeBase } from '@matter/types/clusters/mode-base';
5
+ import { EnergyEvseServer } from '@matter/node/behaviors/energy-evse';
6
+ import { EnergyEvseModeServer } from '@matter/node/behaviors/energy-evse-mode';
7
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
8
+ export declare class Evse extends MatterbridgeEndpoint {
9
+ constructor(name: string, serial: string, currentMode?: number, supportedModes?: EnergyEvseMode.ModeOption[], state?: EnergyEvse.State, supplyState?: EnergyEvse.SupplyState, faultState?: EnergyEvse.FaultState, voltage?: number | bigint | null, current?: number | bigint | null, power?: number | bigint | null, energy?: number | bigint | null, absMinPower?: number, absMaxPower?: number);
10
+ createDefaultEnergyEvseClusterServer(state?: EnergyEvse.State, supplyState?: EnergyEvse.SupplyState, faultState?: EnergyEvse.FaultState): this;
11
+ createDefaultEnergyEvseModeClusterServer(currentMode?: number, supportedModes?: EnergyEvseMode.ModeOption[]): this;
12
+ }
13
+ export declare class MatterbridgeEnergyEvseServer extends EnergyEvseServer {
14
+ disable(): MaybePromise;
15
+ enableCharging(request: EnergyEvse.EnableChargingRequest): MaybePromise;
16
+ }
17
+ export declare class MatterbridgeEnergyEvseModeServer extends EnergyEvseModeServer {
18
+ changeToMode(request: ModeBase.ChangeToModeRequest): MaybePromise<ModeBase.ChangeToModeResponse>;
19
+ }
@@ -0,0 +1,16 @@
1
+ export * from './speaker.js';
2
+ export * from './roboticVacuumCleaner.js';
3
+ export * from './laundryWasher.js';
4
+ export * from './laundryDryer.js';
5
+ export * from './extractorHood.js';
6
+ export * from './dishwasher.js';
7
+ export * from './microwaveOven.js';
8
+ export * from './oven.js';
9
+ export * from './cooktop.js';
10
+ export * from './refrigerator.js';
11
+ export * from './airConditioner.js';
12
+ export * from './waterHeater.js';
13
+ export * from './evse.js';
14
+ export * from './solarPower.js';
15
+ export * from './batteryStorage.js';
16
+ export * from './heatPump.js';
@@ -0,0 +1,5 @@
1
+ import { ResourceMonitoring } from '@matter/types/clusters/resource-monitoring';
2
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
3
+ export declare class ExtractorHood extends MatterbridgeEndpoint {
4
+ constructor(name: string, serial: string, hepaCondition?: number, hepaChangeIndication?: ResourceMonitoring.ChangeIndication, hepaInPlaceIndicator?: boolean | undefined, hepaLastChangedTime?: number | null | undefined, hepaReplacementProductList?: ResourceMonitoring.ReplacementProduct[], activatedCarbonCondition?: number, activatedCarbonChangeIndication?: ResourceMonitoring.ChangeIndication, activatedCarbonInPlaceIndicator?: boolean | undefined, activatedCarbonLastChangedTime?: number | null | undefined, activatedCarbonReplacementProductList?: ResourceMonitoring.ReplacementProduct[]);
5
+ }
@@ -0,0 +1,4 @@
1
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
2
+ export declare class HeatPump extends MatterbridgeEndpoint {
3
+ constructor(name: string, serial: string, voltage?: number | bigint | null, current?: number | bigint | null, power?: number | bigint | null, energyImported?: number | bigint | null, absMinPower?: number, absMaxPower?: number);
4
+ }
@@ -0,0 +1,9 @@
1
+ import { OperationalState } from '@matter/types/clusters/operational-state';
2
+ import { LaundryWasherMode } from '@matter/types/clusters/laundry-washer-mode';
3
+ import { LaundryDryerControls } from '@matter/types/clusters/laundry-dryer-controls';
4
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
5
+ export declare class LaundryDryer extends MatterbridgeEndpoint {
6
+ constructor(name: string, serial: string, currentMode?: number, supportedModes?: LaundryWasherMode.ModeOption[], selectedTemperatureLevel?: number, supportedTemperatureLevels?: string[], temperatureSetpoint?: number, minTemperature?: number, maxTemperature?: number, step?: number, operationalState?: OperationalState.OperationalStateEnum);
7
+ createDefaultLaundryWasherModeClusterServer(currentMode?: number, supportedModes?: LaundryWasherMode.ModeOption[]): this;
8
+ createDefaultLaundryDryerControlsClusterServer(selectedDrynessLevel?: LaundryDryerControls.DrynessLevel, supportedDrynessLevels?: LaundryDryerControls.DrynessLevel[]): this;
9
+ }
@@ -0,0 +1,17 @@
1
+ import { MaybePromise } from '@matter/general';
2
+ import { OperationalState } from '@matter/types/clusters/operational-state';
3
+ import { LaundryWasherControls } from '@matter/types/clusters/laundry-washer-controls';
4
+ import { LaundryWasherMode } from '@matter/types/clusters/laundry-washer-mode';
5
+ import { ModeBase } from '@matter/types/clusters/mode-base';
6
+ import { LaundryWasherModeServer } from '@matter/node/behaviors/laundry-washer-mode';
7
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
8
+ export declare class LaundryWasher extends MatterbridgeEndpoint {
9
+ constructor(name: string, serial: string, currentMode?: number, supportedModes?: LaundryWasherMode.ModeOption[], spinSpeedCurrent?: number, spinSpeeds?: string[], numberOfRinses?: LaundryWasherControls.NumberOfRinses, supportedRinses?: LaundryWasherControls.NumberOfRinses[], selectedTemperatureLevel?: number, supportedTemperatureLevels?: string[], temperatureSetpoint?: number, minTemperature?: number, maxTemperature?: number, step?: number, operationalState?: OperationalState.OperationalStateEnum);
10
+ createDefaultLaundryWasherModeClusterServer(currentMode?: number, supportedModes?: LaundryWasherMode.ModeOption[]): this;
11
+ createDefaultLaundryWasherControlsClusterServer(spinSpeedCurrent?: number, spinSpeeds?: string[], numberOfRinses?: LaundryWasherControls.NumberOfRinses, supportedRinses?: LaundryWasherControls.NumberOfRinses[]): this;
12
+ }
13
+ export declare class MatterbridgeLaundryWasherModeServer extends LaundryWasherModeServer {
14
+ initialize(): void;
15
+ protected handleOnOffChange(onOff: boolean): void;
16
+ changeToMode(request: ModeBase.ChangeToModeRequest): MaybePromise<ModeBase.ChangeToModeResponse>;
17
+ }
@@ -0,0 +1,92 @@
1
+ import { MaybePromise } from '@matter/general';
2
+ import { MicrowaveOvenMode } from '@matter/types/clusters/microwave-oven-mode';
3
+ import { MicrowaveOvenControl } from '@matter/types/clusters/microwave-oven-control';
4
+ import { MicrowaveOvenControlServer } from '@matter/node/behaviors/microwave-oven-control';
5
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
6
+ export declare class MicrowaveOven extends MatterbridgeEndpoint {
7
+ constructor(name: string, serial: string, currentMode?: number, supportedModes?: MicrowaveOvenMode.ModeOption[], selectedWattIndex?: number, supportedWatts?: number[], cookTime?: number, maxCookTime?: number);
8
+ createDefaultMicrowaveOvenModeClusterServer(currentMode: number, supportedModes: MicrowaveOvenMode.ModeOption[]): this;
9
+ createDefaultMicrowaveOvenControlClusterServer(selectedWattIndex: number, supportedWatts: number[], cookTime: number, maxCookTime: number): this;
10
+ }
11
+ declare const MatterbridgeMicrowaveOvenControlServer_base: import("@matter/node").ClusterBehavior.Type<import("@matter/types").ClusterComposer.WithFeatures<import("@matter/types").ClusterType.Of<{
12
+ readonly id: 95;
13
+ readonly name: "MicrowaveOvenControl";
14
+ readonly revision: 1;
15
+ readonly features: {
16
+ readonly powerAsNumber: import("@matter/types").BitFlag;
17
+ readonly powerInWatts: import("@matter/types").BitFlag;
18
+ readonly powerNumberLimits: import("@matter/types").BitFlag;
19
+ };
20
+ readonly attributes: {
21
+ readonly cookTime: import("@matter/types").Attribute<number, any>;
22
+ readonly maxCookTime: import("@matter/types").FixedAttribute<number, any>;
23
+ readonly wattRating: import("@matter/types").OptionalFixedAttribute<number, any>;
24
+ };
25
+ readonly commands: {
26
+ readonly setCookingParameters: import("@matter/types").Command<import("@matter/types").TypeFromFields<{
27
+ cookMode: import("@matter/types").OptionalFieldType<number>;
28
+ cookTime: import("@matter/types").OptionalFieldType<number>;
29
+ powerSetting: import("@matter/types").OptionalFieldType<number>;
30
+ wattSettingIndex: import("@matter/types").OptionalFieldType<number>;
31
+ startAfterSetting: import("@matter/types").OptionalFieldType<boolean>;
32
+ }>, void, any>;
33
+ readonly addMoreTime: import("@matter/types").OptionalCommand<import("@matter/types").TypeFromFields<{
34
+ timeToAdd: import("@matter/types").FieldType<number>;
35
+ }>, void, any>;
36
+ };
37
+ readonly extensions: readonly [{
38
+ readonly flags: {
39
+ readonly powerAsNumber: true;
40
+ };
41
+ readonly component: {
42
+ readonly attributes: {
43
+ readonly powerSetting: import("@matter/types").Attribute<number, any>;
44
+ };
45
+ };
46
+ }, {
47
+ readonly flags: {
48
+ readonly powerNumberLimits: true;
49
+ };
50
+ readonly component: {
51
+ readonly attributes: {
52
+ readonly minPower: import("@matter/types").FixedAttribute<number, any>;
53
+ readonly maxPower: import("@matter/types").FixedAttribute<number, any>;
54
+ readonly powerStep: import("@matter/types").FixedAttribute<number, any>;
55
+ };
56
+ };
57
+ }, {
58
+ readonly flags: {
59
+ readonly powerInWatts: true;
60
+ };
61
+ readonly component: {
62
+ readonly attributes: {
63
+ readonly supportedWatts: import("@matter/types").FixedAttribute<number[], any>;
64
+ readonly selectedWattIndex: import("@matter/types").Attribute<number, any>;
65
+ };
66
+ };
67
+ }, {
68
+ readonly flags: {
69
+ readonly powerNumberLimits: true;
70
+ readonly powerAsNumber: false;
71
+ };
72
+ readonly component: false;
73
+ }, {
74
+ readonly flags: {
75
+ readonly powerAsNumber: true;
76
+ readonly powerInWatts: true;
77
+ };
78
+ readonly component: false;
79
+ }, {
80
+ readonly flags: {
81
+ readonly powerAsNumber: false;
82
+ readonly powerInWatts: false;
83
+ };
84
+ readonly component: false;
85
+ }];
86
+ }>, readonly [MicrowaveOvenControl.Feature.PowerInWatts]>, typeof MicrowaveOvenControlServer, import("@matter/node/behaviors/microwave-oven-control").MicrowaveOvenControlInterface>;
87
+ export declare class MatterbridgeMicrowaveOvenControlServer extends MatterbridgeMicrowaveOvenControlServer_base {
88
+ initialize(): void;
89
+ setCookingParameters(request: MicrowaveOvenControl.SetCookingParametersRequest): MaybePromise;
90
+ addMoreTime(request: MicrowaveOvenControl.AddMoreTimeRequest): MaybePromise;
91
+ }
92
+ export {};
@@ -0,0 +1,23 @@
1
+ import { MaybePromise } from '@matter/general';
2
+ import { Semtag } from '@matter/types';
3
+ import { ModeBase } from '@matter/types/clusters/mode-base';
4
+ import { OvenMode } from '@matter/types/clusters/oven-mode';
5
+ import { OperationalState } from '@matter/types/clusters/operational-state';
6
+ import { OvenModeServer } from '@matter/node/behaviors/oven-mode';
7
+ import { OvenCavityOperationalStateServer } from '@matter/node/behaviors/oven-cavity-operational-state';
8
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
9
+ export declare class Oven extends MatterbridgeEndpoint {
10
+ constructor(name: string, serial: string);
11
+ addCabinet(name: string, tagList: Semtag[], currentMode?: number, supportedModes?: OvenMode.ModeOption[], selectedTemperatureLevel?: number, supportedTemperatureLevels?: string[], operationalState?: OperationalState.OperationalStateEnum, currentPhase?: number, phaseList?: string[]): MatterbridgeEndpoint;
12
+ createDefaultOvenModeClusterServer(endpoint: MatterbridgeEndpoint, currentMode: number, supportedModes: OvenMode.ModeOption[]): MatterbridgeEndpoint;
13
+ createDefaultOvenCavityOperationalStateClusterServer(endpoint: MatterbridgeEndpoint, operationalState?: OperationalState.OperationalStateEnum, currentPhase?: number, phaseList?: string[]): MatterbridgeEndpoint;
14
+ }
15
+ export declare class MatterbridgeOvenModeServer extends OvenModeServer {
16
+ initialize(): void;
17
+ changeToMode(request: ModeBase.ChangeToModeRequest): MaybePromise<ModeBase.ChangeToModeResponse>;
18
+ }
19
+ export declare class MatterbridgeOvenCavityOperationalStateServer extends OvenCavityOperationalStateServer {
20
+ initialize(): void;
21
+ stop(): MaybePromise<OperationalState.OperationalCommandResponse>;
22
+ start(): MaybePromise<OperationalState.OperationalCommandResponse>;
23
+ }
@@ -0,0 +1,18 @@
1
+ import { MaybePromise } from '@matter/general';
2
+ import { Semtag } from '@matter/types';
3
+ import { ModeBase } from '@matter/types/clusters/mode-base';
4
+ import { RefrigeratorAndTemperatureControlledCabinetMode } from '@matter/types/clusters/refrigerator-and-temperature-controlled-cabinet-mode';
5
+ import { RefrigeratorAndTemperatureControlledCabinetModeServer } from '@matter/node/behaviors/refrigerator-and-temperature-controlled-cabinet-mode';
6
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
7
+ export declare class Refrigerator extends MatterbridgeEndpoint {
8
+ constructor(name: string, serial: string);
9
+ addCabinet(name: string, tagList: Semtag[], currentMode?: number, supportedModes?: RefrigeratorAndTemperatureControlledCabinetMode.ModeOption[], selectedTemperatureLevel?: number, supportedTemperatureLevels?: string[], currentTemperature?: number): MatterbridgeEndpoint;
10
+ createDefaultRefrigeratorAndTemperatureControlledCabinetModeClusterServer(endpoint: MatterbridgeEndpoint, currentMode: number, supportedModes: RefrigeratorAndTemperatureControlledCabinetMode.ModeOption[]): MatterbridgeEndpoint;
11
+ createDefaultRefrigeratorAlarmClusterServer(endpoint: MatterbridgeEndpoint, doorOpen?: boolean): MatterbridgeEndpoint;
12
+ setDoorOpenState(cabinetName: string, doorOpen: boolean): Promise<MatterbridgeEndpoint | undefined>;
13
+ triggerDoorOpenState(cabinetName: string, doorOpen: boolean): Promise<MatterbridgeEndpoint | undefined>;
14
+ }
15
+ export declare class MatterbridgeRefrigeratorAndTemperatureControlledCabinetModeServer extends RefrigeratorAndTemperatureControlledCabinetModeServer {
16
+ initialize(): void;
17
+ changeToMode(request: ModeBase.ChangeToModeRequest): MaybePromise<ModeBase.ChangeToModeResponse>;
18
+ }
@@ -0,0 +1,29 @@
1
+ import { MaybePromise } from '@matter/general';
2
+ import { RvcRunMode } from '@matter/types/clusters/rvc-run-mode';
3
+ import { RvcCleanMode } from '@matter/types/clusters/rvc-clean-mode';
4
+ import { RvcOperationalState } from '@matter/types/clusters/rvc-operational-state';
5
+ import { ServiceArea } from '@matter/types/clusters/service-area';
6
+ import { ModeBase } from '@matter/types/clusters/mode-base';
7
+ import { OperationalState } from '@matter/types/clusters/operational-state';
8
+ import { RvcRunModeServer } from '@matter/node/behaviors/rvc-run-mode';
9
+ import { RvcOperationalStateServer } from '@matter/node/behaviors/rvc-operational-state';
10
+ import { RvcCleanModeServer } from '@matter/node/behaviors/rvc-clean-mode';
11
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
12
+ export declare class RoboticVacuumCleaner extends MatterbridgeEndpoint {
13
+ constructor(name: string, serial: string, mode?: 'server' | 'matter' | undefined, currentRunMode?: number, supportedRunModes?: RvcRunMode.ModeOption[], currentCleanMode?: number, supportedCleanModes?: RvcCleanMode.ModeOption[], currentPhase?: number | null, phaseList?: string[] | null, operationalState?: RvcOperationalState.OperationalState, operationalStateList?: RvcOperationalState.OperationalStateStruct[], supportedAreas?: ServiceArea.Area[], selectedAreas?: number[], currentArea?: number, supportedMaps?: ServiceArea.Map[]);
14
+ createDefaultRvcRunModeClusterServer(currentMode?: number, supportedModes?: RvcRunMode.ModeOption[]): this;
15
+ createDefaultRvcCleanModeClusterServer(currentMode?: number, supportedModes?: RvcCleanMode.ModeOption[]): this;
16
+ createDefaultServiceAreaClusterServer(supportedAreas?: ServiceArea.Area[], selectedAreas?: number[], currentArea?: number, supportedMaps?: ServiceArea.Map[]): this;
17
+ createDefaultRvcOperationalStateClusterServer(phaseList?: string[] | null, currentPhase?: number | null, operationalStateList?: RvcOperationalState.OperationalStateStruct[], operationalState?: RvcOperationalState.OperationalState, operationalError?: RvcOperationalState.ErrorStateStruct): this;
18
+ }
19
+ export declare class MatterbridgeRvcRunModeServer extends RvcRunModeServer {
20
+ changeToMode(request: ModeBase.ChangeToModeRequest): MaybePromise<ModeBase.ChangeToModeResponse>;
21
+ }
22
+ export declare class MatterbridgeRvcCleanModeServer extends RvcCleanModeServer {
23
+ changeToMode(request: ModeBase.ChangeToModeRequest): MaybePromise<ModeBase.ChangeToModeResponse>;
24
+ }
25
+ export declare class MatterbridgeRvcOperationalStateServer extends RvcOperationalStateServer {
26
+ pause(): MaybePromise<OperationalState.OperationalCommandResponse>;
27
+ resume(): MaybePromise<OperationalState.OperationalCommandResponse>;
28
+ goHome(): MaybePromise<OperationalState.OperationalCommandResponse>;
29
+ }
@@ -0,0 +1,4 @@
1
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
2
+ export declare class SolarPower extends MatterbridgeEndpoint {
3
+ constructor(name: string, serial: string, voltage?: number | bigint | null, current?: number | bigint | null, power?: number | bigint | null, energyExported?: number | bigint | null, absMinPower?: number, absMaxPower?: number);
4
+ }
@@ -0,0 +1,8 @@
1
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
2
+ export declare class Speaker extends MatterbridgeEndpoint {
3
+ constructor(name: string, serial: string, muted?: boolean, volume?: number);
4
+ setMuted(muted: boolean): Promise<void>;
5
+ isMuted(): boolean;
6
+ setVolume(level: number): Promise<void>;
7
+ getVolume(): number;
8
+ }
@@ -0,0 +1,145 @@
1
+ import { MaybePromise } from '@matter/general';
2
+ import { TemperatureControl } from '@matter/types/clusters/temperature-control';
3
+ import { TemperatureControlServer } from '@matter/node/behaviors/temperature-control';
4
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
5
+ export declare function createLevelTemperatureControlClusterServer(endpoint: MatterbridgeEndpoint, selectedTemperatureLevel?: number, supportedTemperatureLevels?: string[]): MatterbridgeEndpoint;
6
+ export declare function createNumberTemperatureControlClusterServer(endpoint: MatterbridgeEndpoint, temperatureSetpoint?: number, minTemperature?: number, maxTemperature?: number, step?: number): MatterbridgeEndpoint;
7
+ declare const MatterbridgeLevelTemperatureControlServer_base: import("@matter/node").ClusterBehavior.Type<import("@matter/types").ClusterComposer.WithFeatures<import("@matter/types").ClusterType.Of<{
8
+ readonly id: 86;
9
+ readonly name: "TemperatureControl";
10
+ readonly revision: 1;
11
+ readonly features: {
12
+ readonly temperatureNumber: import("@matter/types").BitFlag;
13
+ readonly temperatureLevel: import("@matter/types").BitFlag;
14
+ readonly temperatureStep: import("@matter/types").BitFlag;
15
+ };
16
+ readonly commands: {
17
+ readonly setTemperature: import("@matter/types").Command<import("@matter/types").TypeFromFields<{
18
+ targetTemperature: import("@matter/types").OptionalFieldType<number>;
19
+ targetTemperatureLevel: import("@matter/types").OptionalFieldType<number>;
20
+ }>, void, any>;
21
+ };
22
+ readonly extensions: readonly [{
23
+ readonly flags: {
24
+ readonly temperatureNumber: true;
25
+ };
26
+ readonly component: {
27
+ readonly attributes: {
28
+ readonly temperatureSetpoint: import("@matter/types").Attribute<number, any>;
29
+ readonly minTemperature: import("@matter/types").FixedAttribute<number, any>;
30
+ readonly maxTemperature: import("@matter/types").FixedAttribute<number, any>;
31
+ };
32
+ };
33
+ }, {
34
+ readonly flags: {
35
+ readonly temperatureStep: true;
36
+ };
37
+ readonly component: {
38
+ readonly attributes: {
39
+ readonly step: import("@matter/types").FixedAttribute<number, any>;
40
+ };
41
+ };
42
+ }, {
43
+ readonly flags: {
44
+ readonly temperatureLevel: true;
45
+ };
46
+ readonly component: {
47
+ readonly attributes: {
48
+ readonly selectedTemperatureLevel: import("@matter/types").Attribute<number, any>;
49
+ readonly supportedTemperatureLevels: import("@matter/types").Attribute<string[], any>;
50
+ };
51
+ };
52
+ }, {
53
+ readonly flags: {
54
+ readonly temperatureStep: true;
55
+ readonly temperatureNumber: false;
56
+ };
57
+ readonly component: false;
58
+ }, {
59
+ readonly flags: {
60
+ readonly temperatureNumber: true;
61
+ readonly temperatureLevel: true;
62
+ };
63
+ readonly component: false;
64
+ }, {
65
+ readonly flags: {
66
+ readonly temperatureNumber: false;
67
+ readonly temperatureLevel: false;
68
+ };
69
+ readonly component: false;
70
+ }];
71
+ }>, readonly [TemperatureControl.Feature.TemperatureLevel]>, typeof TemperatureControlServer, import("@matter/node/behaviors/temperature-control").TemperatureControlInterface>;
72
+ export declare class MatterbridgeLevelTemperatureControlServer extends MatterbridgeLevelTemperatureControlServer_base {
73
+ initialize(): void;
74
+ setTemperature(request: TemperatureControl.SetTemperatureRequest): MaybePromise;
75
+ }
76
+ declare const MatterbridgeNumberTemperatureControlServer_base: import("@matter/node").ClusterBehavior.Type<import("@matter/types").ClusterComposer.WithFeatures<import("@matter/types").ClusterType.Of<{
77
+ readonly id: 86;
78
+ readonly name: "TemperatureControl";
79
+ readonly revision: 1;
80
+ readonly features: {
81
+ readonly temperatureNumber: import("@matter/types").BitFlag;
82
+ readonly temperatureLevel: import("@matter/types").BitFlag;
83
+ readonly temperatureStep: import("@matter/types").BitFlag;
84
+ };
85
+ readonly commands: {
86
+ readonly setTemperature: import("@matter/types").Command<import("@matter/types").TypeFromFields<{
87
+ targetTemperature: import("@matter/types").OptionalFieldType<number>;
88
+ targetTemperatureLevel: import("@matter/types").OptionalFieldType<number>;
89
+ }>, void, any>;
90
+ };
91
+ readonly extensions: readonly [{
92
+ readonly flags: {
93
+ readonly temperatureNumber: true;
94
+ };
95
+ readonly component: {
96
+ readonly attributes: {
97
+ readonly temperatureSetpoint: import("@matter/types").Attribute<number, any>;
98
+ readonly minTemperature: import("@matter/types").FixedAttribute<number, any>;
99
+ readonly maxTemperature: import("@matter/types").FixedAttribute<number, any>;
100
+ };
101
+ };
102
+ }, {
103
+ readonly flags: {
104
+ readonly temperatureStep: true;
105
+ };
106
+ readonly component: {
107
+ readonly attributes: {
108
+ readonly step: import("@matter/types").FixedAttribute<number, any>;
109
+ };
110
+ };
111
+ }, {
112
+ readonly flags: {
113
+ readonly temperatureLevel: true;
114
+ };
115
+ readonly component: {
116
+ readonly attributes: {
117
+ readonly selectedTemperatureLevel: import("@matter/types").Attribute<number, any>;
118
+ readonly supportedTemperatureLevels: import("@matter/types").Attribute<string[], any>;
119
+ };
120
+ };
121
+ }, {
122
+ readonly flags: {
123
+ readonly temperatureStep: true;
124
+ readonly temperatureNumber: false;
125
+ };
126
+ readonly component: false;
127
+ }, {
128
+ readonly flags: {
129
+ readonly temperatureNumber: true;
130
+ readonly temperatureLevel: true;
131
+ };
132
+ readonly component: false;
133
+ }, {
134
+ readonly flags: {
135
+ readonly temperatureNumber: false;
136
+ readonly temperatureLevel: false;
137
+ };
138
+ readonly component: false;
139
+ }];
140
+ }>, readonly [TemperatureControl.Feature.TemperatureNumber, TemperatureControl.Feature.TemperatureStep]>, typeof TemperatureControlServer, import("@matter/node/behaviors/temperature-control").TemperatureControlInterface>;
141
+ export declare class MatterbridgeNumberTemperatureControlServer extends MatterbridgeNumberTemperatureControlServer_base {
142
+ initialize(): void;
143
+ setTemperature(request: TemperatureControl.SetTemperatureRequest): MaybePromise;
144
+ }
145
+ export {};
@@ -0,0 +1,37 @@
1
+ import { MaybePromise } from '@matter/general';
2
+ import { ModeBase } from '@matter/types/clusters/mode-base';
3
+ import { WaterHeaterManagement } from '@matter/types/clusters/water-heater-management';
4
+ import { WaterHeaterMode } from '@matter/types/clusters/water-heater-mode';
5
+ import { WaterHeaterManagementServer } from '@matter/node/behaviors/water-heater-management';
6
+ import { WaterHeaterModeServer } from '@matter/node/behaviors/water-heater-mode';
7
+ import { MatterbridgeEndpoint } from '../matterbridgeEndpoint.js';
8
+ export declare class WaterHeater extends MatterbridgeEndpoint {
9
+ constructor(name: string, serial: string, waterTemperature?: number, targetWaterTemperature?: number, minHeatSetpointLimit?: number, maxHeatSetpointLimit?: number, heaterTypes?: {
10
+ immersionElement1?: boolean;
11
+ immersionElement2?: boolean;
12
+ heatPump?: boolean;
13
+ boiler?: boolean;
14
+ other?: boolean;
15
+ }, tankPercentage?: number, voltage?: number | bigint | null, current?: number | bigint | null, power?: number | bigint | null, energy?: number | bigint | null, absMinPower?: number, absMaxPower?: number);
16
+ createDefaultWaterHeaterManagementClusterServer(heaterTypes?: {
17
+ immersionElement1?: boolean;
18
+ immersionElement2?: boolean;
19
+ heatPump?: boolean;
20
+ boiler?: boolean;
21
+ other?: boolean;
22
+ }, heatDemand?: {
23
+ immersionElement1?: boolean;
24
+ immersionElement2?: boolean;
25
+ heatPump?: boolean;
26
+ boiler?: boolean;
27
+ other?: boolean;
28
+ }, tankPercentage?: number, boostState?: WaterHeaterManagement.BoostState): this;
29
+ createDefaultWaterHeaterModeClusterServer(currentMode?: number, supportedModes?: WaterHeaterMode.ModeOption[]): this;
30
+ }
31
+ export declare class MatterbridgeWaterHeaterManagementServer extends WaterHeaterManagementServer {
32
+ boost(request: WaterHeaterManagement.BoostRequest): MaybePromise;
33
+ cancelBoost(): MaybePromise;
34
+ }
35
+ export declare class MatterbridgeWaterHeaterModeServer extends WaterHeaterModeServer {
36
+ changeToMode(request: ModeBase.ChangeToModeRequest): MaybePromise<ModeBase.ChangeToModeResponse>;
37
+ }
@@ -0,0 +1,34 @@
1
+ import dgram from 'node:dgram';
2
+ import { Multicast } from './multicast.js';
3
+ export interface CoapMessage {
4
+ version: number;
5
+ type: number;
6
+ tokenLength: number;
7
+ code: number;
8
+ messageId: number;
9
+ token: Buffer;
10
+ options: CoapOption[];
11
+ payload?: Buffer;
12
+ }
13
+ interface CoapOption {
14
+ number: number;
15
+ value: Buffer;
16
+ }
17
+ export declare const COAP_OPTION_URI_PATH = 11;
18
+ export declare const COIOT_OPTION_DEVID = 3332;
19
+ export declare const COIOT_OPTION_VALIDITY = 3412;
20
+ export declare const COIOT_OPTION_SERIAL = 3420;
21
+ export declare const COIOT_REQUEST_STATUS_ID = 56831;
22
+ export declare const COIOT_REQUEST_DESCRIPTION_ID = 56832;
23
+ export declare class Coap extends Multicast {
24
+ constructor(name: string, multicastAddress: string, multicastPort: number, socketType: 'udp4' | 'udp6', reuseAddr?: boolean | undefined, interfaceName?: string, interfaceAddress?: string);
25
+ onCoapMessage(message: CoapMessage, rinfo: dgram.RemoteInfo): void;
26
+ onMessage(msg: Buffer, rinfo: dgram.RemoteInfo): void;
27
+ decodeCoapMessage(msg: Buffer): CoapMessage;
28
+ encodeCoapMessage(msg: CoapMessage): Buffer;
29
+ coapTypeToString(type: number): string;
30
+ coapCodeToString(code: number): string;
31
+ sendRequest(messageId: number, options: CoapOption[], payload: Record<string, any> | undefined, token: string | undefined, address: string | undefined, port: number | undefined): void;
32
+ logCoapMessage(msg: CoapMessage): void;
33
+ }
34
+ export {};