/** * Device related type definitions */ type DeviceModel = 'iPhone' | 'iPad'; interface DeviceOrientation { readonly isInPortrait: boolean; readonly isInPortraitUpsideDown: boolean; readonly isInLandscapeLeft: boolean; readonly isInLandscapeRight: boolean; readonly isFaceUp: boolean; readonly isFaceDown: boolean; } interface DeviceBattery { readonly level: number; readonly isDischarging: boolean; readonly isCharging: boolean; readonly isFullyCharged: boolean; } interface DeviceLocale { readonly preferredLanguages: ReadonlyArray; readonly locale: string; readonly language: string; } interface DeviceAppearance { readonly isUsingDarkAppearance: boolean; } interface DeviceScreen { readonly width: number; readonly height: number; } interface DeviceMockState { readonly name: string; readonly systemName: string; readonly systemVersion: string; readonly model: DeviceModel; readonly screenSize: Readonly; readonly screenResolution: Readonly; readonly screenScale: number; readonly screenBrightness: number; readonly orientation: Readonly; readonly battery: Readonly; readonly locale: Readonly; readonly appearance: Readonly; readonly volume: number; alertResponse?: number; } export type { DeviceAppearance, DeviceBattery, DeviceLocale, DeviceMockState, DeviceModel, DeviceOrientation, DeviceScreen };