import { AxisLabelPanelBase } from "./AxisLabelPanelBase";
import { Point, Type, IList$1 } from "igniteui-react-core";
import { AxisLabelPanelBaseView } from "./AxisLabelPanelBaseView";
import { Rect } from "igniteui-react-core";
import { Axis } from "./Axis";
import { List$1 } from "igniteui-react-core";
import { AxisAngleLabelMode } from "./AxisAngleLabelMode";
import { AxisLabelsLocation } from "./AxisLabelsLocation";
import { CategoryAxisBase } from "./CategoryAxisBase";
import { IAngleScaler } from "./IAngleScaler";
import { DependencyProperty } from "igniteui-react-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-react-core";
import { NumericAxisBase } from "./NumericAxisBase";
import { NumericAxisRenderer } from "./NumericAxisRenderer";
import { NumericAxisRenderingParameters } from "./NumericAxisRenderingParameters";
import { GeometryGroup } from "igniteui-react-core";
import { CategoryAxisBaseView } from "./CategoryAxisBaseView";
import { NumericAxisBaseView } from "./NumericAxisBaseView";
import { TextBlock } from "igniteui-react-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;
    k8(a: AxisView): void;
    al(): Axis;
    ko(a: Axis): void;
    kr(a: Axis, b: string): void;
    rl: CategoryAngleAxisView;
    protected get_dc(): boolean;
    ky(a: string): void;
    r2: number;
    r3: number;
    r4: number;
    rh: AxisAngleLabelMode;
    private rq;
    constructor();
    a0(): AxisLabelPanelBase;
    rn: CategoryAxisRenderer;
    private rr;
    protected ru(a: number): boolean;
    protected so(): string;
    private sd;
    private ry;
    private rm;
    protected rv(a: number): boolean;
    private s5;
    private s4;
    r5(): number;
    rk(a: Rect, b: Rect, c: Rect, d: Rect): AxisRenderingParametersBase;
    private sh;
    getMinMaxAngle(a: Rect, b: Rect, c: Rect, d: number, e: number): {
        p3: number;
        p4: number;
    };
    ac(): void;
    private ro;
    get rp(): NumericRadiusAxis;
    set rp(a: NumericRadiusAxis);
    ap(): Axis;
    se: number;
    protected rz: number;
    ri: AxisAngleLabelMode;
    rj(): AxisAngleLabelMode;
    getCategorySize(a: Rect, b: Rect, c: Rect): number;
    protected get_rs(): boolean;
    get rs(): boolean;
    r7(a: number, b: Rect, c: Rect, d: Rect): number;
    p2(a: Rect, b: Rect, c: Rect): number;
    r6(a: number, b: number, c: Rect, d: Rect, e: Rect): number;
    getGroupCenter(a: number, b: Rect, c: Rect, d: Rect): number;
    sa(a: number): number;
    protected l1(a: boolean): void;
    r9(a: Rect, b: Rect, c: Rect): number;
    r8(a: Rect, b: Rect, c: Rect): number;
    getScaledAngle(a: number): number;
    getUnscaledAngle(a: number): number;
    f7(a: number, b: ScalerParams): number;
    ga(a: number, b: ScalerParams): number;
    fr(a: Point): number;
    gj(a: number): number;
    protected lc(a: any, b: string, c: any, d: any): void;
    private st;
    sv(a: NumericRadiusAxis): void;
    static readonly s0: DependencyProperty;
    get sb(): number;
    set sb(a: number);
    private rw;
    get r0(): number;
    set r0(a: number);
    gk(): number;
    static readonly s2: DependencyProperty;
    get sc(): number;
    set sc(a: number);
    private rx;
    get r1(): number;
    set r1(a: number);
    protected rt(): boolean;
    protected get_bm(): AxisOrientation;
    get bm(): AxisOrientation;
    eg(): boolean;
    private sf;
    get sg(): number;
    set sg(a: number);
    ox(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;
    k8(a: AxisView): void;
    al(): Axis;
    ko(a: Axis): void;
    kr(a: Axis, b: string): void;
    tl: number;
    tb: AxisAngleLabelMode;
    te: NumericAngleAxisView;
    th: PolarAxisRenderingManager;
    protected get_dc(): boolean;
    constructor();
    a0(): AxisLabelPanelBase;
    tm(): number;
    private to;
    private ti;
    private tj;
    pw(): NumericAxisRenderer;
    private t1;
    f7(a: number, b: ScalerParams): number;
    getScaledAngle1(a: number, b: boolean, c: boolean): number;
    getScaledAngle(a: number): number;
    ga(a: number, b: ScalerParams): number;
    getUnscaledAngle(a: number): number;
    tp: number;
    private tk;
    tc: AxisAngleLabelMode;
    td(): AxisAngleLabelMode;
    protected lc(a: any, b: string, c: any, d: any): void;
    ky(a: string): void;
    private tu;
    p0(): NumericAxisRenderingParameters;
    pz(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 l1(a: boolean): void;
    private tf;
    get tg(): NumericRadiusAxis;
    set tg(a: NumericRadiusAxis);
    ap(): Axis;
    tw(a: NumericRadiusAxis): void;
    protected mf(a: Rect, b: Rect): void;
    protected get_bm(): AxisOrientation;
    get bm(): AxisOrientation;
    ox(a: number, b: Rect, c: Rect, d: Rect, e: Rect): Geometry;
    gj(a: number): number;
    static $$p: string[];
}
/**
 * @hidden
 */
export declare class NumericRadiusAxis extends NumericAxisBase {
    static $t: Type;
    bo(): AxisView;
    k8(a: AxisView): void;
    al(): Axis;
    ko(a: Axis): void;
    kr(a: Axis, b: string): void;
    td: NumericRadiusAxisView;
    protected get_dv(): boolean;
    f6(): number;
    private tm;
    private tl;
    private te;
    constructor();
    a0(): AxisLabelPanelBase;
    tf: boolean;
    private tj;
    private tg;
    pw(): NumericAxisRenderer;
    f7(a: number, b: ScalerParams): number;
    tp(a: number, b: boolean, c: boolean, d: number, e: number): number;
    to(a: number): number;
    tq(a: number): number;
    ga(a: number, b: ScalerParams): number;
    ts: number;
    ti: number;
    tr: number;
    th: number;
    protected lc(a: any, b: string, c: any, d: any): void;
    protected tk: number;
    tx(a: Axis): void;
    private tb;
    get tc(): Axis;
    set tc(a: Axis);
    ap(): Axis;
    p0(): NumericAxisRenderingParameters;
    pz(a: Rect, b: Rect, c: Rect, d: Rect): NumericAxisRenderingParameters;
    private ty;
    private tt;
    tn(): number;
    so(a: AxisRangeChangedEventArgs): void;
    protected l1(a: boolean): void;
    protected mf(a: Rect, b: Rect): void;
    tw(a: GeometryGroup, b: Rect, c: Rect, d: Rect, e: Rect): void;
    protected get_bm(): AxisOrientation;
    get bm(): AxisOrientation;
    ox(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[];
}
