import { TypedEmitter } from '../util';
export type TransitionStatus = 'enter' | 'entering' | 'entered' | 'afterEntered' | 'beforeExit' | 'exit' | 'exiting' | 'exited';
export declare class TransitionState<T> {
    status: TransitionStatus;
    show: boolean;
    data: T | null | undefined;
    nextData: T | null | undefined;
    events: TypedEmitter<Record<TransitionStatus, () => unknown> & {
        exitedAfterNewData: () => unknown;
        exitedAfterClickClose: () => unknown;
        dismissed: (params: {
            dismissMode: 'automatic' | 'manual';
        }) => unknown;
    }>;
    constructor(initialValue?: boolean);
    setShow(value: boolean): void;
    setStatus(status: TransitionStatus): void;
    set(data?: T | null): void;
    setSync(data?: T | null): void;
    clickClose(onAfterClose?: () => unknown): void;
    private transitionToNewData;
}
//# sourceMappingURL=TransitionState.d.ts.map