import type { Selector } from '@veno-ui/utils';
import type { DefineComponent, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ExtractPropTypes, PropType } from 'vue';
export declare const DraggableResizable: DefineComponent<{
    tag: {
        type: StringConstructor;
        default: string;
    };
    resizable: {
        type: BooleanConstructor;
        default: boolean;
    };
    resizableAnchors: {
        type: PropType<("bottom" | "left" | "right" | "top" | "top-right" | "top-left" | "bottom-left" | "bottom-right")[]>;
        default: readonly ["top", "top-left", "left", "bottom", "bottom-left", "top-right", "right", "bottom-right"];
    };
    showResizableAnchor: BooleanConstructor;
    draggable: {
        type: BooleanConstructor;
        default: boolean;
    };
    containment: PropType<Selector>;
    disabled: BooleanConstructor;
    cursor: {
        type: BooleanConstructor;
        default: boolean;
    };
    position: PropType<"fixed" | "absolute">;
    /**
     * @zh 大小位置
     */
    modelValue: {
        type: PropType<{
            left: string | number;
            top: string | number;
            width?: string | number | undefined;
            height?: string | number | undefined;
        }>;
        default: () => {
            left: number;
            top: number;
        };
    };
    /**
     * @zh 是否在调整大小时显示提示
     */
    tooltip: {
        type: BooleanConstructor;
        default: boolean;
    };
}, () => JSX.Element, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
    'update:modelValue': (_value: any) => true;
}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
    tag: {
        type: StringConstructor;
        default: string;
    };
    resizable: {
        type: BooleanConstructor;
        default: boolean;
    };
    resizableAnchors: {
        type: PropType<("bottom" | "left" | "right" | "top" | "top-right" | "top-left" | "bottom-left" | "bottom-right")[]>;
        default: readonly ["top", "top-left", "left", "bottom", "bottom-left", "top-right", "right", "bottom-right"];
    };
    showResizableAnchor: BooleanConstructor;
    draggable: {
        type: BooleanConstructor;
        default: boolean;
    };
    containment: PropType<Selector>;
    disabled: BooleanConstructor;
    cursor: {
        type: BooleanConstructor;
        default: boolean;
    };
    position: PropType<"fixed" | "absolute">;
    /**
     * @zh 大小位置
     */
    modelValue: {
        type: PropType<{
            left: string | number;
            top: string | number;
            width?: string | number | undefined;
            height?: string | number | undefined;
        }>;
        default: () => {
            left: number;
            top: number;
        };
    };
    /**
     * @zh 是否在调整大小时显示提示
     */
    tooltip: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & {
    "onUpdate:modelValue"?: ((_value: any) => any) | undefined;
}, {
    modelValue: {
        left: string | number;
        top: string | number;
        width?: string | number | undefined;
        height?: string | number | undefined;
    };
    disabled: boolean;
    tag: string;
    draggable: boolean;
    cursor: boolean;
    resizable: boolean;
    resizableAnchors: ("bottom" | "left" | "right" | "top" | "top-right" | "top-left" | "bottom-left" | "bottom-right")[];
    showResizableAnchor: boolean;
    tooltip: boolean;
}>;
//# sourceMappingURL=draggable-resizable.d.ts.map