import * as Types from './types'; export declare class Client { isConnected: boolean; isCommissioned: boolean; deviceId: string | null; private _client; private _config; private _log; constructor(config: Types.Config); connect(config?: Types.Config): Promise; disconnect(force?: boolean): Promise; getStatus(timeout?: number): Promise; commission(params?: Types.CommissionParams, timeout?: number): Promise; decommission(timeout?: number): Promise<{}>; getDeviceInfo(timeout?: number): Promise; getProductInfo(productId?: string, timeout?: number): Promise; associateUser(params: Types.AssociateUserParams, timeout?: number): Promise; getInvitationCode(params: Types.GetInvitationCodeParams, timeout?: number): Promise; getState(deviceId?: string, timeout?: number): Promise; setState(params: Types.SetStateParams, deviceId?: string, timeout?: number): Promise; createAndPair(params: Types.CreateAndPairParams, timeout?: number): Promise; pairChild(params: Types.PairChildParams, timeout?: number): Promise; listChildren(timeout?: number): Promise; removeChild(params: Types.RemoveChildParams, timeout?: number): Promise; on(event: Types.Event, cb: any): void; off(event: Types.Event, cb: any): void; getFirmware(params: Types.GetFirmwareParams, timeout?: number): Promise; private _rpc; private _publish; private _subscribe; private _unsubscribe; } //# sourceMappingURL=client.d.ts.map