/**
 * Quality of life for transition handling.
 * Adds / removes transitionend events. Resolves on complete

 * @param el element
 * @returns a promise that resolves when the transition is done
 */
export declare const transitionDone: (el: HTMLElement) => Promise<void>;
/**
 * handles hiding and showing elements properly (with display),
 * along with transitions, so they are no longer viewable in the dom.
 * - OnHide remove show class, listen for transition end, then display: none on finish
 * - OnShow, display block on start then add a show class
 *
 * @param el
 * @param options
 * @returns a promise of resolving as either 'show' or 'hidden'
 */
export declare const displayTransition: (el: HTMLElement, options?: {
    className?: string;
    show?: boolean;
    showDisplay?: string;
    showProp?: "classList" | "part";
    transitionProp?: string[];
    timeout?: number;
}) => Promise<"shown" | "hidden">;
