import type { CSSTransitionClassNames, CSSTransitionClassNamesObject, TransitionActions, TransitionTimeout, TransitionTimeoutObject } from "./types.js";
/**
 * @since 4.0.0
 * @internal
 */
export interface TransitionTimeoutOptions extends Required<TransitionActions> {
    timeout: TransitionTimeout;
}
/**
 * @since 4.0.0
 * @internal
 */
export declare function getTransitionTimeout(options: Readonly<TransitionTimeoutOptions>): Readonly<Required<TransitionTimeoutObject>>;
/**
 * @since 4.0.0
 * @internal
 */
export interface CollapseSizing {
    maxHeight?: number;
    paddingTop?: number;
    paddingBottom?: number;
}
/**
 * A small util that will find the max-height, padding-top, and padding-bottom
 * for the provided element. This is really used to be able to transition the
 * max-height value since `max-height: auto` does not transition. The only way
 * to get transition is to change max-height values manually.
 *
 * @since 4.0.0
 * @internal
 */
export declare function getElementSizing(element: HTMLElement | null): CollapseSizing;
/**
 * @since 4.0.0
 * @internal
 */
export interface TransitionClassNamesOptions extends TransitionTimeoutOptions {
    classNames: CSSTransitionClassNames;
}
/**
 * @since 4.0.0
 * @internal
 */
export declare function getTransitionClassNames(options: TransitionClassNamesOptions): Readonly<Required<CSSTransitionClassNamesObject>>;
