import * as R from './Resource'; import * as P from './Presentation'; import * as A from './Application'; export declare type ScreenOrientation = 'normal' | 'left' | 'right'; export declare type DeviceModel = 'IntelComputeStick' | 'MinixZ83A' | 'Unknown'; export interface DeviceFeatures { wifi: boolean; lte: boolean; } export declare type DevicePlaylistResponse = { id: string; name: string; resource: R.ResourceResponse; }; export declare type DeviceResponse = { id: string; name: string; description: string; model: DeviceModel; device_features: DeviceFeatures; metrics: DeviceMetricsResponse | null; published_at: string | null; registered_at: string; screen_dimensions: string; screen_orientation: ScreenOrientation; application_thumbnail_url: string; resin_uuid: string; playlist_id: string | null; playlist: DevicePlaylistResponse | null; is_audio_only: boolean; resource: R.ResourceResponse; }; export declare type AffectedDeviceResponse = { id: string; name: string; }; export interface DeviceMetricsResponse { wifi: WifiMetricsResponse | null; lte: LTEMetricsResponse | null; system: SystemMetricsResponse | null; last_metric_time: string; } export interface WifiMetricsResponse { rssi: number; ssid: string; last_metric_time: string; } export interface LTEMetricsResponse { rssi: number; last_metric_time: string; } export interface SystemMetricsResponse { cpu_used_percent: number; mem_used_percent: number; disk_used_percent: number; last_metric_time: string; } export interface DeviceHeartbeatResponse { name: string; registration_status: string; confirmation_token: string | null; } export interface DevicePublishedContentResponse { playlist_id?: string | null; playlists?: { [key: string]: { id: string; name: string; items: Array<{ item_presentation_id: string | null; item_playlist_id: string | null; }>; }; }; presentations?: { [key: string]: { id: string; name: string; duration: number; application_variables: P.ApplicationVariables; application_deployment_id: string; theme_id: string; }; }; application_versions?: { [key: string]: { id: string; application_id: string; name: string; embedded_url_format: string; configurable_duration: boolean; presentation_properties: P.PresentationPropertyResponse; strings: A.Strings; }; }; themes?: { [key: string]: { id: string; name: string; background_color: string; background_image: string; background_image_portrait: string; heading_text_color: string; heading_font: string; heading_2_text_color: string; heading_2_font: string; body_text_color: string; body_font: string; border_color: string; }; }; } export declare type DevicePlaylist = { id: string; name: string; resource: R.Resource; }; export declare type Device = { id: string; name: string; description: string; model: DeviceModel; features: DeviceFeatures; metrics: DeviceMetrics | null; screenDimensions: string; screenOrientation: ScreenOrientation; publishedAt: string | null; registeredAt: string; resinUuid: string; playlistId: string | null; playlist: DevicePlaylist | null; isAudioOnly: boolean; resource: R.Resource; }; export declare type AffectedDevice = { id: string; name: string; }; export interface DeviceMetrics { wifi: WifiMetrics | null; lte: LTEMetrics | null; system: SystemMetrics | null; lastMetricTime: string; } export interface WifiMetrics { rssi: number; ssid: string; lastMetricTime: string; } export interface LTEMetrics { rssi: number; lastMetricTime: string; } export interface SystemMetrics { cpuUsedPercent: number; memUsedPercent: number; diskUsedPercent: number; lastMetricTime: string; } export declare type SYBSoundZoneResponse = { id: string; name: string; }; export declare type SYBSoundZone = { id: string; name: string; }; export declare type SYBPairingCodeResponse = { pairing_code: string; }; export declare type SYBPairingCode = { id: string; pairingCode: string; }; export interface DeviceHeartbeat { name: string; registrationStatus: string; confirmationToken: string | null; } export interface DevicePublishedContent { playlistId?: string | null; playlists?: { [key: string]: { id: string; name: string; items: Array<{ presentationId: string | null; playlistId: string | null; }>; }; }; presentations?: { [key: string]: { id: string; name: string; duration: number; applicationVariables: P.ApplicationVariables; applicationDeploymentId: string; themeId: string; }; }; applicationVersions?: { [key: string]: { id: string; applicationId: string; name: string; embeddedUrlFormat: string; configurableDuration: boolean; presentationProperties: P.PresentationPropertyResponse; strings: A.Strings; }; }; themes?: { [key: string]: { id: string; name: string; backgroundColor: string; backgroundImage: string; backgroundImagePortrait: string; headingTextColor: string; headingFont: string; heading2TextColor: string; heading2Font: string; bodyTextColor: string; bodyFont: string; borderColor: string; }; }; } export declare type GetDevicesRequest = undefined; export declare type GetDevicesResponse = DeviceResponse[]; export declare type GetDeviceRequest = undefined; export declare type GetDeviceResponse = DeviceResponse; export declare type UpdateDeviceRequest = Partial; export declare type UpdateDeviceResponse = DeviceResponse; export declare type CreateDeviceGroupRequest = { name: string; device_ids: string[]; }; export declare type RegisterDeviceRequest = { confirmation_token: string; name: string; }; export declare type RegisterDeviceResponse = DeviceResponse; export declare type AddToDeviceGroupRequest = { device_ids: string[]; }; export declare type AddToDeviceGroupResponse = undefined; export declare type UpdateDeviceDefaultSequenceRequest = { presentations: string[]; }; export declare type UpdateDeviceDefaultSequenceResponse = DeviceResponse; export declare type UpdateDeviceGroupDefaultSequenceRequest = { presentations: string[]; }; export declare type RestartDeviceRequest = undefined; export declare type RestartDeviceResponse = undefined; export declare type DeleteDeviceGroupRequest = undefined; export declare type DeleteDeviceGroupResponse = undefined; export declare type DeleteScheduledSequenceRequest = undefined; export declare type DeleteScheduledSequenceResponse = string; export declare type RemoveDevicesFromDeviceGroupRequest = undefined; export declare type RemoveDevicesFromDeviceGroupResponse = undefined; export declare type PublishDeviceRequest = undefined; export declare type PublishDeviceResponse = DeviceResponse; export declare type RegisterDevice = { activationCode: string; name: string; }; export declare type GetSYBSoundZoneRequest = undefined; export declare type GetSYBSoundZoneResponse = SYBSoundZoneResponse | null; export declare type GenerateSYBPairingCodeRequest = undefined; export declare type GenerateSYBPairingCodeResponse = SYBPairingCodeResponse; export declare type GetAffectedDevicesRequest = { presentation_ids: string[]; playlist_ids: string[]; folder_ids: string[]; }; export declare type GetAffectedDevicesResponse = AffectedDeviceResponse[];