import { EventArgs, IList$1, Base, Type, IEnumerable$1, Point } from "igniteui-angular-core/ES2015/type";
import { IBucketizer } from "./IBucketizer";
import { IFastItemColumn$1 } from "igniteui-angular-core/ES2015/IFastItemColumn$1";
import { Series } from "./Series";
import { Rect } from "igniteui-angular-core/ES2015/Rect";
import { ScalerParams } from "./ScalerParams";
import { SeriesView } from "./SeriesView";
import { Axis } from "./Axis";
import { IHasCategoryAxis } from "./IHasCategoryAxis";
import { IHasCategoryModePreference } from "./IHasCategoryModePreference";
import { Brush } from "igniteui-angular-core/ES2015/Brush";
import { CategoryAxisBase } from "./CategoryAxisBase";
import { NumericYAxis } from "./NumericYAxis";
import { HighlightingInfo } from "./HighlightingInfo";
import { CategoryTransitionInMode } from "./CategoryTransitionInMode";
import { CategoryTransitionSourceFramePreparer } from "./CategoryTransitionSourceFramePreparer";
import { CategoryFrame } from "./CategoryFrame";
import { CategoryMode } from "./CategoryMode";
import { List$1 } from "igniteui-angular-core/ES2015/List$1";
import { Dictionary$2 } from "igniteui-angular-core/ES2015/Dictionary$2";
import { CategorySeriesRenderManager } from "./CategorySeriesRenderManager";
import { AssigningCategoryStyleEventArgs } from "./AssigningCategoryStyleEventArgs";
import { TransitionInSpeedType } from "./TransitionInSpeedType";
import { FastItemsSourceEventAction } from "igniteui-angular-core/ES2015/FastItemsSourceEventAction";
import { CalculatedColumn } from "./CalculatedColumn";
import { ColumnSupportingCalculation } from "./ColumnSupportingCalculation";
import { RenderSurface } from "./RenderSurface";
import { SupportingCalculation$1 } from "./SupportingCalculation$1";
/**
 * @hidden
 */
export declare class FinancialEventArgs extends EventArgs {
    static $t: Type;
    constructor(a: number, b: number, c: FinancialCalculationDataSource, d: FinancialCalculationSupportingCalculations, e: FinancialSeries);
    private _position;
    position: number;
    private _count;
    count: number;
    private _dataSource;
    dataSource: FinancialCalculationDataSource;
    private _supportingCalculations;
    supportingCalculations: FinancialCalculationSupportingCalculations;
    private _basedOn;
    basedOn: IList$1<string>;
}
/**
 * @hidden
 */
export declare class FinancialBucketCalculator extends Base implements IBucketizer {
    static $t: Type;
    protected a: FinancialSeriesView;
    constructor(a: FinancialSeriesView);
    getBucket(a: number): number[];
    getBucketWithoutUnknowns(a: number): number[];
    getErrorBucket(a: number, b: IFastItemColumn$1<number>): number;
    c: number;
    d: number;
    b: number;
    getBucketInfo(a: number, b: number, c: number, d: number): {
        p0: number;
        p1: number;
        p2: number;
        p3: number;
    };
    e(a: number): void;
    cacheValues(): void;
    unCacheValues(): void;
}
/**
 * @hidden
 */
