161847f8eSopenharmony_ci/*
261847f8eSopenharmony_ci * Copyright (c) 2022-2024 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 PerformanceAnalysisKit
1961847f8eSopenharmony_ci */
2061847f8eSopenharmony_ci
2161847f8eSopenharmony_ciimport type { AsyncCallback } from './@ohos.base';
2261847f8eSopenharmony_ci
2361847f8eSopenharmony_ci/**
2461847f8eSopenharmony_ci * Provides the event logging function for applications to log the fault, statistical, security,
2561847f8eSopenharmony_ci * and user behavior events reported during running. Based on event information,
2661847f8eSopenharmony_ci * you will be able to analyze the running status of applications.
2761847f8eSopenharmony_ci *
2861847f8eSopenharmony_ci * @namespace hiAppEvent
2961847f8eSopenharmony_ci * @syscap SystemCapability.HiviewDFX.HiAppEvent
3061847f8eSopenharmony_ci * @since 9
3161847f8eSopenharmony_ci */
3261847f8eSopenharmony_ci/**
3361847f8eSopenharmony_ci * Provides the event logging function for applications to log the fault, statistical, security,
3461847f8eSopenharmony_ci * and user behavior events reported during running. Based on event information,
3561847f8eSopenharmony_ci * you will be able to analyze the running status of applications.
3661847f8eSopenharmony_ci *
3761847f8eSopenharmony_ci * @namespace hiAppEvent
3861847f8eSopenharmony_ci * @syscap SystemCapability.HiviewDFX.HiAppEvent
3961847f8eSopenharmony_ci * @atomicservice
4061847f8eSopenharmony_ci * @since 11
4161847f8eSopenharmony_ci */
4261847f8eSopenharmony_cideclare namespace hiAppEvent {
4361847f8eSopenharmony_ci  /**
4461847f8eSopenharmony_ci   * Enumerate application event types.
4561847f8eSopenharmony_ci   *
4661847f8eSopenharmony_ci   * @enum { number }
4761847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
4861847f8eSopenharmony_ci   * @since 9
4961847f8eSopenharmony_ci   */
5061847f8eSopenharmony_ci  /**
5161847f8eSopenharmony_ci   * Enumerate application event types.
5261847f8eSopenharmony_ci   *
5361847f8eSopenharmony_ci   * @enum { number }
5461847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
5561847f8eSopenharmony_ci   * @atomicservice
5661847f8eSopenharmony_ci   * @since 11
5761847f8eSopenharmony_ci   */
5861847f8eSopenharmony_ci  enum EventType {
5961847f8eSopenharmony_ci    /**
6061847f8eSopenharmony_ci     * Fault event.
6161847f8eSopenharmony_ci     *
6261847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
6361847f8eSopenharmony_ci     * @since 9
6461847f8eSopenharmony_ci     */
6561847f8eSopenharmony_ci    /**
6661847f8eSopenharmony_ci     * Fault event.
6761847f8eSopenharmony_ci     *
6861847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
6961847f8eSopenharmony_ci     * @atomicservice
7061847f8eSopenharmony_ci     * @since 11
7161847f8eSopenharmony_ci     */
7261847f8eSopenharmony_ci    FAULT = 1,
7361847f8eSopenharmony_ci
7461847f8eSopenharmony_ci    /**
7561847f8eSopenharmony_ci     * Statistic event.
7661847f8eSopenharmony_ci     *
7761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
7861847f8eSopenharmony_ci     * @since 9
7961847f8eSopenharmony_ci     */
8061847f8eSopenharmony_ci    /**
8161847f8eSopenharmony_ci     * Statistic event.
8261847f8eSopenharmony_ci     *
8361847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
8461847f8eSopenharmony_ci     * @atomicservice
8561847f8eSopenharmony_ci     * @since 11
8661847f8eSopenharmony_ci     */
8761847f8eSopenharmony_ci    STATISTIC = 2,
8861847f8eSopenharmony_ci
8961847f8eSopenharmony_ci    /**
9061847f8eSopenharmony_ci     * Security event.
9161847f8eSopenharmony_ci     *
9261847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
9361847f8eSopenharmony_ci     * @since 9
9461847f8eSopenharmony_ci     */
9561847f8eSopenharmony_ci    /**
9661847f8eSopenharmony_ci     * Security event.
9761847f8eSopenharmony_ci     *
9861847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
9961847f8eSopenharmony_ci     * @atomicservice
10061847f8eSopenharmony_ci     * @since 11
10161847f8eSopenharmony_ci     */
10261847f8eSopenharmony_ci    SECURITY = 3,
10361847f8eSopenharmony_ci
10461847f8eSopenharmony_ci    /**
10561847f8eSopenharmony_ci     * User behavior event.
10661847f8eSopenharmony_ci     *
10761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
10861847f8eSopenharmony_ci     * @since 9
10961847f8eSopenharmony_ci     */
11061847f8eSopenharmony_ci    /**
11161847f8eSopenharmony_ci     * User behavior event.
11261847f8eSopenharmony_ci     *
11361847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
11461847f8eSopenharmony_ci     * @atomicservice
11561847f8eSopenharmony_ci     * @since 11
11661847f8eSopenharmony_ci     */
11761847f8eSopenharmony_ci    BEHAVIOR = 4
11861847f8eSopenharmony_ci  }
11961847f8eSopenharmony_ci
12061847f8eSopenharmony_ci  /**
12161847f8eSopenharmony_ci   * Preset domain.
12261847f8eSopenharmony_ci   *
12361847f8eSopenharmony_ci   * @namespace domain
12461847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
12561847f8eSopenharmony_ci   * @atomicservice
12661847f8eSopenharmony_ci   * @since 11
12761847f8eSopenharmony_ci   */
12861847f8eSopenharmony_ci  namespace domain {
12961847f8eSopenharmony_ci    /**
13061847f8eSopenharmony_ci     * the domain of operating system.
13161847f8eSopenharmony_ci     *
13261847f8eSopenharmony_ci     * @constant
13361847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
13461847f8eSopenharmony_ci     * @atomicservice
13561847f8eSopenharmony_ci     * @since 11
13661847f8eSopenharmony_ci     */
13761847f8eSopenharmony_ci    const OS: string;
13861847f8eSopenharmony_ci  }
13961847f8eSopenharmony_ci
14061847f8eSopenharmony_ci  /**
14161847f8eSopenharmony_ci   * Preset event.
14261847f8eSopenharmony_ci   *
14361847f8eSopenharmony_ci   * @namespace event
14461847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
14561847f8eSopenharmony_ci   * @since 9
14661847f8eSopenharmony_ci   */
14761847f8eSopenharmony_ci  /**
14861847f8eSopenharmony_ci   * Preset event.
14961847f8eSopenharmony_ci   *
15061847f8eSopenharmony_ci   * @namespace event
15161847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
15261847f8eSopenharmony_ci   * @atomicservice
15361847f8eSopenharmony_ci   * @since 11
15461847f8eSopenharmony_ci   */
15561847f8eSopenharmony_ci  namespace event {
15661847f8eSopenharmony_ci    /**
15761847f8eSopenharmony_ci     * User login event.
15861847f8eSopenharmony_ci     *
15961847f8eSopenharmony_ci     * @constant
16061847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
16161847f8eSopenharmony_ci     * @since 9
16261847f8eSopenharmony_ci     */
16361847f8eSopenharmony_ci    /**
16461847f8eSopenharmony_ci     * User login event.
16561847f8eSopenharmony_ci     *
16661847f8eSopenharmony_ci     * @constant
16761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
16861847f8eSopenharmony_ci     * @atomicservice
16961847f8eSopenharmony_ci     * @since 11
17061847f8eSopenharmony_ci     */
17161847f8eSopenharmony_ci    const USER_LOGIN: string;
17261847f8eSopenharmony_ci
17361847f8eSopenharmony_ci    /**
17461847f8eSopenharmony_ci     * User logout event.
17561847f8eSopenharmony_ci     *
17661847f8eSopenharmony_ci     * @constant
17761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
17861847f8eSopenharmony_ci     * @since 9
17961847f8eSopenharmony_ci     */
18061847f8eSopenharmony_ci    /**
18161847f8eSopenharmony_ci     * User logout event.
18261847f8eSopenharmony_ci     *
18361847f8eSopenharmony_ci     * @constant
18461847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
18561847f8eSopenharmony_ci     * @atomicservice
18661847f8eSopenharmony_ci     * @since 11
18761847f8eSopenharmony_ci     */
18861847f8eSopenharmony_ci    const USER_LOGOUT: string;
18961847f8eSopenharmony_ci
19061847f8eSopenharmony_ci    /**
19161847f8eSopenharmony_ci     * Distributed service event.
19261847f8eSopenharmony_ci     *
19361847f8eSopenharmony_ci     * @constant
19461847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
19561847f8eSopenharmony_ci     * @since 9
19661847f8eSopenharmony_ci     */
19761847f8eSopenharmony_ci    /**
19861847f8eSopenharmony_ci     * Distributed service event.
19961847f8eSopenharmony_ci     *
20061847f8eSopenharmony_ci     * @constant
20161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
20261847f8eSopenharmony_ci     * @atomicservice
20361847f8eSopenharmony_ci     * @since 11
20461847f8eSopenharmony_ci     */
20561847f8eSopenharmony_ci    const DISTRIBUTED_SERVICE_START: string;
20661847f8eSopenharmony_ci
20761847f8eSopenharmony_ci    /**
20861847f8eSopenharmony_ci     * crash event.
20961847f8eSopenharmony_ci     *
21061847f8eSopenharmony_ci     * @constant
21161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
21261847f8eSopenharmony_ci     * @atomicservice
21361847f8eSopenharmony_ci     * @since 11
21461847f8eSopenharmony_ci     */
21561847f8eSopenharmony_ci    const APP_CRASH: string;
21661847f8eSopenharmony_ci
21761847f8eSopenharmony_ci    /**
21861847f8eSopenharmony_ci     * freeze event.
21961847f8eSopenharmony_ci     *
22061847f8eSopenharmony_ci     * @constant
22161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
22261847f8eSopenharmony_ci     * @atomicservice
22361847f8eSopenharmony_ci     * @since 11
22461847f8eSopenharmony_ci     */
22561847f8eSopenharmony_ci    const APP_FREEZE: string;
22661847f8eSopenharmony_ci
22761847f8eSopenharmony_ci    /**
22861847f8eSopenharmony_ci     * launch event.
22961847f8eSopenharmony_ci     *
23061847f8eSopenharmony_ci     * @constant
23161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
23261847f8eSopenharmony_ci     * @atomicservice
23361847f8eSopenharmony_ci     * @since 12
23461847f8eSopenharmony_ci     */
23561847f8eSopenharmony_ci    const APP_LAUNCH: string;
23661847f8eSopenharmony_ci
23761847f8eSopenharmony_ci    /**
23861847f8eSopenharmony_ci     * scroll jank event.
23961847f8eSopenharmony_ci     *
24061847f8eSopenharmony_ci     * @constant
24161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
24261847f8eSopenharmony_ci     * @atomicservice
24361847f8eSopenharmony_ci     * @since 12
24461847f8eSopenharmony_ci     */
24561847f8eSopenharmony_ci    const SCROLL_JANK: string;
24661847f8eSopenharmony_ci
24761847f8eSopenharmony_ci    /**
24861847f8eSopenharmony_ci     * cpu usage high event.
24961847f8eSopenharmony_ci     *
25061847f8eSopenharmony_ci     * @constant
25161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
25261847f8eSopenharmony_ci     * @atomicservice
25361847f8eSopenharmony_ci     * @since 12
25461847f8eSopenharmony_ci     */
25561847f8eSopenharmony_ci    const CPU_USAGE_HIGH: string;
25661847f8eSopenharmony_ci
25761847f8eSopenharmony_ci    /**
25861847f8eSopenharmony_ci     * battery usage event.
25961847f8eSopenharmony_ci     *
26061847f8eSopenharmony_ci     * @constant
26161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
26261847f8eSopenharmony_ci     * @atomicservice
26361847f8eSopenharmony_ci     * @since 12
26461847f8eSopenharmony_ci     */
26561847f8eSopenharmony_ci    const BATTERY_USAGE: string;
26661847f8eSopenharmony_ci
26761847f8eSopenharmony_ci    /**
26861847f8eSopenharmony_ci     * resource overlimit event.
26961847f8eSopenharmony_ci     *
27061847f8eSopenharmony_ci     * @constant
27161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
27261847f8eSopenharmony_ci     * @atomicservice
27361847f8eSopenharmony_ci     * @since 12
27461847f8eSopenharmony_ci     */
27561847f8eSopenharmony_ci    const RESOURCE_OVERLIMIT: string;
27661847f8eSopenharmony_ci
27761847f8eSopenharmony_ci    /**
27861847f8eSopenharmony_ci     * address sanitizer event.
27961847f8eSopenharmony_ci     *
28061847f8eSopenharmony_ci     * @constant
28161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
28261847f8eSopenharmony_ci     * @atomicservice
28361847f8eSopenharmony_ci     * @since 12
28461847f8eSopenharmony_ci     */
28561847f8eSopenharmony_ci    const ADDRESS_SANITIZER: string;
28661847f8eSopenharmony_ci
28761847f8eSopenharmony_ci    /**
28861847f8eSopenharmony_ci     * main thread jank event.
28961847f8eSopenharmony_ci     *
29061847f8eSopenharmony_ci     * @constant
29161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
29261847f8eSopenharmony_ci     * @atomicservice
29361847f8eSopenharmony_ci     * @since 12
29461847f8eSopenharmony_ci     */
29561847f8eSopenharmony_ci    const MAIN_THREAD_JANK: string;
29661847f8eSopenharmony_ci  }
29761847f8eSopenharmony_ci
29861847f8eSopenharmony_ci  /**
29961847f8eSopenharmony_ci   * Preset param.
30061847f8eSopenharmony_ci   *
30161847f8eSopenharmony_ci   * @namespace param
30261847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
30361847f8eSopenharmony_ci   * @since 9
30461847f8eSopenharmony_ci   */
30561847f8eSopenharmony_ci  /**
30661847f8eSopenharmony_ci   * Preset param.
30761847f8eSopenharmony_ci   *
30861847f8eSopenharmony_ci   * @namespace param
30961847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
31061847f8eSopenharmony_ci   * @atomicservice
31161847f8eSopenharmony_ci   * @since 11
31261847f8eSopenharmony_ci   */
31361847f8eSopenharmony_ci  namespace param {
31461847f8eSopenharmony_ci    /**
31561847f8eSopenharmony_ci     * User id.
31661847f8eSopenharmony_ci     *
31761847f8eSopenharmony_ci     * @constant
31861847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
31961847f8eSopenharmony_ci     * @since 9
32061847f8eSopenharmony_ci     */
32161847f8eSopenharmony_ci    /**
32261847f8eSopenharmony_ci     * User id.
32361847f8eSopenharmony_ci     *
32461847f8eSopenharmony_ci     * @constant
32561847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
32661847f8eSopenharmony_ci     * @atomicservice
32761847f8eSopenharmony_ci     * @since 11
32861847f8eSopenharmony_ci     */
32961847f8eSopenharmony_ci    const USER_ID: string;
33061847f8eSopenharmony_ci
33161847f8eSopenharmony_ci    /**
33261847f8eSopenharmony_ci     * Distributed service name.
33361847f8eSopenharmony_ci     *
33461847f8eSopenharmony_ci     * @constant
33561847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
33661847f8eSopenharmony_ci     * @since 9
33761847f8eSopenharmony_ci     */
33861847f8eSopenharmony_ci    /**
33961847f8eSopenharmony_ci     * Distributed service name.
34061847f8eSopenharmony_ci     *
34161847f8eSopenharmony_ci     * @constant
34261847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
34361847f8eSopenharmony_ci     * @atomicservice
34461847f8eSopenharmony_ci     * @since 11
34561847f8eSopenharmony_ci     */
34661847f8eSopenharmony_ci    const DISTRIBUTED_SERVICE_NAME: string;
34761847f8eSopenharmony_ci
34861847f8eSopenharmony_ci    /**
34961847f8eSopenharmony_ci     * Distributed service instance id.
35061847f8eSopenharmony_ci     *
35161847f8eSopenharmony_ci     * @constant
35261847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
35361847f8eSopenharmony_ci     * @since 9
35461847f8eSopenharmony_ci     */
35561847f8eSopenharmony_ci    /**
35661847f8eSopenharmony_ci     * Distributed service instance id.
35761847f8eSopenharmony_ci     *
35861847f8eSopenharmony_ci     * @constant
35961847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
36061847f8eSopenharmony_ci     * @atomicservice
36161847f8eSopenharmony_ci     * @since 11
36261847f8eSopenharmony_ci     */
36361847f8eSopenharmony_ci    const DISTRIBUTED_SERVICE_INSTANCE_ID: string;
36461847f8eSopenharmony_ci  }
36561847f8eSopenharmony_ci
36661847f8eSopenharmony_ci  /**
36761847f8eSopenharmony_ci   * Application event logging configuration interface.
36861847f8eSopenharmony_ci   *
36961847f8eSopenharmony_ci   * @param { ConfigOption } config Application event logging configuration item object.
37061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
37161847f8eSopenharmony_ci   * @throws { BusinessError } 11103001 - Invalid max storage quota value.
37261847f8eSopenharmony_ci   * @static
37361847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
37461847f8eSopenharmony_ci   * @since 9
37561847f8eSopenharmony_ci   */
37661847f8eSopenharmony_ci  /**
37761847f8eSopenharmony_ci   * Application event logging configuration interface.
37861847f8eSopenharmony_ci   *
37961847f8eSopenharmony_ci   * @param { ConfigOption } config Application event logging configuration item object.
38061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
38161847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
38261847f8eSopenharmony_ci   * @throws { BusinessError } 11103001 - Invalid max storage quota value.
38361847f8eSopenharmony_ci   * @static
38461847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
38561847f8eSopenharmony_ci   * @atomicservice
38661847f8eSopenharmony_ci   * @since 11
38761847f8eSopenharmony_ci   */
38861847f8eSopenharmony_ci  function configure(config: ConfigOption): void;
38961847f8eSopenharmony_ci
39061847f8eSopenharmony_ci  /**
39161847f8eSopenharmony_ci   * Describe the options for the configuration.
39261847f8eSopenharmony_ci   *
39361847f8eSopenharmony_ci   * @interface ConfigOption
39461847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
39561847f8eSopenharmony_ci   * @since 9
39661847f8eSopenharmony_ci   */
39761847f8eSopenharmony_ci  /**
39861847f8eSopenharmony_ci   * Describe the options for the configuration.
39961847f8eSopenharmony_ci   *
40061847f8eSopenharmony_ci   * @interface ConfigOption
40161847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
40261847f8eSopenharmony_ci   * @atomicservice
40361847f8eSopenharmony_ci   * @since 11
40461847f8eSopenharmony_ci   */
40561847f8eSopenharmony_ci  interface ConfigOption {
40661847f8eSopenharmony_ci    /**
40761847f8eSopenharmony_ci     * Configuration item: application event logging switch.
40861847f8eSopenharmony_ci     *
40961847f8eSopenharmony_ci     * @type { ?boolean }
41061847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
41161847f8eSopenharmony_ci     * @since 9
41261847f8eSopenharmony_ci     */
41361847f8eSopenharmony_ci    /**
41461847f8eSopenharmony_ci     * Configuration item: application event logging switch.
41561847f8eSopenharmony_ci     *
41661847f8eSopenharmony_ci     * @type { ?boolean }
41761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
41861847f8eSopenharmony_ci     * @atomicservice
41961847f8eSopenharmony_ci     * @since 11
42061847f8eSopenharmony_ci     */
42161847f8eSopenharmony_ci    disable?: boolean;
42261847f8eSopenharmony_ci
42361847f8eSopenharmony_ci    /**
42461847f8eSopenharmony_ci     * Configuration item: event file directory storage quota size.
42561847f8eSopenharmony_ci     *
42661847f8eSopenharmony_ci     * @type { ?string }
42761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
42861847f8eSopenharmony_ci     * @since 9
42961847f8eSopenharmony_ci     */
43061847f8eSopenharmony_ci    /**
43161847f8eSopenharmony_ci     * Configuration item: event file directory storage quota size.
43261847f8eSopenharmony_ci     *
43361847f8eSopenharmony_ci     * @type { ?string }
43461847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
43561847f8eSopenharmony_ci     * @atomicservice
43661847f8eSopenharmony_ci     * @since 11
43761847f8eSopenharmony_ci     */
43861847f8eSopenharmony_ci    maxStorage?: string;
43961847f8eSopenharmony_ci  }
44061847f8eSopenharmony_ci
44161847f8eSopenharmony_ci  /**
44261847f8eSopenharmony_ci   * Definition of written application event information.
44361847f8eSopenharmony_ci   *
44461847f8eSopenharmony_ci   * @interface AppEventInfo
44561847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
44661847f8eSopenharmony_ci   * @since 9
44761847f8eSopenharmony_ci   */
44861847f8eSopenharmony_ci  /**
44961847f8eSopenharmony_ci   * Definition of written application event information.
45061847f8eSopenharmony_ci   *
45161847f8eSopenharmony_ci   * @interface AppEventInfo
45261847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
45361847f8eSopenharmony_ci   * @atomicservice
45461847f8eSopenharmony_ci   * @since 11
45561847f8eSopenharmony_ci   */
45661847f8eSopenharmony_ci  interface AppEventInfo {
45761847f8eSopenharmony_ci    /**
45861847f8eSopenharmony_ci     * The domain of the event.
45961847f8eSopenharmony_ci     *
46061847f8eSopenharmony_ci     * @type { string }
46161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
46261847f8eSopenharmony_ci     * @since 9
46361847f8eSopenharmony_ci     */
46461847f8eSopenharmony_ci    /**
46561847f8eSopenharmony_ci     * The domain of the event.
46661847f8eSopenharmony_ci     *
46761847f8eSopenharmony_ci     * @type { string }
46861847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
46961847f8eSopenharmony_ci     * @atomicservice
47061847f8eSopenharmony_ci     * @since 11
47161847f8eSopenharmony_ci     */
47261847f8eSopenharmony_ci    domain: string;
47361847f8eSopenharmony_ci
47461847f8eSopenharmony_ci    /**
47561847f8eSopenharmony_ci     * The name of the event.
47661847f8eSopenharmony_ci     *
47761847f8eSopenharmony_ci     * @type { string }
47861847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
47961847f8eSopenharmony_ci     * @since 9
48061847f8eSopenharmony_ci     */
48161847f8eSopenharmony_ci    /**
48261847f8eSopenharmony_ci     * The name of the event.
48361847f8eSopenharmony_ci     *
48461847f8eSopenharmony_ci     * @type { string }
48561847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
48661847f8eSopenharmony_ci     * @atomicservice
48761847f8eSopenharmony_ci     * @since 11
48861847f8eSopenharmony_ci     */
48961847f8eSopenharmony_ci    name: string;
49061847f8eSopenharmony_ci
49161847f8eSopenharmony_ci    /**
49261847f8eSopenharmony_ci     * The type of the event.
49361847f8eSopenharmony_ci     *
49461847f8eSopenharmony_ci     * @type { EventType }
49561847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
49661847f8eSopenharmony_ci     * @since 9
49761847f8eSopenharmony_ci     */
49861847f8eSopenharmony_ci    /**
49961847f8eSopenharmony_ci     * The type of the event.
50061847f8eSopenharmony_ci     *
50161847f8eSopenharmony_ci     * @type { EventType }
50261847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
50361847f8eSopenharmony_ci     * @atomicservice
50461847f8eSopenharmony_ci     * @since 11
50561847f8eSopenharmony_ci     */
50661847f8eSopenharmony_ci    eventType: EventType;
50761847f8eSopenharmony_ci
50861847f8eSopenharmony_ci    /**
50961847f8eSopenharmony_ci     * The params of the event.
51061847f8eSopenharmony_ci     *
51161847f8eSopenharmony_ci     * @type { object }
51261847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
51361847f8eSopenharmony_ci     * @since 9
51461847f8eSopenharmony_ci     */
51561847f8eSopenharmony_ci    /**
51661847f8eSopenharmony_ci     * The params of the event.
51761847f8eSopenharmony_ci     *
51861847f8eSopenharmony_ci     * @type { object }
51961847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
52061847f8eSopenharmony_ci     * @atomicservice
52161847f8eSopenharmony_ci     * @since 11
52261847f8eSopenharmony_ci     */
52361847f8eSopenharmony_ci    params: object;
52461847f8eSopenharmony_ci  }
52561847f8eSopenharmony_ci
52661847f8eSopenharmony_ci  /**
52761847f8eSopenharmony_ci   * Write application event.
52861847f8eSopenharmony_ci   *
52961847f8eSopenharmony_ci   * @param { AppEventInfo } info Application event information to be written.
53061847f8eSopenharmony_ci   * @returns { Promise<void> } Return Promise.
53161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
53261847f8eSopenharmony_ci   * @throws { BusinessError } 11100001 - Function disabled.
53361847f8eSopenharmony_ci   * @throws { BusinessError } 11101001 - Invalid event domain.
53461847f8eSopenharmony_ci   * @throws { BusinessError } 11101002 - Invalid event name.
53561847f8eSopenharmony_ci   * @throws { BusinessError } 11101003 - Invalid number of event parameters.
53661847f8eSopenharmony_ci   * @throws { BusinessError } 11101004 - Invalid string length of the event parameter.
53761847f8eSopenharmony_ci   * @throws { BusinessError } 11101005 - Invalid event parameter name.
53861847f8eSopenharmony_ci   * @throws { BusinessError } 11101006 - Invalid array length of the event parameter.
53961847f8eSopenharmony_ci   * @static
54061847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
54161847f8eSopenharmony_ci   * @since 9
54261847f8eSopenharmony_ci   */
54361847f8eSopenharmony_ci  /**
54461847f8eSopenharmony_ci   * Write application event.
54561847f8eSopenharmony_ci   *
54661847f8eSopenharmony_ci   * @param { AppEventInfo } info Application event information to be written.
54761847f8eSopenharmony_ci   * @returns { Promise<void> } Return Promise.
54861847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
54961847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
55061847f8eSopenharmony_ci   * @throws { BusinessError } 11100001 - Function disabled.
55161847f8eSopenharmony_ci   * @throws { BusinessError } 11101001 - Invalid event domain.
55261847f8eSopenharmony_ci   * @throws { BusinessError } 11101002 - Invalid event name.
55361847f8eSopenharmony_ci   * @throws { BusinessError } 11101003 - Invalid number of event parameters.
55461847f8eSopenharmony_ci   * @throws { BusinessError } 11101004 - Invalid string length of the event parameter.
55561847f8eSopenharmony_ci   * @throws { BusinessError } 11101005 - Invalid event parameter name.
55661847f8eSopenharmony_ci   * @throws { BusinessError } 11101006 - Invalid array length of the event parameter.
55761847f8eSopenharmony_ci   * @static
55861847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
55961847f8eSopenharmony_ci   * @atomicservice
56061847f8eSopenharmony_ci   * @since 11
56161847f8eSopenharmony_ci   */
56261847f8eSopenharmony_ci  function write(info: AppEventInfo): Promise<void>;
56361847f8eSopenharmony_ci
56461847f8eSopenharmony_ci  /**
56561847f8eSopenharmony_ci   * Write application event.
56661847f8eSopenharmony_ci   *
56761847f8eSopenharmony_ci   * @param { AppEventInfo } info Application event information to be written.
56861847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback Callback function.
56961847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
57061847f8eSopenharmony_ci   * @throws { BusinessError } 11100001 - Function disabled.
57161847f8eSopenharmony_ci   * @throws { BusinessError } 11101001 - Invalid event domain.
57261847f8eSopenharmony_ci   * @throws { BusinessError } 11101002 - Invalid event name.
57361847f8eSopenharmony_ci   * @throws { BusinessError } 11101003 - Invalid number of event parameters.
57461847f8eSopenharmony_ci   * @throws { BusinessError } 11101004 - Invalid string length of the event parameter.
57561847f8eSopenharmony_ci   * @throws { BusinessError } 11101005 - Invalid event parameter name.
57661847f8eSopenharmony_ci   * @throws { BusinessError } 11101006 - Invalid array length of the event parameter.
57761847f8eSopenharmony_ci   * @static
57861847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
57961847f8eSopenharmony_ci   * @since 9
58061847f8eSopenharmony_ci   */
58161847f8eSopenharmony_ci  /**
58261847f8eSopenharmony_ci   * Write application event.
58361847f8eSopenharmony_ci   *
58461847f8eSopenharmony_ci   * @param { AppEventInfo } info Application event information to be written.
58561847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback Callback function.
58661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
58761847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
58861847f8eSopenharmony_ci   * @throws { BusinessError } 11100001 - Function disabled.
58961847f8eSopenharmony_ci   * @throws { BusinessError } 11101001 - Invalid event domain.
59061847f8eSopenharmony_ci   * @throws { BusinessError } 11101002 - Invalid event name.
59161847f8eSopenharmony_ci   * @throws { BusinessError } 11101003 - Invalid number of event parameters.
59261847f8eSopenharmony_ci   * @throws { BusinessError } 11101004 - Invalid string length of the event parameter.
59361847f8eSopenharmony_ci   * @throws { BusinessError } 11101005 - Invalid event parameter name.
59461847f8eSopenharmony_ci   * @throws { BusinessError } 11101006 - Invalid array length of the event parameter.
59561847f8eSopenharmony_ci   * @static
59661847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
59761847f8eSopenharmony_ci   * @atomicservice
59861847f8eSopenharmony_ci   * @since 11
59961847f8eSopenharmony_ci   */
60061847f8eSopenharmony_ci  function write(info: AppEventInfo, callback: AsyncCallback<void>): void;
60161847f8eSopenharmony_ci
60261847f8eSopenharmony_ci  /**
60361847f8eSopenharmony_ci   * Indicates possible parameter types.
60461847f8eSopenharmony_ci   *
60561847f8eSopenharmony_ci   * @typedef {number | string | boolean | Array<string>}
60661847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
60761847f8eSopenharmony_ci   * @atomicservice
60861847f8eSopenharmony_ci   * @since 12
60961847f8eSopenharmony_ci   */
61061847f8eSopenharmony_ci  type ParamType = number | string | boolean | Array<string>;
61161847f8eSopenharmony_ci
61261847f8eSopenharmony_ci  /**
61361847f8eSopenharmony_ci   * It is used to set custom parameters for events, including both system-subscribed events and custom events.
61461847f8eSopenharmony_ci   * Existing parameter will be overwritten, and non-existing parameter will be created.
61561847f8eSopenharmony_ci   *
61661847f8eSopenharmony_ci   * @param { Record<string, ParamType> } params The parameters of the event.
61761847f8eSopenharmony_ci   * @param { string } domain The domain of the event.
61861847f8eSopenharmony_ci   * @param { string } name The name of the event.
61961847f8eSopenharmony_ci   * @returns { Promise<void> } Return Promise.
62061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
62161847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
62261847f8eSopenharmony_ci   * @throws { BusinessError } 11101007 - The number of parameter keys exceeds the limit.
62361847f8eSopenharmony_ci   * @static
62461847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
62561847f8eSopenharmony_ci   * @atomicservice
62661847f8eSopenharmony_ci   * @since 12
62761847f8eSopenharmony_ci   */
62861847f8eSopenharmony_ci  function setEventParam(params: Record<string, ParamType>, domain: string, name?: string): Promise<void>;
62961847f8eSopenharmony_ci
63061847f8eSopenharmony_ci  /**
63161847f8eSopenharmony_ci   * Definition of the read event package.
63261847f8eSopenharmony_ci   *
63361847f8eSopenharmony_ci   * @interface AppEventPackage
63461847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
63561847f8eSopenharmony_ci   * @since 9
63661847f8eSopenharmony_ci   */
63761847f8eSopenharmony_ci  /**
63861847f8eSopenharmony_ci   * Definition of the read event package.
63961847f8eSopenharmony_ci   *
64061847f8eSopenharmony_ci   * @interface AppEventPackage
64161847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
64261847f8eSopenharmony_ci   * @atomicservice
64361847f8eSopenharmony_ci   * @since 11
64461847f8eSopenharmony_ci   */
64561847f8eSopenharmony_ci  interface AppEventPackage {
64661847f8eSopenharmony_ci    /**
64761847f8eSopenharmony_ci     * The id of the package.
64861847f8eSopenharmony_ci     *
64961847f8eSopenharmony_ci     * @type { number }
65061847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
65161847f8eSopenharmony_ci     * @since 9
65261847f8eSopenharmony_ci     */
65361847f8eSopenharmony_ci    /**
65461847f8eSopenharmony_ci     * The id of the package.
65561847f8eSopenharmony_ci     *
65661847f8eSopenharmony_ci     * @type { number }
65761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
65861847f8eSopenharmony_ci     * @atomicservice
65961847f8eSopenharmony_ci     * @since 11
66061847f8eSopenharmony_ci     */
66161847f8eSopenharmony_ci    packageId: number;
66261847f8eSopenharmony_ci
66361847f8eSopenharmony_ci    /**
66461847f8eSopenharmony_ci     * The number of events contained in the package.
66561847f8eSopenharmony_ci     *
66661847f8eSopenharmony_ci     * @type { number }
66761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
66861847f8eSopenharmony_ci     * @since 9
66961847f8eSopenharmony_ci     */
67061847f8eSopenharmony_ci    /**
67161847f8eSopenharmony_ci     * The number of events contained in the package.
67261847f8eSopenharmony_ci     *
67361847f8eSopenharmony_ci     * @type { number }
67461847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
67561847f8eSopenharmony_ci     * @atomicservice
67661847f8eSopenharmony_ci     * @since 11
67761847f8eSopenharmony_ci     */
67861847f8eSopenharmony_ci    row: number;
67961847f8eSopenharmony_ci
68061847f8eSopenharmony_ci    /**
68161847f8eSopenharmony_ci     * The total size of events contained in the package.
68261847f8eSopenharmony_ci     *
68361847f8eSopenharmony_ci     * @type { number }
68461847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
68561847f8eSopenharmony_ci     * @since 9
68661847f8eSopenharmony_ci     */
68761847f8eSopenharmony_ci    /**
68861847f8eSopenharmony_ci     * The total size of events contained in the package.
68961847f8eSopenharmony_ci     *
69061847f8eSopenharmony_ci     * @type { number }
69161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
69261847f8eSopenharmony_ci     * @atomicservice
69361847f8eSopenharmony_ci     * @since 11
69461847f8eSopenharmony_ci     */
69561847f8eSopenharmony_ci    size: number;
69661847f8eSopenharmony_ci
69761847f8eSopenharmony_ci    /**
69861847f8eSopenharmony_ci     * The events data contained in the package.
69961847f8eSopenharmony_ci     *
70061847f8eSopenharmony_ci     * @type { string[] }
70161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
70261847f8eSopenharmony_ci     * @since 9
70361847f8eSopenharmony_ci     */
70461847f8eSopenharmony_ci    /**
70561847f8eSopenharmony_ci     * The events data contained in the package.
70661847f8eSopenharmony_ci     *
70761847f8eSopenharmony_ci     * @type { string[] }
70861847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
70961847f8eSopenharmony_ci     * @atomicservice
71061847f8eSopenharmony_ci     * @since 11
71161847f8eSopenharmony_ci     */
71261847f8eSopenharmony_ci    data: string[];
71361847f8eSopenharmony_ci
71461847f8eSopenharmony_ci    /**
71561847f8eSopenharmony_ci     * The event json format data contained in the package.
71661847f8eSopenharmony_ci     *
71761847f8eSopenharmony_ci     * @type { Array<AppEventInfo> }
71861847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
71961847f8eSopenharmony_ci     * @atomicservice
72061847f8eSopenharmony_ci     * @since 12
72161847f8eSopenharmony_ci     */
72261847f8eSopenharmony_ci    appEventInfos: Array<AppEventInfo>;
72361847f8eSopenharmony_ci  }
72461847f8eSopenharmony_ci
72561847f8eSopenharmony_ci  /**
72661847f8eSopenharmony_ci   * Definition of event holder object, which is used to read the event data monitored by the watcher.
72761847f8eSopenharmony_ci   *
72861847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
72961847f8eSopenharmony_ci   * @since 9
73061847f8eSopenharmony_ci   */
73161847f8eSopenharmony_ci  /**
73261847f8eSopenharmony_ci   * Definition of event holder object, which is used to read the event data monitored by the watcher.
73361847f8eSopenharmony_ci   *
73461847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
73561847f8eSopenharmony_ci   * @atomicservice
73661847f8eSopenharmony_ci   * @since 11
73761847f8eSopenharmony_ci   */
73861847f8eSopenharmony_ci  class AppEventPackageHolder {
73961847f8eSopenharmony_ci    /**
74061847f8eSopenharmony_ci     * Constructor for AppEventPackageHolder.
74161847f8eSopenharmony_ci     *
74261847f8eSopenharmony_ci     * @param { string } watcherName Name of the watcher to read.
74361847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
74461847f8eSopenharmony_ci     * @since 9
74561847f8eSopenharmony_ci     */
74661847f8eSopenharmony_ci    /**
74761847f8eSopenharmony_ci     * Constructor for AppEventPackageHolder.
74861847f8eSopenharmony_ci     *
74961847f8eSopenharmony_ci     * @param { string } watcherName Name of the watcher to read.
75061847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
75161847f8eSopenharmony_ci     * @atomicservice
75261847f8eSopenharmony_ci     * @since 11
75361847f8eSopenharmony_ci     */
75461847f8eSopenharmony_ci    constructor(watcherName: string);
75561847f8eSopenharmony_ci
75661847f8eSopenharmony_ci    /**
75761847f8eSopenharmony_ci     * Set the threshold size per read.
75861847f8eSopenharmony_ci     *
75961847f8eSopenharmony_ci     * @param { number } size Threshold size.
76061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error.
76161847f8eSopenharmony_ci     * @throws { BusinessError } 11104001 - Invalid size value.
76261847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
76361847f8eSopenharmony_ci     * @since 9
76461847f8eSopenharmony_ci     */
76561847f8eSopenharmony_ci    /**
76661847f8eSopenharmony_ci     * Set the threshold size per read.
76761847f8eSopenharmony_ci     *
76861847f8eSopenharmony_ci     * @param { number } size Threshold size.
76961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
77061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
77161847f8eSopenharmony_ci     * @throws { BusinessError } 11104001 - Invalid size value.
77261847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
77361847f8eSopenharmony_ci     * @atomicservice
77461847f8eSopenharmony_ci     * @since 11
77561847f8eSopenharmony_ci     */
77661847f8eSopenharmony_ci    setSize(size: number): void;
77761847f8eSopenharmony_ci
77861847f8eSopenharmony_ci    /**
77961847f8eSopenharmony_ci     * Set the number of rows per read.
78061847f8eSopenharmony_ci     *
78161847f8eSopenharmony_ci     * @param { number } size Row size.
78261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
78361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
78461847f8eSopenharmony_ci     * @throws { BusinessError } 11104001 - Invalid size value.
78561847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
78661847f8eSopenharmony_ci     * @atomicservice
78761847f8eSopenharmony_ci     * @since 12
78861847f8eSopenharmony_ci     */
78961847f8eSopenharmony_ci    setRow(size: number): void;
79061847f8eSopenharmony_ci
79161847f8eSopenharmony_ci    /**
79261847f8eSopenharmony_ci     * Read the event data monitored by the watcher.
79361847f8eSopenharmony_ci     *
79461847f8eSopenharmony_ci     * @returns { AppEventPackage } The read event package.
79561847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
79661847f8eSopenharmony_ci     * @since 9
79761847f8eSopenharmony_ci     */
79861847f8eSopenharmony_ci    /**
79961847f8eSopenharmony_ci     * Read the event data monitored by the watcher.
80061847f8eSopenharmony_ci     *
80161847f8eSopenharmony_ci     * @returns { AppEventPackage } The read event package.
80261847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
80361847f8eSopenharmony_ci     * @atomicservice
80461847f8eSopenharmony_ci     * @since 11
80561847f8eSopenharmony_ci     */
80661847f8eSopenharmony_ci    takeNext(): AppEventPackage;
80761847f8eSopenharmony_ci  }
80861847f8eSopenharmony_ci
80961847f8eSopenharmony_ci  /**
81061847f8eSopenharmony_ci   * Definition of the condition for triggering callback when the watcher monitors event data.
81161847f8eSopenharmony_ci   *
81261847f8eSopenharmony_ci   * @interface TriggerCondition
81361847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
81461847f8eSopenharmony_ci   * @since 9
81561847f8eSopenharmony_ci   */
81661847f8eSopenharmony_ci  /**
81761847f8eSopenharmony_ci   * Definition of the condition for triggering callback when the watcher monitors event data.
81861847f8eSopenharmony_ci   *
81961847f8eSopenharmony_ci   * @interface TriggerCondition
82061847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
82161847f8eSopenharmony_ci   * @atomicservice
82261847f8eSopenharmony_ci   * @since 11
82361847f8eSopenharmony_ci   */
82461847f8eSopenharmony_ci  interface TriggerCondition {
82561847f8eSopenharmony_ci    /**
82661847f8eSopenharmony_ci     * The number of write events that trigger callback.
82761847f8eSopenharmony_ci     *
82861847f8eSopenharmony_ci     * @type { ?number }
82961847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
83061847f8eSopenharmony_ci     * @since 9
83161847f8eSopenharmony_ci     */
83261847f8eSopenharmony_ci    /**
83361847f8eSopenharmony_ci     * The number of write events that trigger callback.
83461847f8eSopenharmony_ci     *
83561847f8eSopenharmony_ci     * @type { ?number }
83661847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
83761847f8eSopenharmony_ci     * @atomicservice
83861847f8eSopenharmony_ci     * @since 11
83961847f8eSopenharmony_ci     */
84061847f8eSopenharmony_ci    row?: number;
84161847f8eSopenharmony_ci
84261847f8eSopenharmony_ci    /**
84361847f8eSopenharmony_ci     * The size of write events that trigger callback.
84461847f8eSopenharmony_ci     *
84561847f8eSopenharmony_ci     * @type { ?number }
84661847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
84761847f8eSopenharmony_ci     * @since 9
84861847f8eSopenharmony_ci     */
84961847f8eSopenharmony_ci    /**
85061847f8eSopenharmony_ci     * The size of write events that trigger callback.
85161847f8eSopenharmony_ci     *
85261847f8eSopenharmony_ci     * @type { ?number }
85361847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
85461847f8eSopenharmony_ci     * @atomicservice
85561847f8eSopenharmony_ci     * @since 11
85661847f8eSopenharmony_ci     */
85761847f8eSopenharmony_ci    size?: number;
85861847f8eSopenharmony_ci
85961847f8eSopenharmony_ci    /**
86061847f8eSopenharmony_ci     * The interval for triggering callback.
86161847f8eSopenharmony_ci     *
86261847f8eSopenharmony_ci     * @type { ?number }
86361847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
86461847f8eSopenharmony_ci     * @since 9
86561847f8eSopenharmony_ci     */
86661847f8eSopenharmony_ci    /**
86761847f8eSopenharmony_ci     * The interval for triggering callback.
86861847f8eSopenharmony_ci     *
86961847f8eSopenharmony_ci     * @type { ?number }
87061847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
87161847f8eSopenharmony_ci     * @atomicservice
87261847f8eSopenharmony_ci     * @since 11
87361847f8eSopenharmony_ci     */
87461847f8eSopenharmony_ci    timeOut?: number;
87561847f8eSopenharmony_ci  }
87661847f8eSopenharmony_ci
87761847f8eSopenharmony_ci  /**
87861847f8eSopenharmony_ci   * Definition of event filter object, which is used to filter events monitored by the watcher.
87961847f8eSopenharmony_ci   *
88061847f8eSopenharmony_ci   * @interface AppEventFilter
88161847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
88261847f8eSopenharmony_ci   * @since 9
88361847f8eSopenharmony_ci   */
88461847f8eSopenharmony_ci  /**
88561847f8eSopenharmony_ci   * Definition of event filter object, which is used to filter events monitored by the watcher.
88661847f8eSopenharmony_ci   *
88761847f8eSopenharmony_ci   * @interface AppEventFilter
88861847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
88961847f8eSopenharmony_ci   * @atomicservice
89061847f8eSopenharmony_ci   * @since 11
89161847f8eSopenharmony_ci   */
89261847f8eSopenharmony_ci  interface AppEventFilter {
89361847f8eSopenharmony_ci    /**
89461847f8eSopenharmony_ci     * The name of the event domain to be monitored by the watcher.
89561847f8eSopenharmony_ci     *
89661847f8eSopenharmony_ci     * @type { string }
89761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
89861847f8eSopenharmony_ci     * @since 9
89961847f8eSopenharmony_ci     */
90061847f8eSopenharmony_ci    /**
90161847f8eSopenharmony_ci     * The name of the event domain to be monitored by the watcher.
90261847f8eSopenharmony_ci     *
90361847f8eSopenharmony_ci     * @type { string }
90461847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
90561847f8eSopenharmony_ci     * @atomicservice
90661847f8eSopenharmony_ci     * @since 11
90761847f8eSopenharmony_ci     */
90861847f8eSopenharmony_ci    domain: string;
90961847f8eSopenharmony_ci
91061847f8eSopenharmony_ci    /**
91161847f8eSopenharmony_ci     * The types of the events to be monitored by the watcher.
91261847f8eSopenharmony_ci     *
91361847f8eSopenharmony_ci     * @type { ?EventType[] }
91461847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
91561847f8eSopenharmony_ci     * @since 9
91661847f8eSopenharmony_ci     */
91761847f8eSopenharmony_ci    /**
91861847f8eSopenharmony_ci     * The types of the events to be monitored by the watcher.
91961847f8eSopenharmony_ci     *
92061847f8eSopenharmony_ci     * @type { ?EventType[] }
92161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
92261847f8eSopenharmony_ci     * @atomicservice
92361847f8eSopenharmony_ci     * @since 11
92461847f8eSopenharmony_ci     */
92561847f8eSopenharmony_ci    eventTypes?: EventType[];
92661847f8eSopenharmony_ci
92761847f8eSopenharmony_ci    /**
92861847f8eSopenharmony_ci     * The names of the events to be monitored by the watcher.
92961847f8eSopenharmony_ci     *
93061847f8eSopenharmony_ci     * @type { ?string[] }
93161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
93261847f8eSopenharmony_ci     * @atomicservice
93361847f8eSopenharmony_ci     * @since 11
93461847f8eSopenharmony_ci     */
93561847f8eSopenharmony_ci    names?: string[];
93661847f8eSopenharmony_ci  }
93761847f8eSopenharmony_ci
93861847f8eSopenharmony_ci  /**
93961847f8eSopenharmony_ci   * Definition of event group.
94061847f8eSopenharmony_ci   *
94161847f8eSopenharmony_ci   * @interface AppEventGroup
94261847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
94361847f8eSopenharmony_ci   * @atomicservice
94461847f8eSopenharmony_ci   * @since 11
94561847f8eSopenharmony_ci   */
94661847f8eSopenharmony_ci  interface AppEventGroup {
94761847f8eSopenharmony_ci    /**
94861847f8eSopenharmony_ci     * The name of the event.
94961847f8eSopenharmony_ci     *
95061847f8eSopenharmony_ci     * @type { string }
95161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
95261847f8eSopenharmony_ci     * @atomicservice
95361847f8eSopenharmony_ci     * @since 11
95461847f8eSopenharmony_ci     */
95561847f8eSopenharmony_ci    name: string;
95661847f8eSopenharmony_ci
95761847f8eSopenharmony_ci    /**
95861847f8eSopenharmony_ci     * The event array which is group by the name.
95961847f8eSopenharmony_ci     *
96061847f8eSopenharmony_ci     * @type { Array<AppEventInfo> }
96161847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
96261847f8eSopenharmony_ci     * @atomicservice
96361847f8eSopenharmony_ci     * @since 11
96461847f8eSopenharmony_ci     */
96561847f8eSopenharmony_ci    appEventInfos: Array<AppEventInfo>;
96661847f8eSopenharmony_ci  }
96761847f8eSopenharmony_ci
96861847f8eSopenharmony_ci  /**
96961847f8eSopenharmony_ci   * Definition of event watcher object, which is used to monitor written event data.
97061847f8eSopenharmony_ci   *
97161847f8eSopenharmony_ci   * @interface Watcher
97261847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
97361847f8eSopenharmony_ci   * @since 9
97461847f8eSopenharmony_ci   */
97561847f8eSopenharmony_ci  /**
97661847f8eSopenharmony_ci   * Definition of event watcher object, which is used to monitor written event data.
97761847f8eSopenharmony_ci   *
97861847f8eSopenharmony_ci   * @interface Watcher
97961847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
98061847f8eSopenharmony_ci   * @atomicservice
98161847f8eSopenharmony_ci   * @since 11
98261847f8eSopenharmony_ci   */
98361847f8eSopenharmony_ci  interface Watcher {
98461847f8eSopenharmony_ci    /**
98561847f8eSopenharmony_ci     * The name of watcher.
98661847f8eSopenharmony_ci     *
98761847f8eSopenharmony_ci     * @type { string }
98861847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
98961847f8eSopenharmony_ci     * @since 9
99061847f8eSopenharmony_ci     */
99161847f8eSopenharmony_ci    /**
99261847f8eSopenharmony_ci     * The name of watcher.
99361847f8eSopenharmony_ci     *
99461847f8eSopenharmony_ci     * @type { string }
99561847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
99661847f8eSopenharmony_ci     * @atomicservice
99761847f8eSopenharmony_ci     * @since 11
99861847f8eSopenharmony_ci     */
99961847f8eSopenharmony_ci    name: string;
100061847f8eSopenharmony_ci
100161847f8eSopenharmony_ci    /**
100261847f8eSopenharmony_ci     * The condition for triggering callback.
100361847f8eSopenharmony_ci     *
100461847f8eSopenharmony_ci     * @type { ?TriggerCondition }
100561847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
100661847f8eSopenharmony_ci     * @since 9
100761847f8eSopenharmony_ci     */
100861847f8eSopenharmony_ci    /**
100961847f8eSopenharmony_ci     * The condition for triggering callback.
101061847f8eSopenharmony_ci     *
101161847f8eSopenharmony_ci     * @type { ?TriggerCondition }
101261847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
101361847f8eSopenharmony_ci     * @atomicservice
101461847f8eSopenharmony_ci     * @since 11
101561847f8eSopenharmony_ci     */
101661847f8eSopenharmony_ci    triggerCondition?: TriggerCondition;
101761847f8eSopenharmony_ci
101861847f8eSopenharmony_ci    /**
101961847f8eSopenharmony_ci     * The event filters for monitoring events.
102061847f8eSopenharmony_ci     *
102161847f8eSopenharmony_ci     * @type { ?AppEventFilter[] }
102261847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
102361847f8eSopenharmony_ci     * @since 9
102461847f8eSopenharmony_ci     */
102561847f8eSopenharmony_ci    /**
102661847f8eSopenharmony_ci     * The event filters for monitoring events.
102761847f8eSopenharmony_ci     *
102861847f8eSopenharmony_ci     * @type { ?AppEventFilter[] }
102961847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
103061847f8eSopenharmony_ci     * @atomicservice
103161847f8eSopenharmony_ci     * @since 11
103261847f8eSopenharmony_ci     */
103361847f8eSopenharmony_ci    appEventFilters?: AppEventFilter[];
103461847f8eSopenharmony_ci
103561847f8eSopenharmony_ci    /**
103661847f8eSopenharmony_ci     * The callback function of watcher.
103761847f8eSopenharmony_ci     *
103861847f8eSopenharmony_ci     * @type { ?function }
103961847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
104061847f8eSopenharmony_ci     * @since 9
104161847f8eSopenharmony_ci     */
104261847f8eSopenharmony_ci    /**
104361847f8eSopenharmony_ci     * The callback function of watcher.
104461847f8eSopenharmony_ci     *
104561847f8eSopenharmony_ci     * @type { ?function }
104661847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
104761847f8eSopenharmony_ci     * @atomicservice
104861847f8eSopenharmony_ci     * @since 11
104961847f8eSopenharmony_ci     */
105061847f8eSopenharmony_ci    onTrigger?: (curRow: number, curSize: number, holder: AppEventPackageHolder) => void;
105161847f8eSopenharmony_ci
105261847f8eSopenharmony_ci    /**
105361847f8eSopenharmony_ci     * The callback function, when watcher receive the event.
105461847f8eSopenharmony_ci     *
105561847f8eSopenharmony_ci     * @type { ?function }
105661847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
105761847f8eSopenharmony_ci     * @atomicservice
105861847f8eSopenharmony_ci     * @since 11
105961847f8eSopenharmony_ci     */
106061847f8eSopenharmony_ci    onReceive?: (domain: string, appEventGroups: Array<AppEventGroup>) => void;
106161847f8eSopenharmony_ci  }
106261847f8eSopenharmony_ci
106361847f8eSopenharmony_ci  /**
106461847f8eSopenharmony_ci   * Add event watcher.
106561847f8eSopenharmony_ci   *
106661847f8eSopenharmony_ci   * @param { Watcher } watcher Watcher object for monitoring events.
106761847f8eSopenharmony_ci   * @returns { AppEventPackageHolder } Holder object, which is used to read the monitoring data of the watcher.
106861847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
106961847f8eSopenharmony_ci   * @throws { BusinessError } 11102001 - Invalid watcher name.
107061847f8eSopenharmony_ci   * @throws { BusinessError } 11102002 - Invalid filtering event domain.
107161847f8eSopenharmony_ci   * @throws { BusinessError } 11102003 - Invalid row value.
107261847f8eSopenharmony_ci   * @throws { BusinessError } 11102004 - Invalid size value.
107361847f8eSopenharmony_ci   * @throws { BusinessError } 11102005 - Invalid timeout value.
107461847f8eSopenharmony_ci   * @static
107561847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
107661847f8eSopenharmony_ci   * @since 9
107761847f8eSopenharmony_ci   */
107861847f8eSopenharmony_ci  /**
107961847f8eSopenharmony_ci   * Add event watcher.
108061847f8eSopenharmony_ci   *
108161847f8eSopenharmony_ci   * @param { Watcher } watcher Watcher object for monitoring events.
108261847f8eSopenharmony_ci   * @returns { AppEventPackageHolder } Holder object, which is used to read the monitoring data of the watcher.
108361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
108461847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
108561847f8eSopenharmony_ci   * @throws { BusinessError } 11102001 - Invalid watcher name.
108661847f8eSopenharmony_ci   * @throws { BusinessError } 11102002 - Invalid filtering event domain.
108761847f8eSopenharmony_ci   * @throws { BusinessError } 11102003 - Invalid row value.
108861847f8eSopenharmony_ci   * @throws { BusinessError } 11102004 - Invalid size value.
108961847f8eSopenharmony_ci   * @throws { BusinessError } 11102005 - Invalid timeout value.
109061847f8eSopenharmony_ci   * @static
109161847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
109261847f8eSopenharmony_ci   * @atomicservice
109361847f8eSopenharmony_ci   * @since 11
109461847f8eSopenharmony_ci   */
109561847f8eSopenharmony_ci  function addWatcher(watcher: Watcher): AppEventPackageHolder;
109661847f8eSopenharmony_ci
109761847f8eSopenharmony_ci  /**
109861847f8eSopenharmony_ci   * Remove event watcher.
109961847f8eSopenharmony_ci   *
110061847f8eSopenharmony_ci   * @param { Watcher } watcher Watcher object for monitoring events.
110161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
110261847f8eSopenharmony_ci   * @throws { BusinessError } 11102001 - Invalid watcher name.
110361847f8eSopenharmony_ci   * @static
110461847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
110561847f8eSopenharmony_ci   * @since 9
110661847f8eSopenharmony_ci   */
110761847f8eSopenharmony_ci  /**
110861847f8eSopenharmony_ci   * Remove event watcher.
110961847f8eSopenharmony_ci   *
111061847f8eSopenharmony_ci   * @param { Watcher } watcher Watcher object for monitoring events.
111161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
111261847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
111361847f8eSopenharmony_ci   * @throws { BusinessError } 11102001 - Invalid watcher name.
111461847f8eSopenharmony_ci   * @static
111561847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
111661847f8eSopenharmony_ci   * @atomicservice
111761847f8eSopenharmony_ci   * @since 11
111861847f8eSopenharmony_ci   */
111961847f8eSopenharmony_ci  function removeWatcher(watcher: Watcher): void;
112061847f8eSopenharmony_ci
112161847f8eSopenharmony_ci  /**
112261847f8eSopenharmony_ci   * Clear all local logging data of the application.
112361847f8eSopenharmony_ci   *
112461847f8eSopenharmony_ci   * @static
112561847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
112661847f8eSopenharmony_ci   * @since 9
112761847f8eSopenharmony_ci   */
112861847f8eSopenharmony_ci  /**
112961847f8eSopenharmony_ci   * Clear all local logging data of the application.
113061847f8eSopenharmony_ci   *
113161847f8eSopenharmony_ci   * @static
113261847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
113361847f8eSopenharmony_ci   * @atomicservice
113461847f8eSopenharmony_ci   * @since 11
113561847f8eSopenharmony_ci   */
113661847f8eSopenharmony_ci  function clearData(): void;
113761847f8eSopenharmony_ci
113861847f8eSopenharmony_ci  /**
113961847f8eSopenharmony_ci   * Set user ID.
114061847f8eSopenharmony_ci   *
114161847f8eSopenharmony_ci   * @param { string } name The key of the user ID.
114261847f8eSopenharmony_ci   * @param { string } value The value of the user ID.
114361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
114461847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
114561847f8eSopenharmony_ci   * @static
114661847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
114761847f8eSopenharmony_ci   * @atomicservice
114861847f8eSopenharmony_ci   * @since 11
114961847f8eSopenharmony_ci   */
115061847f8eSopenharmony_ci  function setUserId(name: string, value: string): void;
115161847f8eSopenharmony_ci
115261847f8eSopenharmony_ci  /**
115361847f8eSopenharmony_ci   * Get user ID.
115461847f8eSopenharmony_ci   *
115561847f8eSopenharmony_ci   * @param { string } name The key of the user ID.
115661847f8eSopenharmony_ci   * @returns { string } the user ID value.
115761847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
115861847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
115961847f8eSopenharmony_ci   * @static
116061847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
116161847f8eSopenharmony_ci   * @atomicservice
116261847f8eSopenharmony_ci   * @since 11
116361847f8eSopenharmony_ci   */
116461847f8eSopenharmony_ci  function getUserId(name: string): string;
116561847f8eSopenharmony_ci
116661847f8eSopenharmony_ci  /**
116761847f8eSopenharmony_ci   * Set user property.
116861847f8eSopenharmony_ci   *
116961847f8eSopenharmony_ci   * @param { string } name The key of the user property.
117061847f8eSopenharmony_ci   * @param { string } value The value of the user property.
117161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
117261847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
117361847f8eSopenharmony_ci   * @static
117461847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
117561847f8eSopenharmony_ci   * @atomicservice
117661847f8eSopenharmony_ci   * @since 11
117761847f8eSopenharmony_ci   */
117861847f8eSopenharmony_ci  function setUserProperty(name: string, value: string): void;
117961847f8eSopenharmony_ci
118061847f8eSopenharmony_ci  /**
118161847f8eSopenharmony_ci   * Get user property.
118261847f8eSopenharmony_ci   *
118361847f8eSopenharmony_ci   * @param { string } name The key of the user property.
118461847f8eSopenharmony_ci   * @returns { string } the user property value.
118561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
118661847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
118761847f8eSopenharmony_ci   * @static
118861847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
118961847f8eSopenharmony_ci   * @atomicservice
119061847f8eSopenharmony_ci   * @since 11
119161847f8eSopenharmony_ci   */
119261847f8eSopenharmony_ci  function getUserProperty(name: string): string;
119361847f8eSopenharmony_ci
119461847f8eSopenharmony_ci  /**
119561847f8eSopenharmony_ci   * Describe the event config to be reported by processor.
119661847f8eSopenharmony_ci   *
119761847f8eSopenharmony_ci   * @interface AppEventReportConfig
119861847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
119961847f8eSopenharmony_ci   * @atomicservice
120061847f8eSopenharmony_ci   * @since 11
120161847f8eSopenharmony_ci   */
120261847f8eSopenharmony_ci  interface AppEventReportConfig {
120361847f8eSopenharmony_ci    /**
120461847f8eSopenharmony_ci     * The domain of the event.
120561847f8eSopenharmony_ci     *
120661847f8eSopenharmony_ci     * @type { ?string }
120761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
120861847f8eSopenharmony_ci     * @atomicservice
120961847f8eSopenharmony_ci     * @since 11
121061847f8eSopenharmony_ci     */
121161847f8eSopenharmony_ci    domain?: string;
121261847f8eSopenharmony_ci
121361847f8eSopenharmony_ci    /**
121461847f8eSopenharmony_ci     * The name of the event.
121561847f8eSopenharmony_ci     *
121661847f8eSopenharmony_ci     * @type { ?string }
121761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
121861847f8eSopenharmony_ci     * @atomicservice
121961847f8eSopenharmony_ci     * @since 11
122061847f8eSopenharmony_ci     */
122161847f8eSopenharmony_ci    name?: string;
122261847f8eSopenharmony_ci
122361847f8eSopenharmony_ci    /**
122461847f8eSopenharmony_ci     * The realtime report event.
122561847f8eSopenharmony_ci     *
122661847f8eSopenharmony_ci     * @type { ?boolean }
122761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
122861847f8eSopenharmony_ci     * @atomicservice
122961847f8eSopenharmony_ci     * @since 11
123061847f8eSopenharmony_ci     */
123161847f8eSopenharmony_ci    isRealTime?: boolean;
123261847f8eSopenharmony_ci  }
123361847f8eSopenharmony_ci
123461847f8eSopenharmony_ci  /**
123561847f8eSopenharmony_ci   * Definition of the processor.
123661847f8eSopenharmony_ci   *
123761847f8eSopenharmony_ci   * @interface Processor
123861847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
123961847f8eSopenharmony_ci   * @atomicservice
124061847f8eSopenharmony_ci   * @since 11
124161847f8eSopenharmony_ci   */
124261847f8eSopenharmony_ci  interface Processor {
124361847f8eSopenharmony_ci    /**
124461847f8eSopenharmony_ci     * The name of the processor.
124561847f8eSopenharmony_ci     *
124661847f8eSopenharmony_ci     * @type { string }
124761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
124861847f8eSopenharmony_ci     * @atomicservice
124961847f8eSopenharmony_ci     * @since 11
125061847f8eSopenharmony_ci     */
125161847f8eSopenharmony_ci    name: string;
125261847f8eSopenharmony_ci
125361847f8eSopenharmony_ci    /**
125461847f8eSopenharmony_ci     * The processor enable the developer to debug.
125561847f8eSopenharmony_ci     *
125661847f8eSopenharmony_ci     * @type { ?boolean }
125761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
125861847f8eSopenharmony_ci     * @atomicservice
125961847f8eSopenharmony_ci     * @since 11
126061847f8eSopenharmony_ci     */
126161847f8eSopenharmony_ci    debugMode?: boolean;
126261847f8eSopenharmony_ci
126361847f8eSopenharmony_ci    /**
126461847f8eSopenharmony_ci     * The server location which used for the processor to receive the data, defined by the processor.
126561847f8eSopenharmony_ci     *
126661847f8eSopenharmony_ci     * @type { ?string }
126761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
126861847f8eSopenharmony_ci     * @atomicservice
126961847f8eSopenharmony_ci     * @since 11
127061847f8eSopenharmony_ci     */
127161847f8eSopenharmony_ci    routeInfo?: string;
127261847f8eSopenharmony_ci
127361847f8eSopenharmony_ci    /**
127461847f8eSopenharmony_ci     * The app ID is provided by the processor.
127561847f8eSopenharmony_ci     *
127661847f8eSopenharmony_ci     * @type { ?string }
127761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
127861847f8eSopenharmony_ci     * @atomicservice
127961847f8eSopenharmony_ci     * @since 11
128061847f8eSopenharmony_ci     */
128161847f8eSopenharmony_ci    appId?: string;
128261847f8eSopenharmony_ci
128361847f8eSopenharmony_ci    /**
128461847f8eSopenharmony_ci     * The processor report the event when start.
128561847f8eSopenharmony_ci     *
128661847f8eSopenharmony_ci     * @type { ?boolean }
128761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
128861847f8eSopenharmony_ci     * @atomicservice
128961847f8eSopenharmony_ci     * @since 11
129061847f8eSopenharmony_ci     */
129161847f8eSopenharmony_ci    onStartReport?: boolean;
129261847f8eSopenharmony_ci
129361847f8eSopenharmony_ci    /**
129461847f8eSopenharmony_ci     * The processor report the event when the application onBackground.
129561847f8eSopenharmony_ci     *
129661847f8eSopenharmony_ci     * @type { ?boolean }
129761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
129861847f8eSopenharmony_ci     * @atomicservice
129961847f8eSopenharmony_ci     * @since 11
130061847f8eSopenharmony_ci     */
130161847f8eSopenharmony_ci    onBackgroundReport?: boolean;
130261847f8eSopenharmony_ci
130361847f8eSopenharmony_ci    /**
130461847f8eSopenharmony_ci     * The processor report the event according to the period.
130561847f8eSopenharmony_ci     *
130661847f8eSopenharmony_ci     * @type { ?number }
130761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
130861847f8eSopenharmony_ci     * @atomicservice
130961847f8eSopenharmony_ci     * @since 11
131061847f8eSopenharmony_ci     */
131161847f8eSopenharmony_ci    periodReport?: number;
131261847f8eSopenharmony_ci
131361847f8eSopenharmony_ci    /**
131461847f8eSopenharmony_ci     * The processor report the event according to the batch size.
131561847f8eSopenharmony_ci     *
131661847f8eSopenharmony_ci     * @type { ?number }
131761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
131861847f8eSopenharmony_ci     * @atomicservice
131961847f8eSopenharmony_ci     * @since 11
132061847f8eSopenharmony_ci     */
132161847f8eSopenharmony_ci    batchReport?: number;
132261847f8eSopenharmony_ci
132361847f8eSopenharmony_ci    /**
132461847f8eSopenharmony_ci     * The user ID names which the processor can report.
132561847f8eSopenharmony_ci     *
132661847f8eSopenharmony_ci     * @type { ?string[] }
132761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
132861847f8eSopenharmony_ci     * @atomicservice
132961847f8eSopenharmony_ci     * @since 11
133061847f8eSopenharmony_ci     */
133161847f8eSopenharmony_ci    userIds?: string[];
133261847f8eSopenharmony_ci
133361847f8eSopenharmony_ci    /**
133461847f8eSopenharmony_ci     * The user property names which the processor can report.
133561847f8eSopenharmony_ci     *
133661847f8eSopenharmony_ci     * @type { ?string[] }
133761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
133861847f8eSopenharmony_ci     * @atomicservice
133961847f8eSopenharmony_ci     * @since 11
134061847f8eSopenharmony_ci     */
134161847f8eSopenharmony_ci    userProperties?: string[];
134261847f8eSopenharmony_ci
134361847f8eSopenharmony_ci    /**
134461847f8eSopenharmony_ci     * The events which the processor can report.
134561847f8eSopenharmony_ci     *
134661847f8eSopenharmony_ci     * @type { ?AppEventReportConfig[] }
134761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
134861847f8eSopenharmony_ci     * @atomicservice
134961847f8eSopenharmony_ci     * @since 11
135061847f8eSopenharmony_ci     */
135161847f8eSopenharmony_ci    eventConfigs?: AppEventReportConfig[];
135261847f8eSopenharmony_ci
135361847f8eSopenharmony_ci    /**
135461847f8eSopenharmony_ci     * The processor config id.
135561847f8eSopenharmony_ci     *
135661847f8eSopenharmony_ci     * @type { ?number }
135761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
135861847f8eSopenharmony_ci     * @atomicservice
135961847f8eSopenharmony_ci     * @since 12
136061847f8eSopenharmony_ci     */
136161847f8eSopenharmony_ci    configId?: number;
136261847f8eSopenharmony_ci
136361847f8eSopenharmony_ci    /**
136461847f8eSopenharmony_ci     * The processor set custom config data.
136561847f8eSopenharmony_ci     *
136661847f8eSopenharmony_ci     * @type { ?Record<string, string> }
136761847f8eSopenharmony_ci     * @syscap SystemCapability.HiviewDFX.HiAppEvent
136861847f8eSopenharmony_ci     * @atomicservice
136961847f8eSopenharmony_ci     * @since 12
137061847f8eSopenharmony_ci     */
137161847f8eSopenharmony_ci    customConfigs?: Record<string, string>;
137261847f8eSopenharmony_ci  }
137361847f8eSopenharmony_ci
137461847f8eSopenharmony_ci  /**
137561847f8eSopenharmony_ci   * Add the processor, who can report the event.
137661847f8eSopenharmony_ci   *
137761847f8eSopenharmony_ci   * @param { Processor } processor The instance which report the event
137861847f8eSopenharmony_ci   * @returns { number }  The processor unique ID.
137961847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
138061847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
138161847f8eSopenharmony_ci   * @static
138261847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
138361847f8eSopenharmony_ci   * @atomicservice
138461847f8eSopenharmony_ci   * @since 11
138561847f8eSopenharmony_ci   */
138661847f8eSopenharmony_ci  function addProcessor(processor: Processor): number;
138761847f8eSopenharmony_ci
138861847f8eSopenharmony_ci  /**
138961847f8eSopenharmony_ci   * Remove the processor.
139061847f8eSopenharmony_ci   *
139161847f8eSopenharmony_ci   * @param { number } id The processor unique ID.
139261847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
139361847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
139461847f8eSopenharmony_ci   * @static
139561847f8eSopenharmony_ci   * @syscap SystemCapability.HiviewDFX.HiAppEvent
139661847f8eSopenharmony_ci   * @atomicservice
139761847f8eSopenharmony_ci   * @since 11
139861847f8eSopenharmony_ci   */
139961847f8eSopenharmony_ci  function removeProcessor(id: number): void;
140061847f8eSopenharmony_ci}
140161847f8eSopenharmony_ci
140261847f8eSopenharmony_ciexport default hiAppEvent;
1403