import { EventEmitter, TemplateRef } from '@angular/core';
import { RowDetailContext } from '../../types/public.types';
import * as i0 from "@angular/core";
export declare class DatatableRowDetailDirective<TRow = any> {
    /**
     * The detail row height is required especially
     * when virtual scroll is enabled.
     */
    rowHeight: number | ((row?: TRow, index?: number) => number);
    _templateInput: TemplateRef<RowDetailContext<TRow>>;
    _templateQuery: TemplateRef<RowDetailContext<TRow>>;
    get template(): TemplateRef<RowDetailContext<TRow>>;
    /**
     * Row detail row visbility was toggled.
     */
    toggle: EventEmitter<any>;
    /**
     * Toggle the expansion of the row
     */
    toggleExpandRow(row: TRow): void;
    /**
     * API method to expand all the rows.
     */
    expandAllRows(): void;
    /**
     * API method to collapse all the rows.
     */
    collapseAllRows(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<DatatableRowDetailDirective<any>, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<DatatableRowDetailDirective<any>, "ngx-datatable-row-detail", never, { "rowHeight": { "alias": "rowHeight"; "required": false; }; "_templateInput": { "alias": "template"; "required": false; }; }, { "toggle": "toggle"; }, ["_templateQuery"], never, true, never>;
}
