/**
 * The class representing one event manager
 */
export declare class AcCmEventManager<T = unknown> {
    private listeners;
    /**
     * Add the event listener
     * @param listener Input listener to be added
     */
    addEventListener(listener: (payload: T) => void): void;
    /**
     * Remove the listener
     * @param listener Input listener to be removed
     */
    removeEventListener(listener: (payload: T) => void): void;
    /**
     * Remove all listeners bound to the target and add one new listener
     * @param listener Input listener to be added
     */
    replaceEventListener(listener: (payload: T) => void): void;
    /**
     * Notify all listeners
     * @param payload Input payload passed to listener
     */
    dispatch(payload?: T, ...args: unknown[]): void;
}
//# sourceMappingURL=AcCmEventManager.d.ts.map