highcharts
Version:
JavaScript charting framework
313 lines (312 loc) • 12.7 kB
TypeScript
/*!*
*
* Copyright (c) Highsoft AS. All rights reserved.
*
*!*/
import * as Highcharts from "../highcharts";
declare module "../highcharts" {
/**
* (Highcharts) Point accessibility options for a series.
*/
interface PlotOrganizationAccessibilityPointOptions {
/**
* (Highcharts) Date format to use for points on datetime axes when
* describing them to screen reader users.
*
* Defaults to the same format as in tooltip.
*
* For an overview of the replacement codes, see dateFormat.
*/
dateFormat?: string;
/**
* (Highcharts) Formatter function to determine the date/time format
* used with points on datetime axes when describing them to screen
* reader users. Receives one argument, `point`, referring to the point
* to describe. Should return a date format string compatible with
* dateFormat.
*/
dateFormatter?: Highcharts.ScreenReaderFormatterCallbackFunction<Highcharts.Point>;
/**
* (Highcharts) Whether or not to describe points with the value `null`
* to assistive technology, such as screen readers.
*/
describeNull?: boolean;
/**
* (Highcharts) A format string to use instead of the default for point
* descriptions.
*
* The context of the format string is the point instance.
*
* As opposed to accessibility.point.valueDescriptionFormat, this option
* replaces the whole description.
*/
descriptionFormat?: string;
/**
* (Highcharts) Formatter function to use instead of the default for
* point descriptions. Same as
* `accessibility.point.descriptionFormatter`, but applies to a series
* instead of the whole chart.
*
* Note: Prefer using accessibility.point.valueDescriptionFormat instead
* if possible, as default functionality such as describing annotations
* will be preserved.
*/
descriptionFormatter?: Highcharts.ScreenReaderFormatterCallbackFunction<Highcharts.Point>;
/**
* (Highcharts) Decimals to use for the values in the point
* descriptions. Uses tooltip.valueDecimals if not defined.
*/
valueDecimals?: number;
/**
* (Highcharts) Format to use for describing the values of data points
* to assistive technology - including screen readers. The point context
* is available as `{point}`.
*
* Other available context variables include `{index}`, `{value}`, and
* `{xDescription}`.
*
* Additionally, the series name, annotation info, and description added
* in `point.accessibility.description` is added by default if relevant.
* To override this, use the accessibility.point.descriptionFormatter
* option.
*/
valueDescriptionFormat?: string;
/**
* (Highcharts) Prefix to add to the values in the point descriptions.
* Uses tooltip.valuePrefix if not defined.
*/
valuePrefix?: string;
/**
* (Highcharts) Suffix to add to the values in the point descriptions.
* Uses tooltip.valueSuffix if not defined.
*/
valueSuffix?: string;
}
/**
* (Highcharts, Highstock, Highmaps, Gantt) Styles for the label. The
* default `color` setting is `"contrast"`, which is a pseudo color that
* Highcharts picks up and applies the maximum contrast to the underlying
* point item, for example the bar in a bar chart.
*
* The `textOutline` is a pseudo property that applies an outline of the
* given width with the given color, which by default is the maximum
* contrast to the text. So a bright text color will result in a black text
* outline for maximum readability on a mixed background. In some cases,
* especially with grayscale text, the text outline doesn't work well, in
* which cases it can be disabled by setting it to `"none"`. When `useHTML`
* is true, the `textOutline` will not be picked up. In this, case, the same
* effect can be achieved through the `text-shadow` CSS property. As a
* complementary or alternative to the `textOutline`, a
* `dataLabels.backgroundColor` can be used. It provides a more calm
* impression and ensures readable text label, at the cost of a risk of
* overshadowing the underlying chart elements.
*
* For some series types, where each point has an extent, like for example
* tree maps, the data label may overflow the point. There are two
* strategies for handling overflow. By default, the text will wrap to
* multiple lines. The other strategy is to set `style.textOverflow` to
* `ellipsis`, which will keep the text on one line plus it will break
* inside long words.
*/
interface PlotOrganizationDataLabelsStyleOptions {
fontSize?: number;
fontWeight?: string;
textAlign?: string;
}
/**
* (Highcharts, Highstock, Highmaps, Gantt) Enable or disable the initial
* animation when a series is displayed for the `dataLabels`. The animation
* can also be set as a configuration object. Please note that this option
* only applies to the initial animation.
*
* For other animations, see chart.animation and the animation parameter
* under the API methods. The following properties are supported:
*
* - `defer`: The animation delay time in milliseconds.
*/
interface PlotOrganizationLevelsDataLabelsAnimationOptions {
/**
* (Highcharts, Highstock, Highmaps, Gantt) The animation delay time in
* milliseconds. Set to `0` to render the data labels immediately. As
* `undefined` inherits defer time from the series.animation.defer.
*/
defer?: number;
}
/**
* (Highcharts, Highstock) Animation setting for hovering the graph in
* line-type series.
*/
interface PlotOrganizationLevelsStatesHoverAnimationOptions {
/**
* (Highcharts, Highstock) The duration of the hover animation in
* milliseconds. By default the hover state animates quickly in, and
* slowly back to normal.
*/
duration?: number;
}
/**
* (Highcharts, Highstock) Animation setting for hovering the graph in
* line-type series.
*/
interface PlotOrganizationLevelsStatesSelectAnimationOptions {
/**
* (Highcharts, Highstock) The duration of the hover animation in
* milliseconds. By default the hover state animates quickly in, and
* slowly back to normal.
*/
duration?: number;
}
/**
* (Highcharts) Options for the connector in the _Series on point_ feature.
*
* In styled mode, the connector can be styled with the
* `.highcharts-connector-seriesonpoint` class name.
*/
interface PlotOrganizationOnPointConnectorOptions {
/**
* (Highcharts) A name for the dash style to use for the connector.
*/
dashstyle?: string;
/**
* (Highcharts) Color of the connector line. By default it's the series'
* color.
*/
stroke?: string;
/**
* (Highcharts) Pixel width of the connector line.
*/
width?: number;
}
/**
* (Highcharts) Options allowing to set a position and an offset of the
* series in the _Series on point_ feature.
*/
interface PlotOrganizationOnPointPositionOptions {
/**
* (Highcharts) Series center offset from the original x position. If
* defined, the connector line is drawn connecting original position
* with new position.
*/
offsetX?: number;
/**
* (Highcharts) Series center offset from the original y position. If
* defined, the connector line is drawn from original position to a new
* position.
*/
offsetY?: number;
/**
* (Highcharts) X position of the series center. By default, the series
* is displayed on the point that it is connected to.
*/
x?: number;
/**
* (Highcharts) Y position of the series center. By default, the series
* is displayed on the point that it is connected to.
*/
y?: number;
}
/**
* (Highcharts, Highstock) Animation setting for hovering the graph in
* line-type series.
*/
interface PlotOrganizationStatesHoverAnimationOptions {
/**
* (Highcharts, Highstock) The duration of the hover animation in
* milliseconds. By default the hover state animates quickly in, and
* slowly back to normal.
*/
duration?: number;
}
/**
* (Highcharts, Highstock) Animation setting for hovering the graph in
* line-type series.
*/
interface PlotOrganizationStatesSelectAnimationOptions {
/**
* (Highcharts, Highstock) The duration of the hover animation in
* milliseconds. By default the hover state animates quickly in, and
* slowly back to normal.
*/
duration?: number;
}
/**
* (Highcharts) Options for the tooltip header when tooltip.split is
* enabled. The header is the box containing the X value in a split tooltip.
*/
interface PlotOrganizationTooltipHeaderOptions {
/**
* (Highcharts) Background color for the tooltip header when
* tooltip.split is enabled.
*/
backgroundColor?: Highcharts.ColorType;
/**
* (Highcharts) Border color for the tooltip header when tooltip.split
* is enabled.
*/
borderColor?: Highcharts.ColorType;
/**
* (Highcharts) The width of the border for the tooltip header when
* tooltip.split is enabled.
*/
borderWidth?: number;
/**
* (Highcharts) Distance between the plot area and the header (except
* the chevron) in a split tooltip, in pixels. The default value makes
* the header text align with the axis labels.
*/
distance?: number;
/**
* (Highcharts) The name of a symbol to use for the border around the
* tooltip header. Applies only when tooltip.split is enabled.
*
* Custom callbacks for symbol path generation can also be added to
* `Highcharts.SVGRenderer.prototype.symbols` the same way as for
* series.marker.symbol.
*/
shape?: string;
/**
* (Highcharts) CSS styles for the tooltip header. The default is `{
* fontSize: '1em' }`, ensuring that the header text is the same size as
* the axis labels.
*/
style?: object;
}
/**
* (Highcharts) Enable or disable the initial animation when a series is
* displayed for the `dataLabels`. The animation can also be set as a
* configuration object. Please note that this option only applies to the
* initial animation.
*
* For other animations, see chart.animation and the animation parameter
* under the API methods. The following properties are supported:
*
* - `defer`: The animation delay time in milliseconds.
*/
interface SeriesOrganizationDataDataLabelsAnimationOptions {
/**
* (Highcharts) The animation delay time in milliseconds. Set to `0` to
* render the data labels immediately. As `undefined` inherits defer
* time from the series.animation.defer.
*/
defer?: number;
}
/**
* (Highcharts, Highstock, Highmaps, Gantt) Enable or disable the initial
* animation when a series is displayed for the `dataLabels`. The animation
* can also be set as a configuration object. Please note that this option
* only applies to the initial animation.
*
* For other animations, see chart.animation and the animation parameter
* under the API methods. The following properties are supported:
*
* - `defer`: The animation delay time in milliseconds.
*/
interface SeriesOrganizationNodesDataLabelsAnimationOptions {
/**
* (Highcharts, Highstock, Highmaps, Gantt) The animation delay time in
* milliseconds. Set to `0` to render the data labels immediately. As
* `undefined` inherits defer time from the series.animation.defer.
*/
defer?: number;
}
}