161847f8eSopenharmony_ci/* 261847f8eSopenharmony_ci * Copyright (c) 2020 Huawei Device Co., Ltd. 361847f8eSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 461847f8eSopenharmony_ci * you may not use this file except in compliance with the License. 561847f8eSopenharmony_ci * You may obtain a copy of the License at 661847f8eSopenharmony_ci * 761847f8eSopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 861847f8eSopenharmony_ci * 961847f8eSopenharmony_ci * Unless required by applicable law or agreed to in writing, software 1061847f8eSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 1161847f8eSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1261847f8eSopenharmony_ci * See the License for the specific language governing permissions and 1361847f8eSopenharmony_ci * limitations under the License. 1461847f8eSopenharmony_ci */ 1561847f8eSopenharmony_ci 1661847f8eSopenharmony_ci/** 1761847f8eSopenharmony_ci * @file 1861847f8eSopenharmony_ci * @kit BasicServicesKit 1961847f8eSopenharmony_ci */ 2061847f8eSopenharmony_ci 2161847f8eSopenharmony_ci/** 2261847f8eSopenharmony_ci * @interface DeviceResponse 2361847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 2461847f8eSopenharmony_ci * @since 3 2561847f8eSopenharmony_ci */ 2661847f8eSopenharmony_ciexport interface DeviceResponse { 2761847f8eSopenharmony_ci /** 2861847f8eSopenharmony_ci * Brand. 2961847f8eSopenharmony_ci * 3061847f8eSopenharmony_ci * @type { string } 3161847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 3261847f8eSopenharmony_ci * @since 3 3361847f8eSopenharmony_ci */ 3461847f8eSopenharmony_ci brand: string; 3561847f8eSopenharmony_ci 3661847f8eSopenharmony_ci /** 3761847f8eSopenharmony_ci * Manufacturer. 3861847f8eSopenharmony_ci * 3961847f8eSopenharmony_ci * @type { string } 4061847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 4161847f8eSopenharmony_ci * @since 3 4261847f8eSopenharmony_ci */ 4361847f8eSopenharmony_ci manufacturer: string; 4461847f8eSopenharmony_ci 4561847f8eSopenharmony_ci /** 4661847f8eSopenharmony_ci * Model. 4761847f8eSopenharmony_ci * 4861847f8eSopenharmony_ci * @type { string } 4961847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 5061847f8eSopenharmony_ci * @since 3 5161847f8eSopenharmony_ci */ 5261847f8eSopenharmony_ci model: string; 5361847f8eSopenharmony_ci 5461847f8eSopenharmony_ci /** 5561847f8eSopenharmony_ci * Product number. 5661847f8eSopenharmony_ci * 5761847f8eSopenharmony_ci * @type { string } 5861847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 5961847f8eSopenharmony_ci * @since 3 6061847f8eSopenharmony_ci */ 6161847f8eSopenharmony_ci product: string; 6261847f8eSopenharmony_ci 6361847f8eSopenharmony_ci /** 6461847f8eSopenharmony_ci * System language. 6561847f8eSopenharmony_ci * 6661847f8eSopenharmony_ci * @type { string } 6761847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 6861847f8eSopenharmony_ci * @since 4 6961847f8eSopenharmony_ci */ 7061847f8eSopenharmony_ci language: string; 7161847f8eSopenharmony_ci 7261847f8eSopenharmony_ci /** 7361847f8eSopenharmony_ci * System region. 7461847f8eSopenharmony_ci * 7561847f8eSopenharmony_ci * @type { string } 7661847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 7761847f8eSopenharmony_ci * @since 4 7861847f8eSopenharmony_ci */ 7961847f8eSopenharmony_ci region: string; 8061847f8eSopenharmony_ci 8161847f8eSopenharmony_ci /** 8261847f8eSopenharmony_ci * Window width. 8361847f8eSopenharmony_ci * 8461847f8eSopenharmony_ci * @type { number } 8561847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 8661847f8eSopenharmony_ci * @since 3 8761847f8eSopenharmony_ci */ 8861847f8eSopenharmony_ci windowWidth: number; 8961847f8eSopenharmony_ci 9061847f8eSopenharmony_ci /** 9161847f8eSopenharmony_ci * Window Height. 9261847f8eSopenharmony_ci * 9361847f8eSopenharmony_ci * @type { number } 9461847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 9561847f8eSopenharmony_ci * @since 3 9661847f8eSopenharmony_ci */ 9761847f8eSopenharmony_ci windowHeight: number; 9861847f8eSopenharmony_ci 9961847f8eSopenharmony_ci /** 10061847f8eSopenharmony_ci * Screen density. 10161847f8eSopenharmony_ci * 10261847f8eSopenharmony_ci * @type { number } 10361847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 10461847f8eSopenharmony_ci * @since 4 10561847f8eSopenharmony_ci */ 10661847f8eSopenharmony_ci screenDensity: number; 10761847f8eSopenharmony_ci 10861847f8eSopenharmony_ci /** 10961847f8eSopenharmony_ci * Screen shape. The options are as follows: 11061847f8eSopenharmony_ci * rect: Rectangle screen. 11161847f8eSopenharmony_ci * circle: Circle screen. 11261847f8eSopenharmony_ci * 11361847f8eSopenharmony_ci * @type { 'rect' | 'circle' } 11461847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 11561847f8eSopenharmony_ci * @since 4 11661847f8eSopenharmony_ci */ 11761847f8eSopenharmony_ci screenShape: 'rect' | 'circle'; 11861847f8eSopenharmony_ci 11961847f8eSopenharmony_ci /** 12061847f8eSopenharmony_ci * API version. 12161847f8eSopenharmony_ci * 12261847f8eSopenharmony_ci * @type { number } 12361847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 12461847f8eSopenharmony_ci * @since 4 12561847f8eSopenharmony_ci */ 12661847f8eSopenharmony_ci apiVersion: number; 12761847f8eSopenharmony_ci 12861847f8eSopenharmony_ci /** 12961847f8eSopenharmony_ci * Device type. The options are as follows: 13061847f8eSopenharmony_ci * phone: smartphone 13161847f8eSopenharmony_ci * tablet: tablet 13261847f8eSopenharmony_ci * tv: smart TV 13361847f8eSopenharmony_ci * wearable: wearable 13461847f8eSopenharmony_ci * liteWearable: lite wearable 13561847f8eSopenharmony_ci * ar: AR 13661847f8eSopenharmony_ci * vr: virtual reality 13761847f8eSopenharmony_ci * earphones: headset 13861847f8eSopenharmony_ci * pc: personal computer 13961847f8eSopenharmony_ci * speaker: speaker 14061847f8eSopenharmony_ci * smartVision: smart visual device 14161847f8eSopenharmony_ci * linkIoT: connection module 14261847f8eSopenharmony_ci * 14361847f8eSopenharmony_ci * @type { string } 14461847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 14561847f8eSopenharmony_ci * @since 4 14661847f8eSopenharmony_ci */ 14761847f8eSopenharmony_ci deviceType: string; 14861847f8eSopenharmony_ci} 14961847f8eSopenharmony_ci 15061847f8eSopenharmony_ci/** 15161847f8eSopenharmony_ci * @interface GetDeviceOptions 15261847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 15361847f8eSopenharmony_ci * @since 3 15461847f8eSopenharmony_ci */ 15561847f8eSopenharmony_ciexport interface GetDeviceOptions { 15661847f8eSopenharmony_ci /** 15761847f8eSopenharmony_ci * Called when the device information is obtained. 15861847f8eSopenharmony_ci * 15961847f8eSopenharmony_ci * @type { ?function } 16061847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 16161847f8eSopenharmony_ci * @since 3 16261847f8eSopenharmony_ci */ 16361847f8eSopenharmony_ci success?: (data: DeviceResponse) => void; 16461847f8eSopenharmony_ci 16561847f8eSopenharmony_ci /** 16661847f8eSopenharmony_ci * Called when the device information fails to be obtained. 16761847f8eSopenharmony_ci * 16861847f8eSopenharmony_ci * @type { ?function } 16961847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 17061847f8eSopenharmony_ci * @since 3 17161847f8eSopenharmony_ci */ 17261847f8eSopenharmony_ci fail?: (data: any, code: number) => void; 17361847f8eSopenharmony_ci 17461847f8eSopenharmony_ci /** 17561847f8eSopenharmony_ci * Called when the execution is completed. 17661847f8eSopenharmony_ci * 17761847f8eSopenharmony_ci * @type { ?function } 17861847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 17961847f8eSopenharmony_ci * @since 3 18061847f8eSopenharmony_ci */ 18161847f8eSopenharmony_ci complete?: () => void; 18261847f8eSopenharmony_ci} 18361847f8eSopenharmony_ci 18461847f8eSopenharmony_ci/** 18561847f8eSopenharmony_ci * getInfo interface 18661847f8eSopenharmony_ci * 18761847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 18861847f8eSopenharmony_ci * @since 3 18961847f8eSopenharmony_ci */ 19061847f8eSopenharmony_ciexport default class Device { 19161847f8eSopenharmony_ci /** 19261847f8eSopenharmony_ci * Obtains the device information. 19361847f8eSopenharmony_ci * 19461847f8eSopenharmony_ci * @param { GetDeviceOptions } options - Options 19561847f8eSopenharmony_ci * @syscap SystemCapability.Startup.SystemInfo.Lite 19661847f8eSopenharmony_ci * @since 3 19761847f8eSopenharmony_ci * @deprecated since 6 19861847f8eSopenharmony_ci */ 19961847f8eSopenharmony_ci static getInfo(options?: GetDeviceOptions): void; 20061847f8eSopenharmony_ci} 201