export interface ISetDeviceSetting {
    overheatNotify?: 1 | 0;
    keyboardNotify?: 1 | 0;
}
export interface UserInfo {
    countryCode?: string;
    phoneNumber?: string;
    email?: string;
    apikey: string;
    nickname?: string;
    wxServiceId?: string;
    wxAppId?: string;
    wxId?: string;
    wxOpenId?: string;
    yanKanYunInfo?: any;
    accountLevel: number;
    levelExpiredAt?: number;
    denyRecharge?: boolean;
    accountConsult?: boolean;
    ipCountry?: string;
}
export declare type RegionType = 'cn' | 'as' | 'us' | 'eu';
export interface DeviceFamily {
    familyid: string;
    index: number;
    roomid?: string;
}
export interface ShareItem {
    apikey: string;
    phoneNumber?: string;
    email?: string;
    nickname?: string;
    permit: number;
    comment?: string;
    shareTime?: number;
}
export interface ThingData {
    name?: string;
    deviceid?: string;
    apikey?: string;
    extra?: any;
    brandName?: string;
    brandLogo?: string;
    showBrand?: boolean;
    productModel?: string;
    devGroups?: {
        type: number;
        groupId: string;
    }[];
    tags?: any;
    devConfig?: {
        p2pServerName?: string;
        p2pAccount?: string;
        p2pLicense?: string;
    };
    settings?: any;
    family?: DeviceFamily;
    sharedBy?: ShareItem;
    shareTo?: ShareItem[];
    devicekey?: string;
    online?: boolean;
    params?: any;
    gsmInfoData?: any;
    id?: string;
    mainDeviceId?: string;
}
export interface Scene {
    id: string;
    name: string;
    familyid: string;
    index: number;
    sceneType: 'manual' | 'condition';
    condition?: any;
    operations: any[];
    optRanges?: any[];
    iconIndex?: number;
}
export interface IUpdateParams {
    deviceid: string;
    name?: string;
    params: any;
}
