///
///
import { BaseMessage } from "./types";
export declare function bufferToString(bytes: Buffer): string;
export declare function bufferToASCIIString(bytes: Buffer): string;
export declare function getInt64Bytes(x: any): number[];
export declare const NO_SEQ = -1;
export declare enum MessageType {
COMMAND = 43981,
END = 495,
OPEN_DOOR_INIT = 6336,
OPEN_DOOR = 6144,
OPEN_DOOR_CONFIRM = 6176
}
export declare enum Channel {
UAUT = "UAUT",
UCFG = "UCFG",
INFO = "INFO",
CTPP = "CTPP",
CSPB = "CSPB",
PUSH = "PUSH"
}
export interface OpenChannelData {
channel: Channel;
id: number;
sequence: number;
}
export interface ByteMessage {
type: MessageType;
seq: number;
messages: string[];
}
export declare class PacketMessage {
readonly size: number;
readonly bytes: Buffer;
readonly requestId: number;
readonly seq: number;
readonly type: 'binary' | 'json';
constructor(requestId: number, seq: number, bytes: Buffer);
dump(ascii?: boolean): string;
static createBinaryPacketFromBuffers(requestId: number, ...messages: Buffer[]): PacketMessage;
static createBinaryPacketFromStrings(requestId: number, seq: number, type: MessageType, ...messages: string[]): PacketMessage;
static createJSONPacket(requestId: number, json: T): PacketMessage;
}
export declare class PacketBuilder {
private bytes;
readonly requestId: number;
readonly seq: number;
constructor(requestId: number, type: MessageType, seq?: number);
build(): PacketMessage;
}
export declare function readJSON(buffer: Buffer): T;
export declare enum BinaryResponseType {
BINARY = 0,
JSON = 1
}
export interface DecodedResponse {
requestId: number;
sequence: number;
type: BinaryResponseType;
json?: T;
}
//# sourceMappingURL=packet.d.ts.map