Skip to content

Instantly share code, notes, and snippets.

@cagcak
Last active July 28, 2023 13:58
Show Gist options
  • Save cagcak/151b4112c7aa7763bbf89d7fc9f1a6a0 to your computer and use it in GitHub Desktop.
Save cagcak/151b4112c7aa7763bbf89d7fc9f1a6a0 to your computer and use it in GitHub Desktop.
CanvasJS StockChart missing typings
import {
ChartAxisXOptions,
ChartAxisYOptions,
ChartDataSeriesOptions,
ChartOptions,
} from 'canvasjs';
export interface StockChartSlider {
maskColor: string;
maskOpacity: number;
maskInverted: boolean;
handleColor: string;
handleBorderColor: string;
handleBorderThickness: number;
handleWidth: number;
handleHeight: number;
minimum: number;
maximum: number;
outlineColor: string;
outlineThickness: number;
outlineInverted: boolean;
}
export interface StockChartNavigator {
enabled: boolean;
width: number;
height: number;
verticalAlign: string;
animationEnabled: string;
animationDuration: boolean;
backgroundColor: number;
dynamicUpdate: boolean;
slider: StockChartSlider;
axisX: ChartAxisXOptions;
axisY: ChartAxisYOptions;
data: ChartDataSeriesOptions;
}
export interface StockChartButton {
label: string;
range: number;
rangeType: string;
}
export interface StockChartInputFieldStyles {
backgroundColor: string;
borderColor: string;
borderColorOnFocus: string;
borderThickness: number;
fontColor: string;
fontSize: number;
fontStyle: string;
fontFamily: string;
fontWeight: string;
width: number;
maxWidth: number;
padding: number;
cursor: string;
}
export interface StockChartInputField {
enabled: boolean;
startValue: number | Date | string;
endValue: number | Date | string;
valueType: number | Date | string;
valueFormatString: string;
style: Partial<StockChartInputFieldStyles>;
}
export interface StockChartButtonStyles {
backgroundColorOnHover: string;
backgroundColorOnSelect: string;
borderColor: string;
borderThickness: number;
labelFontColor: string;
labelFontColorOnHover: string;
labelFontSize: number;
labelFontStyle: string;
labelFontFamily: string;
labelFontWeight: string;
width: number;
maxWidth: number;
padding: number;
spacing: number;
cursor: string;
}
export interface StockChartRangeSelector {
enabled: boolean;
width: number;
height: number;
verticalAlign: string;
label: string;
selectedRangeButtonIndex: number;
buttons: Partial<StockChartButton>[];
buttonStyle: Partial<StockChartButtonStyles>;
inputFields: Partial<StockChartInputField>;
}
export interface StockChartOptions extends Partial<ChartOptions> {
charts: { data: Partial<ChartDataSeriesOptions & ChartOptions>[] }[];
navigator?: Partial<StockChartNavigator>;
rangeSelector?: Partial<StockChartRangeSelector>;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment