export interface DeviceListOutput {
    deviceList: string[];
}
export interface IosCommandResult {
    command: string;
    args: string[];
    output: CommandOutput;
    logMessages: LogMessage[];
    exitCode: number;
}
export interface LogMessage {
    level: "info" | "error" | "warn" | "debug";
    msg: string;
    timestamp: string;
}
export type CommandOutput = Record<string, unknown>[] | DeviceListOutput[] | [LockdownInfo];
export interface IosListResult {
    udids: string[];
    raw: IosCommandResult;
}
export interface IosProfileManifest {
    Description?: string;
    IsActive?: boolean;
}
export interface IosProfileMetadata {
    PayloadDescription?: string;
    PayloadDisplayName?: string;
    PayloadRemovalDisallowed?: boolean;
    PayloadUUID?: string;
    PayloadVersion?: number;
}
export interface IosProfileListEntry {
    Identifier?: string;
    Manifest?: IosProfileManifest;
    Metadata?: IosProfileMetadata;
    Status?: string;
}
export interface IosProfileListResult {
    profiles: IosProfileListEntry[];
    raw: IosCommandResult;
}
export interface BasebandKeyHashInformation {
    AKeyStatus: number;
    SKeyHash: string;
    SKeyStatus: number;
}
export interface NonVolatileRAM {
    StartupMute?: string;
    SystemAudioVolumeSaved?: string;
    "auto-boot"?: string;
    "backlight-level"?: string;
    "backlight-nits"?: string;
    "boot-args"?: string;
    bootdelay?: string;
    "fm-account-masked"?: string;
    "fm-activation-locked"?: string;
    "fm-spkeys"?: string;
    "fm-spstatus"?: string;
    obliteration?: string;
    "panicmedic-telemetry"?: string;
    usbcfwflasherResult?: string;
}
export interface LockdownInfo {
    ActivationState: string;
    ActivationStateAcknowledged: boolean;
    BasebandActivationTicketVersion: string;
    BasebandCertId: number;
    BasebandChipID: number;
    BasebandKeyHashInformation: BasebandKeyHashInformation;
    BasebandMasterKeyHash: string;
    BasebandRegionSKU: string;
    BasebandSerialNumber: string;
    BasebandStatus: string;
    BasebandVersion: string;
    BluetoothAddress: string;
    BoardId: number;
    BootSessionID: string;
    BrickState: boolean;
    BuildVersion: string;
    CPUArchitecture: string;
    CarrierBundleInfoArray: unknown[];
    CertID: number;
    ChipID: number;
    ChipSerialNo: string;
    DeviceClass: string;
    DeviceColor: string;
    DeviceName: string;
    DieID: number;
    EthernetAddress: string;
    FirmwareVersion: string;
    FusingStatus: number;
    HardwareModel: string;
    HardwarePlatform: string;
    HasSiDP: boolean;
    HostAttached: boolean;
    HumanReadableProductVersionString: string;
    InternationalMobileEquipmentIdentity: string;
    InternationalMobileEquipmentIdentity2: string;
    MLBSerialNumber: string;
    MobileEquipmentIdentifier: string;
    MobileSubscriberCountryCode: string;
    MobileSubscriberNetworkCode: string;
    ModelNumber: string;
    NonVolatileRAM: NonVolatileRAM;
    PairRecordProtectionClass: number;
    PartitionType: string;
    PasswordProtected: boolean;
    PkHash: string;
    ProductName: string;
    ProductType: string;
    ProductVersion: string;
    ProductionSOC: boolean;
    ProtocolVersion: string;
    ProximitySensorCalibration: string;
    RegionInfo: string;
    ReleaseType: string;
    SIMStatus: string;
    SIMTrayStatus: string;
    SerialNumber: string;
    SoftwareBehavior: string;
    SoftwareBundleVersion: string;
    SupportedDeviceFamilies: number[];
    TelephonyCapability: boolean;
    TimeIntervalSince1970: number;
    TimeZone: string;
    TimeZoneOffsetFromUTC: number;
    TrustedHostAttached: boolean;
    UniqueChipID: number;
    UniqueDeviceID: string;
    UntrustedHostBUID: string;
    UseRaptorCerts: boolean;
    Uses24HourClock: boolean;
    WiFiAddress: string;
    WirelessBoardSerialNumber: string;
    kCTPostponementInfoServiceProvisioningState: boolean;
    kCTPostponementStatus: string;
}
export interface IosCli {
    listDevices(): Promise<IosListResult>;
    wipe(deviceId: string): Promise<IosCommandResult>;
    installProfile(deviceId: string, profilePath: string): Promise<IosCommandResult>;
    removeProfile(deviceId: string, profileName: string): Promise<IosCommandResult>;
    skipSteps(deviceId: string, steps?: string[]): Promise<IosCommandResult>;
    printSteps(): Promise<IosCommandResult>;
    activate(deviceId: string): Promise<IosCommandResult>;
    pair(deviceId: string): Promise<IosCommandResult>;
    forward(deviceId: string, fromPort: number, toPort: number): Promise<IosCommandResult>;
    info(deviceId: string): Promise<IosCommandResult>;
    listProfiles(deviceId: string): Promise<IosProfileListResult>;
    installApp(deviceId: string, ipaPath: string): Promise<IosCommandResult>;
}
//# sourceMappingURL=ios.d.ts.map