export declare abstract class FinancialSeries extends Series implements IHasCategoryAxis, IHasCategoryModePreference {
    static $t: Type;
    im(a: SeriesView): void;
    mg: FinancialSeriesView;
    protected get_cr(): boolean;
    ag(): Axis[];
    protected n0(): number;
    private ny;
    ah(a: Point): Point[][];
    ai(a: Point): Point[][];
    constructor();
    o6: Brush;
    k1(): Brush;
    hn(): void;
    l0: CategoryAxisBase;
    ml: NumericYAxis;
    og: string;
    mu: IFastItemColumn$1<number>;
    private mt;
    n7: string;
    mq: IFastItemColumn$1<number>;
    private mp;
    oc: string;
    ms: IFastItemColumn$1<number>;
    private mr;
    n4: string;
    mo: IFastItemColumn$1<number>;
    private mn;
    ok: string;
    mx: IFastItemColumn$1<number>;
    private mw;
    m6: boolean;
    protected m0: boolean;
    assigningCategoryStyle: (sender: any, args: AssigningCategoryStyleEventArgs) => void;
    protected m8(): boolean;
    protected os(a: AssigningCategoryStyleEventArgs): void;
    protected l8: CategorySeriesRenderManager;
    protected oq(a: List$1<number[]>, b: number, c: number, d: CategoryAxisBase, e: ScalerParams, f: boolean): void;
    nq(a: Point): number;
    fb(a: Point, b: boolean): number;
    e9(a: Point, b: boolean): number;
    d6(a: Point, b: number, c: Axis, d: ScalerParams, e: number): number;
    getOffsetValue(): number;
    getCategoryWidth(): number;
    ld(a: Point, b: boolean, c: boolean): Point;
    ek(a: Point, b: boolean, c: boolean): number;
    eg(a: Point, b: boolean, c: boolean): number;
    ei(a: Point, b: boolean, c: boolean): number;
    ns(a: Point, b: boolean, c: boolean): number;
    nt(a: Point, b: boolean, c: boolean): number;
    nu(a: Point, b: boolean, c: boolean): number;
    k9(a: Point, b: boolean, c: boolean): Point;
    lb(a: Point, b: boolean, c: boolean): Point;
    o8(a: Point, b: boolean, c: boolean): Point;
    o7(a: Point, b: boolean, c: boolean): Point;
    o9(a: Point, b: boolean, c: boolean): Point;
    h4(): void;
    protected jl(a: Rect, b: Rect): void;
    protected jk(a: Rect, b: Rect): void;
    protected nb: Dictionary$2<IFastItemColumn$1<number>, string>;
    protected nc: Dictionary$2<string, string>;
    private mv;
    private op;
    private mz;
    protected is(a: any, b: string, c: any, d: any): void;
    m2(a: any): boolean;
    m1(a: any): boolean;
    protected lt(a: number, b: number, c: Axis): any[];
    protected nx(a: SeriesView): number;
    protected nz(a: SeriesView): number;
    ls(a: number, b: number): any[];
    private mj;
    protected get_m4(): boolean;
    protected readonly m4: boolean;
    protected get_cv(): boolean;
    at(a: any, b: Point): HighlightingInfo;
    n1(a: Point): number;
    protected mi(a: any, b: Point, c: HighlightingInfo): HighlightingInfo;
    protected mh(a: any, b: Point, c: HighlightingInfo): HighlightingInfo;
    protected m3(): boolean;
    d8(a: Point): number;
    e5(a: Point): number;
    protected get_c1(): boolean;
    ap(): CategoryAxisBase;
    e7(a: Point): number;
    fm(a: Point): any;
    l3: CategoryFrame;
    l5: CategoryFrame;
    l2: CategoryFrame;
    protected nr(a: Rect, b: Rect, c: Rect): number;
    ma: CategoryTransitionInMode;
    m7: boolean;
    protected db(): boolean;
    protected l9(): CategoryTransitionInMode;
    protected bo(): TransitionInSpeedType;
    ot(a: CategoryFrame, b: FinancialSeriesView): void;
    or(a: CategoryFrame, b: FinancialSeriesView): void;
    dv(a: Rect, b: Rect, c: SeriesView): boolean;
    getViewInfo(a: Rect, b: Rect): {
        p0: Rect;
        p1: Rect;
    };
    mb: CategoryTransitionSourceFramePreparer;
    nv(a: FinancialSeriesView): number;
    protected hq(): void;
    i6(a: boolean): void;
    typical: (sender: any, e: FinancialEventArgs) => void;
    typicalBasedOn: (sender: any, e: FinancialEventArgs) => void;
    protected m9(a: IList$1<string>): boolean;
    readonly na: boolean;
    protected m5(): boolean;
    protected oo(a: FinancialEventArgs): void;
    protected readonly ni: IEnumerable$1<number>;
    private _nf;
    private nf;
    protected readonly nh: IEnumerable$1<number>;
    private _ne;
    private ne;
    protected readonly ng: IEnumerable$1<number>;
    private _nd;
    private nd;
    nk(a: IList$1<number>): IList$1<number>;
    private my;
    protected nj(): IList$1<string>;
    private no;
    getOpenColumnAsArray(): number[];
    private nm;
    getHighColumnAsArray(): number[];
    private nn;
    getLowColumnAsArray(): number[];
    private nl;
    getCloseColumnAsArray(): number[];
    private np;
    getVolumeColumnAsArray(): number[];
    protected hs(a: FastItemsSourceEventAction, b: number, c: number, d: string): void;
    protected mc(a: number, b: number): FinancialCalculationDataSource;
    nw(a: number): number;
    protected md(a: FinancialCalculationDataSource): FinancialCalculationSupportingCalculations;
    readonly categoryAxis: CategoryAxisBase;
    private l4;
    i7(a: Rect, b: RenderSurface): void;
    private l1;
    i4(a: Rect, b: Rect, c: RenderSurface, d: string, e: number): void;
    am(a: Axis): Axis;
    preferredCategoryMode(a: CategoryAxisBase): CategoryMode;
    private l6;
    l7: CategoryMode;
    protected get_cz(): boolean;
    ja(a: Brush, b: Brush): void;
    private ou;
    private mk;
    private mm;
    fo(a: any): any;
    static $$p: string[];
}
/**
 * @hidden
 */
