import * as React from 'react';
import { IgrGridBaseDirective, IIgrGridBaseDirectiveProps } from "./igr-grid-base-directive";
import { IgrForOfStateEventArgs } from "./igr-for-of-state-event-args";
import { HierarchicalGridBaseDirective } from "./HierarchicalGridBaseDirective";
export declare abstract class IgrHierarchicalGridBaseDirective<P extends IIgrHierarchicalGridBaseDirectiveProps = IIgrHierarchicalGridBaseDirectiveProps> extends IgrGridBaseDirective<P> {
    /**
                                 * @hidden
                                 */
    get i(): HierarchicalGridBaseDirective;
    constructor(props: P & Omit<React.HTMLAttributes<HTMLElement>, keyof P>);
    get hasChildrenKey(): string;
    set hasChildrenKey(v: string);
    get showExpandAll(): boolean;
    set showExpandAll(v: boolean);
    get rootGrid(): IgrGridBaseDirective;
    set rootGrid(v: IgrGridBaseDirective);
    findByName(name: string): any;
    protected _styling(container: any, component: any, parent?: any): void;
    private _dataPreLoad;
    private _dataPreLoad_wrapped;
    get dataPreLoad(): (s: IgrHierarchicalGridBaseDirective, e: IgrForOfStateEventArgs) => void;
    set dataPreLoad(ev: (s: IgrHierarchicalGridBaseDirective, e: IgrForOfStateEventArgs) => void);
}
export interface IIgrHierarchicalGridBaseDirectiveProps extends IIgrGridBaseDirectiveProps {
    hasChildrenKey?: string;
    showExpandAll?: boolean | string;
    rootGrid?: IgrGridBaseDirective;
    dataPreLoad?: (s: IgrHierarchicalGridBaseDirective, e: IgrForOfStateEventArgs) => void;
}
