/**
 * Slide transition animations for PPTX spread-mode navigation.
 *
 * IMPORTANT: Effects must NEVER set `transform` on the incoming element.
 * The incoming element is the real spread — transforms on it would change
 * its layout position, causing scrollbar flicker, resize-observer loops,
 * and page-jump bugs. Only use `opacity` and `clip-path` on incoming.
 * The outgoing element is a disposable snapshot overlay, so `transform`
 * and `opacity` are safe on it.
 */
import type { PageTransition } from "../../worker/index.js";
export interface TransitionHandle {
    /** Cancel the in-flight transition, jumping to the final state. */
    cancel(): void;
}
/**
 * Run a slide transition animation between two spread elements.
 *
 * @param outgoing   The snapshot overlay (will be removed on complete)
 * @param incoming   The real spread element (already mounted and positioned)
 * @param transition Transition descriptor from PageInfo
 * @param forward    Navigation direction (true = forward, false = backward)
 * @param onComplete Called when the transition finishes (or is cancelled)
 */
export declare function runTransition(outgoing: HTMLElement, incoming: HTMLElement, transition: PageTransition, forward: boolean, onComplete: () => void): TransitionHandle;
//# sourceMappingURL=transition.d.ts.map