import Sortable from 'sortablejs'; declare interface OpenObject { [key: string]: any; } export declare const VueDraggableNext: import("vue").DefineComponent<{ options: ObjectConstructor; list: { type: ArrayConstructor; required: boolean; default: null; }; noTransitionOnDrag: { type: BooleanConstructor; default: boolean; }; clone: { type: FunctionConstructor; default: (original: any) => any; }; tag: { type: StringConstructor; default: string; }; move: { type: FunctionConstructor; default: null; }; componentData: { type: ObjectConstructor; required: boolean; default: null; }; component: { type: StringConstructor; default: null; }; modelValue: { type: ArrayConstructor; required: boolean; default: null; }; }, unknown, { transitionMode: boolean; noneFunctionalComponentMode: boolean; headerOffset: number; footerOffset: number; _sortable: Sortable; visibleIndexes: number[]; context: OpenObject | null; }, { realList(): OpenObject[] | OpenObject; }, { getTag(): any; updateOptions(newOptionValue: OpenObject): void; getChildrenNodes(): any; computeIndexes(): void; getUnderlyingVm(htmlElt: HTMLElement): { index: number; element: any; } | null; emitChanges(evt: OpenObject): void; alterList(onList: any): void; spliceList(): void; updatePosition(oldIndex: number, newIndex: number): void; getVmIndex(domIndex: number): number; getComponent(): any; resetTransitionData(index: number): void; onDragStart(evt: OpenObject): void; onDragAdd(evt: OpenObject): void; onDragRemove(evt: OpenObject): void; onDragUpdate(evt: any): void; updateProperty(evt: any, propertyName: any): void; onDragMove(evt: any, originalEvent: any): any; onDragEnd(): void; getRelatedContextFromMoveEvent({ to, related }: any): { list: OpenObject | OpenObject[]; component: import("vue").CreateComponentPublicInstance; component: string; modelValue: unknown[]; } & { options?: Record | undefined; }>, unknown, { transitionMode: boolean; noneFunctionalComponentMode: boolean; headerOffset: number; footerOffset: number; _sortable: Sortable; visibleIndexes: number[]; context: OpenObject | null; }, { realList(): OpenObject[] | OpenObject; }, any, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], Readonly<{ options?: unknown; list?: unknown; noTransitionOnDrag?: unknown; clone?: unknown; tag?: unknown; move?: unknown; componentData?: unknown; component?: unknown; modelValue?: unknown; } & { move: Function; list: unknown[]; noTransitionOnDrag: boolean; clone: Function; tag: string; componentData: Record; component: string; modelValue: unknown[]; } & { options?: Record | undefined; }>, { move: Function; list: unknown[]; noTransitionOnDrag: boolean; clone: Function; tag: string; componentData: Record; component: string; modelValue: unknown[]; }, false, { P: {}; B: {}; D: {}; C: {}; M: {}; Defaults: {}; }, Readonly<{ options?: unknown; list?: unknown; noTransitionOnDrag?: unknown; clone?: unknown; tag?: unknown; move?: unknown; componentData?: unknown; component?: unknown; modelValue?: unknown; } & { move: Function; list: unknown[]; noTransitionOnDrag: boolean; clone: Function; tag: string; componentData: Record; component: string; modelValue: unknown[]; } & { options?: Record | undefined; }>, {}, { transitionMode: boolean; noneFunctionalComponentMode: boolean; headerOffset: number; footerOffset: number; _sortable: Sortable; visibleIndexes: number[]; context: OpenObject | null; }, { realList(): OpenObject[] | OpenObject; }, any, { move: Function; list: unknown[]; noTransitionOnDrag: boolean; clone: Function; tag: string; componentData: Record; component: string; modelValue: unknown[]; }>; } | { component: never; }; computeFutureIndex(relatedContext: any, evt: any): any; }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{ options?: unknown; list?: unknown; noTransitionOnDrag?: unknown; clone?: unknown; tag?: unknown; move?: unknown; componentData?: unknown; component?: unknown; modelValue?: unknown; } & { move: Function; list: unknown[]; noTransitionOnDrag: boolean; clone: Function; tag: string; componentData: Record; component: string; modelValue: unknown[]; } & { options?: Record | undefined; }>, { move: Function; list: unknown[]; noTransitionOnDrag: boolean; clone: Function; tag: string; componentData: Record; component: string; modelValue: unknown[]; }>; export { }