import { EventEmitter, OnChanges } from '@angular/core';
import { NumericalLimitPipe } from '../numerical-limit.pipe';
import * as i0 from "@angular/core";
interface NodeFractionArc {
    backgroundArcPath: any;
    fractionArcPath: any;
    labels: string[];
    labelCoord: any;
    fractionArcOpacity: number;
    fraction: any;
    color: string;
    value: string;
    hideIndicator?: boolean;
}
export declare class RadialBarChartComponent implements OnChanges {
    private numericalLimitPipe;
    limitsFraction: number;
    requestsFraction: number;
    capacity: number;
    data: Array<{
        title: string;
        value: string;
        fraction: number;
        hideIndicator: boolean;
        color?: string;
    }>;
    unit: string;
    color: string;
    usage: string;
    request: string;
    loading: boolean;
    failed: boolean;
    refresh: EventEmitter<any>;
    readonly size = 160;
    readonly offset = 120;
    private readonly pieSize;
    private readonly margin;
    private readonly innerShrink;
    readonly maxValue = 999999;
    readonly decimalMaxValue = 999.99;
    arcs: NodeFractionArc[];
    ngOnChanges(): void;
    get transform(): string;
    get outerRadius(): number;
    get innerRadius(): number;
    arcTrackByFn(index: number): number;
    constructor(numericalLimitPipe: NumericalLimitPipe);
    private getArcs;
    getArc: (level: number, fraction: number, label: string, opacity: number, value: string, hideIndicator?: boolean, color?: string) => NodeFractionArc;
    handelData(): NodeFractionArc[];
    getBackgroundArcPath(level?: number): string;
    onRefresh(): void;
    private getFractionArcPath;
    private getTextCoord;
    getLabelDx: (x: number, text: number, index: number) => number;
    static ɵfac: i0.ɵɵFactoryDeclaration<RadialBarChartComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<RadialBarChartComponent, "acl-radial-bar-chart", never, { "limitsFraction": { "alias": "limitsFraction"; "required": false; }; "requestsFraction": { "alias": "requestsFraction"; "required": false; }; "capacity": { "alias": "capacity"; "required": false; }; "data": { "alias": "data"; "required": false; }; "unit": { "alias": "unit"; "required": false; }; "color": { "alias": "color"; "required": false; }; "usage": { "alias": "usage"; "required": false; }; "request": { "alias": "request"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "failed": { "alias": "failed"; "required": false; }; }, { "refresh": "refresh"; }, never, never, false, never>;
}
export {};
