/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { MenuBase } from '../menu-base';
import { BindingDirectiveBase } from './binding-directive-base';
import * as i0 from "@angular/core";
/**
 * A directive that converts the provided hierarchical data to [MenuItems]({% slug api_menu_menuitem %}) and binds them to the Menu.
 */
export declare class HierarchyBindingDirective extends BindingDirectiveBase {
    /**
     *  The array of data which will be used to populate the Menu.
     */
    data: any[];
    /**
     * Defines the `text` field (or fields) of an item.
     */
    textField: string | string[];
    /**
     * Defines the `url` field (or fields) of an item.
     */
    urlField: string | string[];
    /**
     * Defines the `icon` field (or fields) of an item.
     */
    iconField: string | string[];
    /**
     * Defines the `svgIcon` field of the items.
     */
    svgIconField: string | string[];
    /**
     * Defines the `disabled` field (or fields) of an item.
     */
    disabledField: string | string[];
    /**
     * Defines the `cssClass` field (or fields) of an item.
     */
    cssClassField: string | string[];
    /**
     * Defines the `cssStyle` field (or fields) of an item.
     */
    cssStyleField: string | string[];
    /**
     * Defines the `separator` field (or fields) of the items.
     */
    separatorField: string | string[];
    /**
     * Defines the `children` field (or fields) of the items.
     */
    childrenField: string | string[];
    constructor(menu: MenuBase);
    protected mapItems(items: any[], level?: number): any[];
    protected createItem(item: any, level: number): any;
    protected getChildren(item: any, level: number): any;
    static ɵfac: i0.ɵɵFactoryDeclaration<HierarchyBindingDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<HierarchyBindingDirective, "[kendoMenuHierarchyBinding]", ["kendoMenuHierarchyBinding"], { "data": { "alias": "kendoMenuHierarchyBinding"; "required": false; }; "textField": { "alias": "textField"; "required": false; }; "urlField": { "alias": "urlField"; "required": false; }; "iconField": { "alias": "iconField"; "required": false; }; "svgIconField": { "alias": "svgIconField"; "required": false; }; "disabledField": { "alias": "disabledField"; "required": false; }; "cssClassField": { "alias": "cssClassField"; "required": false; }; "cssStyleField": { "alias": "cssStyleField"; "required": false; }; "separatorField": { "alias": "separatorField"; "required": false; }; "childrenField": { "alias": "childrenField"; "required": false; }; }, {}, never, never, true, never>;
}
