/**-----------------------------------------------------------------------------------------
* Copyright © 2024 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { OnDestroy, EventEmitter } from '@angular/core';
import { ExpandableTreeComponent } from './expandable-tree-component';
import * as i0 from "@angular/core";
/**
* A directive which controls the expanded state of the items. [See example](slug:treelist_expanded_state#toc-built-in-directive).
*
* @example
* ```html
* ...
*
* ```
*/
export declare class ExpandableDirective implements OnDestroy {
private component;
/**
* Fires when the expandedKeys are changed.
*/
expandedKeysChange: EventEmitter;
/**
* Sets the expanded item keys.
*/
set expandedKeys(value: any[]);
get expandedKeys(): any[];
/**
* Specifies if the items should be initially expanded.
* @default false
*/
initiallyExpanded: boolean;
/**
* Defines the item key that will be stored in the expandedKeys collection.
* Defaults to the component idField.
*/
set expandBy(key: string | ((dataItem: any) => any));
protected get keyGetter(): any;
protected subscriptions: any;
protected state: any;
protected _expandBy: any;
protected _expandedKeys: any[];
constructor(component: ExpandableTreeComponent);
/**
* @hidden
*/
isExpanded(item: any): boolean;
ngOnChanges(changes: any): void;
ngOnDestroy(): void;
private toggleState;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵdir: i0.ɵɵDirectiveDeclaration;
}