1 Star 0 Fork 4K

Feng Lin/interface_sdk-js

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
@ohos.vibrator.d.ts 20.85 KB
一键复制 编辑 原始数据 按行查看 历史
lixiangpeng5 提交于 2024-07-23 15:22 +08:00 . add systemUsage to bypass switches
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660
/*
* Copyright (c) 2021 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 SensorServiceKit
*/
import { AsyncCallback } from './@ohos.base';
/**
* This module provides the capability to control motor vibration.
*
* @namespace vibrator
* @syscap SystemCapability.Sensors.MiscDevice
* @since 8
*/
/**
* This module provides the capability to control motor vibration.
*
* @namespace vibrator
* @syscap SystemCapability.Sensors.MiscDevice
* @atomicservice
* @since 11
*/
declare namespace vibrator {
/**
* The trigger motor vibrates for a specified length of time.
*
* @permission ohos.permission.VIBRATE
* @param { number } duration Indicate the duration of the motor vibration.
* @param { AsyncCallback<void> } callback The callback of vibrate.
* @syscap SystemCapability.Sensors.MiscDevice
* @since 8
* @deprecated since 9
* @useinstead vibrator#startVibration
*/
function vibrate(duration: number, callback?: AsyncCallback<void>): void;
/**
* The trigger motor vibrates for a specified length of time.
*
* @permission ohos.permission.VIBRATE
* @param { number } duration Indicate the duration of the motor vibration.
* @returns { Promise<void> } Promise used to return the result.
* @syscap SystemCapability.Sensors.MiscDevice
* @since 8
* @deprecated since 9
* @useinstead vibrator#startVibration
*/
function vibrate(duration: number): Promise<void>;
/**
* The trigger motor vibrates for the specified effect of the preset.
*
* @permission ohos.permission.VIBRATE
* @param { EffectId } effectId Indicate the specified effect of the preset, {@code EffectId}.
* @returns { Promise<void> } Promise used to return the result.
* @syscap SystemCapability.Sensors.MiscDevice
* @since 8
* @deprecated since 9
* @useinstead vibrator#startVibration
*/
function vibrate(effectId: EffectId): Promise<void>;
/**
* The trigger motor vibrates for the specified effect of the preset.
*
* @permission ohos.permission.VIBRATE
* @param { EffectId } effectId Indicate the specified effect of the preset, {@code EffectId}.
* @param { AsyncCallback<void> } callback The callback of vibrate.
* @syscap SystemCapability.Sensors.MiscDevice
* @since 8
* @deprecated since 9
* @useinstead vibrator#startVibration
*/
function vibrate(effectId: EffectId, callback?: AsyncCallback<void>): void;
/**
* Trigger vibrator vibration.
*
* @permission ohos.permission.VIBRATE
* @param { VibrateEffect } effect - Indicate vibrate effect, {@code VibrateEffect}.
* @param { VibrateAttribute } attribute - Indicate vibrate attribute, {@code VibrateAttribute}.
* @param { AsyncCallback<void> } callback - The callback of startVibration.
* @throws { BusinessError } 201 - Permission denied.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br> 2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - Capability not supported.
* @throws { BusinessError } 14600101 - Device operation failed.
* @syscap SystemCapability.Sensors.MiscDevice
* @since 9
*/
/**
* Trigger vibrator vibration.
*
* @permission ohos.permission.VIBRATE
* @param { VibrateEffect } effect - Indicate vibrate effect, {@code VibrateEffect}
* @param { VibrateAttribute } attribute - Indicate vibrate attribute, {@code VibrateAttribute}
* @param { AsyncCallback<void> } callback - The callback of startVibration
* @throws { BusinessError } 201 - Permission denied
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br> 2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - Capability not supported
* @throws { BusinessError } 14600101 - Device operation failed
* @syscap SystemCapability.Sensors.MiscDevice
* @atomicservice
* @since 11
*/
function startVibration(effect: VibrateEffect, attribute: VibrateAttribute, callback: AsyncCallback<void>): void;
/**
* Trigger vibrator vibration.
*
* @permission ohos.permission.VIBRATE
* @param { VibrateEffect } effect - Indicate vibrate effect, {@code VibrateEffect}.
* @param { VibrateAttribute } attribute - Indicate vibrate attribute, {@code VibrateAttribute}.
* @returns { Promise<void> } Promise used to return the result.
* @throws { BusinessError } 201 - Permission denied.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br> 2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - Capability not supported.
* @throws { BusinessError } 14600101 - Device operation failed.
* @syscap SystemCapability.Sensors.MiscDevice
* @since 9
*/
/**
* Trigger vibrator vibration.
*
* @permission ohos.permission.VIBRATE
* @param { VibrateEffect } effect - Indicate vibrate effect, {@code VibrateEffect}.
* @param { VibrateAttribute } attribute - Indicate vibrate attribute, {@code VibrateAttribute}.
* @returns { Promise<void> } Promise used to return the result.
* @throws { BusinessError } 201 - Permission denied.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br> 2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - Capability not supported.
* @throws { BusinessError } 14600101 - Device operation failed.
* @syscap SystemCapability.Sensors.MiscDevice
* @atomicservice
* @since 11
*/
function startVibration(effect: VibrateEffect, attribute: VibrateAttribute): Promise<void>;
/**
* Stop the vibrator from vibrating.
*
* @permission ohos.permission.VIBRATE
* @param { VibratorStopMode } stopMode - Indicate the stop mode in which the motor vibrates, {@code VibratorStopMode}.
* @returns { Promise<void> } Promise used to return the result.
* @throws { BusinessError } 201 - Permission denied.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br> 2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.Sensors.MiscDevice
* @since 9
*/
function stopVibration(stopMode: VibratorStopMode): Promise<void>;
/**
* Stop the vibrator from vibrating.
*
* @permission ohos.permission.VIBRATE
* @param { VibratorStopMode } stopMode - Indicate the stop mode in which the motor vibrates, {@code VibratorStopMode}.
* @param { AsyncCallback<void> } callback - The callback of stopVibration.
* @throws { BusinessError } 201 - Permission denied.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br> 2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.Sensors.MiscDevice
* @since 9
*/
function stopVibration(stopMode: VibratorStopMode, callback: AsyncCallback<void>): void;
/**
* Stop any type of vibration.
*
* @permission ohos.permission.VIBRATE
* @param { AsyncCallback<void> } callback - The callback of stopVibration.
* @throws { BusinessError } 201 - Permission denied.
* @syscap SystemCapability.Sensors.MiscDevice
* @since 10
*/
/**
* Stop any type of vibration.
*
* @permission ohos.permission.VIBRATE
* @param { AsyncCallback<void> } callback - The callback of stopVibration.
* @throws { BusinessError } 201 - Permission denied.
* @syscap SystemCapability.Sensors.MiscDevice
* @atomicservice
* @since 11
*/
function stopVibration(callback: AsyncCallback<void>): void;
/**
* Stop any type of vibration.
*
* @permission ohos.permission.VIBRATE
* @returns { Promise<void> } Promise used to return the result.
* @throws { BusinessError } 201 - Permission denied.
* @syscap SystemCapability.Sensors.MiscDevice
* @since 10
*/
/**
* Stop any type of vibration.
*
* @permission ohos.permission.VIBRATE
* @returns { Promise<void> } Promise used to return the result.
* @throws { BusinessError } 201 - Permission denied.
* @syscap SystemCapability.Sensors.MiscDevice
* @atomicservice
* @since 11
*/
function stopVibration(): Promise<void>;
/**
* Stop any type of vibration.
*
* @permission ohos.permission.VIBRATE
* @throws { BusinessError } 201 - Permission denied.
* @throws { BusinessError } 14600101 - Device operation failed.
* @syscap SystemCapability.Sensors.MiscDevice
* @atomicservice
* @since 12
*/
function stopVibrationSync(): void;
/**
* Whether the preset vibration effect is supported.
*
* @param { string } effectId Indicate the specified effect of the preset, {@code EffectId}.
* @param { AsyncCallback<boolean> } callback The callback of isSupportEffect.
* @throws { BusinessError } 201 - Permission denied.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br> 2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.Sensors.MiscDevice
* @since 10
*/
function isSupportEffect(effectId: string, callback: AsyncCallback<boolean>): void;
/**
* Whether the preset vibration effect is supported.
*
* @param { string } effectId Indicate the specified effect of the preset, {@code EffectId}.
* @returns { Promise<boolean> } Promise used to return the result.
* @throws { BusinessError } 201 - Permission denied.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br> 2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.Sensors.MiscDevice
* @since 10
*/
function isSupportEffect(effectId: string): Promise<boolean>;
/**
* Whether the preset vibration effect is supported.
*
* @param { string } effectId Indicate the specified effect of the preset, {@code EffectId}.
* @returns { boolean } Returns whether the effect is supported.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br> 2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 14600101 - Device operation failed.
* @syscap SystemCapability.Sensors.MiscDevice
* @since 12
*/
function isSupportEffectSync(effectId: string): boolean;
/**
* Stop the motor from vibrating.
*
* @permission ohos.permission.VIBRATE
* @param { VibratorStopMode } stopMode Indicate the stop mode in which the motor vibrates, {@code VibratorStopMode}.
* @returns { Promise<void> } Promise used to return the result.
* @syscap SystemCapability.Sensors.MiscDevice
* @since 8
* @deprecated since 9
* @useinstead vibrator#stopVibration
*/
function stop(stopMode: VibratorStopMode): Promise<void>;
/**
* Stop the motor from vibrating.
*
* @permission ohos.permission.VIBRATE
* @param { VibratorStopMode } stopMode Indicate the stop mode in which the motor vibrates, {@code VibratorStopMode}.
* @param { AsyncCallback<void> } callback The callback of stop.
* @syscap SystemCapability.Sensors.MiscDevice
* @since 8
* @deprecated since 9
* @useinstead vibrator#stopVibration
*/
function stop(stopMode: VibratorStopMode, callback?: AsyncCallback<void>): void;
/**
* Whether the high-definition haptic is supported.
*
* @returns { boolean } Returns whether the high-definition haptic is supported.
* @throws { BusinessError } 14600101 - Device operation failed.
* @syscap SystemCapability.Sensors.MiscDevice
* @since 12
*/
function isHdHapticSupported(): boolean;
/**
* Preset vibration effect string.
*
* @enum { string }
* @syscap SystemCapability.Sensors.MiscDevice
* @since 8
*/
enum EffectId {
/**
* Describes the vibration effect of the vibrator when a user adjusts the timer.
*
* @syscap SystemCapability.Sensors.MiscDevice
* @since 8
*/
EFFECT_CLOCK_TIMER = 'haptic.clock.timer'
}
/**
* Simple and universal vibration effects.
*
* @enum { string }
* @syscap SystemCapability.Sensors.MiscDevice
* @since 12
*/
enum HapticFeedback {
/**
* Describes the soft vibration effect of the vibrator.
*
* @syscap SystemCapability.Sensors.MiscDevice
* @since 12
*/
EFFECT_SOFT = 'haptic.effect.soft',
/**
* Describes the hard vibration effect of the vibrator.
*
* @syscap SystemCapability.Sensors.MiscDevice
* @since 12
*/
EFFECT_HARD = 'haptic.effect.hard',
/**
* Describes the sharp vibration effect of the vibrator.
*
* @syscap SystemCapability.Sensors.MiscDevice
* @since 12
*/
EFFECT_SHARP = 'haptic.effect.sharp'
}
/**
* Vibrator vibration stop mode.
*
* @enum { string }
* @syscap SystemCapability.Sensors.MiscDevice
* @since 8
*/
enum VibratorStopMode {
/**
* Indicates the mode of stopping a one-shot vibration effect.
*
* @syscap SystemCapability.Sensors.MiscDevice
* @since 8
*/
VIBRATOR_STOP_MODE_TIME = 'time',
/**
* Indicates the mode of stopping a preset vibration effect.
*
* @syscap SystemCapability.Sensors.MiscDevice
* @since 8
*/
VIBRATOR_STOP_MODE_PRESET = 'preset'
}
/**
* The use of vibration.
*
* @typedef {'unknown' | 'alarm' | 'ring' | 'notification' | 'communication' |
* 'touch' | 'media' | 'physicalFeedback' | 'simulateReality'}
* @syscap SystemCapability.Sensors.MiscDevice
* @since 9
*/
/**
* The use of vibration.
*
* @typedef {'unknown' | 'alarm' | 'ring' | 'notification' | 'communication' |
* 'touch' | 'media' | 'physicalFeedback' | 'simulateReality'}
* @syscap SystemCapability.Sensors.MiscDevice
* @atomicservice
* @since 11
*/
type Usage = 'unknown' | 'alarm' | 'ring' | 'notification' | 'communication' |
'touch' | 'media' | 'physicalFeedback' | 'simulateReality';
/**
* The attribute of vibration.
*
* @interface VibrateAttribute
* @syscap SystemCapability.Sensors.MiscDevice
* @since 9
*/
/**
* The attribute of vibration.
*
* @interface VibrateAttribute
* @syscap SystemCapability.Sensors.MiscDevice
* @atomicservice
* @since 11
*/
interface VibrateAttribute {
/**
* Vibrator id, default is 0.
*
* @syscap SystemCapability.Sensors.MiscDevice
* @since 9
*/
/**
* Vibrator id, default is 0.
*
* @type { ?number }
* @syscap SystemCapability.Sensors.MiscDevice
* @atomicservice
* @since 11
*/
id?: number;
/**
* The use of vibration.
*
* @syscap SystemCapability.Sensors.MiscDevice
* @since 9
*/
/**
* The use of vibration.
*
* @type { Usage }
* @syscap SystemCapability.Sensors.MiscDevice
* @atomicservice
* @since 11
*/
usage: Usage;
/**
* Indicates whether to bypass system management switches.
*
* @type { ?boolean }
* @syscap SystemCapability.Sensors.MiscDevice
* @systemapi
* @since 12
*/
systemUsage?: boolean;
}
/**
* Describes the effect of vibration.
*
* @typedef { VibrateTime | VibratePreset }
* @syscap SystemCapability.Sensors.MiscDevice
* @since 9
*/
/**
* Describes the effect of vibration.
*
* @typedef { VibrateTime | VibratePreset | VibrateFromFile }
* @syscap SystemCapability.Sensors.MiscDevice
* @since 10
*/
/**
* Describes the effect of vibration.
*
* @typedef { VibrateTime | VibratePreset | VibrateFromFile }
* @syscap SystemCapability.Sensors.MiscDevice
* @atomicservice
* @since 11
*/
type VibrateEffect = VibrateTime | VibratePreset | VibrateFromFile;
/**
* Vibrate continuously for a period of time at the default intensity of the system.
*
* @interface VibrateTime
* @syscap SystemCapability.Sensors.MiscDevice
* @since 9
*/
/**
* Vibrate continuously for a period of time at the default intensity of the system.
*
* @interface VibrateTime
* @syscap SystemCapability.Sensors.MiscDevice
* @atomicservice
* @since 11
*/
interface VibrateTime {
/**
* The value is "time", which triggers the motor vibration according to the specified duration.
*
* @syscap SystemCapability.Sensors.MiscDevice
* @since 9
*/
/**
* The value is "time", which triggers the motor vibration according to the specified duration.
*
* @type { 'time' }
* @syscap SystemCapability.Sensors.MiscDevice
* @atomicservice
* @since 11
*/
type: 'time';
/**
* The duration of the vibration, in ms.
*
* @syscap SystemCapability.Sensors.MiscDevice
* @since 9
*/
/**
* The duration of the vibration, in ms.
*
* @type { number }
* @syscap SystemCapability.Sensors.MiscDevice
* @atomicservice
* @since 11
*/
duration: number; /** The duration of the vibration, in ms */
}
/**
* Preset vibration type vibration effect.
*
* @interface VibratePreset
* @syscap SystemCapability.Sensors.MiscDevice
* @since 9
*/
interface VibratePreset {
/**
* The value is "preset", which triggers motor vibration according to preset vibration effect.
*
* @type { 'preset' }
* @syscap SystemCapability.Sensors.MiscDevice
* @since 9
*/
type: 'preset';
/**
* Preset type vibration.
*
* @type { string }
* @syscap SystemCapability.Sensors.MiscDevice
* @since 9
*/
effectId: string;
/**
* The number of vibration repetitions.
*
* @syscap SystemCapability.Sensors.MiscDevice
* @since 9
*/
/**
* The number of vibration repetitions.
*
* @type { ?number }
* @syscap SystemCapability.Sensors.MiscDevice
* @since 12
*/
count?: number;
/**
* The intensity of vibration effect.
*
* @type { ?number }
* @syscap SystemCapability.Sensors.MiscDevice
* @since 12
*/
intensity?: number;
}
/**
* Custom vibration, vibrate the effect from a haptic file.
*
* @interface VibrateFromFile
* @syscap SystemCapability.Sensors.MiscDevice
* @since 10
*/
interface VibrateFromFile {
/**
* The value is "file", which triggers motor vibration according to the vibration profile.
*
* @type { 'file' }
* @syscap SystemCapability.Sensors.MiscDevice
* @since 10
*/
type: 'file';
/**
* Haptic file descriptor, some formats are supported.
*
* @type { HapticFileDescriptor }
* @syscap SystemCapability.Sensors.MiscDevice
* @since 10
*/
hapticFd: HapticFileDescriptor;
}
/**
* Haptic file descriptor. The caller needs to ensure that the fd is valid and
* the offset and length are correct.
*
* @interface HapticFileDescriptor
* @syscap SystemCapability.Sensors.MiscDevice
* @since 10
*/
interface HapticFileDescriptor {
/**
* The file descriptor of haptic effect source from file system. The caller
* is responsible to close the file descriptor.
*
* @type { number }
* @syscap SystemCapability.Sensors.MiscDevice
* @since 10
*/
fd: number;
/**
* The offset into the file where the data to be read, in bytes. By default,
* the offset is zero.
*
* @type { ?number }
* @syscap SystemCapability.Sensors.MiscDevice
* @since 10
*/
offset?: number;
/**
* The length in bytes of the data to be read. By default, the length is the
* rest of bytes in the file from the offset.
*
* @type { ?number }
* @syscap SystemCapability.Sensors.MiscDevice
* @since 10
*/
length?: number;
}
}
export default vibrator;
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/lffl8796/interface_sdk-js.git
git@gitee.com:lffl8796/interface_sdk-js.git
lffl8796
interface_sdk-js
interface_sdk-js
master

搜索帮助