import { Axes, AxesOptions } from './axes.js';
import { AxisOptions } from '../Axis/axisOptions';
import { D3Selection } from '../Utils/elementTypes.js';
export declare enum Direction {
    CLOCKWISE = -1,
    ANTICLOCKWISE = 1
}
export type RadialAxisOptions = AxisOptions;
export interface AngularAxisOptions extends AxisOptions {
    direction?: number;
    range?: number[];
    intercept?: number;
}
export interface PolarAxesOptions extends AxesOptions {
    innerRadius?: number;
    radial: RadialAxisOptions;
    angular: AngularAxisOptions;
}
export declare class PolarAxes extends Axes {
    radialScale: any;
    angularScale: any;
    options: PolarAxesOptions;
    radialAxis: D3Selection<SVGGElement> | null;
    angularAxis: D3Selection<SVGGElement> | null;
    radialGrid: D3Selection<SVGGElement> | null;
    angularGrid: D3Selection<SVGGElement> | null;
    constructor(container: HTMLElement, width: number | null, height: number | null, options: PolarAxesOptions);
    setOptions(options: Partial<PolarAxesOptions>): void;
    get direction(): number;
    get intercept(): number;
    get innerRadiusFactor(): number;
    get innerRadius(): number;
    get outerRadius(): number;
    updateCanvas(): void;
    redraw(): void;
    radToDegrees(value: number): number;
    update(): void;
    protected setRange(): void;
    protected initGrid(): void;
}
