diff --git a/api/@ohos.systemTime.d.ts b/api/@ohos.systemTime.d.ts index c6d1039d5f5def49f662d6bffb38724959e5a133..d69ec642af8bb6435ef764cdb3efa0374180dc65 100755 --- a/api/@ohos.systemTime.d.ts +++ b/api/@ohos.systemTime.d.ts @@ -17,13 +17,38 @@ import { AsyncCallback, ErrorCallback } from './basic'; /** * System time and timezone. - * - * @since 6 + * @since 7 + * @sysCap SystemCapability.Miscservices.Time + * @devices phone, tablet, tv, wearable, car + * @import systemTime from '@ohos.systemTime'; */ declare namespace systemTime { - // Sets the system time. - function setTime(time : number, callback : AsyncCallback) : void; - function setTime(time : number) : Promise; + /** + * Sets the system time. + * @permission ohos.permission.SET_TIME + * @param time Target time stamp (ms) + * @since 7 + */ + function setTime(time : number, callback : AsyncCallback) : void; + function setTime(time : number) : Promise; + + /** + * Sets the system time. + * @permission ohos.permission.SET_TIME + * @param date The target date + * @since 7 + */ + function setDate(date: Date, callback: AsyncCallback): void; + function setDate(date: Date): Promise; + + /** + * Sets the system time zone. + * @permission ohos.permission.SET_TIME_ZONE + * @param timezone The system time zone + * @since 7 + */ + function setTimezone(timezone: string, callback: AsyncCallback): void; + function setTimezone(timezone: string): Promise; } export default systemTime; diff --git a/api/@ohos.systemTimer.d.ts b/api/@ohos.systemTimer.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..987f9067a8bc9701f2b30df7f5b0abcb87c8749a --- /dev/null +++ b/api/@ohos.systemTimer.d.ts @@ -0,0 +1,114 @@ +/* + * 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. + */ + +import { AsyncCallback, ErrorCallback } from './basic'; +import { WantAgent } from './@ohos.wantAgent'; + +/** + * Provides js api for systemTimer + * + * @since 7 + * @devices phone, tablet, tv, wearable, car + * @systemapi Hide this for inner system use. + */ +declare namespace systemTimer { + /** + * Indicates the timing policy the timer use, which can be REALTIME or UTC. + */ + const TIMER_TYPE_REALTIME: number; + + /** + * Describes whether a timer will wake the device up. + */ + const TIMER_TYPE_WAKEUP: number; + + /** + * Describes whether a timer will be delivered precisely at a scheduled time. + */ + const TIMER_TYPE_EXACT: number; + + /** + * Indicates whether the timer waking up the system is supported in low-power mode. + */ + const TIMER_TYPE_IDLE: number; + + /** + * Creates a timer. + * @Param options Indicates the timer options. + * @Return timer ID. + */ + function createTimer(options: TimerOptions, callback: AsyncCallback): void; + function createTimer(options: TimerOptions): Promise; + + /** + * Starts a timer. + * + * @Param timer The timer ID. + * @Param triggerTime Indicates the time at which the timer is triggered for the first time, in milliseconds. + * The time will be automatically set to 5000 milliseconds after the current time if the passed + * value is smaller than the current time plus 5000 milliseconds. + */ + function startTimer(timer: number, triggerTime: number, callback: AsyncCallback): void; + function startTimer(timer: number, triggerTime: number): Promise; + + /** + * Stops a timer. + * @Param timer The timer ID. + */ + function stopTimer(timer: number, callback: AsyncCallback): void; + function stopTimer(timer: number): Promise; + + /** + * Destroy a timer. + * @Param timer The timer ID. + */ + function destroyTimer(timer: number, callback: AsyncCallback): void; + function destroyTimer(timer: number): Promise; + + /** + * When the repeat is false,the interval is not needed, choose one of wantAgent and callback. + * When the repeat is true,the interval is required, the wantAgent is required, and the callback can be left blank. + * + */ + interface TimerOptions { + /** + * timer type. + */ + type: number; + + /** + * Indicates a repeating timer + */ + repeat: boolean; + + /** + * Indicates the interval between two consecutive triggers, in milliseconds. + * The interval will be set to 5000 milliseconds automatically if the passed value is smaller than 5000. + */ + interval?: number; + + /** + * Indicates the intent to send when the timer goes off. + */ + wantAgent?: WantAgent; + + /** + * Called back when the timer goes off. + */ + callback?: () => void; + } +} + +export default systemTimer; \ No newline at end of file