import { CommandClasses, ValueID } from "@zwave-js/core";
import { SetValueAPIOptions } from "zwave-js";
import { IncomingCommandBase } from "../incoming_message_base.js";
import { BroadcastNodeCommand } from "./command.js";
export interface IncomingCommandBroadcastNodeBase extends IncomingCommandBase {
    longRange?: boolean;
}
export interface IncomingCommandBroadcastNodeSetValue extends IncomingCommandBroadcastNodeBase {
    command: BroadcastNodeCommand.setValue;
    valueId: ValueID;
    value: unknown;
    options?: SetValueAPIOptions;
}
export interface IncomingCommandBroadcastNodeGetEndpointCount extends IncomingCommandBroadcastNodeBase {
    command: BroadcastNodeCommand.getEndpointCount;
}
export interface IncomingCommandBroadcastNodeSupportsCC extends IncomingCommandBroadcastNodeBase {
    command: BroadcastNodeCommand.supportsCC;
    index: number;
    commandClass: CommandClasses;
}
export interface IncomingCommandBroadcastNodeGetCCVersion extends IncomingCommandBroadcastNodeBase {
    command: BroadcastNodeCommand.getCCVersion;
    index: number;
    commandClass: CommandClasses;
}
export interface IncomingCommandBroadcastNodeInvokeCCAPI extends IncomingCommandBroadcastNodeBase {
    command: BroadcastNodeCommand.invokeCCAPI;
    index?: number;
    commandClass: CommandClasses;
    methodName: string;
    args: unknown[];
}
export interface IncomingCommandBroadcastNodeSupportsCCAPI extends IncomingCommandBroadcastNodeBase {
    command: BroadcastNodeCommand.supportsCCAPI;
    index?: number;
    commandClass: CommandClasses;
}
export interface IncomingCommandBroadcastNodeGetDefinedValueIDs extends IncomingCommandBroadcastNodeBase {
    command: BroadcastNodeCommand.getDefinedValueIDs;
}
export type IncomingMessageBroadcastNode = IncomingCommandBroadcastNodeSetValue | IncomingCommandBroadcastNodeGetEndpointCount | IncomingCommandBroadcastNodeSupportsCC | IncomingCommandBroadcastNodeGetCCVersion | IncomingCommandBroadcastNodeInvokeCCAPI | IncomingCommandBroadcastNodeSupportsCCAPI | IncomingCommandBroadcastNodeGetDefinedValueIDs;
