import type { Selector } from '@veno-ui/utils';
import type { DefineComponent, VNode, RendererNode, RendererElement, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ExtractPropTypes, PropType } from 'vue';
export declare const Draggable: DefineComponent<{
    draggable: {
        type: BooleanConstructor;
        default: boolean;
    };
    containment: PropType<Selector>;
    disabled: BooleanConstructor;
    cursor: {
        type: BooleanConstructor;
        default: boolean;
    };
    position: PropType<"fixed" | "absolute">;
    modelValue: {
        type: PropType<{
            left: string | number;
            top: string | number;
        }>;
        default: () => {
            left: number;
            top: number;
        };
    };
}, () => VNode<RendererNode, RendererElement, {
    [key: string]: any;
}>[] | undefined, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
    'update:modelValue': (_value: any) => true;
}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
    draggable: {
        type: BooleanConstructor;
        default: boolean;
    };
    containment: PropType<Selector>;
    disabled: BooleanConstructor;
    cursor: {
        type: BooleanConstructor;
        default: boolean;
    };
    position: PropType<"fixed" | "absolute">;
    modelValue: {
        type: PropType<{
            left: string | number;
            top: string | number;
        }>;
        default: () => {
            left: number;
            top: number;
        };
    };
}>> & {
    "onUpdate:modelValue"?: ((_value: any) => any) | undefined;
}, {
    modelValue: {
        left: string | number;
        top: string | number;
    };
    disabled: boolean;
    draggable: boolean;
    cursor: boolean;
}>;
//# sourceMappingURL=draggable.d.ts.map