UNPKG

zigbee-herdsman

Version:

An open source ZigBee gateway solution with node.js.

45 lines (35 loc) 1.21 kB
import type {ClusterId as ZdoClusterId} from "../../../zspec/zdo"; import type {Type as CommandType} from "../unpi/constants"; import type ParameterType from "./parameterType"; export type MtType = number | number[] | string | Buffer | {[s: string]: number | string}[]; export interface MtParameter { name: string; parameterType: ParameterType; } interface MtCmdBase { name: string; ID: number; type: number; request: MtParameter[]; response: MtParameter[]; zdoClusterId: ZdoClusterId; } interface MtCmdAreq extends Omit<MtCmdBase, "response" | "zdoClusterId"> { type: CommandType.AREQ; } interface MtCmdSreq extends Omit<MtCmdBase, "zdoClusterId"> { type: CommandType.SREQ; } export interface MtCmdAreqZdo extends Omit<MtCmdBase, "request" | "response"> { type: CommandType.AREQ; } export interface MtCmdSreqZdo extends Omit<MtCmdBase, "request" | "response"> { type: CommandType.SREQ; } export type MtCmd = MtCmdAreq | MtCmdSreq | MtCmdAreqZdo | MtCmdSreqZdo; // biome-ignore lint/suspicious/noExplicitAny: API export type ZpiObjectPayload = {[s: string]: any}; export interface BuffaloZnpOptions { length?: number; startIndex?: number; }