/* * Copyright (c) 2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"), * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /** * @file * @kit MultimodalAwarenessKit */ import type { Callback } from "./@ohos.base"; /** * This module provides the capability to subscribe to report the device status. * * @namespace deviceStatus * @syscap SystemCapability.MultimodalAwareness.DeviceStatus * @since 18 */ declare namespace deviceStatus { /** * Enum for steady standing status. * * @enum { number } SteadyStandingStatus * @syscap SystemCapability.MultimodalAwareness.DeviceStatus * @since 18 */ export enum SteadyStandingStatus { /** * indicates exit status * * @syscap SystemCapability.MultimodalAwareness.DeviceStatus * @since 18 */ STATUS_EXIT = 0, /** * indicates enter status * * @syscap SystemCapability.MultimodalAwareness.DeviceStatus * @since 18 */ STATUS_ENTER = 1 } /** * Interface for device rotation radian * @interface DeviceRotationRadian * @syscap SystemCapability.MultimodalAwareness.DeviceStatus * @systemapi * @since 20 */ export interface DeviceRotationRadian { /** * indicates X-RotationRadian * @type { number } * @syscap SystemCapability.MultimodalAwareness.DeviceStatus * @systemapi * @since 20 */ x: number; /** * indicates Y-RotationRadian * @type { number } * @syscap SystemCapability.MultimodalAwareness.DeviceStatus * @systemapi * @since 20 */ y: number; /** * indicates Z-RotationRadian * @type { number } * @syscap SystemCapability.MultimodalAwareness.DeviceStatus * @systemapi * @since 20 */ z: number; } /** * Subscribe to detect the steady standing status * @param { 'steadyStandingDetect' } type - Indicates the event type. * @param { Callback } callback - Indicates the callback for getting the event data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. *
2. Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Function can not work correctly due to limited *
device capabilities. * @throws { BusinessError } 32500001 - Service exception. * @throws { BusinessError } 32500002 - Subscription failed. * @syscap SystemCapability.MultimodalAwareness.DeviceStatus * @since 18 */ function on(type: 'steadyStandingDetect', callback: Callback): void; /** * Unsubscribe to detect the steady standing status * @param { 'steadyStandingDetect' } type - Indicates the event type. * @param { Callback } callback - Indicates the callback for getting the event data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. *
2. Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Function can not work correctly due to limited *
device capabilities. * @throws { BusinessError } 32500001 - Service exception. * @throws { BusinessError } 32500003 - Unsubscription failed. * @syscap SystemCapability.MultimodalAwareness.DeviceStatus * @since 18 */ function off(type: 'steadyStandingDetect', callback?: Callback): void; /** * Get the device rotation radian * @returns { Promise } The result of device roatation radian. * @throws { BusinessError } 202 - Permission check failed. A non-system application uses the system API. * @throws { BusinessError } 801 - Capability not supported. Function can not work correctly due to limited *
device capabilities. * @throws { BusinessError } 32500001 - Service exception. * @syscap SystemCapability.MultimodalAwareness.DeviceStatus * @systemapi * @since 20 */ function getDeviceRotationRadian(): Promise; } export default deviceStatus;