export declare class IndividualAddress { raw: number; constructor(address: string | number); toString(): string; } export declare class GroupAddress { raw: number; constructor(address: string | number); toString(): string; } export interface Interface { type: string; individualAddress: IndividualAddress; host?: IndividualAddress; userId?: number; password?: string; authentication?: string; decryptedPassword?: string; decryptedAuthentication?: string; groupAddresses: Map; } export interface Backbone { key?: string; decryptedKey?: Buffer; latency?: number; multicastAddress?: string; } export interface GroupAddressKey { address: GroupAddress; key: string; decryptedKey?: Buffer; } export interface Device { individualAddress: IndividualAddress; toolKey?: string; decryptedToolKey?: Buffer; managementPassword?: string; decryptedManagementPassword?: string; authentication?: string; decryptedAuthentication?: string; sequenceNumber?: number; serialNumber?: string; } export interface KeyringLoadOptions { validateSignature?: boolean; } export declare class Keyring { private interfaces; private backbones; private groupAddresses; private devices; private passwordHash?; private createdBy?; private created?; private iv?; load(source: string, password: string, options?: KeyringLoadOptions): Promise; loadFromString(content: string, password: string, options?: KeyringLoadOptions): Promise; loadFromBuffer(content: Buffer, password: string, options?: KeyringLoadOptions): Promise; getCreatedBy(): string | undefined; getCreated(): string | undefined; private hashKeyringPassword; private loadFromXml; private decryptAes128Cbc; private extractPassword; private unzipKnxKeys; private parseKeyring; private parseInterface; private parseBackbone; private parseGroupAddress; private parseDevice; getInterfaces(): Map; getInterface(address: string): Interface | undefined; getBackbones(): Backbone[]; getGroupAddresses(): Map; getGroupAddress(address: string): GroupAddressKey | undefined; getDevices(): Map; getDevice(address: string): Device | undefined; } export declare function computeKeyringSignature(xmlContent: string, passwordHash: Buffer): Promise<{ signature?: Buffer; computed: Buffer; }>; export declare function hashKeyringPassword(password: string): Buffer;