/// import { DataStreamServerConnection } from "./DataStreamServer"; export * from './DataStreamServer'; export * from './DataStreamParser'; export declare type EventHandler = (message: Record) => void; export declare type RequestHandler = (id: number, message: Record) => void; export declare type ResponseHandler = (error: Error | undefined, status: number | undefined, message: Record) => void; export declare type GlobalEventHandler = (connection: DataStreamServerConnection, message: Record) => void; export declare type GlobalRequestHandler = (connection: DataStreamServerConnection, id: number, message: Record) => void; export interface DataStreamProtocolHandler { eventHandler?: Record; requestHandler?: Record; } export declare namespace DataStream { const VERSION = "1.0"; } export declare enum Protocols { CONTROL = "control", TARGET_CONTROL = "targetControl", DATA_SEND = "dataSend" } export declare enum Topics { HELLO = "hello", WHOAMI = "whoami", OPEN = "open", DATA = "data", ACK = "ack", CLOSE = "close" } export declare enum DataSendCloseReason { NORMAL = 0, NOT_ALLOWED = 1, BUSY = 2, CANCELLED = 3, UNSUPPORTED = 4, UNEXPECTED_FAILURE = 5, TIMEOUT = 6 } export declare type HDSFrame = { header: Buffer; cipheredPayload: Buffer; plaintextPayload: Buffer; authTag: Buffer; }; export declare enum MessageType { EVENT = 1, REQUEST = 2, RESPONSE = 3 } export declare type DataStreamMessage = { type: MessageType; protocol: string; topic: string; id?: number; status?: number; message: Record; }; export declare enum TransferTransportConfigurationTypes { TRANSFER_TRANSPORT_CONFIGURATION = 1 } export declare enum TransportTypeTypes { TRANSPORT_TYPE = 1 } export declare enum SetupDataStreamSessionTypes { SESSION_COMMAND_TYPE = 1, TRANSPORT_TYPE = 2, CONTROLLER_KEY_SALT = 3 } export declare enum SetupDataStreamWriteResponseTypes { STATUS = 1, TRANSPORT_TYPE_SESSION_PARAMETERS = 2, ACCESSORY_KEY_SALT = 3 } export declare enum TransportSessionConfiguration { TCP_LISTENING_PORT = 1 } export declare enum TransportType { HOMEKIT_DATA_STREAM = 0 } export declare enum SessionCommandType { START_SESSION = 0 } export declare enum DataStreamStatus { SUCCESS = 0, GENERIC_ERROR = 1, BUSY = 2 } //# sourceMappingURL=index.d.ts.map