import { default as CaptureElement } from './capture-element';
import { ViewTransition, Callback } from './polyfill-utils';
import { ViewTransitionElement } from './elements/view-transition-element';
declare global {
    interface CSSStyleDeclaration {
        viewTransitionName: string;
    }
}
type NamedElementsMap = Map<string, CaptureElement>;
type viewTransitionElementsMap = Map<string, HTMLElement>;
type ViewTransitionPhase = 'pending-capture' | 'update-callback-called' | 'animating' | 'done';
export default class ViewTransitionManager {
    static isViewTransitionActive(): boolean;
    static UAStylesheetText: string;
    phase: ViewTransitionPhase;
    transitionPromises: ViewTransition;
    viewTransitionElement: ViewTransitionElement;
    parsedStyleElement: HTMLStyleElement;
    namedElements: NamedElementsMap;
    oldElements: viewTransitionElementsMap;
    newElements: viewTransitionElementsMap;
    callback: Callback | undefined;
    animationPromises: Promise<Animation>[];
    activeElement: HTMLElement | undefined;
    constructor();
    startViewTransition(viewTransitionObject: ViewTransition, callback?: Callback): Promise<void>;
    skipTransition(reason?: unknown): void;
    captureElements(stage: 'old' | 'new'): void;
    addUAStylesheet(): void;
    getNamedTransitionElements(): Map<any, any>;
    initialSetupGroups(): void;
    setupGroups(): void;
    updateAnimations(newAnimation: Animation): void;
    animationsFinished(): void;
}
export {};
