///
export declare enum TLVValues {
METHOD = 0,
IDENTIFIER = 1,
SALT = 2,
PUBLIC_KEY = 3,
PASSWORD_PROOF = 4,
ENCRYPTED_DATA = 5,
STATE = 6,
ERROR = 7,
RETRY_DELAY = 8,
CERTIFICATE = 9,
SIGNATURE = 10,
PERMISSIONS = 11,
FRAGMENT_DATA = 12,
FRAGMENT_LAST = 13,
PAIRING_FLAGS = 19,
SEPARATOR = 255
}
export declare enum PairingFlags {
TRANSIENT_PAIR_SETUP = 16,
SPLIT_PAIR_SETUP = 16777216
}
export declare enum PairMethods {
PAIR_SETUP = 0,
PAIR_SETUP_WITH_AUTH = 1,
PAIR_VERIFY = 2,
ADD_PAIRING = 3,
REMOVE_PAIRING = 4,
LIST_PAIRINGS = 5
}
export declare enum HAPStates {
M1 = 1,
M2 = 2,
M3 = 3,
M4 = 4,
M5 = 5,
M6 = 6
}
export declare enum TLVErrors {
UNKNOWN = 1,
INVALID_REQUEST = 2,
AUTHENTICATION = 2,
BACKOFF = 3,
MAX_PEERS = 4,
MAX_TRIES = 5,
UNAVAILABLE = 6,
BUSY = 7
}
export declare enum HAPStatusCode {
SUCCESS = 0,
INSUFFICIENT_PRIVILEGES = -70401,
SERVICE_COMMUNICATION_FAILURE = -70402,
RESOURCE_BUSY = -70403,
READ_ONLY_CHARACTERISTIC = -70404,
WRITE_ONLY_CHARACTERISTIC = -70405,
NOTIFICATION_NOT_SUPPORTED = -70406,
OUT_OF_RESOURCE = -70407,
OPERATION_TIMED_OUT = -70408,
RESOURCE_DOES_NOT_EXIST = -70409,
INVALID_VALUE_IN_REQUEST = -70410,
INSUFFICIENT_AUTHORIZATION = -70411
}
export declare enum HAPAccessoryCategory {
OTHER = 1,
BRIDGE = 2,
FAN = 3,
GARAGE_DOOR_OPENER = 4,
LIGHTBULB = 5,
DOOR_LOCK = 6,
OUTLET = 7,
SWITCH = 8,
THERMOSTAT = 9,
SENSOR = 10,
ALARM_SYSTEM = 11,
SECURITY_SYSTEM = 11,
DOOR = 12,
WINDOW = 13,
WINDOW_COVERING = 14,
PROGRAMMABLE_SWITCH = 15,
RANGE_EXTENDER = 16,
CAMERA = 17,
IP_CAMERA = 17,
VIDEO_DOORBELL = 18,
AIR_PURIFIER = 19,
AIR_HEATER = 20,
AIR_CONDITIONER = 21,
AIR_HUMIDIFIER = 22,
AIR_DEHUMIDIFIER = 23,
APPLE_TV = 24,
HOMEPOD = 25,
SPEAKER = 26,
AIRPORT = 27,
SPRINKLER = 28,
FAUCET = 29,
SHOWER_HEAD = 30,
TELEVISION = 31,
TARGET_CONTROLLER = 32,
ROUTER = 33
}
export declare enum PairingStatusFlags {
PAIRED = 1,
NOT_JOINED_WIFI = 2,
PROBLEM = 4
}
export declare class HAPEncryptionContext {
sharedSecret: Buffer;
encryptionKey: Buffer;
encryptionNonce: number;
decryptionKey: Buffer;
decryptionNonce: number;
frameBuffer?: Buffer;
constructor(sharedSecret: Buffer, encryptionKey: Buffer, decryptionKey: Buffer);
}
export interface CharacteristicAttributeDatabase {
iid: number;
type: string;
value: T;
perms: string[];
format: string;
description?: string;
}
export interface ServiceAttributeDatabase {
iid: number;
type: string;
characteristics: CharacteristicAttributeDatabase[];
}
export interface AccessoryAttributeDatabase {
aid: number;
services: ServiceAttributeDatabase[];
}
export interface AttributeDatabase {
accessories: AccessoryAttributeDatabase[];
}
export interface CharacteristicsWriteRequest {
characteristics: CharacteristicWriteRequest[];
pid?: number;
}
export interface CharacteristicsWriteResponse {
characteristics: CharacteristicWriteResponse[];
}
export interface CharacteristicsReadResponse {
characteristics: CharacteristicReadResponse[];
}
export interface Characteristic {
aid: number;
iid: number;
}
export interface CharacteristicReadRequest extends Characteristic {
}
export interface CharacteristicReadResponse extends Characteristic {
value: any;
}
export interface CharacteristicWriteRequest extends Characteristic {
value?: any;
ev?: boolean;
authData?: string;
remote?: string;
r?: string;
}
export interface CharacteristicWriteResponse extends Characteristic {
status: number;
value?: any;
}
export interface CharacteristicEventRequest extends Characteristic {
ev: boolean;
}
export interface EventNotification {
characteristics: CharacteristicReadResponse[];
}
//# sourceMappingURL=hap-proxy.d.ts.map