/** * Utility method to apply ripple effect for the given event by: * 1. create a mask element, * 2. add it to the target element, * 3. and add a ripple element to the mask * * @param {MouseEvent} e - The event object that was triggered. */ export declare const triggerRipple: (e: MouseEvent) => void; /** * Takes an element and returns its offsetHeight to trigger reflow, * which can be used to reset the animation. * For more details, {@see https://www.charistheo.io/blog/2021/02/restart-a-css-animation-with-javascript/#restarting-a-css-animation} * * Note: we cannot simply invoke `element.offsetHeight` to trigger reflow * as the statement will get erased during VM optimization phase * * @param {HTMLElement} element - HTMLElement - The element to be measured. * return the offsetHeight of the given element */ export declare const reflow: (element: HTMLElement) => void; /** * Executes a callback after a transition has ended on a given element * * @param {() => void} callback - The function to execute after the transition ends * @param {HTMLElement} element - The element to listen for transitionend event on * @param {number} [timeout] - The timeout in milliseconds after which the callback will be executed even if the * transitionend event hasn't been fired. */ export declare function executeAfterTransition(callback: () => void, element: HTMLElement, timeout?: number): void;