import { IndicatorLegacyChartDataOptions } from '../indicator-legacy-chart-data-options.js';
import { LegacyIndicatorChartOptions, LegacyIndicatorChartTypes } from '../types.js';
import { Gauge } from './gauge.js';
import { NumericBar } from './numeric-bar.js';
import { NumericSimple } from './numeric-simple.js';
import { Ticker } from './ticker.js';
export declare class Indicator {
    /**
     * Returns render service according to the passed indicator type.
     *
     * @param type
     * @returns
     */
    getService(type: LegacyIndicatorChartTypes): Gauge | NumericSimple | NumericBar | Ticker;
    /**
     * Main method for rendering indicator.
     *
     * @param {HTMLElement} canvas
     * @param {object} legacyDataOptions
     * @param {object} options
     * @param {HTMLElement} container
     */
    render(canvas: HTMLCanvasElement, legacyDataOptions: IndicatorLegacyChartDataOptions, options: LegacyIndicatorChartOptions, container: HTMLElement): void;
    /**
     * Calculates relative sizes based on the base size value.
     *
     * @param {object} legacyDataOptions
     * @param {object} options
     * @param {number} baseValue
     */
    calculateRelativeSizes(legacyDataOptions: IndicatorLegacyChartDataOptions, options: LegacyIndicatorChartOptions, baseValue: number): void;
    /**
     * Sets text options.
     *
     * @param {object} options
     * @param {string} size
     */
    setTextOptions(options: LegacyIndicatorChartOptions, size?: string): void;
}
