import type { HTMLDOMElement } from '../Renderer/DOMElementType'; import type Options from '../Options'; import Chart from '../Chart/Chart.js'; import StockChart from './StockChart.js'; declare module '../Options' { interface Options { /** * Initial budget for performance charts. When set, series are shown as * budget values scaled from the start of the visible range instead of * percentage change. When combined with * {@link Highcharts.Options#portfolios}, each portfolio allocates this * budget by series name and may rebalance over time. * * @since next * @product highstock */ initialBudget?: number; } } /** * Stock chart with percentage or budget compare enabled by default. Series * values are shown as percentage change, or as a scaled initial budget, from * the first point in the visible range. The navigator keeps absolute values * and clips series to the selected range. * * @requires modules/stock * * @since next * * @class * @name Highcharts.PerformanceChart * @extends Highcharts.StockChart */ declare class PerformanceChart extends StockChart { /** * Initializes the chart. The constructor's arguments are passed on * directly. * * @function Highcharts.PerformanceChart#init * * @param {Highcharts.Options} userOptions * Custom options. * * @param {Function|true} [callback] * Function to run when the chart has loaded and all external * images are loaded. Set to `true` to return a promise that * resolves when the chart is ready. * * @emits Highcharts.PerformanceChart#event:init * @emits Highcharts.PerformanceChart#event:afterInit */ init(userOptions: Partial, callback?: Chart.CallbackFunction | true): void; } declare namespace PerformanceChart { /** * Factory function for creating new performance charts. Creates a new * {@link Highcharts.PerformanceChart|PerformanceChart} object with * percentage or budget compare defaults on top of stock chart defaults. * * @example * let chart = Highcharts.performanceChart('container', { * initialBudget: 100e6, * series: [{ * data: [1, 2, 3, 4, 5, 6, 7, 8, 9], * pointInterval: 24 * 60 * 60 * 1000 * }] * }); * * @function Highcharts.performanceChart * * @since next * * @param {string|Highcharts.HTMLDOMElement} [renderTo] * The DOM element to render to, or its id. * * @param {Highcharts.Options} options * The chart options structure as described in the * [options reference](https://api.highcharts.com/highstock). * * @param {Highcharts.ChartCallbackFunction} [callback] * A function to execute when the chart object is finished * rendering and all external image files (`chart.backgroundImage`, * `chart.plotBackgroundImage` etc) are loaded. Defining a * [chart.events.load](https://api.highcharts.com/highstock/chart.events.load) * handler is equivalent. * * @return {Highcharts.PerformanceChart} * The chart object. */ function performanceChart(a: (string | HTMLDOMElement | Options), b?: (Chart.CallbackFunction | Options), c?: Chart.CallbackFunction | true): PerformanceChart | Promise; } export default PerformanceChart;