/*!
 * devextreme-angular
 * Version: 25.1.4
 * Build date: Tue Aug 05 2025
 *
 * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
 *
 * This software may be modified and distributed under the terms
 * of the MIT license. See the LICENSE file in the root of the project for details.
 *
 * https://github.com/DevExpress/devextreme-angular
 */
import { OnInit, OnDestroy } from '@angular/core';
import dxSortable from 'devextreme/ui/sortable';
import dxDraggable from 'devextreme/ui/draggable';
import { DragDirection, DragHighlight } from 'devextreme/common';
import { GridBase } from 'devextreme/common/grids';
import { event } from 'devextreme/events/events.types';
import { NestedOptionHost } from 'devextreme-angular/core';
import { NestedOption } from 'devextreme-angular/core';
import * as i0 from "@angular/core";
export declare class DxoTreeListRowDraggingComponent extends NestedOption implements OnDestroy, OnInit {
    get allowDropInsideItem(): boolean;
    set allowDropInsideItem(value: boolean);
    get allowReordering(): boolean;
    set allowReordering(value: boolean);
    get autoScroll(): boolean;
    set autoScroll(value: boolean);
    get boundary(): any | string | undefined;
    set boundary(value: any | string | undefined);
    get container(): any | string | undefined;
    set container(value: any | string | undefined);
    get cursorOffset(): string | {
        x?: number;
        y?: number;
    };
    set cursorOffset(value: string | {
        x?: number;
        y?: number;
    });
    get data(): any | undefined;
    set data(value: any | undefined);
    get dragDirection(): DragDirection;
    set dragDirection(value: DragDirection);
    get dragTemplate(): any;
    set dragTemplate(value: any);
    get dropFeedbackMode(): DragHighlight;
    set dropFeedbackMode(value: DragHighlight);
    get filter(): string;
    set filter(value: string);
    get group(): string | undefined;
    set group(value: string | undefined);
    get handle(): string;
    set handle(value: string);
    get onAdd(): ((e: {
        component: GridBase;
        dropInsideItem: boolean;
        event: event;
        fromComponent: dxSortable | dxDraggable;
        fromData: any;
        fromIndex: number;
        itemData: any;
        itemElement: any;
        toComponent: dxSortable | dxDraggable;
        toData: any;
        toIndex: number;
    }) => void);
    set onAdd(value: ((e: {
        component: GridBase;
        dropInsideItem: boolean;
        event: event;
        fromComponent: dxSortable | dxDraggable;
        fromData: any;
        fromIndex: number;
        itemData: any;
        itemElement: any;
        toComponent: dxSortable | dxDraggable;
        toData: any;
        toIndex: number;
    }) => void));
    get onDragChange(): ((e: {
        cancel: boolean;
        component: GridBase;
        dropInsideItem: boolean;
        event: event;
        fromComponent: dxSortable | dxDraggable;
        fromData: any;
        fromIndex: number;
        itemData: any;
        itemElement: any;
        toComponent: dxSortable | dxDraggable;
        toData: any;
        toIndex: number;
    }) => void);
    set onDragChange(value: ((e: {
        cancel: boolean;
        component: GridBase;
        dropInsideItem: boolean;
        event: event;
        fromComponent: dxSortable | dxDraggable;
        fromData: any;
        fromIndex: number;
        itemData: any;
        itemElement: any;
        toComponent: dxSortable | dxDraggable;
        toData: any;
        toIndex: number;
    }) => void));
    get onDragEnd(): ((e: {
        cancel: boolean;
        component: GridBase;
        dropInsideItem: boolean;
        event: event;
        fromComponent: dxSortable | dxDraggable;
        fromData: any;
        fromIndex: number;
        itemData: any;
        itemElement: any;
        toComponent: dxSortable | dxDraggable;
        toData: any;
        toIndex: number;
    }) => void);
    set onDragEnd(value: ((e: {
        cancel: boolean;
        component: GridBase;
        dropInsideItem: boolean;
        event: event;
        fromComponent: dxSortable | dxDraggable;
        fromData: any;
        fromIndex: number;
        itemData: any;
        itemElement: any;
        toComponent: dxSortable | dxDraggable;
        toData: any;
        toIndex: number;
    }) => void));
    get onDragMove(): ((e: {
        cancel: boolean;
        component: GridBase;
        dropInsideItem: boolean;
        event: event;
        fromComponent: dxSortable | dxDraggable;
        fromData: any;
        fromIndex: number;
        itemData: any;
        itemElement: any;
        toComponent: dxSortable | dxDraggable;
        toData: any;
        toIndex: number;
    }) => void);
    set onDragMove(value: ((e: {
        cancel: boolean;
        component: GridBase;
        dropInsideItem: boolean;
        event: event;
        fromComponent: dxSortable | dxDraggable;
        fromData: any;
        fromIndex: number;
        itemData: any;
        itemElement: any;
        toComponent: dxSortable | dxDraggable;
        toData: any;
        toIndex: number;
    }) => void));
    get onDragStart(): ((e: {
        cancel: boolean;
        component: GridBase;
        event: event;
        fromData: any;
        fromIndex: number;
        itemData: any;
        itemElement: any;
    }) => void);
    set onDragStart(value: ((e: {
        cancel: boolean;
        component: GridBase;
        event: event;
        fromData: any;
        fromIndex: number;
        itemData: any;
        itemElement: any;
    }) => void));
    get onRemove(): ((e: {
        component: GridBase;
        event: event;
        fromComponent: dxSortable | dxDraggable;
        fromData: any;
        fromIndex: number;
        itemData: any;
        itemElement: any;
        toComponent: dxSortable | dxDraggable;
        toData: any;
        toIndex: number;
    }) => void);
    set onRemove(value: ((e: {
        component: GridBase;
        event: event;
        fromComponent: dxSortable | dxDraggable;
        fromData: any;
        fromIndex: number;
        itemData: any;
        itemElement: any;
        toComponent: dxSortable | dxDraggable;
        toData: any;
        toIndex: number;
    }) => void));
    get onReorder(): ((e: {
        component: GridBase;
        dropInsideItem: boolean;
        event: event;
        fromComponent: dxSortable | dxDraggable;
        fromData: any;
        fromIndex: number;
        itemData: any;
        itemElement: any;
        promise: any;
        toComponent: dxSortable | dxDraggable;
        toData: any;
        toIndex: number;
    }) => void);
    set onReorder(value: ((e: {
        component: GridBase;
        dropInsideItem: boolean;
        event: event;
        fromComponent: dxSortable | dxDraggable;
        fromData: any;
        fromIndex: number;
        itemData: any;
        itemElement: any;
        promise: any;
        toComponent: dxSortable | dxDraggable;
        toData: any;
        toIndex: number;
    }) => void));
    get scrollSensitivity(): number;
    set scrollSensitivity(value: number);
    get scrollSpeed(): number;
    set scrollSpeed(value: number);
    get showDragIcons(): boolean;
    set showDragIcons(value: boolean);
    protected get _optionPath(): string;
    constructor(parentOptionHost: NestedOptionHost, optionHost: NestedOptionHost);
    ngOnInit(): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<DxoTreeListRowDraggingComponent, [{ host: true; skipSelf: true; }, { host: true; }]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DxoTreeListRowDraggingComponent, "dxo-tree-list-row-dragging", never, { "allowDropInsideItem": { "alias": "allowDropInsideItem"; "required": false; }; "allowReordering": { "alias": "allowReordering"; "required": false; }; "autoScroll": { "alias": "autoScroll"; "required": false; }; "boundary": { "alias": "boundary"; "required": false; }; "container": { "alias": "container"; "required": false; }; "cursorOffset": { "alias": "cursorOffset"; "required": false; }; "data": { "alias": "data"; "required": false; }; "dragDirection": { "alias": "dragDirection"; "required": false; }; "dragTemplate": { "alias": "dragTemplate"; "required": false; }; "dropFeedbackMode": { "alias": "dropFeedbackMode"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "group": { "alias": "group"; "required": false; }; "handle": { "alias": "handle"; "required": false; }; "onAdd": { "alias": "onAdd"; "required": false; }; "onDragChange": { "alias": "onDragChange"; "required": false; }; "onDragEnd": { "alias": "onDragEnd"; "required": false; }; "onDragMove": { "alias": "onDragMove"; "required": false; }; "onDragStart": { "alias": "onDragStart"; "required": false; }; "onRemove": { "alias": "onRemove"; "required": false; }; "onReorder": { "alias": "onReorder"; "required": false; }; "scrollSensitivity": { "alias": "scrollSensitivity"; "required": false; }; "scrollSpeed": { "alias": "scrollSpeed"; "required": false; }; "showDragIcons": { "alias": "showDragIcons"; "required": false; }; }, {}, never, never, true, never>;
}
export declare class DxoTreeListRowDraggingModule {
    static ɵfac: i0.ɵɵFactoryDeclaration<DxoTreeListRowDraggingModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<DxoTreeListRowDraggingModule, never, [typeof DxoTreeListRowDraggingComponent], [typeof DxoTreeListRowDraggingComponent]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<DxoTreeListRowDraggingModule>;
}
