lavva.exalushome
Version:
Library implementing communication and abstraction layers for ExalusHome system
47 lines (46 loc) • 1.75 kB
TypeScript
import { IDIService } from "../IDIService";
export interface IDataMigrationService {
IsMigrationDataAvailableAsync(): Promise<boolean>;
GetLanguageCodeAsync(): Promise<string | null>;
GetControllersDataAsync(): Promise<ControllerData[] | null>;
}
export declare class DataMigrationService implements IDataMigrationService, IDIService {
static readonly AppSelectedLanguageKeyName: string;
static readonly AppUserControllersKeyName: string;
static readonly ServiceName: string;
constructor();
private waitForNavigatorObject;
private b64DecodeUnicode;
private decodeUriJsonData;
private encodeUriJsonData;
private IsExalusNativeMigrationAvailable;
GetServiceName(): string;
IsMigrationDataAvailableAsync(): Promise<boolean>;
GetControllersDataAsync(): Promise<ControllerData[] | null>;
GetLanguageCodeAsync(): Promise<string | null>;
static GetIosMigrationStatus(timeout?: number): Promise<boolean | null>;
static GetIosControllerList(timeout?: number): Promise<ControllerData[] | null>;
static GetIosDefaultLanguage(timeout?: number): Promise<string | null>;
private isIosNavtie;
}
export interface IExalusDataMigration {
IsMigrationDataAvailableAsync(): Promise<IsMigrationDataAvailableResponse | null>;
GetLanguageCodeAsync(): Promise<string>;
GetControllersDataAsync(): Promise<ControllerData[]>;
}
export interface ControllerData {
AutoLogin: boolean;
AutoLoginUser: AutoLoginUser;
Name: string;
PIN: string;
SerialId: string;
}
export interface AutoLoginUser {
Email: string;
Password: string;
}
export interface IsMigrationDataAvailableResponse {
Controllers: boolean;
Language: boolean;
DataMigrated: boolean;
}