import { AxisLabelPanelBase } from "./AxisLabelPanelBase";
import { Point, Type, IList$1 } from "igniteui-angular-core";
import { AxisLabelPanelBaseView } from "./AxisLabelPanelBaseView";
import { Rect } from "igniteui-angular-core";
import { Axis } from "./Axis";
import { List$1 } from "igniteui-angular-core";
import { AxisAngleLabelMode } from "./AxisAngleLabelMode";
import { AxisLabelsLocation } from "./AxisLabelsLocation";
import { CategoryAxisBase } from "./CategoryAxisBase";
import { IAngleScaler } from "./IAngleScaler";
import { DependencyProperty } from "igniteui-angular-core";
import { CategoryAxisRenderer } from "./CategoryAxisRenderer";
import { AxisOrientation } from "./AxisOrientation";
import { AxisView } from "./AxisView";
import { PolarAxisRenderingManager } from "./PolarAxisRenderingManager";
import { AxisRenderingParametersBase } from "./AxisRenderingParametersBase";
import { ScalerParams } from "./ScalerParams";
import { AxisRangeChangedEventArgs } from "./AxisRangeChangedEventArgs";
import { Geometry } from "igniteui-angular-core";
import { NumericAxisBase } from "./NumericAxisBase";
import { NumericAxisRenderer } from "./NumericAxisRenderer";
import { NumericAxisRenderingParameters } from "./NumericAxisRenderingParameters";
import { GeometryGroup } from "igniteui-angular-core";
import { CategoryAxisBaseView } from "./CategoryAxisBaseView";
import { NumericAxisBaseView } from "./NumericAxisBaseView";
import { TextBlock } from "igniteui-angular-core";
/**
 * @hidden
 */
export declare class AngleAxisLabelPanel extends AxisLabelPanelBase {
    static $t: Type;
    af(): AxisLabelPanelBaseView;
    cn(a: AxisLabelPanelBaseView): void;
    dg: AngleAxisLabelPanelView;
    constructor();
    dh: boolean;
    dq: (arg1: number, arg2: number, arg3: number) => Point;
    aw(a: number, b: Rect): boolean;
    dm: number;
    dj: number;
    dl: number;
    dk: number;
    di: number;
    bc(): List$1<Rect>;
    private ds;
    private dr;
    private dp;
    private dn;
    aj(): AxisLabelsLocation;
    a3(a: AxisLabelsLocation): boolean;
}
/**
 * @hidden
 */
export declare class CategoryAngleAxis extends CategoryAxisBase implements IAngleScaler {
    static $t: Type;
    bo(): AxisView;
    lg(a: AxisView): void;
    al(): Axis;
    kw(a: Axis): void;
    kz(a: Axis, b: string): void;
    rx: CategoryAngleAxisView;
    protected get_df(): boolean;
    k6(a: string): void;
    se: number;
    sf: number;
    sg: number;
    rt: AxisAngleLabelMode;
    private r2;
    constructor();
    a0(): AxisLabelPanelBase;
    rz: CategoryAxisRenderer;
    private r3;
    protected r6(a: number): boolean;
    protected s0(): string;
    private sp;
    private sa;
    private ry;
    protected r7(a: number): boolean;
    private th;
    private tg;
    sh(): number;
    rw(a: Rect, b: Rect, c: Rect, d: Rect): AxisRenderingParametersBase;
    private st;
    getMinMaxAngle(a: Rect, b: Rect, c: Rect, d: number, e: number): {
        p3: number;
        p4: number;
    };
    ac(): void;
    private r0;
    get r1(): NumericRadiusAxis;
    set r1(a: NumericRadiusAxis);
    ap(): Axis;
    sq: number;
    protected sb: number;
    ru: AxisAngleLabelMode;
    rv(): AxisAngleLabelMode;
    getCategorySize(a: Rect, b: Rect, c: Rect): number;
    protected get_r4(): boolean;
    get r4(): boolean;
    sj(a: number, b: Rect, c: Rect, d: Rect): number;
    qe(a: Rect, b: Rect, c: Rect): number;
    si(a: number, b: number, c: Rect, d: Rect, e: Rect): number;
    getGroupCenter(a: number, b: Rect, c: Rect, d: Rect): number;
    sm(a: number): number;
    protected l9(a: boolean): void;
    sl(a: Rect, b: Rect, c: Rect): number;
    sk(a: Rect, b: Rect, c: Rect): number;
    getScaledAngle(a: number): number;
    getUnscaledAngle(a: number): number;
    gc(a: number, b: ScalerParams): number;
    gf(a: number, b: ScalerParams): number;
    fv(a: Point): number;
    gn(a: number): number;
    protected lk(a: any, b: string, c: any, d: any): void;
    private s5;
    s7(a: NumericRadiusAxis): void;
    static readonly tc: DependencyProperty;
    get sn(): number;
    set sn(a: number);
    private r8;
    get sc(): number;
    set sc(a: number);
    go(): number;
    static readonly te: DependencyProperty;
    get so(): number;
    set so(a: number);
    private r9;
    get sd(): number;
    set sd(a: number);
    protected r5(): boolean;
    protected get_bm(): AxisOrientation;
    get bm(): AxisOrientation;
    ek(): boolean;
    private sr;
    get ss(): number;
    set ss(a: number);
    o9(a: number, b: Rect, c: Rect, d: Rect, e: Rect): Geometry;
    get isVertical(): boolean;
    j$d(a: number, b: ScalerParams): number;
    j$c(a: number, b: ScalerParams): number;
    j$e(a: IList$1<number[]>, b: IList$1<number>, c: number, d: number, e: ScalerParams): void;
    j$f(a: IList$1<number>, b: number, c: number, d: ScalerParams): void;
    j$g(a: IList$1<number>, b: number, c: number, d: ScalerParams): void;
    get j$b(): boolean;
    j$a(): number[];
    static $$p: string[];
}
/**
 * @hidden
 */
