import { EventEmitter } from '@angular/core';
import { DataSourceSummaryOperand } from "./DataSourceSummaryOperand";
import { IgxProvideCalculatorEventArgs } from "./igx-provide-calculator-event-args";
import { DataSourceSummaryDescription as DataSourceSummaryDescription_internal } from "./DataSourceSummaryDescription";
export declare class IgxDataSourceSummaryDescription {
    protected createImplementation(): DataSourceSummaryDescription_internal;
    protected _implementation: any;
    /**
     * @hidden
     */
    get i(): DataSourceSummaryDescription_internal;
    private onImplementationCreated;
    constructor();
    protected _provideImplementation(i: any): void;
    get field(): string;
    set field(v: string);
    get operand(): DataSourceSummaryOperand;
    set operand(v: DataSourceSummaryOperand);
    static ngAcceptInputType_operand: DataSourceSummaryOperand | string;
    /**
     * Gets or sets an alias for the summary. Currently only used in aggregated data situations.
    */
    get alias(): string;
    set alias(v: string);
    /**
     * Gets or sets the name to use when displaying the calculator name.
    */
    get calculatorDisplayName(): string;
    set calculatorDisplayName(v: string);
    findByName(name: string): any;
    equals(other: any): boolean;
    private _provideCalculator;
    /**
     * Called when the summary calculator is required.
    */
    get provideCalculator(): EventEmitter<{
        sender: any;
        args: IgxProvideCalculatorEventArgs;
    }>;
    protected _zoneRunner: (act: () => void) => void;
    protected _runInZone(act: () => void): void;
}
