import { EmitterSubscription, NativeModule } from 'react-native';
export default class EventManager {
    private RNOneSignal;
    private oneSignalEventEmitter;
    private eventListenerArrayMap;
    private listeners;
    constructor(RNOneSignal: NativeModule);
    setupListeners(): void;
    /**
     * Adds the event handler to the corresponding handler array on the JS side of the bridge
     * @param  {string} eventName
     * @param  {function} handler
     * @returns void
     */
    addEventListener<T>(eventName: string, handler: (event: T) => void): void;
    /**
     * clears the event handler(s) for the event name
     * @param  {string} eventName
     * @param  {function} handler
     * @returns void
     */
    removeEventListener(eventName: string, handler: any): void;
    generateEventListener(eventName: string): EmitterSubscription;
}
