161847f8eSopenharmony_ci/* 261847f8eSopenharmony_ci * Copyright (c) 2022 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 BackgroundTasksKit 1961847f8eSopenharmony_ci */ 2061847f8eSopenharmony_ci 2161847f8eSopenharmony_ciimport { AsyncCallback, Callback } from './@ohos.base'; 2261847f8eSopenharmony_ci 2361847f8eSopenharmony_ci/** 2461847f8eSopenharmony_ci * Provides methods for managing bundle usage statistics, 2561847f8eSopenharmony_ci * including the methods for querying bundle usage information and state data. 2661847f8eSopenharmony_ci * <p>You can use the methods defined in this class to query 2761847f8eSopenharmony_ci * the usage history and states of bundles in a specified period. 2861847f8eSopenharmony_ci * The system stores the query result in a {@link BundleStateInfo} or {@link BundleActiveState} instance and 2961847f8eSopenharmony_ci * then returns it to you. 3061847f8eSopenharmony_ci * 3161847f8eSopenharmony_ci * @namespace bundleState 3261847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 3361847f8eSopenharmony_ci * @since 7 3461847f8eSopenharmony_ci * @deprecated since 9 3561847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics 3661847f8eSopenharmony_ci */ 3761847f8eSopenharmony_cideclare namespace bundleState { 3861847f8eSopenharmony_ci /** 3961847f8eSopenharmony_ci * @interface BundleStateInfo 4061847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 4161847f8eSopenharmony_ci * @since 7 4261847f8eSopenharmony_ci * @deprecated since 9 4361847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics.BundleStatsInfo 4461847f8eSopenharmony_ci */ 4561847f8eSopenharmony_ci interface BundleStateInfo { 4661847f8eSopenharmony_ci /** 4761847f8eSopenharmony_ci * The identifier of BundleStateInfo. 4861847f8eSopenharmony_ci * @type { number } 4961847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 5061847f8eSopenharmony_ci * @since 7 5161847f8eSopenharmony_ci * @deprecated since 9 5261847f8eSopenharmony_ci */ 5361847f8eSopenharmony_ci id: number; 5461847f8eSopenharmony_ci /** 5561847f8eSopenharmony_ci * The total duration, in milliseconds. 5661847f8eSopenharmony_ci * @type { ?number } 5761847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 5861847f8eSopenharmony_ci * @since 7 5961847f8eSopenharmony_ci * @deprecated since 9 6061847f8eSopenharmony_ci */ 6161847f8eSopenharmony_ci abilityInFgTotalTime?: number; 6261847f8eSopenharmony_ci /** 6361847f8eSopenharmony_ci * The last time when the application was accessed, in milliseconds. 6461847f8eSopenharmony_ci * @type { ?number } 6561847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 6661847f8eSopenharmony_ci * @since 7 6761847f8eSopenharmony_ci * @deprecated since 9 6861847f8eSopenharmony_ci */ 6961847f8eSopenharmony_ci abilityPrevAccessTime?: number; 7061847f8eSopenharmony_ci /** 7161847f8eSopenharmony_ci * The last time when the application was visible in the foreground, in milliseconds. 7261847f8eSopenharmony_ci * @type { ?number } 7361847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 7461847f8eSopenharmony_ci * @since 7 7561847f8eSopenharmony_ci * @deprecated since 9 7661847f8eSopenharmony_ci */ 7761847f8eSopenharmony_ci abilityPrevSeenTime?: number; 7861847f8eSopenharmony_ci /** 7961847f8eSopenharmony_ci * The total duration, in milliseconds. 8061847f8eSopenharmony_ci * @type { ?number } 8161847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 8261847f8eSopenharmony_ci * @since 7 8361847f8eSopenharmony_ci * @deprecated since 9 8461847f8eSopenharmony_ci */ 8561847f8eSopenharmony_ci abilitySeenTotalTime?: number; 8661847f8eSopenharmony_ci /** 8761847f8eSopenharmony_ci * The bundle name of the application. 8861847f8eSopenharmony_ci * @type { ?string } 8961847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 9061847f8eSopenharmony_ci * @since 7 9161847f8eSopenharmony_ci * @deprecated since 9 9261847f8eSopenharmony_ci */ 9361847f8eSopenharmony_ci bundleName?: string; 9461847f8eSopenharmony_ci /** 9561847f8eSopenharmony_ci * The total duration, in milliseconds. 9661847f8eSopenharmony_ci * @type { ?number } 9761847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 9861847f8eSopenharmony_ci * @since 7 9961847f8eSopenharmony_ci * @deprecated since 9 10061847f8eSopenharmony_ci */ 10161847f8eSopenharmony_ci fgAbilityAccessTotalTime?: number; 10261847f8eSopenharmony_ci /** 10361847f8eSopenharmony_ci * The last time when the foreground application was accessed, in milliseconds. 10461847f8eSopenharmony_ci * @type { ?number } 10561847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 10661847f8eSopenharmony_ci * @since 7 10761847f8eSopenharmony_ci * @deprecated since 9 10861847f8eSopenharmony_ci */ 10961847f8eSopenharmony_ci fgAbilityPrevAccessTime?: number; 11061847f8eSopenharmony_ci /** 11161847f8eSopenharmony_ci * The time of the first bundle usage record in this {@code BundleActiveInfo} object, 11261847f8eSopenharmony_ci * in milliseconds. 11361847f8eSopenharmony_ci * @type { ?number } 11461847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 11561847f8eSopenharmony_ci * @since 7 11661847f8eSopenharmony_ci * @deprecated since 9 11761847f8eSopenharmony_ci */ 11861847f8eSopenharmony_ci infosBeginTime?: number; 11961847f8eSopenharmony_ci /** 12061847f8eSopenharmony_ci * The time of the last bundle usage record in this {@code BundleActiveInfo} object, 12161847f8eSopenharmony_ci * in milliseconds. 12261847f8eSopenharmony_ci * @type { ?number } 12361847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 12461847f8eSopenharmony_ci * @since 7 12561847f8eSopenharmony_ci * @deprecated since 9 12661847f8eSopenharmony_ci */ 12761847f8eSopenharmony_ci infosEndTime?: number; 12861847f8eSopenharmony_ci 12961847f8eSopenharmony_ci /** 13061847f8eSopenharmony_ci * Merges a specified {@link BundleActiveInfo} object with this {@link BundleActiveInfo} object. 13161847f8eSopenharmony_ci * The bundle name of both objects must be the same. 13261847f8eSopenharmony_ci * 13361847f8eSopenharmony_ci * @param { BundleStateInfo } toMerge Indicates the {@link BundleActiveInfo} object to merge. 13461847f8eSopenharmony_ci * If the bundle names of the two {@link BundleActiveInfo} objects are different. 13561847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 13661847f8eSopenharmony_ci * @since 7 13761847f8eSopenharmony_ci * @deprecated since 9 13861847f8eSopenharmony_ci */ 13961847f8eSopenharmony_ci merge(toMerge: BundleStateInfo): void; 14061847f8eSopenharmony_ci } 14161847f8eSopenharmony_ci 14261847f8eSopenharmony_ci /** 14361847f8eSopenharmony_ci * @typedef BundleActiveState 14461847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 14561847f8eSopenharmony_ci * @since 7 14661847f8eSopenharmony_ci * @deprecated since 9 14761847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics.BundleEvents 14861847f8eSopenharmony_ci */ 14961847f8eSopenharmony_ci interface BundleActiveState { 15061847f8eSopenharmony_ci /** 15161847f8eSopenharmony_ci * The usage priority group of the application. 15261847f8eSopenharmony_ci * @type { ?number } 15361847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 15461847f8eSopenharmony_ci * @since 7 15561847f8eSopenharmony_ci * @deprecated since 9 15661847f8eSopenharmony_ci */ 15761847f8eSopenharmony_ci appUsagePriorityGroup?: number; 15861847f8eSopenharmony_ci /** 15961847f8eSopenharmony_ci * The bundle name. 16061847f8eSopenharmony_ci * @type { ?string } 16161847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 16261847f8eSopenharmony_ci * @since 7 16361847f8eSopenharmony_ci * @deprecated since 9 16461847f8eSopenharmony_ci */ 16561847f8eSopenharmony_ci bundleName?: string; 16661847f8eSopenharmony_ci /** 16761847f8eSopenharmony_ci * The shortcut ID. 16861847f8eSopenharmony_ci * @type { ?string } 16961847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 17061847f8eSopenharmony_ci * @since 7 17161847f8eSopenharmony_ci * @deprecated since 9 17261847f8eSopenharmony_ci */ 17361847f8eSopenharmony_ci indexOfLink?: string; 17461847f8eSopenharmony_ci /** 17561847f8eSopenharmony_ci * The class name. 17661847f8eSopenharmony_ci * @type { ?string } 17761847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 17861847f8eSopenharmony_ci * @since 7 17961847f8eSopenharmony_ci * @deprecated since 9 18061847f8eSopenharmony_ci */ 18161847f8eSopenharmony_ci nameOfClass?: string; 18261847f8eSopenharmony_ci /** 18361847f8eSopenharmony_ci * The time when this state occurred, in milliseconds. 18461847f8eSopenharmony_ci * @type { ?number } 18561847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 18661847f8eSopenharmony_ci * @since 7 18761847f8eSopenharmony_ci * @deprecated since 9 18861847f8eSopenharmony_ci */ 18961847f8eSopenharmony_ci stateOccurredTime?: number; 19061847f8eSopenharmony_ci /** 19161847f8eSopenharmony_ci * The state type. 19261847f8eSopenharmony_ci * @type { ?number } 19361847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 19461847f8eSopenharmony_ci * @since 7 19561847f8eSopenharmony_ci * @deprecated since 9 19661847f8eSopenharmony_ci */ 19761847f8eSopenharmony_ci stateType?: number; 19861847f8eSopenharmony_ci } 19961847f8eSopenharmony_ci 20061847f8eSopenharmony_ci /** 20161847f8eSopenharmony_ci * Checks whether the application with a specified bundle name is in the idle state. 20261847f8eSopenharmony_ci * 20361847f8eSopenharmony_ci * @param { string } bundleName Indicates the bundle name of the application to query. 20461847f8eSopenharmony_ci * @param { AsyncCallback<boolean> } callback - the callback of isIdleState. 20561847f8eSopenharmony_ci * <p> boolean value is true mean the application is idle in a particular period; false mean otherwise. 20661847f8eSopenharmony_ci * The time range of the particular period is defined by the system, which may be hours or days.</p> 20761847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.AppGroup 20861847f8eSopenharmony_ci * @since 7 20961847f8eSopenharmony_ci * @deprecated since 9 21061847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics.isIdleState 21161847f8eSopenharmony_ci */ 21261847f8eSopenharmony_ci function isIdleState(bundleName: string, callback: AsyncCallback<boolean>): void; 21361847f8eSopenharmony_ci 21461847f8eSopenharmony_ci /** 21561847f8eSopenharmony_ci * Checks whether the application with a specified bundle name is in the idle state. 21661847f8eSopenharmony_ci * 21761847f8eSopenharmony_ci * @param { string } bundleName Indicates the bundle name of the application to query. 21861847f8eSopenharmony_ci * @returns { Promise<boolean> } the promise returned by isIdleState. 21961847f8eSopenharmony_ci * <p> boolean value is true mean the application is idle in a particular period; false mean otherwise. 22061847f8eSopenharmony_ci * The time range of the particular period is defined by the system, which may be hours or days.</p> 22161847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.AppGroup 22261847f8eSopenharmony_ci * @since 7 22361847f8eSopenharmony_ci * @deprecated since 9 22461847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics.isIdleState 22561847f8eSopenharmony_ci */ 22661847f8eSopenharmony_ci function isIdleState(bundleName: string): Promise<boolean>; 22761847f8eSopenharmony_ci 22861847f8eSopenharmony_ci /** 22961847f8eSopenharmony_ci * Queries the usage priority group of the calling application. 23061847f8eSopenharmony_ci * <p>The priority defined in a priority group restricts the resource usage of an application, 23161847f8eSopenharmony_ci * for example, restricting the running of background tasks. </p> 23261847f8eSopenharmony_ci * 23361847f8eSopenharmony_ci * @param { AsyncCallback<number> } callback - the callback of queryAppUsagePriorityGroup. 23461847f8eSopenharmony_ci * <p> Returns the app group of the calling application.</p> 23561847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.AppGroup 23661847f8eSopenharmony_ci * @since 7 23761847f8eSopenharmony_ci * @deprecated since 9 23861847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics.queryAppGroup 23961847f8eSopenharmony_ci */ 24061847f8eSopenharmony_ci function queryAppUsagePriorityGroup(callback: AsyncCallback<number>): void; 24161847f8eSopenharmony_ci 24261847f8eSopenharmony_ci /** 24361847f8eSopenharmony_ci * Queries the usage priority group of the calling application. 24461847f8eSopenharmony_ci * <p>The priority defined in a priority group restricts the resource usage of an application, 24561847f8eSopenharmony_ci * for example, restricting the running of background tasks. </p> 24661847f8eSopenharmony_ci * 24761847f8eSopenharmony_ci * @returns { Promise<number> } the promise returned by queryAppUsagePriorityGroup. 24861847f8eSopenharmony_ci * <p> Returns the app group of the calling application.</p> 24961847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.AppGroup 25061847f8eSopenharmony_ci * @since 7 25161847f8eSopenharmony_ci * @deprecated since 9 25261847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics.queryAppGroup 25361847f8eSopenharmony_ci */ 25461847f8eSopenharmony_ci function queryAppUsagePriorityGroup(): Promise<number>; 25561847f8eSopenharmony_ci 25661847f8eSopenharmony_ci /** 25761847f8eSopenharmony_ci * @typedef BundleActiveInfoResponse 25861847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 25961847f8eSopenharmony_ci * @since 7 26061847f8eSopenharmony_ci * @deprecated since 9 26161847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics.BundleStatsMap 26261847f8eSopenharmony_ci */ 26361847f8eSopenharmony_ci interface BundleActiveInfoResponse { 26461847f8eSopenharmony_ci [key: string]: BundleStateInfo; 26561847f8eSopenharmony_ci } 26661847f8eSopenharmony_ci 26761847f8eSopenharmony_ci /** 26861847f8eSopenharmony_ci * Queries usage information about each bundle within a specified period. 26961847f8eSopenharmony_ci * <p>This method queries usage information at the {@link #BY_OPTIMIZED} interval by default.</p> 27061847f8eSopenharmony_ci * 27161847f8eSopenharmony_ci * @permission ohos.permission.BUNDLE_ACTIVE_INFO 27261847f8eSopenharmony_ci * @param { number } begin Indicates the start time of the query period, in milliseconds. 27361847f8eSopenharmony_ci * @param { number } end Indicates the end time of the query period, in milliseconds. 27461847f8eSopenharmony_ci * @param { AsyncCallback<BundleActiveInfoResponse> } callback - the callback of queryBundleStateInfos. 27561847f8eSopenharmony_ci * <p> the {@link BundleActiveInfoResponse} objects containing the usage information about each bundle.</p> 27661847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 27761847f8eSopenharmony_ci * @systemapi Hide this for inner system use. 27861847f8eSopenharmony_ci * @since 7 27961847f8eSopenharmony_ci * @deprecated since 9 28061847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics.queryBundleStatsInfos 28161847f8eSopenharmony_ci */ 28261847f8eSopenharmony_ci function queryBundleStateInfos(begin: number, end: number, callback: AsyncCallback<BundleActiveInfoResponse>): void; 28361847f8eSopenharmony_ci 28461847f8eSopenharmony_ci /** 28561847f8eSopenharmony_ci * Queries usage information about each bundle within a specified period. 28661847f8eSopenharmony_ci * <p>This method queries usage information at the {@link #BY_OPTIMIZED} interval by default.</p> 28761847f8eSopenharmony_ci * 28861847f8eSopenharmony_ci * @permission ohos.permission.BUNDLE_ACTIVE_INFO 28961847f8eSopenharmony_ci * @param { number } begin Indicates the start time of the query period, in milliseconds. 29061847f8eSopenharmony_ci * @param { number } end Indicates the end time of the query period, in milliseconds. 29161847f8eSopenharmony_ci * @returns { Promise<BundleActiveInfoResponse> } the promise returned by queryBundleStatsInfos. 29261847f8eSopenharmony_ci * <p> the {@link BundleActiveInfoResponse} objects containing the usage information about each bundle.</p> 29361847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 29461847f8eSopenharmony_ci * @systemapi Hide this for inner system use. 29561847f8eSopenharmony_ci * @since 7 29661847f8eSopenharmony_ci * @deprecated since 9 29761847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics.queryBundleStatsInfos 29861847f8eSopenharmony_ci */ 29961847f8eSopenharmony_ci function queryBundleStateInfos(begin: number, end: number): Promise<BundleActiveInfoResponse>; 30061847f8eSopenharmony_ci 30161847f8eSopenharmony_ci /** 30261847f8eSopenharmony_ci * Declares interval type. 30361847f8eSopenharmony_ci * 30461847f8eSopenharmony_ci * @enum { number } 30561847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 30661847f8eSopenharmony_ci * @since 7 30761847f8eSopenharmony_ci * @deprecated since 9 30861847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics.IntervalType 30961847f8eSopenharmony_ci */ 31061847f8eSopenharmony_ci export enum IntervalType { 31161847f8eSopenharmony_ci /** 31261847f8eSopenharmony_ci * Indicates the interval type that will determine the optimal interval based on the start and end time. 31361847f8eSopenharmony_ci * 31461847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 31561847f8eSopenharmony_ci * @since 7 31661847f8eSopenharmony_ci * @deprecated since 9 31761847f8eSopenharmony_ci */ 31861847f8eSopenharmony_ci BY_OPTIMIZED = 0, 31961847f8eSopenharmony_ci 32061847f8eSopenharmony_ci /** 32161847f8eSopenharmony_ci * Indicates the daily interval. 32261847f8eSopenharmony_ci * 32361847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 32461847f8eSopenharmony_ci * @since 7 32561847f8eSopenharmony_ci * @deprecated since 9 32661847f8eSopenharmony_ci */ 32761847f8eSopenharmony_ci BY_DAILY = 1, 32861847f8eSopenharmony_ci 32961847f8eSopenharmony_ci /** 33061847f8eSopenharmony_ci * Indicates the weekly interval. 33161847f8eSopenharmony_ci * 33261847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 33361847f8eSopenharmony_ci * @since 7 33461847f8eSopenharmony_ci * @deprecated since 9 33561847f8eSopenharmony_ci */ 33661847f8eSopenharmony_ci BY_WEEKLY = 2, 33761847f8eSopenharmony_ci 33861847f8eSopenharmony_ci /** 33961847f8eSopenharmony_ci * Indicates the monthly interval. 34061847f8eSopenharmony_ci * 34161847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 34261847f8eSopenharmony_ci * @since 7 34361847f8eSopenharmony_ci * @deprecated since 9 34461847f8eSopenharmony_ci */ 34561847f8eSopenharmony_ci BY_MONTHLY = 3, 34661847f8eSopenharmony_ci 34761847f8eSopenharmony_ci /** 34861847f8eSopenharmony_ci * Indicates the annually interval. 34961847f8eSopenharmony_ci * 35061847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 35161847f8eSopenharmony_ci * @since 7 35261847f8eSopenharmony_ci * @deprecated since 9 35361847f8eSopenharmony_ci */ 35461847f8eSopenharmony_ci BY_ANNUALLY = 4 35561847f8eSopenharmony_ci } 35661847f8eSopenharmony_ci 35761847f8eSopenharmony_ci /** 35861847f8eSopenharmony_ci * Queries usage information about each bundle within a specified period at a specified interval. 35961847f8eSopenharmony_ci * 36061847f8eSopenharmony_ci * @permission ohos.permission.BUNDLE_ACTIVE_INFO 36161847f8eSopenharmony_ci * @param { IntervalType } byInterval Indicates the interval at which the usage statistics are queried. 36261847f8eSopenharmony_ci * <p>The value can be {@link #BY_OPTIMIZED}, {@link #BY_DAILY}, 36361847f8eSopenharmony_ci * {@link #BY_WEEKLY}, {@link #BY_MONTHLY}, or {@link #BY_ANNUALLY}.</p> 36461847f8eSopenharmony_ci * @param { number } begin Indicates the start time of the query period, in milliseconds. 36561847f8eSopenharmony_ci * @param { number } end Indicates the end time of the query period, in milliseconds. 36661847f8eSopenharmony_ci * @param { AsyncCallback<Array<BundleStateInfo>> } callback - the callback of usage information about each bundle. 36761847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 36861847f8eSopenharmony_ci * @systemapi Hide this for inner system use. 36961847f8eSopenharmony_ci * @since 7 37061847f8eSopenharmony_ci * @deprecated since 9 37161847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics.queryBundleStatsInfoByInterval 37261847f8eSopenharmony_ci */ 37361847f8eSopenharmony_ci function queryBundleStateInfoByInterval( 37461847f8eSopenharmony_ci byInterval: IntervalType, 37561847f8eSopenharmony_ci begin: number, 37661847f8eSopenharmony_ci end: number, 37761847f8eSopenharmony_ci callback: AsyncCallback<Array<BundleStateInfo>> 37861847f8eSopenharmony_ci ): void; 37961847f8eSopenharmony_ci 38061847f8eSopenharmony_ci /** 38161847f8eSopenharmony_ci * Queries usage information about each bundle within a specified period at a specified interval. 38261847f8eSopenharmony_ci * 38361847f8eSopenharmony_ci * @permission ohos.permission.BUNDLE_ACTIVE_INFO 38461847f8eSopenharmony_ci * @param { IntervalType } byInterval Indicates the interval at which the usage statistics are queried. 38561847f8eSopenharmony_ci * <p>The value can be {@link #BY_OPTIMIZED}, {@link #BY_DAILY}, 38661847f8eSopenharmony_ci * {@link #BY_WEEKLY}, {@link #BY_MONTHLY}, or {@link #BY_ANNUALLY}.</p> 38761847f8eSopenharmony_ci * @param { number } begin Indicates the start time of the query period, in milliseconds. 38861847f8eSopenharmony_ci * @param { number } end Indicates the end time of the query period, in milliseconds. 38961847f8eSopenharmony_ci * @returns { Promise<Array<BundleStateInfo>> } the usage information about each bundle. 39061847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 39161847f8eSopenharmony_ci * @systemapi Hide this for inner system use. 39261847f8eSopenharmony_ci * @since 7 39361847f8eSopenharmony_ci * @deprecated since 9 39461847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics.queryBundleStatsInfoByInterval 39561847f8eSopenharmony_ci */ 39661847f8eSopenharmony_ci function queryBundleStateInfoByInterval( 39761847f8eSopenharmony_ci byInterval: IntervalType, 39861847f8eSopenharmony_ci begin: number, 39961847f8eSopenharmony_ci end: number 40061847f8eSopenharmony_ci ): Promise<Array<BundleStateInfo>>; 40161847f8eSopenharmony_ci 40261847f8eSopenharmony_ci /** 40361847f8eSopenharmony_ci * Queries state data of all bundles within a specified period identified by the start and end time. 40461847f8eSopenharmony_ci * 40561847f8eSopenharmony_ci * @permission ohos.permission.BUNDLE_ACTIVE_INFO 40661847f8eSopenharmony_ci * @param { number } begin Indicates the start time of the query period, in milliseconds. 40761847f8eSopenharmony_ci * @param { number } end Indicates the end time of the query period, in milliseconds. 40861847f8eSopenharmony_ci * @param { AsyncCallback<Array<BundleActiveState>> } callback - the state data of all bundles. 40961847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 41061847f8eSopenharmony_ci * @systemapi Hide this for inner system use. 41161847f8eSopenharmony_ci * @since 7 41261847f8eSopenharmony_ci * @deprecated since 9 41361847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics.queryBundleEvents 41461847f8eSopenharmony_ci */ 41561847f8eSopenharmony_ci function queryBundleActiveStates(begin: number, end: number, callback: AsyncCallback<Array<BundleActiveState>>): void; 41661847f8eSopenharmony_ci 41761847f8eSopenharmony_ci /** 41861847f8eSopenharmony_ci * Queries state data of all bundles within a specified period identified by the start and end time. 41961847f8eSopenharmony_ci * 42061847f8eSopenharmony_ci * @permission ohos.permission.BUNDLE_ACTIVE_INFO 42161847f8eSopenharmony_ci * @param { number } begin Indicates the start time of the query period, in milliseconds. 42261847f8eSopenharmony_ci * @param { number } end Indicates the end time of the query period, in milliseconds. 42361847f8eSopenharmony_ci * @returns { Promise<Array<BundleActiveState>> } the state data of all bundles. 42461847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 42561847f8eSopenharmony_ci * @systemapi Hide this for inner system use. 42661847f8eSopenharmony_ci * @since 7 42761847f8eSopenharmony_ci * @deprecated since 9 42861847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics.queryBundleEvents 42961847f8eSopenharmony_ci */ 43061847f8eSopenharmony_ci function queryBundleActiveStates(begin: number, end: number): Promise<Array<BundleActiveState>>; 43161847f8eSopenharmony_ci 43261847f8eSopenharmony_ci /** 43361847f8eSopenharmony_ci * Queries state data of the current bundle within a specified period. 43461847f8eSopenharmony_ci * 43561847f8eSopenharmony_ci * @param { number } begin Indicates the start time of the query period, in milliseconds. 43661847f8eSopenharmony_ci * @param { number } end Indicates the end time of the query period, in milliseconds. 43761847f8eSopenharmony_ci * @param { AsyncCallback<Array<BundleActiveState>> } callback - the state data of the current bundle. 43861847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 43961847f8eSopenharmony_ci * @since 7 44061847f8eSopenharmony_ci * @deprecated since 9 44161847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics.queryCurrentBundleEvents 44261847f8eSopenharmony_ci */ 44361847f8eSopenharmony_ci function queryCurrentBundleActiveStates( 44461847f8eSopenharmony_ci begin: number, 44561847f8eSopenharmony_ci end: number, 44661847f8eSopenharmony_ci callback: AsyncCallback<Array<BundleActiveState>> 44761847f8eSopenharmony_ci ): void; 44861847f8eSopenharmony_ci 44961847f8eSopenharmony_ci /** 45061847f8eSopenharmony_ci * Queries state data of the current bundle within a specified period. 45161847f8eSopenharmony_ci * 45261847f8eSopenharmony_ci * @param { number } begin Indicates the start time of the query period, in milliseconds. 45361847f8eSopenharmony_ci * @param { number } end Indicates the end time of the query period, in milliseconds. 45461847f8eSopenharmony_ci * @returns { Promise<Array<BundleActiveState>> } the state data of the current bundle. 45561847f8eSopenharmony_ci * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App 45661847f8eSopenharmony_ci * @since 7 45761847f8eSopenharmony_ci * @deprecated since 9 45861847f8eSopenharmony_ci * @useinstead ohos.resourceschedule.usageStatistics.queryCurrentBundleEvents 45961847f8eSopenharmony_ci */ 46061847f8eSopenharmony_ci function queryCurrentBundleActiveStates(begin: number, end: number): Promise<Array<BundleActiveState>>; 46161847f8eSopenharmony_ci} 46261847f8eSopenharmony_ci 46361847f8eSopenharmony_ciexport default bundleState; 464