/**
 * Drives the open/close lifecycle of a slide-out panel inside a component's
 * shadow root, with a tracked close timer instead of an `animationend`
 * listener so the panel cannot wedge open if it's unmounted mid-animation
 * (pop-in/pop-out, dock change, host disconnect).
 *
 * @internal
 */
export declare class AnimatedPanelToggle {
    private readonly host;
    private readonly selector;
    private readonly closeDurationMs;
    private readonly getOpen;
    private readonly setOpen;
    private timer?;
    constructor(host: HTMLElement, selector: string, closeDurationMs: number, getOpen: () => boolean, setOpen: (v: boolean) => void);
    private queryPanel;
    toggle(): void;
    /**
     * Synchronously finalise an in-flight close — call from
     * `disconnectedCallback` so the closed state lands in the store before any
     * session ref is cleared.
     */
    finalize(): void;
}
//# sourceMappingURL=animated-panel-toggle.d.ts.map