import { FinancialSeries } from "./FinancialSeries";
import { ITrendLineSeries } from "./ITrendLineSeries";
import { IndicatorDisplayType } from "./IndicatorDisplayType";
import { DependencyProperty } from "igniteui-angular-core";
import { TrendLineType } from "igniteui-angular-core";
import { Brush } from "igniteui-angular-core";
import { PenLineCap } from "igniteui-angular-core";
import { DoubleCollection } from "igniteui-angular-core";
import { List$1 } from "igniteui-angular-core";
import { AxisRange } from "./AxisRange";
import { SeriesView } from "./SeriesView";
import { CategoryFrame } from "./CategoryFrame";
import { Axis } from "./Axis";
import { Point, IList$1, Type } from "igniteui-angular-core";
import { SeriesHitTestMode } from "./SeriesHitTestMode";
import { Rect } from "igniteui-angular-core";
import { FastItemsSourceEventAction } from "igniteui-angular-core";
import { ITrendLineManager } from "./ITrendLineManager";
import { FinancialSeriesView } from "./FinancialSeriesView";
import { FinancialBucketCalculator } from "./FinancialBucketCalculator";
import { CategoryTransitionInMode } from "./CategoryTransitionInMode";
import { Clipper } from "igniteui-angular-core";
import { Path } from "igniteui-angular-core";
import { RenderingContext } from "igniteui-angular-core";
/**
 * @hidden
 */
export declare abstract class FinancialIndicator extends FinancialSeries implements ITrendLineSeries {
    static $t: Type;
    protected bf(): SeriesView;
    iu(a: SeriesView): void;
    pj: FinancialIndicatorView;
    constructor();
    pv(a: boolean): void;
    protected pn(a: Point, b: Point, c: boolean): boolean;
    protected bd(): SeriesHitTestMode;
    lu(a: Point): Rect;
    dh(a: Point, b: boolean): boolean;
    protected hy(a: FastItemsSourceEventAction, b: number, c: number, d: string): void;
    pk: IndicatorDisplayType;
    pq: number;
    trendLineType: TrendLineType;
    trendLineBrush: Brush;
    p8: Brush;
    static readonly py: DependencyProperty;
    trendLineThickness: number;
    qa: PenLineCap;
    p9: DoubleCollection;
    trendLinePeriod: number;
    protected ps(): number;
    pr: number;
    private _indicatorColumn;
    indicatorColumn: List$1<number>;
    protected pi: AxisRange;
    protected abstract pl(a: number, b: number): boolean;
    protected abstract po(a: number, b: number): IList$1<string>;
    protected iz(a: any, b: string, c: any, d: any): void;
    en(a: Point, b: boolean, c: boolean): number;
    fe(a: Point, b: boolean): number;
    fc(a: Point, b: boolean): number;
    protected get_dv(): boolean;
    private pm;
    private px;
    an(a: Axis): AxisRange;
    c9(a: any): boolean;
    dw(a: Rect, b: Rect, c: SeriesView): boolean;
    oz(a: CategoryFrame, b: FinancialSeriesView): void;
    hv(a: boolean, b: SeriesView): void;
    protected mh(): CategoryTransitionInMode;
    o1(a: CategoryFrame, b: FinancialSeriesView): void;
    protected jo(): void;
    protected pw(): void;
    protected h4(a: any): void;
    static $$p: string[];
}
/**
 * @hidden
 */
export declare class FinancialIndicatorBucketCalculator extends FinancialBucketCalculator {
    static $t: Type;
    constructor(a: FinancialSeriesView);
    protected f: FinancialIndicatorView;
    getBucket(a: number): number[];
}
/**
 * @hidden
 */
export declare class FinancialIndicatorView extends FinancialSeriesView {
    static $t: Type;
    b0: FinancialIndicator;
    constructor(a: FinancialIndicator);
    protected bv(): FinancialBucketCalculator;
    ap(): void;
    private readonly b3;
    private cd;
    private b6;
    cr: Path;
    cn: Path;
    cs: Path;
    co: Path;
    ct: Path;
    cp: Path;
    cq: Path;
    cm: Path;
    private b1;
    b2: ITrendLineManager;
    readonly b4: boolean;
    b5(a: boolean): void;
    cb(): void;
    b9(a: number, b: (arg1: number) => number, c: (arg1: number) => number, d: boolean, e: Clipper): void;
    b7(a: number, b: (arg1: number) => number, c: (arg1: number) => number, d: boolean, e: number, f: Clipper): void;
    b8(a: number, b: (arg1: number) => number, c: (arg1: number) => number, d: boolean, e: number): void;
    cc(): void;
    private cj;
    private cl;
    private ck;
    private ci;
    private cf;
    private ch;
    private cg;
    private ce;
    protected a9(): void;
    protected a3(a: RenderingContext, b: boolean): void;
    protected a2(a: RenderingContext, b: boolean): void;
    ai(a: any): void;
    ca(): void;
}