export declare class FinancialCalculationSupportingCalculations extends Base {
    static $t: Type;
    a: ColumnSupportingCalculation;
    c: ColumnSupportingCalculation;
    d: ColumnSupportingCalculation;
    b: ColumnSupportingCalculation;
    h: DataSourceSupportingCalculation;
    f: DataSourceSupportingCalculation;
    g: DataSourceSupportingCalculation;
    e: DataSourceSupportingCalculation;
    k: (arg1: (arg1: number) => number, arg2: number, arg3: number) => IEnumerable$1<number>;
    j: (arg1: (arg1: number) => number, arg2: number) => IEnumerable$1<number>;
    i: (arg1: number) => number;
}
/**
 * @hidden
 */
export declare class DataSourceSupportingCalculation extends SupportingCalculation$1<(dataSource: FinancialCalculationDataSource) => IEnumerable$1<number>> {
    static $t: Type;
    constructor(a: number, b: (dataSource: FinancialCalculationDataSource) => IEnumerable$1<number>);
    constructor(a: number, b: (dataSource: FinancialCalculationDataSource) => IEnumerable$1<number>, c: IList$1<string>);
    constructor(a: number, ..._rest: any[]);
}
/**
 * @hidden
 */
export declare class FinancialCalculationDataSource extends Base {
    static $t: Type;
    private _openColumn;
    openColumn: IList$1<number>;
    private _closeColumn;
    closeColumn: IList$1<number>;
    private _highColumn;
    highColumn: IList$1<number>;
    private _lowColumn;
    lowColumn: IList$1<number>;
    private _volumeColumn;
    volumeColumn: IList$1<number>;
    private _indicatorColumn;
    indicatorColumn: IList$1<number>;
    private _typicalColumn;
    typicalColumn: CalculatedColumn;
    private _trueRange;
    trueRange: CalculatedColumn;
    private _trueLow;
    trueLow: CalculatedColumn;
    private _period;
    period: number;
    private _shortPeriod;
    shortPeriod: number;
    private _longPeriod;
    longPeriod: number;
    private _count;
    count: number;
    private _calculateFrom;
    calculateFrom: number;
    private _calculateCount;
    calculateCount: number;
    private _multiplier;
    multiplier: number;
    private _minimumValue;
    minimumValue: number;
    private _maximumValue;
    maximumValue: number;
    private _specifiesRange;
    specifiesRange: boolean;
    private _series;
    series: FinancialSeries;
}
/**
 * @hidden
 */
export declare abstract class FinancialSeriesView extends SeriesView {
    static $t: Type;
    bw: FinancialSeries;
    bu: FinancialBucketCalculator;
    by: number;
    bx(a: CategoryFrame): boolean;
    bz(a: CategoryFrame): void;
    constructor(a: FinancialSeries);
    protected abstract bv(): FinancialBucketCalculator;
    ap(): void;
    getDefaultTooltipTemplate(): string;
    protected ac(): void;
}
