import { QdColumnDetails, QdGroupColumnDetails } from '../model/tree-column-detail.interface';
import { QdTreeConfig } from '../model/tree-config.interface';
import { QdTreeData } from '../model/tree-data.interface';
import { QdTreeRowExpanderService } from './row-expander.service';
import { QdTreeGroupService } from './tree-group.service';
import * as i0 from "@angular/core";
export declare class QdTreeRowsService<T extends string> {
    private groupService;
    private expanderService;
    config: QdTreeConfig<T>;
    private treeRowSubject;
    treeRow$: import("rxjs").Observable<QdTreeData<T>>;
    constructor(groupService: QdTreeGroupService<T>, expanderService: QdTreeRowExpanderService<T>);
    get groupColumn(): QdGroupColumnDetails<T>;
    initializeRows(data: QdTreeData<T>): void;
    initializeConfig(config: QdTreeConfig<T>): void;
    updateRows(data: QdTreeData<T>): void;
    get ungroupedColumns(): QdColumnDetails<T>[];
    private splitRowsByTree;
    private splitRowByTree;
    private nestRowsIntoOneAnother;
    private aggregateRows;
    private groupArray;
    private areRowsEqual;
    private getRowsProperties;
    private sortRowsByNumbers;
    static ɵfac: i0.ɵɵFactoryDeclaration<QdTreeRowsService<any>, [null, { optional: true; }]>;
    static ɵprov: i0.ɵɵInjectableDeclaration<QdTreeRowsService<any>>;
}
//# sourceMappingURL=tree-rows.service.d.ts.map