import * as React from 'react';
import { IgrExporterEventArgs } from "./igr-exporter-event-args";
import { IgrVoidEventArgs } from "igniteui-react";
import { GridToolbarExporterType } from "./GridToolbarExporterType";
import { IgrBaseToolbarDirective, IIgrBaseToolbarDirectiveProps } from "./igr-base-toolbar-directive";
import { GridToolbarExporter } from "./GridToolbarExporter";
/**
 * Provides a pre-configured exporter component for the grid.
 * @remarks
 * This component still needs the actual exporter service(s) provided in the DI chain
 * in order to export something.
 * @igxModule IgxGridToolbarModule
 * @igxParent IgxGridToolbarComponent
*/
export declare class IgrGridToolbarExporter extends IgrBaseToolbarDirective<IIgrGridToolbarExporterProps & Omit<React.HTMLAttributes<HTMLElement>, keyof IIgrGridToolbarExporterProps>> {
    protected createImplementation(): GridToolbarExporter;
    /**
                                 * @hidden
                                 */
    get i(): GridToolbarExporter;
    private portaledContentChildren;
    componentWillUnmount(): void;
    protected onImplementationCreated(): void;
    constructor(props: IIgrGridToolbarExporterProps & Omit<React.HTMLAttributes<HTMLElement>, keyof IIgrGridToolbarExporterProps>);
    componentDidMount(): void;
    render(): React.DetailedReactHTMLElement<any, HTMLElement>;
    protected _elRef: HTMLElement;
    protected _getMainRef(ref: any): void;
    /**
     * Show entry for CSV export.
    */
    get exportCSV(): boolean;
    set exportCSV(v: boolean);
    /**
     * Show entry for Excel export.
    */
    get exportExcel(): boolean;
    set exportExcel(v: boolean);
    /**
     * The name for the exported file.
    */
    get filename(): string;
    set filename(v: string);
    /**
     * Export the grid's data
     * type File type to export
    
    * @param type  * File type to export
    */
    exportGrid(type: GridToolbarExporterType): void;
    private _exportStarted;
    private _exportStarted_wrapped;
    /**
     * Emitted when starting an export operation. Re-emitted additionally
     * by the grid itself.
    */
    get exportStarted(): (s: IgrGridToolbarExporter, e: IgrExporterEventArgs) => void;
    set exportStarted(ev: (s: IgrGridToolbarExporter, e: IgrExporterEventArgs) => void);
    private _exportEnded;
    private _exportEnded_wrapped;
    /**
     * Emitted on successful ending of an export operation.
    */
    get exportEnded(): (s: IgrGridToolbarExporter, e: IgrVoidEventArgs) => void;
    set exportEnded(ev: (s: IgrGridToolbarExporter, e: IgrVoidEventArgs) => void);
}
export interface IIgrGridToolbarExporterProps extends IIgrBaseToolbarDirectiveProps {
    /**
     * Show entry for CSV export.
    */
    exportCSV?: boolean | string;
    /**
     * Show entry for Excel export.
    */
    exportExcel?: boolean | string;
    /**
     * The name for the exported file.
    */
    filename?: string;
    /**
     * Emitted when starting an export operation. Re-emitted additionally
     * by the grid itself.
    */
    exportStarted?: (s: IgrGridToolbarExporter, e: IgrExporterEventArgs) => void;
    /**
     * Emitted on successful ending of an export operation.
    */
    exportEnded?: (s: IgrGridToolbarExporter, e: IgrVoidEventArgs) => void;
}
