inventoresed
Version:
Z-Wave driver written entirely in JavaScript/TypeScript
728 lines (670 loc) • 29.1 kB
Markdown
> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
```ts
/// <reference types="jest" />
/// <reference types="node" />
import type { BindingPortInterface } from '@serialport/bindings-interface';
import type { DataDirection } from '@zwave-js/core/safe';
import { DataDirection as DataDirection_2 } from '@zwave-js/core';
import { Duplex } from 'stream';
import { EventEmitter } from 'events';
import { IZWaveNode } from '@zwave-js/core';
import type { JSONObject } from '@zwave-js/shared/safe';
import type { LogContext } from '@zwave-js/core/safe';
import { MessageOrCCLogEntry } from '@zwave-js/core';
import { MessagePriority } from '@zwave-js/core';
import * as net from 'net';
import type { OpenOptions } from '@serialport/bindings-interface';
import { PassThrough } from 'stream';
import type { PortInfo } from '@serialport/bindings-interface';
import type { PortStatus } from '@serialport/bindings-interface';
import { SerialPort } from 'serialport';
import type { SetOptions } from '@serialport/bindings-interface';
import { Transform } from 'stream';
import { TransformCallback } from 'stream';
import type { TypedClassDecorator } from '@zwave-js/shared/safe';
import { TypedEventEmitter } from '@zwave-js/shared';
import type { UpdateOptions } from '@serialport/bindings-interface';
import type { ZWaveApplicationHost } from '@zwave-js/host';
import type { ZWaveHost } from '@zwave-js/host';
import { ZWaveLogContainer } from '@zwave-js/core';
import { ZWaveLoggerBase } from '@zwave-js/core';
// Warning: (ae-missing-release-tag) "createAndOpenMockedZWaveSerialPort" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export function createAndOpenMockedZWaveSerialPort(path: string): Promise<{
port: ZWaveSerialPort;
binding: MockPortBinding;
}>;
// Warning: (ae-missing-release-tag) "DeserializingMessageConstructor" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export type DeserializingMessageConstructor<T extends Message> = new (host: ZWaveHost, options: MessageDeserializationOptions) => T;
// Warning: (ae-missing-release-tag) "expectedCallback" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export function expectedCallback<TSent extends Message>(typeOrPredicate: FunctionType | typeof Message | ResponsePredicate<TSent>): TypedClassDecorator<Message>;
// Warning: (ae-missing-release-tag) "expectedResponse" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export const expectedResponse: <TTarget extends Message>(typeOrPredicate: FunctionType | typeof Message | ResponsePredicate<Message>) => TypedClassDecorator<TTarget>;
// Warning: (ae-missing-release-tag) "FunctionType" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export enum FunctionType {
// (undocumented)
AddNodeToNetwork = 74,
// (undocumented)
ApplicationCommand = 4,
// (undocumented)
ApplicationUpdateRequest = 73,
// (undocumented)
AssignReturnRoute = 70,
// (undocumented)
AssignSUCReturnRoute = 81,
// (undocumented)
BridgeApplicationCommand = 168,
// (undocumented)
DeleteReturnRoute = 71,
// (undocumented)
DeleteSUCReturnRoute = 85,
// (undocumented)
ExtExtWriteLongByte = 45,
// (undocumented)
ExtNVMReadLongBuffer = 42,
// (undocumented)
ExtNVMReadLongByte = 44,
// (undocumented)
ExtNVMWriteLongBuffer = 43,
// (undocumented)
FUNC_ID_APPLICATION_SLAVE_COMMAND_HANDLER = 161,
// (undocumented)
FUNC_ID_PROMISCUOUS_APPLICATION_COMMAND_HANDLER = 209,
// (undocumented)
FUNC_ID_SERIAL_API_SLAVE_NODE_INFO = 160,
// (undocumented)
FUNC_ID_ZW_CONTROLLER_CHANGE = 77,
// (undocumented)
FUNC_ID_ZW_CREATE_NEW_PRIMARY = 76,
// (undocumented)
FUNC_ID_ZW_ENABLE_SUC = 82,
// (undocumented)
FUNC_ID_ZW_EXPLORE_REQUEST_INCLUSION = 94,
// (undocumented)
FUNC_ID_ZW_GET_RANDOM = 28,
// (undocumented)
FUNC_ID_ZW_GET_VIRTUAL_NODES = 165,
// (undocumented)
FUNC_ID_ZW_IS_VIRTUAL_NODE = 166,
// (undocumented)
FUNC_ID_ZW_NEW_CONTROLLER = 67,
// (undocumented)
FUNC_ID_ZW_R_F_POWER_LEVEL_SET = 23,
// (undocumented)
FUNC_ID_ZW_REPLICATION_COMMAND_COMPLETE = 68,
// (undocumented)
FUNC_ID_ZW_REPLICATION_SEND_DATA = 69,
// (undocumented)
FUNC_ID_ZW_REQUEST_NETWORK_UPDATE = 83,
// (undocumented)
FUNC_ID_ZW_REQUEST_NODE_NEIGHBOR_UPDATE_OPTIONS = 90,
// (undocumented)
FUNC_ID_ZW_SEND_NODE_INFORMATION = 18,
// (undocumented)
FUNC_ID_ZW_SEND_SLAVE_DATA = 163,
// (undocumented)
FUNC_ID_ZW_SEND_SLAVE_NODE_INFO = 162,
// (undocumented)
FUNC_ID_ZW_SET_LEARN_MODE = 80,
// (undocumented)
FUNC_ID_ZW_SET_LEARN_NODE_STATE = 64,
// (undocumented)
FUNC_ID_ZW_SET_PROMISCUOUS_MODE = 208,
// (undocumented)
FUNC_ID_ZW_SET_SLAVE_LEARN_MODE = 164,
// (undocumented)
GetBackgroundRSSI = 59,
// (undocumented)
GetControllerCapabilities = 5,
// (undocumented)
GetControllerId = 32,
// (undocumented)
GetControllerVersion = 21,
// (undocumented)
GetNodeProtocolInfo = 65,
// (undocumented)
GetNVMId = 41,
// (undocumented)
GetProtocolVersion = 9,
// (undocumented)
GetRoutingInfo = 128,
// (undocumented)
GetSerialApiCapabilities = 7,
// (undocumented)
GetSerialApiInitData = 2,
// (undocumented)
GetSUCNodeId = 86,
// (undocumented)
HardReset = 66,
// (undocumented)
IsFailedNode = 98,
// (undocumented)
NVMOperations = 46,
// (undocumented)
RemoveFailedNode = 97,
// (undocumented)
RemoveNodeFromNetwork = 75,
// (undocumented)
ReplaceFailedNode = 99,
// (undocumented)
RequestNodeInfo = 96,
// (undocumented)
RequestNodeNeighborUpdate = 72,
// (undocumented)
SendData = 19,
// (undocumented)
SendDataAbort = 22,
// (undocumented)
SendDataBridge = 169,
// (undocumented)
SendDataMulticast = 20,
// (undocumented)
SendDataMulticastBridge = 171,
// (undocumented)
SerialAPISetup = 11,
// (undocumented)
SerialAPIStarted = 10,
// (undocumented)
SetApplicationNodeInformation = 3,
// (undocumented)
SetRFReceiveMode = 16,
// (undocumented)
SetSerialApiTimeouts = 6,
// (undocumented)
SetSUCNodeId = 84,
// (undocumented)
SoftReset = 8,
// (undocumented)
UNKNOWN_FUNC_AssignPrioritySUCReturnRoute = 88,
// (undocumented)
UNKNOWN_FUNC_ClearNetworkStats = 57,
// (undocumented)
UNKNOWN_FUNC_CLOCK_COMPARE = 50,
// (undocumented)
UNKNOWN_FUNC_CLOCK_GET = 49,
// (undocumented)
UNKNOWN_FUNC_CLOCK_SET = 48,
// (undocumented)
UNKNOWN_FUNC_FlashAutoProgSet = 39,
// (undocumented)
UNKNOWN_FUNC_GET_LIBRARY_TYPE = 189,
// (undocumented)
UNKNOWN_FUNC_GET_PRIORITY_ROUTE = 146,
// (undocumented)
UNKNOWN_FUNC_GET_PROTOCOL_STATUS = 191,
// (undocumented)
UNKNOWN_FUNC_GetNetworkStats = 58,
// (undocumented)
UNKNOWN_FUNC_GetTXCounter = 129,
// (undocumented)
UNKNOWN_FUNC_LOCK_ROUTE_RESPONSE = 144,
// (undocumented)
UNKNOWN_FUNC_MEMORY_GET_BUFFER = 35,
// (undocumented)
UNKNOWN_FUNC_MEMORY_GET_BYTE = 33,
// (undocumented)
UNKNOWN_FUNC_MEMORY_PUT_BUFFER = 36,
// (undocumented)
UNKNOWN_FUNC_MEMORY_PUT_BYTE = 34,
// (undocumented)
UNKNOWN_FUNC_REDISCOVERY_NEEDED = 89,
// (undocumented)
UNKNOWN_FUNC_RemoveNodeIdFromNetwork = 63,
// (undocumented)
UNKNOWN_FUNC_ResetTXCounter = 130,
// (undocumented)
UNKNOWN_FUNC_RF_POWERLEVEL_GET = 186,
// (undocumented)
UNKNOWN_FUNC_RTC_TIMER_CALL = 54,
// (undocumented)
UNKNOWN_FUNC_RTC_TIMER_CREATE = 51,
// (undocumented)
UNKNOWN_FUNC_RTC_TIMER_DELETE = 53,
// (undocumented)
UNKNOWN_FUNC_RTC_TIMER_READ = 52,
// (undocumented)
UNKNOWN_FUNC_SEND_DATA_META = 24,
// (undocumented)
UNKNOWN_FUNC_SEND_DATA_ROUTE_DEMO = 145,
// (undocumented)
UNKNOWN_FUNC_SEND_SUC_ID = 87,
// (undocumented)
UNKNOWN_FUNC_SEND_TEST_FRAME = 190,
// (undocumented)
UNKNOWN_FUNC_SERIAL_API_TEST = 149,
// (undocumented)
UNKNOWN_FUNC_SET_PRIORITY_ROUTE = 147,
// (undocumented)
UNKNOWN_FUNC_SET_SLEEP_MODE = 17,
// (undocumented)
UNKNOWN_FUNC_StoreHomeId = 132,
// (undocumented)
UNKNOWN_FUNC_StoreNodeInfo = 131,
// (undocumented)
UNKNOWN_FUNC_TIMER_CALL = 115,
// (undocumented)
UNKNOWN_FUNC_TIMER_CANCEL = 114,
// (undocumented)
UNKNOWN_FUNC_TIMER_RESTART = 113,
// (undocumented)
UNKNOWN_FUNC_TIMER_START = 112,
// (undocumented)
UNKNOWN_FUNC_UNKNOWN_0x28 = 40,
// (undocumented)
UNKNOWN_FUNC_UNKNOWN_0x66 = 102,
// (undocumented)
UNKNOWN_FUNC_UNKNOWN_0x67 = 103,
// (undocumented)
UNKNOWN_FUNC_UNKNOWN_0x78 = 120,
// (undocumented)
UNKNOWN_FUNC_UNKNOWN_0x98 = 152,
// (undocumented)
UNKNOWN_FUNC_UNKNOWN_0xB4 = 180,
// (undocumented)
UNKNOWN_FUNC_UNKNOWN_0xB9 = 185,
// (undocumented)
UNKNOWN_FUNC_UNKNOWN_0xD2 = 210,
// (undocumented)
UNKNOWN_FUNC_UNKNOWN_0xD3 = 211,
// (undocumented)
UNKNOWN_FUNC_UNKNOWN_0xD4 = 212,
// (undocumented)
UNKNOWN_FUNC_UNKNOWN_0xEF = 239,
// (undocumented)
UNKNOWN_FUNC_WATCH_DOG_DISABLE = 183,
// (undocumented)
UNKNOWN_FUNC_WATCH_DOG_ENABLE = 182,
// (undocumented)
UNKNOWN_FUNC_WATCH_DOG_KICK = 184,
// (undocumented)
UNKNOWN_FUNC_ZMEBootloaderFlash = 244,
// (undocumented)
UNKNOWN_FUNC_ZMECapabilities = 245,
// (undocumented)
UNKNOWN_FUNC_ZMEFreqChange = 242,
// (undocumented)
UNKNOWN_FUNC_ZMERestore = 243,
// (undocumented)
UNKNOWN_FUNC_ZMESerialAPIOptions = 248
}
// Warning: (ae-missing-release-tag) "getDefaultPriority" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export function getDefaultPriority<T extends Message>(messageClass: T): MessagePriority | undefined;
// Warning: (ae-missing-release-tag) "getDefaultPriorityStatic" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export function getDefaultPriorityStatic<T extends MessageConstructor<Message>>(classConstructor: T): MessagePriority | undefined;
// Warning: (ae-missing-release-tag) "getExpectedCallback" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export function getExpectedCallback<T extends Message>(messageClass: T): FunctionType | typeof Message | ResponsePredicate | undefined;
// Warning: (ae-missing-release-tag) "getExpectedCallbackStatic" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export function getExpectedCallbackStatic<T extends MessageConstructor<Message>>(classConstructor: T): FunctionType | typeof Message | ResponsePredicate | undefined;
// Warning: (ae-missing-release-tag) "getExpectedResponse" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export function getExpectedResponse<T extends Message>(messageClass: T): FunctionType | typeof Message | ResponsePredicate | undefined;
// Warning: (ae-missing-release-tag) "getExpectedResponseStatic" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export function getExpectedResponseStatic<T extends MessageConstructor<Message>>(classConstructor: T): FunctionType | typeof Message | ResponsePredicate | undefined;
// Warning: (ae-missing-release-tag) "getFunctionType" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export function getFunctionType<T extends Message>(messageClass: T): FunctionType | undefined;
// Warning: (ae-missing-release-tag) "getFunctionTypeStatic" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export function getFunctionTypeStatic<T extends MessageConstructor<Message>>(classConstructor: T): FunctionType | undefined;
// Warning: (ae-missing-release-tag) "getMessageType" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export function getMessageType<T extends Message>(messageClass: T): MessageType | undefined;
// Warning: (ae-missing-release-tag) "getMessageTypeStatic" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export function getMessageTypeStatic<T extends MessageConstructor<Message>>(classConstructor: T): MessageType | undefined;
// Warning: (ae-missing-release-tag) "gotDeserializationOptions" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export function gotDeserializationOptions(options: Record<any, any> | undefined): options is MessageDeserializationOptions;
// Warning: (ae-missing-release-tag) "INodeQuery" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface INodeQuery {
// (undocumented)
nodeId: number;
}
// Warning: (ae-missing-release-tag) "isMultiStageCallback" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export function isMultiStageCallback<T extends Message>(msg: T): msg is T & MultiStageCallback;
// Warning: (ae-missing-release-tag) "isNodeQuery" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export function isNodeQuery<T extends Message>(msg: T): msg is T & INodeQuery;
// Warning: (ae-missing-release-tag) "isSuccessIndicator" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export function isSuccessIndicator<T extends Message>(msg: T): msg is T & SuccessIndicator;
// Warning: (ae-missing-release-tag) "isZWaveSerialPortImplementation" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export function isZWaveSerialPortImplementation(obj: unknown): obj is ZWaveSerialPortImplementation;
// Warning: (ae-missing-release-tag) "Message" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export class Message {
constructor(host: ZWaveHost, options?: MessageOptions);
get callbackId(): number;
set callbackId(v: number | undefined);
// (undocumented)
get completedTimestamp(): number | undefined;
// (undocumented)
expectedCallback: FunctionType | typeof Message | ResponsePredicate | undefined;
// (undocumented)
expectedResponse: FunctionType | typeof Message | ResponsePredicate | undefined;
expectsCallback(): boolean;
expectsNodeUpdate(): boolean;
expectsResponse(): boolean;
static extractPayload(data: Buffer): Buffer;
static from(host: ZWaveHost, options: MessageDeserializationOptions): Message;
// (undocumented)
functionType: FunctionType;
getCallbackTimeout(): number | undefined;
static getConstructor(data: Buffer): MessageConstructor<Message>;
static getMessageLength(data: Buffer): number;
getNodeId(): number | undefined;
getNodeUnsafe(applHost: ZWaveApplicationHost): IZWaveNode | undefined;
hasCallbackId(): boolean;
// (undocumented)
protected host: ZWaveHost;
static isComplete(data?: Buffer): boolean;
isExpectedCallback(msg: Message): boolean;
isExpectedNodeUpdate(msg: Message): boolean;
isExpectedResponse(msg: Message): boolean;
markAsCompleted(): void;
markAsSent(): void;
needsCallbackId(): boolean;
// (undocumented)
payload: Buffer;
get rtt(): number | undefined;
serialize(): Buffer;
toJSON(): JSONObject;
toLogEntry(): MessageOrCCLogEntry;
get transmissionTimestamp(): number | undefined;
// (undocumented)
type: MessageType;
}
// Warning: (ae-missing-release-tag) "MessageBaseOptions" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface MessageBaseOptions {
// (undocumented)
callbackId?: number;
}
// Warning: (ae-missing-release-tag) "MessageConstructor" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export type MessageConstructor<T extends Message> = new (host: ZWaveHost, options?: MessageOptions) => T;
// Warning: (ae-missing-release-tag) "MessageCreationOptions" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface MessageCreationOptions extends MessageBaseOptions {
// (undocumented)
expectedCallback?: FunctionType | typeof Message | ResponsePredicate;
// (undocumented)
expectedResponse?: FunctionType | typeof Message | ResponsePredicate;
// (undocumented)
functionType?: FunctionType;
// (undocumented)
payload?: Buffer;
// (undocumented)
type?: MessageType;
}
// Warning: (ae-missing-release-tag) "MessageDeserializationOptions" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface MessageDeserializationOptions {
// (undocumented)
data: Buffer;
// (undocumented)
origin?: MessageOrigin;
parseCCs?: boolean;
}
// Warning: (ae-missing-release-tag) "MessageHeaders" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export enum MessageHeaders {
// (undocumented)
ACK = 6,
// (undocumented)
CAN = 24,
// (undocumented)
NAK = 21,
// (undocumented)
SOF = 1
}
// Warning: (ae-missing-release-tag) "MessageOptions" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export type MessageOptions = MessageCreationOptions | MessageDeserializationOptions;
// Warning: (ae-missing-release-tag) "MessageOrigin" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export enum MessageOrigin {
// (undocumented)
Controller = 0,
// (undocumented)
Host = 1
}
// Warning: (ae-missing-release-tag) "MessageType" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export enum MessageType {
// (undocumented)
Request = 0,
// (undocumented)
Response = 1
}
// Warning: (ae-missing-release-tag) "messageTypes" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export const messageTypes: <TTarget extends Message>(messageType: MessageType, functionType: FunctionType) => TypedClassDecorator<TTarget>;
// Warning: (ae-missing-release-tag) "MockSerialPort" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
// Warning: (ae-missing-release-tag) "MockSerialPort" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface MockSerialPort {
// (undocumented)
addListener<TEvent extends MockSerialPortEvents>(event: TEvent, callback: MockSerialPortEventCallbacks[TEvent]): this;
// (undocumented)
emit<TEvent extends MockSerialPortEvents>(event: TEvent, ...args: Parameters<MockSerialPortEventCallbacks[TEvent]>): boolean;
// (undocumented)
off<TEvent extends MockSerialPortEvents>(event: TEvent, callback: MockSerialPortEventCallbacks[TEvent]): this;
// Warning: (ae-forgotten-export) The symbol "MockSerialPortEvents" needs to be exported by the entry point index.d.ts
// Warning: (ae-forgotten-export) The symbol "MockSerialPortEventCallbacks" needs to be exported by the entry point index.d.ts
//
// (undocumented)
on<TEvent extends MockSerialPortEvents>(event: TEvent, callback: MockSerialPortEventCallbacks[TEvent]): this;
// (undocumented)
once<TEvent extends MockSerialPortEvents>(event: TEvent, callback: MockSerialPortEventCallbacks[TEvent]): this;
// (undocumented)
removeAllListeners(event?: MockSerialPortEvents): this;
// (undocumented)
removeListener<TEvent extends MockSerialPortEvents>(event: TEvent, callback: MockSerialPortEventCallbacks[TEvent]): this;
}
// @public (undocumented)
export class MockSerialPort extends ZWaveSerialPort {
constructor(port: string, loggers: ZWaveLogContainer);
// (undocumented)
close(): Promise<void>;
// (undocumented)
readonly closeStub: jest.Mock;
// (undocumented)
static getInstance(port: string): MockSerialPort | undefined;
// (undocumented)
get isOpen(): boolean;
// (undocumented)
get lastWrite(): string | number[] | Buffer | undefined;
// (undocumented)
open(): Promise<void>;
// (undocumented)
readonly openStub: jest.Mock;
// (undocumented)
raiseError(err: Error): void;
// (undocumented)
receiveData(data: Buffer): void;
// (undocumented)
writeAsync(data: Buffer): Promise<void>;
// (undocumented)
readonly writeStub: jest.Mock;
}
// Warning: (ae-missing-release-tag) "MultiStageCallback" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export interface MultiStageCallback {
isFinal(): boolean;
}
// Warning: (ae-missing-release-tag) "priority" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export const priority: <TTarget extends Message>(prio: MessagePriority) => TypedClassDecorator<TTarget>;
// Warning: (ae-missing-release-tag) "ResponsePredicate" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export type ResponsePredicate<TSent extends Message = Message> = (sentMessage: TSent, receivedMessage: Message) => boolean;
// Warning: (ae-missing-release-tag) "ResponseRole" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export type ResponseRole = "unexpected" | "confirmation" | "final" | "fatal_controller" | "fatal_node";
// Warning: (ae-missing-release-tag) "SerialAPIParser" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export class SerialAPIParser extends Transform {
// Warning: (ae-forgotten-export) The symbol "SerialLogger" needs to be exported by the entry point index.d.ts
constructor(logger?: SerialLogger | undefined);
// (undocumented)
_transform(chunk: any, encoding: string, callback: TransformCallback): void;
}
// Warning: (ae-missing-release-tag) "SerialLogContext" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface SerialLogContext extends LogContext<"serial"> {
// (undocumented)
direction: DataDirection;
// (undocumented)
header?: string;
}
// Warning: (ae-missing-release-tag) "skipBytes" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export function skipBytes(buf: Buffer, n: number): Buffer;
// Warning: (ae-missing-release-tag) "SuccessIndicator" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export interface SuccessIndicator {
isOK(): boolean;
}
// Warning: (ae-missing-release-tag) "ZWaveSerialChunk" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export type ZWaveSerialChunk = MessageHeaders.ACK | MessageHeaders.NAK | MessageHeaders.CAN | Buffer;
// Warning: (ae-missing-release-tag) "ZWaveSerialPort" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export class ZWaveSerialPort extends ZWaveSerialPortBase {
constructor(port: string, loggers: ZWaveLogContainer, Binding?: typeof SerialPort);
// (undocumented)
get isOpen(): boolean;
}
// Warning: (ae-missing-release-tag) "ZWaveSerialPortBase" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
// Warning: (ae-missing-release-tag) "ZWaveSerialPortBase" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface ZWaveSerialPortBase {
// (undocumented)
addListener<TEvent extends ZWaveSerialPortEvents>(event: TEvent, callback: ZWaveSerialPortEventCallbacks[TEvent]): this;
// (undocumented)
emit<TEvent extends ZWaveSerialPortEvents>(event: TEvent, ...args: Parameters<ZWaveSerialPortEventCallbacks[TEvent]>): boolean;
// (undocumented)
off<TEvent extends ZWaveSerialPortEvents>(event: TEvent, callback: ZWaveSerialPortEventCallbacks[TEvent]): this;
// (undocumented)
on<TEvent extends ZWaveSerialPortEvents>(event: TEvent, callback: ZWaveSerialPortEventCallbacks[TEvent]): this;
// (undocumented)
once<TEvent extends ZWaveSerialPortEvents>(event: TEvent, callback: ZWaveSerialPortEventCallbacks[TEvent]): this;
// (undocumented)
removeAllListeners(event?: ZWaveSerialPortEvents): this;
// (undocumented)
removeListener<TEvent extends ZWaveSerialPortEvents>(event: TEvent, callback: ZWaveSerialPortEventCallbacks[TEvent]): this;
}
// @public (undocumented)
export class ZWaveSerialPortBase extends PassThrough {
// (undocumented)
[]: () => AsyncIterableIterator<ZWaveSerialChunk>;
constructor(implementation: ZWaveSerialPortImplementation, loggers: ZWaveLogContainer);
// (undocumented)
close(): Promise<void>;
// (undocumented)
get isOpen(): boolean;
// (undocumented)
protected logger: SerialLogger;
// (undocumented)
open(): Promise<void>;
// (undocumented)
protected serial: ReturnType<ZWaveSerialPortImplementation["create"]>;
// (undocumented)
writeAsync(data: Buffer): Promise<void>;
}
// Warning: (ae-missing-release-tag) "ZWaveSerialPortEventCallbacks" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface ZWaveSerialPortEventCallbacks {
// (undocumented)
data: (data: ZWaveSerialChunk) => void;
// (undocumented)
error: (e: Error) => void;
}
// Warning: (ae-missing-release-tag) "ZWaveSerialPortEvents" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export type ZWaveSerialPortEvents = Extract<keyof ZWaveSerialPortEventCallbacks, string>;
// Warning: (ae-missing-release-tag) "ZWaveSerialPortImplementation" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface ZWaveSerialPortImplementation {
// (undocumented)
close(port: ReturnType<ZWaveSerialPortImplementation["create"]>): Promise<void>;
// (undocumented)
create(): Duplex & EventEmitter;
// (undocumented)
open(port: ReturnType<ZWaveSerialPortImplementation["create"]>): Promise<void>;
}
// Warning: (ae-missing-release-tag) "ZWaveSocket" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export class ZWaveSocket extends ZWaveSerialPortBase {
constructor(socketOptions: ZWaveSocketOptions, loggers: ZWaveLogContainer);
}
// Warning: (ae-missing-release-tag) "ZWaveSocketOptions" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export type ZWaveSocketOptions = Omit<net.TcpSocketConnectOpts, "onread"> | Omit<net.IpcSocketConnectOpts, "onread">;
// Warnings were encountered during analysis:
//
// src/MockSerialPort.ts:109:2 - (ae-forgotten-export) The symbol "MockPortBinding" needs to be exported by the entry point index.d.ts
// (No @packageDocumentation comment for this package)
```