/**-----------------------------------------------------------------------------------------
* Copyright © 2026 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { Observable } from 'rxjs';
import { TreeViewComponent } from '../treeview.component';
import { LoadMoreRequestArgs } from './load-more-request-args';
import * as i0 from "@angular/core";
/**
* Represents the directive that enables you to display only a limited number of nodes per level
* ([see example](https://www.telerik.com/kendo-angular-ui/components/treeview/load-more-button)).
*
* @example
* ```html
*
*
* ```
*
* @remarks
* Applied to: {@link TreeViewComponent}
*/
export declare class LoadMoreDirective {
private treeview;
/**
* Sets the callback function that runs when the load more button is clicked.
* Provide a function when you fetch additional nodes on demand
* ([see example](https://www.telerik.com/kendo-angular-ui/components/treeview/load-more-button#remote-data)).
*
*/
set loadMoreNodes(loadMoreNodes: ((loadMoreArgs: LoadMoreRequestArgs) => Observable) | string);
/**
* Sets the initial number of nodes to render on each level.
* Each time the load more button is clicked, the page size increases by this number.
*/
pageSize: number;
/**
* Sets the total number of root nodes.
* Use this property when you fetch additional nodes on demand
* ([see example](https://www.telerik.com/kendo-angular-ui/components/treeview/load-more-button#remote-data)).
*/
totalRootNodes: number;
/**
* Sets the field that contains the total number of child nodes for the data item.
* Use this property when you fetch additional nodes on demand
* ([see example](https://www.telerik.com/kendo-angular-ui/components/treeview/load-more-button#remote-data)).
*/
totalField: string;
/**
* Keeps track of the current page size of each node over expand/collapse cycles.
*/
private pageSizes;
/**
* Used as an identifier for the root page size as the root collection of nodes is not associated with a data item.
*/
private rootLevelId;
constructor(treeview: TreeViewComponent);
ngOnChanges(): void;
private verifySettings;
private getGroupSize;
private setGroupSize;
private getTotalNodesCount;
private getInitalPageSize;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵdir: i0.ɵɵDirectiveDeclaration;
}