import { ListProps } from '../a-draggable-main/type';
import { CSSProperties, Ref } from "vue";
export interface RefOptions {
    width: Ref;
    height: Ref;
    top: Ref;
    left: Ref;
    topStyle: CSSProperties;
    leftStyle: CSSProperties;
    bottomStyle: CSSProperties;
    rightStyle: CSSProperties;
}
export interface CallbackProps {
    mousemoveFn: (Event: any, dom?: any) => void;
    mouseupFn: (Event: any, dom?: any) => void;
    mousedownFn: (Event: any, dom?: any) => void;
}
export interface ActionProps extends Partial<CallbackProps> {
    initX: number;
    initY: number;
    state: string;
    type: string;
}
export declare const mouseAddListener: (dom: any, callbackObj: Partial<CallbackProps>) => void;
export type CallbackListProps = CallbackProps[];
export declare const mouseRemoveListener: (dom: any) => void;
export declare const moveDefalutElement: (e: any, actions: ActionProps, options: Partial<RefOptions>) => void;
export declare const initActions: (actions: ActionProps) => void;
export declare const moveDraggableElement: (type: string, list: ListProps, topList: ListProps, draggableIndex: Ref, draggableType: Ref) => void;
