/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { BaseBindingDirective } from './base-binding.directive';
import { DataBoundTreeComponent } from './data-bound-tree-component';
import { RowReorderService } from '../row-reordering/row-reorder.service';
import { RowReorderEvent } from '../row-reordering/types';
import * as i0 from "@angular/core";
/**
 * A directive which binds the TreeList to a tree of objects.
 *
 * The directive encapsulates the in-memory handling of data operations such as
 * [sorting]({% slug sorting_treelist %}), [aggregation]({% slug treelist_with_aggregates %})
 * and [filtering]({% slug filtering_treelist %}) ([more information and examples](slug:local_databinding_treelist#toc-binding-to-hierarchical-data-1)).
 */
export declare class HierarchyBindingDirective extends BaseBindingDirective {
    protected component: DataBoundTreeComponent;
    protected rowReorderService: RowReorderService;
    /**
     *  The name of the field which holds the child data items of the node.
     */
    set childrenField(value: string);
    get childrenField(): string;
    /**
     * The array of data which will be used to populate the TreeList.
     */
    data: any[];
    childrenGetter: any;
    childrenSetter: any;
    constructor(component: DataBoundTreeComponent, rowReorderService: RowReorderService);
    private _childrenField;
    /**
     * @hidden
     */
    getChildren(item?: any): any[];
    protected itemKey(item: any): void;
    protected onRowReorder(ev: RowReorderEvent): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<HierarchyBindingDirective, [null, { optional: true; }]>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<HierarchyBindingDirective, "[kendoTreeListHierarchyBinding]", ["kendoTreeListHierarchyBinding"], { "childrenField": { "alias": "childrenField"; "required": false; }; "data": { "alias": "kendoTreeListHierarchyBinding"; "required": false; }; }, {}, never, never, true, never>;
}