export declare class NumericAngleAxis extends NumericAxisBase implements IAngleScaler {
    static $t: Type;
    bo(): AxisView;
    lg(a: AxisView): void;
    al(): Axis;
    kw(a: Axis): void;
    kz(a: Axis, b: string): void;
    tx: number;
    tn: AxisAngleLabelMode;
    tq: NumericAngleAxisView;
    tt: PolarAxisRenderingManager;
    protected get_df(): boolean;
    constructor();
    a0(): AxisLabelPanelBase;
    ty(): number;
    private t0;
    private tu;
    private tv;
    p8(): NumericAxisRenderer;
    private ud;
    gc(a: number, b: ScalerParams): number;
    getScaledAngle1(a: number, b: boolean, c: boolean): number;
    getScaledAngle(a: number): number;
    gf(a: number, b: ScalerParams): number;
    getUnscaledAngle(a: number): number;
    t1: number;
    private tw;
    to: AxisAngleLabelMode;
    tp(): AxisAngleLabelMode;
    protected lk(a: any, b: string, c: any, d: any): void;
    k6(a: string): void;
    private t6;
    qc(): NumericAxisRenderingParameters;
    qb(a: Rect, b: Rect, c: Rect, d: Rect): NumericAxisRenderingParameters;
    getMinMaxAngle(a: Rect, b: Rect, c: Rect, d: number, e: number): {
        p3: number;
        p4: number;
    };
    protected l9(a: boolean): void;
    private tr;
    get ts(): NumericRadiusAxis;
    set ts(a: NumericRadiusAxis);
    ap(): Axis;
    t8(a: NumericRadiusAxis): void;
    protected mn(a: Rect, b: Rect): void;
    protected get_bm(): AxisOrientation;
    get bm(): AxisOrientation;
    o9(a: number, b: Rect, c: Rect, d: Rect, e: Rect): Geometry;
    gn(a: number): number;
    static $$p: string[];
}
/**
 * @hidden
 */
export declare class NumericRadiusAxis extends NumericAxisBase {
    static $t: Type;
    bo(): AxisView;
    lg(a: AxisView): void;
    al(): Axis;
    kw(a: Axis): void;
    kz(a: Axis, b: string): void;
    tp: NumericRadiusAxisView;
    protected get_dz(): boolean;
    ga(): number;
    private ty;
    private tx;
    private tq;
    constructor();
    a0(): AxisLabelPanelBase;
    tr: boolean;
    private tv;
    private ts;
    p8(): NumericAxisRenderer;
    gc(a: number, b: ScalerParams): number;
    t0(a: number, b: boolean, c: boolean, d: number, e: number): number;
    t1(a: number): number;
    t2(a: number): number;
    gf(a: number, b: ScalerParams): number;
    t4: number;
    tu: number;
    t3: number;
    tt: number;
    protected lk(a: any, b: string, c: any, d: any): void;
    protected tw: number;
    t9(a: Axis): void;
    private tn;
    get to(): Axis;
    set to(a: Axis);
    ap(): Axis;
    qc(): NumericAxisRenderingParameters;
    qb(a: Rect, b: Rect, c: Rect, d: Rect): NumericAxisRenderingParameters;
    private ua;
    private t5;
    tz(): number;
    s0(a: AxisRangeChangedEventArgs): void;
    protected l9(a: boolean): void;
    protected mn(a: Rect, b: Rect): void;
    t8(a: GeometryGroup, b: Rect, c: Rect, d: Rect, e: Rect): void;
    protected get_bm(): AxisOrientation;
    get bm(): AxisOrientation;
    o9(a: number, b: Rect, c: Rect, d: Rect, e: Rect): Geometry;
    static $$p: string[];
}
/**
 * @hidden
 */
export declare class AngleAxisLabelPanelView extends AxisLabelPanelBaseView {
    static $t: Type;
    protected az: AngleAxisLabelPanel;
    constructor(a: AngleAxisLabelPanel);
    am(): void;
    a1(a: List$1<Rect>, b: List$1<boolean>): void;
    a0(a: List$1<Rect>, b: List$1<boolean>): void;
    p(): number;
    q(): number;
    r(): number;
    s(): number;
}
/**
 * @hidden
 */
export declare class CategoryAngleAxisView extends CategoryAxisBaseView {
    static $t: Type;
    protected bv: CategoryAngleAxis;
    constructor(a: CategoryAngleAxis);
    as(): void;
}
/**
 * @hidden
 */
export declare class NumericAngleAxisView extends NumericAxisBaseView {
    static $t: Type;
    protected bv: NumericAngleAxis;
    constructor(a: NumericAngleAxis);
    as(): void;
}
/**
 * @hidden
 */
export declare class NumericRadiusAxisView extends NumericAxisBaseView {
    static $t: Type;
    protected bv: NumericRadiusAxis;
    constructor(a: NumericRadiusAxis);
    as(): void;
    a(a: TextBlock): Point[];
}
