import { BehaviorSubject, Observable } from 'rxjs';
import { NestedTreeControl } from '@angular/cdk/tree';
import { CollectionViewer, SelectionChange } from '@angular/cdk/collections';
import { AddressSpaceService, AddressSpaceNode } from './address-space.service';
export declare class DynamicDataSource {
    treeControl: NestedTreeControl<AddressSpaceNode>;
    private addressSpaceService;
    private serverId;
    dataChange: BehaviorSubject<AddressSpaceNode[]>;
    get data(): AddressSpaceNode[];
    set data(value: AddressSpaceNode[]);
    constructor(treeControl: NestedTreeControl<AddressSpaceNode>, addressSpaceService: AddressSpaceService, serverId: string);
    connect(collectionViewer: CollectionViewer): Observable<AddressSpaceNode[]>;
    /** Handle expand/collapse behaviors */
    handleTreeControl(change: SelectionChange<AddressSpaceNode>): void;
    /**
     * Toggle the node, remove from display list
     */
    toggleNode(addressSpaceNode: AddressSpaceNode, expand: boolean): Promise<AddressSpaceNode>;
    catch(): void;
    private refreshNestedTree;
    private triggerResize;
}
//# sourceMappingURL=dynamic-data-source.d.ts.map