161847f8eSopenharmony_ci/* 261847f8eSopenharmony_ci * Copyright (c) 2021-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 BasicServicesKit 1961847f8eSopenharmony_ci */ 2061847f8eSopenharmony_ci 2161847f8eSopenharmony_ciimport { Callback } from './@ohos.base'; 2261847f8eSopenharmony_ci 2361847f8eSopenharmony_ci/** 2461847f8eSopenharmony_ci * Provides methods for sending and processing in-process events. 2561847f8eSopenharmony_ci * 2661847f8eSopenharmony_ci * @namespace emitter 2761847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 2861847f8eSopenharmony_ci * @since 7 2961847f8eSopenharmony_ci */ 3061847f8eSopenharmony_ci/** 3161847f8eSopenharmony_ci * Provides methods for sending and processing in-process events. 3261847f8eSopenharmony_ci * 3361847f8eSopenharmony_ci * @namespace emitter 3461847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 3561847f8eSopenharmony_ci * @atomicservice 3661847f8eSopenharmony_ci * @since 11 3761847f8eSopenharmony_ci */ 3861847f8eSopenharmony_ci/** 3961847f8eSopenharmony_ci * Provides methods for sending and processing in-process events. 4061847f8eSopenharmony_ci * 4161847f8eSopenharmony_ci * @namespace emitter 4261847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 4361847f8eSopenharmony_ci * @crossplatform 4461847f8eSopenharmony_ci * @atomicservice 4561847f8eSopenharmony_ci * @since 12 4661847f8eSopenharmony_ci */ 4761847f8eSopenharmony_cideclare namespace emitter { 4861847f8eSopenharmony_ci /** 4961847f8eSopenharmony_ci * Subscribe to a certain event in persistent manner and receives the event callback. 5061847f8eSopenharmony_ci * 5161847f8eSopenharmony_ci * @param { InnerEvent } event - indicate event to subscribe to. 5261847f8eSopenharmony_ci * @param { Callback<EventData> } callback - indicate callback used to receive the event. 5361847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 5461847f8eSopenharmony_ci * @since 7 5561847f8eSopenharmony_ci */ 5661847f8eSopenharmony_ci /** 5761847f8eSopenharmony_ci * Subscribe to a certain event in persistent manner and receives the event callback. 5861847f8eSopenharmony_ci * 5961847f8eSopenharmony_ci * @param { InnerEvent } event - indicate event to subscribe to. 6061847f8eSopenharmony_ci * @param { Callback<EventData> } callback - indicate callback used to receive the event. 6161847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 6261847f8eSopenharmony_ci * @atomicservice 6361847f8eSopenharmony_ci * @since 11 6461847f8eSopenharmony_ci */ 6561847f8eSopenharmony_ci /** 6661847f8eSopenharmony_ci * Subscribe to a certain event in persistent manner and receives the event callback. 6761847f8eSopenharmony_ci * 6861847f8eSopenharmony_ci * @param { InnerEvent } event - indicate event to subscribe to. 6961847f8eSopenharmony_ci * @param { Callback<EventData> } callback - indicate callback used to receive the event. 7061847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 7161847f8eSopenharmony_ci * @crossplatform 7261847f8eSopenharmony_ci * @atomicservice 7361847f8eSopenharmony_ci * @since 12 7461847f8eSopenharmony_ci */ 7561847f8eSopenharmony_ci function on(event: InnerEvent, callback: Callback<EventData>): void; 7661847f8eSopenharmony_ci 7761847f8eSopenharmony_ci /** 7861847f8eSopenharmony_ci * Subscribe to a event by specific id in persistent manner and receives the event callback. 7961847f8eSopenharmony_ci * 8061847f8eSopenharmony_ci * @param { string } eventId - indicate ID of the event to subscribe to. 8161847f8eSopenharmony_ci * @param { Callback<EventData> } callback - indicate callback used to receive the event. 8261847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 8361847f8eSopenharmony_ci * @atomicservice 8461847f8eSopenharmony_ci * @since 11 8561847f8eSopenharmony_ci */ 8661847f8eSopenharmony_ci /** 8761847f8eSopenharmony_ci * Subscribe to a event by specific id in persistent manner and receives the event callback. 8861847f8eSopenharmony_ci * 8961847f8eSopenharmony_ci * @param { string } eventId - indicate ID of the event to subscribe to. 9061847f8eSopenharmony_ci * @param { Callback<EventData> } callback - indicate callback used to receive the event. 9161847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 9261847f8eSopenharmony_ci * @crossplatform 9361847f8eSopenharmony_ci * @atomicservice 9461847f8eSopenharmony_ci * @since 12 9561847f8eSopenharmony_ci */ 9661847f8eSopenharmony_ci function on(eventId: string, callback: Callback<EventData>): void; 9761847f8eSopenharmony_ci 9861847f8eSopenharmony_ci /** 9961847f8eSopenharmony_ci * Subscribe to a event by specific id in persistent manner and receives the event callback. 10061847f8eSopenharmony_ci * 10161847f8eSopenharmony_ci * @param { string } eventId - indicate ID of the event to subscribe to. 10261847f8eSopenharmony_ci * @param { Callback<GenericEventData<T>> } callback - indicate callback used to receive the event. 10361847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 10461847f8eSopenharmony_ci * @crossplatform 10561847f8eSopenharmony_ci * @atomicservice 10661847f8eSopenharmony_ci * @since 12 10761847f8eSopenharmony_ci */ 10861847f8eSopenharmony_ci function on<T>(eventId: string, callback: Callback<GenericEventData<T>>): void; 10961847f8eSopenharmony_ci 11061847f8eSopenharmony_ci /** 11161847f8eSopenharmony_ci * Subscribe to a certain event in one-shot manner and unsubscribe from it 11261847f8eSopenharmony_ci * after the event callback is received. 11361847f8eSopenharmony_ci * 11461847f8eSopenharmony_ci * @param { InnerEvent } event - indicate event to subscribe to in one shot. 11561847f8eSopenharmony_ci * @param { Callback<EventData> } callback - indicate callback used to receive the event. 11661847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 11761847f8eSopenharmony_ci * @since 7 11861847f8eSopenharmony_ci */ 11961847f8eSopenharmony_ci /** 12061847f8eSopenharmony_ci * Subscribe to a certain event in one-shot manner and unsubscribe from it 12161847f8eSopenharmony_ci * after the event callback is received. 12261847f8eSopenharmony_ci * 12361847f8eSopenharmony_ci * @param { InnerEvent } event - indicate event to subscribe to in one shot. 12461847f8eSopenharmony_ci * @param { Callback<EventData> } callback - indicate callback used to receive the event. 12561847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 12661847f8eSopenharmony_ci * @atomicservice 12761847f8eSopenharmony_ci * @since 11 12861847f8eSopenharmony_ci */ 12961847f8eSopenharmony_ci /** 13061847f8eSopenharmony_ci * Subscribe to a certain event in one-shot manner and unsubscribe from it 13161847f8eSopenharmony_ci * after the event callback is received. 13261847f8eSopenharmony_ci * 13361847f8eSopenharmony_ci * @param { InnerEvent } event - indicate event to subscribe to in one shot. 13461847f8eSopenharmony_ci * @param { Callback<EventData> } callback - indicate callback used to receive the event. 13561847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 13661847f8eSopenharmony_ci * @crossplatform 13761847f8eSopenharmony_ci * @atomicservice 13861847f8eSopenharmony_ci * @since 12 13961847f8eSopenharmony_ci */ 14061847f8eSopenharmony_ci function once(event: InnerEvent, callback: Callback<EventData>): void; 14161847f8eSopenharmony_ci 14261847f8eSopenharmony_ci /** 14361847f8eSopenharmony_ci * Subscribe to a event by specific id in one-shot manner and unsubscribe from it 14461847f8eSopenharmony_ci * after the event callback is received. 14561847f8eSopenharmony_ci * 14661847f8eSopenharmony_ci * @param { string } eventId - indicate ID of the event to subscribe to in one shot. 14761847f8eSopenharmony_ci * @param { Callback<EventData> } callback - indicate callback used to receive the event. 14861847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 14961847f8eSopenharmony_ci * @atomicservice 15061847f8eSopenharmony_ci * @since 11 15161847f8eSopenharmony_ci */ 15261847f8eSopenharmony_ci /** 15361847f8eSopenharmony_ci * Subscribe to a event by specific id in one-shot manner and unsubscribe from it 15461847f8eSopenharmony_ci * after the event callback is received. 15561847f8eSopenharmony_ci * 15661847f8eSopenharmony_ci * @param { string } eventId - indicate ID of the event to subscribe to in one shot. 15761847f8eSopenharmony_ci * @param { Callback<EventData> } callback - indicate callback used to receive the event. 15861847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 15961847f8eSopenharmony_ci * @crossplatform 16061847f8eSopenharmony_ci * @atomicservice 16161847f8eSopenharmony_ci * @since 12 16261847f8eSopenharmony_ci */ 16361847f8eSopenharmony_ci function once(eventId: string, callback: Callback<EventData>): void; 16461847f8eSopenharmony_ci 16561847f8eSopenharmony_ci /** 16661847f8eSopenharmony_ci * Subscribe to a event by specific id in one-shot manner and unsubscribe from it 16761847f8eSopenharmony_ci * after the event callback is received. 16861847f8eSopenharmony_ci * 16961847f8eSopenharmony_ci * @param { string } eventId - indicate ID of the event to subscribe to in one shot. 17061847f8eSopenharmony_ci * @param { Callback<GenericEventData<T>> } callback - indicate callback used to receive the event. 17161847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 17261847f8eSopenharmony_ci * @crossplatform 17361847f8eSopenharmony_ci * @atomicservice 17461847f8eSopenharmony_ci * @since 12 17561847f8eSopenharmony_ci */ 17661847f8eSopenharmony_ci function once<T>(eventId: string, callback: Callback<GenericEventData<T>>): void; 17761847f8eSopenharmony_ci 17861847f8eSopenharmony_ci /** 17961847f8eSopenharmony_ci * Unsubscribe from an event. 18061847f8eSopenharmony_ci * 18161847f8eSopenharmony_ci * @param { number } eventId - indicate ID of the event to unsubscribe from. 18261847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 18361847f8eSopenharmony_ci * @since 7 18461847f8eSopenharmony_ci */ 18561847f8eSopenharmony_ci /** 18661847f8eSopenharmony_ci * Unsubscribe from an event. 18761847f8eSopenharmony_ci * 18861847f8eSopenharmony_ci * @param { number } eventId - indicate ID of the event to unsubscribe from. 18961847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 19061847f8eSopenharmony_ci * @atomicservice 19161847f8eSopenharmony_ci * @since 11 19261847f8eSopenharmony_ci */ 19361847f8eSopenharmony_ci /** 19461847f8eSopenharmony_ci * Unsubscribe from an event. 19561847f8eSopenharmony_ci * 19661847f8eSopenharmony_ci * @param { number } eventId - indicate ID of the event to unsubscribe from. 19761847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 19861847f8eSopenharmony_ci * @crossplatform 19961847f8eSopenharmony_ci * @atomicservice 20061847f8eSopenharmony_ci * @since 12 20161847f8eSopenharmony_ci */ 20261847f8eSopenharmony_ci function off(eventId: number): void; 20361847f8eSopenharmony_ci 20461847f8eSopenharmony_ci /** 20561847f8eSopenharmony_ci * Unsubscribe from an event. 20661847f8eSopenharmony_ci * 20761847f8eSopenharmony_ci * @param { string } eventId - indicate ID of the event to unsubscribe from. 20861847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 20961847f8eSopenharmony_ci * @atomicservice 21061847f8eSopenharmony_ci * @since 11 21161847f8eSopenharmony_ci */ 21261847f8eSopenharmony_ci /** 21361847f8eSopenharmony_ci * Unsubscribe from an event. 21461847f8eSopenharmony_ci * 21561847f8eSopenharmony_ci * @param { string } eventId - indicate ID of the event to unsubscribe from. 21661847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 21761847f8eSopenharmony_ci * @crossplatform 21861847f8eSopenharmony_ci * @atomicservice 21961847f8eSopenharmony_ci * @since 12 22061847f8eSopenharmony_ci */ 22161847f8eSopenharmony_ci function off(eventId: string): void; 22261847f8eSopenharmony_ci 22361847f8eSopenharmony_ci /** 22461847f8eSopenharmony_ci * Unsubscribe from an event. 22561847f8eSopenharmony_ci * 22661847f8eSopenharmony_ci * @param { number } eventId - indicates ID of the event to unsubscribe from. 22761847f8eSopenharmony_ci * @param { Callback<EventData> } callback - indicates callback used to receive the event. 22861847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 22961847f8eSopenharmony_ci * @since 10 23061847f8eSopenharmony_ci */ 23161847f8eSopenharmony_ci /** 23261847f8eSopenharmony_ci * Unsubscribe from an event. 23361847f8eSopenharmony_ci * 23461847f8eSopenharmony_ci * @param { number } eventId - indicates ID of the event to unsubscribe from. 23561847f8eSopenharmony_ci * @param { Callback<EventData> } callback - indicates callback used to receive the event. 23661847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 23761847f8eSopenharmony_ci * @atomicservice 23861847f8eSopenharmony_ci * @since 11 23961847f8eSopenharmony_ci */ 24061847f8eSopenharmony_ci /** 24161847f8eSopenharmony_ci * Unsubscribe specified callback function from an event. 24261847f8eSopenharmony_ci * 24361847f8eSopenharmony_ci * @param { number } eventId - indicates ID of the event to unsubscribe from. 24461847f8eSopenharmony_ci * @param { Callback<EventData> } callback - indicates callback used to receive the event. 24561847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 24661847f8eSopenharmony_ci * @crossplatform 24761847f8eSopenharmony_ci * @atomicservice 24861847f8eSopenharmony_ci * @since 12 24961847f8eSopenharmony_ci */ 25061847f8eSopenharmony_ci function off(eventId: number, callback: Callback<EventData>): void; 25161847f8eSopenharmony_ci 25261847f8eSopenharmony_ci /** 25361847f8eSopenharmony_ci * Unsubscribe from an event. 25461847f8eSopenharmony_ci * 25561847f8eSopenharmony_ci * @param { string } eventId - indicates ID of the event to unsubscribe from. 25661847f8eSopenharmony_ci * @param { Callback<EventData> } callback - indicates callback used to receive the event. 25761847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 25861847f8eSopenharmony_ci * @atomicservice 25961847f8eSopenharmony_ci * @since 11 26061847f8eSopenharmony_ci */ 26161847f8eSopenharmony_ci /** 26261847f8eSopenharmony_ci * Unsubscribe specified callback function from an event. 26361847f8eSopenharmony_ci * 26461847f8eSopenharmony_ci * @param { string } eventId - indicates ID of the event to unsubscribe from. 26561847f8eSopenharmony_ci * @param { Callback<EventData> } callback - indicates callback used to receive the event. 26661847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 26761847f8eSopenharmony_ci * @crossplatform 26861847f8eSopenharmony_ci * @atomicservice 26961847f8eSopenharmony_ci * @since 12 27061847f8eSopenharmony_ci */ 27161847f8eSopenharmony_ci function off(eventId: string, callback: Callback<EventData>): void; 27261847f8eSopenharmony_ci 27361847f8eSopenharmony_ci /** 27461847f8eSopenharmony_ci * Unsubscribe specified callback function from an event. 27561847f8eSopenharmony_ci * 27661847f8eSopenharmony_ci * @param { string } eventId - indicates ID of the event to unsubscribe from. 27761847f8eSopenharmony_ci * @param { Callback<GenericEventData<T>> } callback - indicates callback used to receive the event. 27861847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 27961847f8eSopenharmony_ci * @crossplatform 28061847f8eSopenharmony_ci * @atomicservice 28161847f8eSopenharmony_ci * @since 12 28261847f8eSopenharmony_ci */ 28361847f8eSopenharmony_ci function off<T>(eventId: string, callback: Callback<GenericEventData<T>>): void; 28461847f8eSopenharmony_ci 28561847f8eSopenharmony_ci /** 28661847f8eSopenharmony_ci * Emits an event to the event queue. 28761847f8eSopenharmony_ci * 28861847f8eSopenharmony_ci * @param { InnerEvent } event - indicate event to emit. 28961847f8eSopenharmony_ci * @param { EventData } [data] - indicate data carried by the event. 29061847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 29161847f8eSopenharmony_ci * @since 7 29261847f8eSopenharmony_ci */ 29361847f8eSopenharmony_ci /** 29461847f8eSopenharmony_ci * Emits an event to the event queue. 29561847f8eSopenharmony_ci * 29661847f8eSopenharmony_ci * @param { InnerEvent } event - indicate event to emit. 29761847f8eSopenharmony_ci * @param { EventData } [data] - indicate data carried by the event. 29861847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 29961847f8eSopenharmony_ci * @atomicservice 30061847f8eSopenharmony_ci * @since 11 30161847f8eSopenharmony_ci */ 30261847f8eSopenharmony_ci /** 30361847f8eSopenharmony_ci * Emits an event to the event queue. 30461847f8eSopenharmony_ci * 30561847f8eSopenharmony_ci * @param { InnerEvent } event - indicate event to emit. 30661847f8eSopenharmony_ci * @param { EventData } [data] - indicate data carried by the event. 30761847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 30861847f8eSopenharmony_ci * @crossplatform 30961847f8eSopenharmony_ci * @atomicservice 31061847f8eSopenharmony_ci * @since 12 31161847f8eSopenharmony_ci */ 31261847f8eSopenharmony_ci function emit(event: InnerEvent, data?: EventData): void; 31361847f8eSopenharmony_ci 31461847f8eSopenharmony_ci /** 31561847f8eSopenharmony_ci * Emits an event by specific id to the event queue. 31661847f8eSopenharmony_ci * 31761847f8eSopenharmony_ci * @param { string } eventId - indicate ID of the event to emit. 31861847f8eSopenharmony_ci * @param { EventData } [data] - indicate data carried by the event. 31961847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 32061847f8eSopenharmony_ci * @atomicservice 32161847f8eSopenharmony_ci * @since 11 32261847f8eSopenharmony_ci */ 32361847f8eSopenharmony_ci /** 32461847f8eSopenharmony_ci * Emits an event by specific id to the event queue. 32561847f8eSopenharmony_ci * 32661847f8eSopenharmony_ci * @param { string } eventId - indicate ID of the event to emit. 32761847f8eSopenharmony_ci * @param { EventData } [data] - indicate data carried by the event. 32861847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 32961847f8eSopenharmony_ci * @crossplatform 33061847f8eSopenharmony_ci * @atomicservice 33161847f8eSopenharmony_ci * @since 12 33261847f8eSopenharmony_ci */ 33361847f8eSopenharmony_ci function emit(eventId: string, data?: EventData): void; 33461847f8eSopenharmony_ci 33561847f8eSopenharmony_ci /** 33661847f8eSopenharmony_ci * Emits an event by specific id to the event queue. 33761847f8eSopenharmony_ci * 33861847f8eSopenharmony_ci * @param { string } eventId - indicate ID of the event to emit. 33961847f8eSopenharmony_ci * @param { GenericEventData<T> } [data] - indicate data carried by the event. 34061847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 34161847f8eSopenharmony_ci * @crossplatform 34261847f8eSopenharmony_ci * @atomicservice 34361847f8eSopenharmony_ci * @since 12 34461847f8eSopenharmony_ci */ 34561847f8eSopenharmony_ci function emit<T>(eventId: string, data?: GenericEventData<T>): void; 34661847f8eSopenharmony_ci 34761847f8eSopenharmony_ci /** 34861847f8eSopenharmony_ci * Emits an event by specific id to the event queue. 34961847f8eSopenharmony_ci * 35061847f8eSopenharmony_ci * @param { string } eventId - indicate ID of the event to emit. 35161847f8eSopenharmony_ci * @param { Options } options - Indicates the {@link Options} option of the emit priority of the event. 35261847f8eSopenharmony_ci * @param { EventData } [data] - indicate data carried by the event. 35361847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 35461847f8eSopenharmony_ci * @atomicservice 35561847f8eSopenharmony_ci * @since 11 35661847f8eSopenharmony_ci */ 35761847f8eSopenharmony_ci /** 35861847f8eSopenharmony_ci * Emits an event by specific id to the event queue. 35961847f8eSopenharmony_ci * 36061847f8eSopenharmony_ci * @param { string } eventId - indicate ID of the event to emit. 36161847f8eSopenharmony_ci * @param { Options } options - Indicates the {@link Options} option of the emit priority of the event. 36261847f8eSopenharmony_ci * @param { EventData } [data] - indicate data carried by the event. 36361847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 36461847f8eSopenharmony_ci * @crossplatform 36561847f8eSopenharmony_ci * @atomicservice 36661847f8eSopenharmony_ci * @since 12 36761847f8eSopenharmony_ci */ 36861847f8eSopenharmony_ci function emit(eventId: string, options: Options, data?: EventData): void; 36961847f8eSopenharmony_ci 37061847f8eSopenharmony_ci /** 37161847f8eSopenharmony_ci * Emits an event by specific id to the event queue. 37261847f8eSopenharmony_ci * 37361847f8eSopenharmony_ci * @param { string } eventId - indicate ID of the event to emit. 37461847f8eSopenharmony_ci * @param { Options } options - Indicates the {@link Options} option of the emit priority of the event. 37561847f8eSopenharmony_ci * @param { GenericEventData<T> } [data] - indicate data carried by the event. 37661847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 37761847f8eSopenharmony_ci * @crossplatform 37861847f8eSopenharmony_ci * @atomicservice 37961847f8eSopenharmony_ci * @since 12 38061847f8eSopenharmony_ci */ 38161847f8eSopenharmony_ci function emit<T>(eventId: string, options: Options, data?: GenericEventData<T>): void; 38261847f8eSopenharmony_ci 38361847f8eSopenharmony_ci /** 38461847f8eSopenharmony_ci * Obtains the number of subscribe listener count. 38561847f8eSopenharmony_ci * 38661847f8eSopenharmony_ci * @param { number | string } eventId - indicates ID of the event to unsubscribe from. 38761847f8eSopenharmony_ci * @returns { number } Returns the number of listener count. 38861847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 38961847f8eSopenharmony_ci * @atomicservice 39061847f8eSopenharmony_ci * @since 11 39161847f8eSopenharmony_ci */ 39261847f8eSopenharmony_ci /** 39361847f8eSopenharmony_ci * Obtains the number of subscribe listener count. 39461847f8eSopenharmony_ci * 39561847f8eSopenharmony_ci * @param { number | string } eventId - indicates ID of the event to unsubscribe from. 39661847f8eSopenharmony_ci * @returns { number } Returns the number of listener count. 39761847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 39861847f8eSopenharmony_ci * @crossplatform 39961847f8eSopenharmony_ci * @atomicservice 40061847f8eSopenharmony_ci * @since 12 40161847f8eSopenharmony_ci */ 40261847f8eSopenharmony_ci function getListenerCount(eventId: number | string): number; 40361847f8eSopenharmony_ci 40461847f8eSopenharmony_ci /** 40561847f8eSopenharmony_ci * Describes data passed in the event. 40661847f8eSopenharmony_ci * 40761847f8eSopenharmony_ci * @typedef EventData 40861847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 40961847f8eSopenharmony_ci * @since 7 41061847f8eSopenharmony_ci */ 41161847f8eSopenharmony_ci /** 41261847f8eSopenharmony_ci * Describes data passed in the event. 41361847f8eSopenharmony_ci * 41461847f8eSopenharmony_ci * @typedef EventData 41561847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 41661847f8eSopenharmony_ci * @atomicservice 41761847f8eSopenharmony_ci * @since 11 41861847f8eSopenharmony_ci */ 41961847f8eSopenharmony_ci /** 42061847f8eSopenharmony_ci * Describes data passed in the event. 42161847f8eSopenharmony_ci * 42261847f8eSopenharmony_ci * @typedef EventData 42361847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 42461847f8eSopenharmony_ci * @crossplatform 42561847f8eSopenharmony_ci * @atomicservice 42661847f8eSopenharmony_ci * @since 12 42761847f8eSopenharmony_ci */ 42861847f8eSopenharmony_ci export interface EventData { 42961847f8eSopenharmony_ci /** 43061847f8eSopenharmony_ci * Data carried by the event. 43161847f8eSopenharmony_ci * 43261847f8eSopenharmony_ci * @type { ?object } 43361847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 43461847f8eSopenharmony_ci * @since 7 43561847f8eSopenharmony_ci */ 43661847f8eSopenharmony_ci /** 43761847f8eSopenharmony_ci * Data carried by the event. 43861847f8eSopenharmony_ci * 43961847f8eSopenharmony_ci * @type { ?object } 44061847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 44161847f8eSopenharmony_ci * @atomicservice 44261847f8eSopenharmony_ci * @since 11 44361847f8eSopenharmony_ci */ 44461847f8eSopenharmony_ci /** 44561847f8eSopenharmony_ci * Data carried by the event. 44661847f8eSopenharmony_ci * 44761847f8eSopenharmony_ci * @type { ?object } 44861847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 44961847f8eSopenharmony_ci * @crossplatform 45061847f8eSopenharmony_ci * @atomicservice 45161847f8eSopenharmony_ci * @since 12 45261847f8eSopenharmony_ci */ 45361847f8eSopenharmony_ci data?: { [key: string]: any }; 45461847f8eSopenharmony_ci } 45561847f8eSopenharmony_ci 45661847f8eSopenharmony_ci /** 45761847f8eSopenharmony_ci * Describes an intra-process event. 45861847f8eSopenharmony_ci * 45961847f8eSopenharmony_ci * @typedef InnerEvent 46061847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 46161847f8eSopenharmony_ci * @since 7 46261847f8eSopenharmony_ci */ 46361847f8eSopenharmony_ci /** 46461847f8eSopenharmony_ci * Describes an intra-process event. 46561847f8eSopenharmony_ci * 46661847f8eSopenharmony_ci * @typedef InnerEvent 46761847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 46861847f8eSopenharmony_ci * @atomicservice 46961847f8eSopenharmony_ci * @since 11 47061847f8eSopenharmony_ci */ 47161847f8eSopenharmony_ci /** 47261847f8eSopenharmony_ci * Describes an intra-process event. 47361847f8eSopenharmony_ci * 47461847f8eSopenharmony_ci * @typedef InnerEvent 47561847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 47661847f8eSopenharmony_ci * @crossplatform 47761847f8eSopenharmony_ci * @atomicservice 47861847f8eSopenharmony_ci * @since 12 47961847f8eSopenharmony_ci */ 48061847f8eSopenharmony_ci export interface InnerEvent { 48161847f8eSopenharmony_ci /** 48261847f8eSopenharmony_ci * Event ID, which is used to identify an event. 48361847f8eSopenharmony_ci * 48461847f8eSopenharmony_ci * @type { number } 48561847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 48661847f8eSopenharmony_ci * @since 7 48761847f8eSopenharmony_ci */ 48861847f8eSopenharmony_ci /** 48961847f8eSopenharmony_ci * Event ID, which is used to identify an event. 49061847f8eSopenharmony_ci * 49161847f8eSopenharmony_ci * @type { number } 49261847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 49361847f8eSopenharmony_ci * @atomicservice 49461847f8eSopenharmony_ci * @since 11 49561847f8eSopenharmony_ci */ 49661847f8eSopenharmony_ci /** 49761847f8eSopenharmony_ci * Event ID, which is used to identify an event. 49861847f8eSopenharmony_ci * 49961847f8eSopenharmony_ci * @type { number } 50061847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 50161847f8eSopenharmony_ci * @crossplatform 50261847f8eSopenharmony_ci * @atomicservice 50361847f8eSopenharmony_ci * @since 12 50461847f8eSopenharmony_ci */ 50561847f8eSopenharmony_ci eventId: number; 50661847f8eSopenharmony_ci 50761847f8eSopenharmony_ci /** 50861847f8eSopenharmony_ci * Emit priority of the event. The default priority is {@link EventPriority.LOW}. 50961847f8eSopenharmony_ci * 51061847f8eSopenharmony_ci * @type { ?EventPriority } 51161847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 51261847f8eSopenharmony_ci * @since 7 51361847f8eSopenharmony_ci */ 51461847f8eSopenharmony_ci /** 51561847f8eSopenharmony_ci * Emit priority of the event. The default priority is {@link EventPriority.LOW}. 51661847f8eSopenharmony_ci * 51761847f8eSopenharmony_ci * @type { ?EventPriority } 51861847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 51961847f8eSopenharmony_ci * @atomicservice 52061847f8eSopenharmony_ci * @since 11 52161847f8eSopenharmony_ci */ 52261847f8eSopenharmony_ci /** 52361847f8eSopenharmony_ci * Emit priority of the event. The default priority is {@link EventPriority.LOW}. 52461847f8eSopenharmony_ci * 52561847f8eSopenharmony_ci * @type { ?EventPriority } 52661847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 52761847f8eSopenharmony_ci * @crossplatform 52861847f8eSopenharmony_ci * @atomicservice 52961847f8eSopenharmony_ci * @since 12 53061847f8eSopenharmony_ci */ 53161847f8eSopenharmony_ci priority?: EventPriority; 53261847f8eSopenharmony_ci } 53361847f8eSopenharmony_ci 53461847f8eSopenharmony_ci /** 53561847f8eSopenharmony_ci * Indicates the emit priority of the event. 53661847f8eSopenharmony_ci * 53761847f8eSopenharmony_ci * @enum { number } 53861847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 53961847f8eSopenharmony_ci * @since 7 54061847f8eSopenharmony_ci */ 54161847f8eSopenharmony_ci /** 54261847f8eSopenharmony_ci * Indicates the emit priority of the event. 54361847f8eSopenharmony_ci * 54461847f8eSopenharmony_ci * @enum { number } 54561847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 54661847f8eSopenharmony_ci * @atomicservice 54761847f8eSopenharmony_ci * @since 11 54861847f8eSopenharmony_ci */ 54961847f8eSopenharmony_ci /** 55061847f8eSopenharmony_ci * Indicates the emit priority of the event. 55161847f8eSopenharmony_ci * 55261847f8eSopenharmony_ci * @enum { number } 55361847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 55461847f8eSopenharmony_ci * @crossplatform 55561847f8eSopenharmony_ci * @atomicservice 55661847f8eSopenharmony_ci * @since 12 55761847f8eSopenharmony_ci */ 55861847f8eSopenharmony_ci export enum EventPriority { 55961847f8eSopenharmony_ci /** 56061847f8eSopenharmony_ci * Indicates that the event will be emitted immediately. 56161847f8eSopenharmony_ci * 56261847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 56361847f8eSopenharmony_ci * @since 7 56461847f8eSopenharmony_ci */ 56561847f8eSopenharmony_ci /** 56661847f8eSopenharmony_ci * Indicates that the event will be emitted immediately. 56761847f8eSopenharmony_ci * 56861847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 56961847f8eSopenharmony_ci * @atomicservice 57061847f8eSopenharmony_ci * @since 11 57161847f8eSopenharmony_ci */ 57261847f8eSopenharmony_ci /** 57361847f8eSopenharmony_ci * Indicates that the event will be emitted immediately. 57461847f8eSopenharmony_ci * 57561847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 57661847f8eSopenharmony_ci * @crossplatform 57761847f8eSopenharmony_ci * @atomicservice 57861847f8eSopenharmony_ci * @since 12 57961847f8eSopenharmony_ci */ 58061847f8eSopenharmony_ci IMMEDIATE = 0, 58161847f8eSopenharmony_ci 58261847f8eSopenharmony_ci /** 58361847f8eSopenharmony_ci * Indicates that the event will be emitted before low-priority events. 58461847f8eSopenharmony_ci * 58561847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 58661847f8eSopenharmony_ci * @since 7 58761847f8eSopenharmony_ci */ 58861847f8eSopenharmony_ci /** 58961847f8eSopenharmony_ci * Indicates that the event will be emitted before low-priority events. 59061847f8eSopenharmony_ci * 59161847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 59261847f8eSopenharmony_ci * @atomicservice 59361847f8eSopenharmony_ci * @since 11 59461847f8eSopenharmony_ci */ 59561847f8eSopenharmony_ci /** 59661847f8eSopenharmony_ci * Indicates that the event will be emitted before low-priority events. 59761847f8eSopenharmony_ci * 59861847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 59961847f8eSopenharmony_ci * @crossplatform 60061847f8eSopenharmony_ci * @atomicservice 60161847f8eSopenharmony_ci * @since 12 60261847f8eSopenharmony_ci */ 60361847f8eSopenharmony_ci HIGH, 60461847f8eSopenharmony_ci 60561847f8eSopenharmony_ci /** 60661847f8eSopenharmony_ci * Indicates that the event will be emitted before idle-priority events. By default, an event is in LOW priority. 60761847f8eSopenharmony_ci * 60861847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 60961847f8eSopenharmony_ci * @since 7 61061847f8eSopenharmony_ci */ 61161847f8eSopenharmony_ci /** 61261847f8eSopenharmony_ci * Indicates that the event will be emitted before idle-priority events. By default, an event is in LOW priority. 61361847f8eSopenharmony_ci * 61461847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 61561847f8eSopenharmony_ci * @atomicservice 61661847f8eSopenharmony_ci * @since 11 61761847f8eSopenharmony_ci */ 61861847f8eSopenharmony_ci /** 61961847f8eSopenharmony_ci * Indicates that the event will be emitted before idle-priority events. By default, an event is in LOW priority. 62061847f8eSopenharmony_ci * 62161847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 62261847f8eSopenharmony_ci * @crossplatform 62361847f8eSopenharmony_ci * @atomicservice 62461847f8eSopenharmony_ci * @since 12 62561847f8eSopenharmony_ci */ 62661847f8eSopenharmony_ci LOW, 62761847f8eSopenharmony_ci 62861847f8eSopenharmony_ci /** 62961847f8eSopenharmony_ci * Indicates that the event will be emitted after all the other events. 63061847f8eSopenharmony_ci * 63161847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 63261847f8eSopenharmony_ci * @since 7 63361847f8eSopenharmony_ci */ 63461847f8eSopenharmony_ci /** 63561847f8eSopenharmony_ci * Indicates that the event will be emitted after all the other events. 63661847f8eSopenharmony_ci * 63761847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 63861847f8eSopenharmony_ci * @atomicservice 63961847f8eSopenharmony_ci * @since 11 64061847f8eSopenharmony_ci */ 64161847f8eSopenharmony_ci /** 64261847f8eSopenharmony_ci * Indicates that the event will be emitted after all the other events. 64361847f8eSopenharmony_ci * 64461847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 64561847f8eSopenharmony_ci * @crossplatform 64661847f8eSopenharmony_ci * @atomicservice 64761847f8eSopenharmony_ci * @since 12 64861847f8eSopenharmony_ci */ 64961847f8eSopenharmony_ci IDLE, 65061847f8eSopenharmony_ci } 65161847f8eSopenharmony_ci 65261847f8eSopenharmony_ci /** 65361847f8eSopenharmony_ci * Describe the optional arguments of emit operation. 65461847f8eSopenharmony_ci * 65561847f8eSopenharmony_ci * @typedef Options 65661847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 65761847f8eSopenharmony_ci * @since 11 65861847f8eSopenharmony_ci */ 65961847f8eSopenharmony_ci /** 66061847f8eSopenharmony_ci * Describe the optional arguments of emit operation. 66161847f8eSopenharmony_ci * 66261847f8eSopenharmony_ci * @typedef Options 66361847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 66461847f8eSopenharmony_ci * @crossplatform 66561847f8eSopenharmony_ci * @atomicservice 66661847f8eSopenharmony_ci * @since 12 66761847f8eSopenharmony_ci */ 66861847f8eSopenharmony_ci export interface Options { 66961847f8eSopenharmony_ci /** 67061847f8eSopenharmony_ci * Emit priority of the event. The default priority is {@link EventPriority.LOW}. 67161847f8eSopenharmony_ci * 67261847f8eSopenharmony_ci * @type { ?EventPriority } 67361847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 67461847f8eSopenharmony_ci * @atomicservice 67561847f8eSopenharmony_ci * @since 11 67661847f8eSopenharmony_ci */ 67761847f8eSopenharmony_ci /** 67861847f8eSopenharmony_ci * Emit priority of the event. The default priority is {@link EventPriority.LOW}. 67961847f8eSopenharmony_ci * 68061847f8eSopenharmony_ci * @type { ?EventPriority } 68161847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 68261847f8eSopenharmony_ci * @crossplatform 68361847f8eSopenharmony_ci * @atomicservice 68461847f8eSopenharmony_ci * @since 12 68561847f8eSopenharmony_ci */ 68661847f8eSopenharmony_ci priority?: EventPriority; 68761847f8eSopenharmony_ci } 68861847f8eSopenharmony_ci 68961847f8eSopenharmony_ci /** 69061847f8eSopenharmony_ci * Describes data passed in the event. 69161847f8eSopenharmony_ci * 69261847f8eSopenharmony_ci * @typedef GenericEventData<T> 69361847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 69461847f8eSopenharmony_ci * @crossplatform 69561847f8eSopenharmony_ci * @atomicservice 69661847f8eSopenharmony_ci * @since 12 69761847f8eSopenharmony_ci */ 69861847f8eSopenharmony_ci export interface GenericEventData<T> { 69961847f8eSopenharmony_ci /** 70061847f8eSopenharmony_ci * Data carried by the event. 70161847f8eSopenharmony_ci * 70261847f8eSopenharmony_ci * @type { ?T } 70361847f8eSopenharmony_ci * @syscap SystemCapability.Notification.Emitter 70461847f8eSopenharmony_ci * @crossplatform 70561847f8eSopenharmony_ci * @atomicservice 70661847f8eSopenharmony_ci * @since 12 70761847f8eSopenharmony_ci */ 70861847f8eSopenharmony_ci data?: T; 70961847f8eSopenharmony_ci } 71061847f8eSopenharmony_ci} 71161847f8eSopenharmony_ci 71261847f8eSopenharmony_ciexport default emitter; 713