export type DysonSupportedMarketResponse = string[];
export declare enum DysonAppPlatform {
    iOS = "ios",
    Android = "Android"
}
export type DysonVersionResponse = string;
export interface DysonEmailUserStatusRequest {
    email: string;
}
export declare enum DysonAccountStatus {
    Unregistered = "UNREGISTERED",
    Active = "ACTIVE"
}
export interface DysonEmailUserStatusResponse {
    accountStatus: DysonAccountStatus;
    authenticationMethod: 'EMAIL_PWD_2FA';
}
export interface DysonEmailAuthRequest {
    email: string;
}
export interface DysonEmailAuthResponse {
    challengeId: string;
}
export interface DysonEmailVerifyRequest {
    challengeId: string;
    email: string;
    otpCode: string;
    password: string;
}
export interface DysonEmailVerifyResponse {
    account: string;
    token: string;
    tokenType: 'Bearer';
}
export declare enum DysonManifestCategory {
    AirTreatment = "ec",
    FloorCare = "flrc",
    HairCare = "hc",
    Light = "light",
    RobotVacuum = "robot",
    Wearable = "wearable"
}
export declare enum DysonManifestCapability {
    AdvanceOscillation = "AdvanceOscillationDay1",
    ChangeWiFi = "ChangeWifi",
    EnvironmentalData = "EnvironmentalData",
    ExtendedAQ = "ExtendedAQ",
    Scheduling = "Scheduling",
    MidCleanConfiguration = "MidCleanConfiguration"
}
export interface DysonManifestFirmware {
    autoUpdateEnabled: boolean;
    newVersionAvailable: boolean;
    minimumAppVersion: string | null;
    capabilities: DysonManifestCapability[] | null;
    version: string;
}
export interface DysonManifestMQTT {
    localBrokerCredentials: string;
    mqttRootTopicLevel: string;
    remoteBrokerType: 'wss';
}
export interface DysonManifestConnectedConfiguration {
    firmware: DysonManifestFirmware;
    mqtt: DysonManifestMQTT;
}
export declare enum DysonManifestConnectionCategory {
    BTWiFi = "lecAndWifi",
    BT = "lecOnly",
    NotConnected = "nonConnected",
    WiFi = "wifiOnly"
}
export interface DysonManifestDevice {
    category: DysonManifestCategory;
    connectedConfiguration: DysonManifestConnectedConfiguration;
    connectionCategory: DysonManifestConnectionCategory;
    model: string;
    name: string;
    productName: string;
    serialNumber: string;
    type: string;
    variant: string | null;
}
export type DysonManifestResponse = DysonManifestDevice[];
export interface DysonLocalBrokerCredentials {
    serial: string;
    apPasswordHash: string;
}
export interface DysonIoTCredentialsRequest {
    Serial: string;
}
export interface DysonIoTCredentials {
    ClientId: string;
    CustomAuthorizerName: string;
    TokenKey: 'token';
    TokenSignature: string;
    TokenValue: string;
}
export interface DysonIoTCredentialsResponse {
    Endpoint: string;
    IoTCredentials: DysonIoTCredentials;
}
//# sourceMappingURL=dyson-cloud-types.d.ts.map