import type { EventListenerSubscription, GlobalRouterEvent, IRoutingInfo } from '../model.js'; /** * Dispatches a did change route event. * @param $elem * @param {IRoute} detail */ export declare function dispatchRouteChangeEvent($elem: HTMLElement, detail: IRoutingInfo): void; /** * Dispatches an event on the window object. * @param name * @param detail */ export declare function dispatchGlobalRouterEvent(name: GlobalRouterEvent, detail?: IRoutingInfo): void; /** * Adds an event listener (or more) to an element and returns a function to unsubscribe. * @param $elem * @param type * @param listener * @param options */ export declare function addListener($elem: EventTarget, type: eventType[] | eventType, listener: (e: T) => void, options?: boolean | AddEventListenerOptions): EventListenerSubscription; /** * Removes the event listeners in the array. * @param listeners */ export declare function removeListeners(listeners: EventListenerSubscription[]): void;