import { IgrColumnSupportingCalculation } from "./igr-column-supporting-calculation";
import { IgrDataSourceSupportingCalculation } from "./igr-data-source-supporting-calculation";
import { FinancialCalculationSupportingCalculations as FinancialCalculationSupportingCalculations_internal } from "./FinancialCalculationSupportingCalculations";
import { ContentChildrenManager } from "igniteui-react-core";
/**
 * Represents a contract between the financial series and the calculation strategies
 * detailing the supporting calculation strategies that the financial series will
 * provide in order for the indicator calculations to be performed.
*/
export declare class IgrFinancialCalculationSupportingCalculations {
    protected createImplementation(): FinancialCalculationSupportingCalculations_internal;
    protected _implementation: any;
    /**
     * @hidden
     */
    get i(): FinancialCalculationSupportingCalculations_internal;
    private onImplementationCreated;
    protected _contentChildrenManager: ContentChildrenManager;
    constructor();
    protected _provideImplementation(i: any): void;
    /**
     * The strategy provided to calculate an exponential moving average for a collection.
    */
    get eMA(): IgrColumnSupportingCalculation;
    set eMA(v: IgrColumnSupportingCalculation);
    /**
     * The strategy provided to calculate a simple moving average for a collection.
    */
    get sMA(): IgrColumnSupportingCalculation;
    set sMA(v: IgrColumnSupportingCalculation);
    /**
     * The strategy provided to calculate a standard deviation for a collection.
    */
    get sTDEV(): IgrColumnSupportingCalculation;
    set sTDEV(v: IgrColumnSupportingCalculation);
    /**
     * The strategy provided to calculate a moving sum for a collection.
    */
    get movingSum(): IgrColumnSupportingCalculation;
    set movingSum(v: IgrColumnSupportingCalculation);
    /**
     * The strategy provided to calculate the short period moving average for volume oscillator indicators.
    */
    get shortVolumeOscillatorAverage(): IgrDataSourceSupportingCalculation;
    set shortVolumeOscillatorAverage(v: IgrDataSourceSupportingCalculation);
    /**
     * The strategy provided to calculate the long period moving average for volume oscillator indicators.
    */
    get longVolumeOscillatorAverage(): IgrDataSourceSupportingCalculation;
    set longVolumeOscillatorAverage(v: IgrDataSourceSupportingCalculation);
    /**
     * The strategy provided to calculate the short period moving average for price oscillator indicators.
    */
    get shortPriceOscillatorAverage(): IgrDataSourceSupportingCalculation;
    set shortPriceOscillatorAverage(v: IgrDataSourceSupportingCalculation);
    /**
     * The strategy provided to calculate the long period moving average for price oscillator indicators.
    */
    get longPriceOscillatorAverage(): IgrDataSourceSupportingCalculation;
    set longPriceOscillatorAverage(v: IgrDataSourceSupportingCalculation);
    /**
     * The strategy provided to make doubles safe for plotting, by default will just make zero if the value
     * is invalid.
    */
    get makeSafe(): (arg1: number) => number;
    set makeSafe(v: (arg1: number) => number);
    findByName(name: string): any;
}
