import { EventEmitter, Injector, OnChanges, OnInit } from '@angular/core';
import { Strings } from '../../generated/Strings';
import { CoreBaseComponent } from '../common/base.component';
import { CapacityBarChartUpdateData, CustomHorizontalBarChartData } from './custom-horizontal-bar-chart-data.interface';
import * as i0 from "@angular/core";
/**
 * This component will create a horizontal bar chart two segments.
 *  The first segment represents the amount of total currently used, and the other repressing the free amount left out of  the total.
 *  They will completely fill the width of the chart.
 */
export declare class CapacityBarChartComponent extends CoreBaseComponent implements OnInit, OnChanges {
    /**
     * The source name to use for logging
     */
    protected get logSourceName(): string;
    /**
     *  Input binding for CSS width animation time in ms. Default if omitted is no animation.
     */
    animationTime?: number;
    /**
     *  Input binding for height of bar chart in pixels
     */
    height?: number;
    /**
     *  Input binding for number representing current amount (of total)
     */
    capacityUsed: number;
    /**
     *  Input binding for number representing total amount possible
     */
    totalCapacity: number;
    /**
     *  Input binding for optional percent (as a decimal) full at which the color turns from yellow to red (default is 0.9)
     */
    warningAt?: number | string;
    /**
     *  Input binding for optional percent (as a decimal) full at which the color turns from blue to yellow (default is 0.8).
     *  Use 'disabled' to disable warning and critical colors.
     */
    criticalAt?: number | string;
    /**
     *  Input binding for optional title of chart.
     *  Use 'disabled' to disable warning and critical colors.
     */
    chartTitle?: string;
    /**
     *  Input binding for option to display total amount label.
     */
    totalLabel?: string;
    /**
     *  Input binding for option to display used amount and percent used label.
     */
    usedLabel?: string;
    /**
     *  Input binding for option to display free amount label.
     */
    freeLabel?: string;
    labelTooltip?: boolean;
    /**
     * @deprecated since 9/25/2019. Please use 'tooltipToggled' instead
     */
    get onTooltipToggle(): EventEmitter<void>;
    tooltipToggled: EventEmitter<void>;
    displayPercentCapacity: string;
    freeCapacity: number;
    usedBarColor: string;
    data: CustomHorizontalBarChartData;
    percentCapacity: number;
    totalMessage: string;
    freeMessage: string;
    usedMessage: string;
    widthTransitionStyle: string;
    heightStyle: string;
    strings: Strings;
    constructor(injector: Injector);
    getColor(yellowThreshold?: string | number, redThreshold?: string | number): "#02a28c" | "#f64747" | "#fbbc05";
    private updateChart;
    ngOnChanges(): void;
    toggleLabelTooltip(): void;
    ngOnInit(): void;
    /**
     * @deprecated since 03/14/18. CapacityBarChart now uses ngOnChanges to automatically update.
     * Calling CapacityBarChart.update() is no longer required.
     */
    update(pData: CapacityBarChartUpdateData): void;
    /**
     * @deprecated since 03/14/18. CapacityBarChart now uses ngOnChanges to automatically update.
     * Calling CapacityBarChart.update() is no longer required.
     */
    private prepareInputDataForUX;
    static ɵfac: i0.ɵɵFactoryDeclaration<CapacityBarChartComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<CapacityBarChartComponent, "sme-capacity-bar-chart", never, { "animationTime": "animationTime"; "height": "height"; "capacityUsed": "capacityUsed"; "totalCapacity": "totalCapacity"; "warningAt": "warningAt"; "criticalAt": "criticalAt"; "chartTitle": "chartTitle"; "totalLabel": "totalLabel"; "usedLabel": "usedLabel"; "freeLabel": "freeLabel"; "labelTooltip": "labelTooltip"; }, { "onTooltipToggle": "onTooltipToggle"; "tooltipToggled": "tooltipToggled"; }, never, never, false, never>;
}
