import { DataSourceSummaryOperand } from "igniteui-webcomponents-core";
import { IgcFormatSummaryTextEventArgs } from "./igc-format-summary-text-event-args";
import { IgcProvideCalculatorEventArgs } from "igniteui-webcomponents-core";
import { ColumnSummaryDescription as ColumnSummaryDescription_internal } from "./ColumnSummaryDescription";
/**
 * Represents a summary that is applied to a datasource. Changes to this object are not observed or expected after it is initially assigned to a collection.
*/
export declare class IgcColumnSummaryDescription {
    protected createImplementation(): ColumnSummaryDescription_internal;
    protected _implementation: any;
    /**
     * @hidden
     */
    get i(): ColumnSummaryDescription_internal;
    private onImplementationCreated;
    constructor();
    protected _provideImplementation(i: any): void;
    get field(): string;
    set field(v: string);
    get operand(): DataSourceSummaryOperand;
    set operand(v: DataSourceSummaryOperand);
    /**
     * Gets or sets the name to use when displaying the calculator name.
    */
    get calculatorDisplayName(): string;
    set calculatorDisplayName(v: string);
    /**
     * Gets or sets the display name for the summary.
    */
    get displayName(): string;
    set displayName(v: string);
    /**
     * Gets or sets the format string for the summary value.
    */
    get valueFormat(): string;
    set valueFormat(v: string);
    /**
     * Gets or sets whether the summary value should be displayed.
    */
    get shouldDisplay(): boolean;
    set shouldDisplay(v: boolean);
    /**
     * Gets or sets the format specifiers to use with the ValueFormat string.
    */
    get valueFormatSpecifiers(): any[];
    set valueFormatSpecifiers(v: any[]);
    /**
     * Gets or sets the display format for the summary when in list display mode.
    */
    get displayFormat(): string;
    set displayFormat(v: string);
    /**
     * Gets or sets the format specifiers to use with the DisplayFormat string.
    */
    get displayFormatSpecifiers(): any[];
    set displayFormatSpecifiers(v: any[]);
    /**
     * Gets or sets an INTL.DateTimeFormat or INTL.NumericFormat to use to format the value.
    */
    get formatOverride(): any;
    set formatOverride(v: any);
    /**
     * Gets or sets the maximum fraction digits. If a format is specificied this value is ignored.
    */
    get maxFractionDigits(): number;
    set maxFractionDigits(v: number);
    findByName(name: string): any;
    equals(other: any): boolean;
    private _formatText;
    private _formatText_wrapped;
    /**
     * Called when the value is being formatted.
    */
    get formatText(): (s: IgcColumnSummaryDescription, e: IgcFormatSummaryTextEventArgs) => void;
    set formatText(ev: (s: IgcColumnSummaryDescription, e: IgcFormatSummaryTextEventArgs) => void);
    private _provideCalculator;
    private _provideCalculator_wrapped;
    /**
     * Called when the summary calculator is required.
    */
    get provideCalculator(): (s: IgcColumnSummaryDescription, e: IgcProvideCalculatorEventArgs) => void;
    set provideCalculator(ev: (s: IgcColumnSummaryDescription, e: IgcProvideCalculatorEventArgs) => void);
}
