import { RootEmits, RootProps } from './floating-panel.types';
import { RenderStrategyProps } from '../../utils/use-render-strategy';
import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
import { OpenChangeDetails, PositionChangeDetails, Point, SizeChangeDetails, Size, StageChangeDetails } from '@zag-js/floating-panel';
export interface FloatingPanelRootBaseProps extends RootProps, RenderStrategyProps {
}
export interface FloatingPanelRootEmits extends RootEmits {
}
export interface FloatingPanelRootProps extends FloatingPanelRootBaseProps {
}
declare const _default: __VLS_WithTemplateSlots< DefineComponent<FloatingPanelRootProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
    exitComplete: () => any;
    openChange: (details: OpenChangeDetails) => any;
    "update:open": (open: boolean) => any;
    positionChange: (details: PositionChangeDetails) => any;
    "update:position": (details: Point) => any;
    positionChangeEnd: (details: PositionChangeDetails) => any;
    sizeChange: (details: SizeChangeDetails) => any;
    "update:size": (details: Size) => any;
    sizeChangeEnd: (details: SizeChangeDetails) => any;
    stageChange: (details: StageChangeDetails) => any;
}, string, PublicProps, Readonly<FloatingPanelRootProps> & Readonly<{
    onExitComplete?: (() => any) | undefined;
    onOpenChange?: ((details: OpenChangeDetails) => any) | undefined;
    "onUpdate:open"?: ((open: boolean) => any) | undefined;
    onPositionChange?: ((details: PositionChangeDetails) => any) | undefined;
    "onUpdate:position"?: ((details: Point) => any) | undefined;
    onPositionChangeEnd?: ((details: PositionChangeDetails) => any) | undefined;
    onSizeChange?: ((details: SizeChangeDetails) => any) | undefined;
    "onUpdate:size"?: ((details: Size) => any) | undefined;
    onSizeChangeEnd?: ((details: SizeChangeDetails) => any) | undefined;
    onStageChange?: ((details: StageChangeDetails) => any) | undefined;
}>, {
    draggable: boolean;
    disabled: boolean;
    open: boolean;
    defaultOpen: boolean;
    restoreFocus: boolean;
    closeOnEscape: boolean;
    allowOverflow: boolean;
    resizable: boolean;
    lockAspectRatio: boolean;
    persistRect: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>, {
    default?(_: {}): any;
}>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
