import type { AgEvent } from './agEvent'; export type IEventListener = (params: AgEvent) => void; export type IGlobalEventListener = (eventType: TEventType, event: AgEvent) => void; export interface IEventEmitter { addEventListener(eventType: TEventType, listener: IEventListener, async?: boolean, options?: AddEventListenerOptions): void; removeEventListener(eventType: TEventType, listener: IEventListener, async?: boolean, options?: AddEventListenerOptions): void; } /** Internal version of IEventEmitter so that we can avoid the public api methods on RowNode and Column that need * to handle the Angular Zone wrapping of event handlers. */ export interface IAgEventEmitter { __addEventListener(eventType: TEventType, listener: IEventListener, async?: boolean, options?: AddEventListenerOptions): void; __removeEventListener(eventType: TEventType, listener: IEventListener, async?: boolean, options?: AddEventListenerOptions): void; }