import { Subscription } from "aurelia-event-aggregator"; /** * Manages focus on an element. * This is needed due to fixes focus bug - https://marcysutton.com/button-focus-hell/ * */ export declare class ElementFocusedController { private element; private isMouseDown; private focusedClass; private eventAggregator; constructor(prefix: string, element: Element); init(): void; destroy(): void; /** * Subscribe on focus callback. * * @param callback function to invoke when focused. * @returns {Subscription} subscription to be able to dispose the listener. */ onFocus(callback: (e: FocusEvent) => void): Subscription; /** * Subscribe on blur callback. * * @param callback function to invoke when blur. * @returns {Subscription} subscription to be able to dispose the listener. */ onBlur(callback: (e: FocusEvent) => void): Subscription; private onMouseDown(); private onFocused(e); private onBlurred(e); }