/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { OnChanges, OnInit, SimpleChanges } from '@angular/core';
import { DataBoundComponent } from './data-bound-component';
import { FilteringBase } from './filtering-base';
import * as i0 from "@angular/core";
/**
* Represents a directive that handles flat data binding and provides built-in filtering functionality for the TreeView.
*
* Use this directive to bind flat data where parent-child relationships are defined by ID fields.
* The directive also enables the built-in filter input and automatic filter handling when used with the `filterable` property.
*
* @example
* ```html
*
*
* ```
*
* @remarks
* Applied to: {@link TreeViewComponent}
*/
export declare class FlatDataBindingDirective extends FilteringBase implements OnInit, OnChanges {
protected component: DataBoundComponent;
/**
* Specifies the flat data collection that renders as nodes in the TreeView.
*/
set nodes(nodes: any[]);
get nodes(): any[];
protected _nodes: any[];
/**
* Specifies the field name that contains the parent node identifier.
*/
parentIdField: string;
/**
* Specifies the field name that contains the unique node identifier.
*/
idField: string;
/**
* @hidden
*/
loadOnDemand: boolean;
/**
* @hidden
* A callback which determines whether a TreeView node should be rendered as hidden.
*/
set isVisible(fn: (item: object, index: string) => boolean);
/**
* @hidden
*/
originalData: any[];
constructor(component: DataBoundComponent);
/**
* @hidden
*/
ngOnInit(): void;
/**
* @hidden
*/
ngOnChanges(changes: SimpleChanges): void;
/**
* @hidden
*/
updateNodes(values: any[]): void;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵdir: i0.ɵɵDirectiveDeclaration;
}