import { type PropType, type Ref } from 'vue';
import { type FloatingWindowPosition, type FloatingWindowPositionConfig, type SetFloatingWindowPosition } from '@mantine-vue/hooks';
export type FloatingWindowStylesNames = 'root';
export declare const FloatingWindow: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    enabled: {
        type: BooleanConstructor;
        default: undefined;
    };
    constrainToViewport: {
        type: BooleanConstructor;
        default: undefined;
    };
    constrainOffset: {
        type: NumberConstructor;
        default: undefined;
    };
    dragHandleSelector: {
        type: StringConstructor;
        default: undefined;
    };
    excludeDragHandleSelector: {
        type: StringConstructor;
        default: undefined;
    };
    axis: {
        type: PropType<"x" | "y">;
        default: undefined;
    };
    initialPosition: {
        type: PropType<FloatingWindowPositionConfig>;
        default: undefined;
    };
    onPositionChange: {
        type: PropType<(position: FloatingWindowPosition) => void>;
        default: undefined;
    };
    onDragStart: {
        type: PropType<() => void>;
        default: undefined;
    };
    onDragEnd: {
        type: PropType<() => void>;
        default: undefined;
    };
    setPositionRef: {
        type: PropType<Ref<SetFloatingWindowPosition | null>>;
        default: undefined;
    };
    withinPortal: {
        type: BooleanConstructor;
        default: undefined;
    };
    portalProps: {
        type: PropType<Record<string, any>>;
        default: undefined;
    };
    zIndex: {
        type: PropType<string | number>;
        default: undefined;
    };
    shadow: {
        type: StringConstructor;
        default: undefined;
    };
    radius: {
        type: PropType<string | number>;
        default: undefined;
    };
    withBorder: {
        type: BooleanConstructor;
        default: boolean;
    };
    mod: {
        type: PropType<any>;
        default: undefined;
    };
    classNames: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
    styles: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
    vars: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
    unstyled: {
        type: BooleanConstructor;
        default: boolean;
    };
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
    [key: string]: any;
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    enabled: {
        type: BooleanConstructor;
        default: undefined;
    };
    constrainToViewport: {
        type: BooleanConstructor;
        default: undefined;
    };
    constrainOffset: {
        type: NumberConstructor;
        default: undefined;
    };
    dragHandleSelector: {
        type: StringConstructor;
        default: undefined;
    };
    excludeDragHandleSelector: {
        type: StringConstructor;
        default: undefined;
    };
    axis: {
        type: PropType<"x" | "y">;
        default: undefined;
    };
    initialPosition: {
        type: PropType<FloatingWindowPositionConfig>;
        default: undefined;
    };
    onPositionChange: {
        type: PropType<(position: FloatingWindowPosition) => void>;
        default: undefined;
    };
    onDragStart: {
        type: PropType<() => void>;
        default: undefined;
    };
    onDragEnd: {
        type: PropType<() => void>;
        default: undefined;
    };
    setPositionRef: {
        type: PropType<Ref<SetFloatingWindowPosition | null>>;
        default: undefined;
    };
    withinPortal: {
        type: BooleanConstructor;
        default: undefined;
    };
    portalProps: {
        type: PropType<Record<string, any>>;
        default: undefined;
    };
    zIndex: {
        type: PropType<string | number>;
        default: undefined;
    };
    shadow: {
        type: StringConstructor;
        default: undefined;
    };
    radius: {
        type: PropType<string | number>;
        default: undefined;
    };
    withBorder: {
        type: BooleanConstructor;
        default: boolean;
    };
    mod: {
        type: PropType<any>;
        default: undefined;
    };
    classNames: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
    styles: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
    vars: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
    unstyled: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & Readonly<{}>, {
    radius: string | number;
    shadow: string;
    classNames: Function | Record<string, any>;
    styles: Function | Record<string, any>;
    axis: "x" | "y";
    mod: any;
    enabled: boolean;
    zIndex: string | number;
    vars: Function | Record<string, any>;
    unstyled: boolean;
    withinPortal: boolean;
    withBorder: boolean;
    portalProps: Record<string, any>;
    constrainToViewport: boolean;
    constrainOffset: number;
    dragHandleSelector: string;
    excludeDragHandleSelector: string;
    initialPosition: FloatingWindowPositionConfig;
    onPositionChange: (position: FloatingWindowPosition) => void;
    onDragStart: () => void;
    onDragEnd: () => void;
    setPositionRef: Ref<SetFloatingWindowPosition | null, SetFloatingWindowPosition | null>;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
