react-candlesticks 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (267) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +219 -0
  3. package/dist/components/Chart/Chart.d.ts +36 -0
  4. package/dist/components/Chart/ChartWithPropTypes.d.ts +7 -0
  5. package/dist/components/Chart/chartPropTypes.d.ts +21 -0
  6. package/dist/components/Chart/index.d.ts +8 -0
  7. package/dist/components/Chart/parseConfigComponents.d.ts +19 -0
  8. package/dist/components/ChartCanvases/ChartCanvases.d.ts +26 -0
  9. package/dist/components/ChartCanvases/index.d.ts +8 -0
  10. package/dist/components/InteractiveArea/InteractiveArea.d.ts +13 -0
  11. package/dist/components/InteractiveArea/index.d.ts +8 -0
  12. package/dist/components/StatefulChart/StatefulChart.d.ts +26 -0
  13. package/dist/components/StatefulChart/getViewportData.d.ts +6 -0
  14. package/dist/components/StatefulChart/index.d.ts +8 -0
  15. package/dist/components/UIs/PanelUIs/Legend/Legend.d.ts +13 -0
  16. package/dist/components/UIs/PanelUIs/PanelControls/PanelControls.d.ts +13 -0
  17. package/dist/components/UIs/PanelUIs/PanelUIs.d.ts +16 -0
  18. package/dist/components/UIs/UIs.d.ts +23 -0
  19. package/dist/components/index.d.ts +8 -0
  20. package/dist/config/chart/ChartConfig.d.ts +19 -0
  21. package/dist/config/chart/borders/BordersConfig.d.ts +21 -0
  22. package/dist/config/chart/borders/parseBordersConfig.d.ts +3 -0
  23. package/dist/config/chart/crosshairs/CrosshairsConfig.d.ts +14 -0
  24. package/dist/config/chart/crosshairs/parseCrosshairsConfig.d.ts +3 -0
  25. package/dist/config/chart/crosshairs/timeCrosshair/TimeCrosshairConfig.d.ts +14 -0
  26. package/dist/config/chart/crosshairs/timeCrosshair/parseTimeCrosshairConfig.d.ts +3 -0
  27. package/dist/config/chart/crosshairs/timeCrosshair/timeCrosshairLabel/CrosshairTimeFormat.d.ts +7 -0
  28. package/dist/config/chart/crosshairs/timeCrosshair/timeCrosshairLabel/TimeCrosshairLabelConfig.d.ts +10 -0
  29. package/dist/config/chart/crosshairs/timeCrosshair/timeCrosshairLabel/TimeCrosshairLabelFormatter.d.ts +7 -0
  30. package/dist/config/chart/crosshairs/timeCrosshair/timeCrosshairLabel/defaultTimeCrosshairLabelFormatter.d.ts +3 -0
  31. package/dist/config/chart/crosshairs/timeCrosshair/timeCrosshairLabel/parseTimeCrosshairLabelConfig.d.ts +3 -0
  32. package/dist/config/chart/crosshairs/valueCrosshair/ValueCrosshairConfig.d.ts +14 -0
  33. package/dist/config/chart/crosshairs/valueCrosshair/parseValueCrosshairConfig.d.ts +3 -0
  34. package/dist/config/chart/crosshairs/valueCrosshair/valueCrosshairLabel/ValueCrosshairLabelConfig.d.ts +5 -0
  35. package/dist/config/chart/crosshairs/valueCrosshair/valueCrosshairLabel/parseValueCrosshairLabelConfig.d.ts +3 -0
  36. package/dist/config/chart/grid/GridConfig.d.ts +13 -0
  37. package/dist/config/chart/grid/parseGridConfig.d.ts +3 -0
  38. package/dist/config/chart/parseChartConfig.d.ts +4 -0
  39. package/dist/config/chart/xAxis/XAxisConfig.d.ts +23 -0
  40. package/dist/config/chart/xAxis/parseXAxisConfig.d.ts +3 -0
  41. package/dist/config/elements/bar/BarConfig.d.ts +20 -0
  42. package/dist/config/elements/bar/DirectionalBarConfig.d.ts +17 -0
  43. package/dist/config/elements/bar/parseBarConfig.d.ts +3 -0
  44. package/dist/config/elements/bar/parseDirectionalBarConfig.d.ts +3 -0
  45. package/dist/config/elements/boxedTimeLabel/BoxedTimeLabelConfig.d.ts +23 -0
  46. package/dist/config/elements/boxedTimeLabel/parseBoxedTimeLabelConfig.d.ts +3 -0
  47. package/dist/config/elements/boxedValueLabel/BoxedValueLabelConfig.d.ts +23 -0
  48. package/dist/config/elements/boxedValueLabel/parseBoxedValueLabelConfig.d.ts +3 -0
  49. package/dist/config/elements/button/ButtonConfig.d.ts +21 -0
  50. package/dist/config/elements/button/parseButtonConfig.d.ts +3 -0
  51. package/dist/config/elements/label/Font.d.ts +9 -0
  52. package/dist/config/elements/label/LabelConfig.d.ts +27 -0
  53. package/dist/config/elements/label/parseLabelConfig.d.ts +3 -0
  54. package/dist/config/elements/line/DirectionalLineConfig.d.ts +17 -0
  55. package/dist/config/elements/line/LineConfig.d.ts +28 -0
  56. package/dist/config/elements/line/parseDirectionalLineConfig.d.ts +3 -0
  57. package/dist/config/elements/line/parseLineConfig.d.ts +3 -0
  58. package/dist/config/elements/timeLabel/TimeLabelConfig.d.ts +14 -0
  59. package/dist/config/elements/timeLabel/TimeLabelFormatter.d.ts +9 -0
  60. package/dist/config/elements/timeLabel/defaultTimeLabelFormatter.d.ts +3 -0
  61. package/dist/config/elements/timeLabel/parseTimeLabelConfig.d.ts +3 -0
  62. package/dist/config/elements/valueLabel/ValueLabelConfig.d.ts +11 -0
  63. package/dist/config/elements/valueLabel/defaultValueLabelFormatter.d.ts +8 -0
  64. package/dist/config/elements/valueLabel/parseValueLabelConfig.d.ts +3 -0
  65. package/dist/config/index.d.ts +7 -0
  66. package/dist/config/layer/BaseLayerConfig.d.ts +81 -0
  67. package/dist/config/layer/Layer.d.ts +17 -0
  68. package/dist/config/layer/LayerConfig.d.ts +24 -0
  69. package/dist/config/layer/LayerType.d.ts +7 -0
  70. package/dist/config/layer/createLayerTopology.d.ts +9 -0
  71. package/dist/config/layer/inputSourceShorthand.d.ts +4 -0
  72. package/dist/config/layer/layerComponentNameToLayerTypeMap.d.ts +19 -0
  73. package/dist/config/layer/layerComponentTypeKey.d.ts +8 -0
  74. package/dist/config/layer/parseLayerConfig.d.ts +3 -0
  75. package/dist/config/layer/parseLayerConfigs.d.ts +3 -0
  76. package/dist/config/layer/parseLookback.d.ts +8 -0
  77. package/dist/config/layer/validateLayerInputs.d.ts +3 -0
  78. package/dist/config/layer/yAxis/YAxisConfig.d.ts +22 -0
  79. package/dist/config/layer/yAxis/parseYAxisConfig.d.ts +3 -0
  80. package/dist/config/legend/LegendConfig.d.ts +29 -0
  81. package/dist/config/legend/LegendFieldConfig.d.ts +31 -0
  82. package/dist/config/legend/parseLegendConfig.d.ts +4 -0
  83. package/dist/config/legend/parseLegendFieldConfig.d.ts +3 -0
  84. package/dist/config/legend/parseLegendFieldsConfig.d.ts +3 -0
  85. package/dist/config/panel/Panel.d.ts +7 -0
  86. package/dist/config/panel/PanelConfig.d.ts +30 -0
  87. package/dist/config/panel/controls/PanelControlsConfig.d.ts +10 -0
  88. package/dist/config/panel/controls/parsePanelControlsConfig.d.ts +3 -0
  89. package/dist/config/panel/parsePanelConfig.d.ts +4 -0
  90. package/dist/config/panel/parsePanelConfigs.d.ts +4 -0
  91. package/dist/config/panel/setPanelYAxes.d.ts +4 -0
  92. package/dist/config/utils/validateNumber.d.ts +9 -0
  93. package/dist/config/valueMarker/DirectionalValueMarkerConfig.d.ts +25 -0
  94. package/dist/config/valueMarker/ValueMarkerConfig.d.ts +19 -0
  95. package/dist/config/valueMarker/ValueMarkerMode.d.ts +7 -0
  96. package/dist/config/valueMarker/parseDirectionalValueMarkerConfig.d.ts +3 -0
  97. package/dist/config/valueMarker/parseValueMarkerConfig.d.ts +3 -0
  98. package/dist/data/layers/createLayersData.d.ts +4 -0
  99. package/dist/data/layers/createPriceVolumeCalculationContext.d.ts +4 -0
  100. package/dist/data/layers/createPriceVolumeDerivedLayerCalculationContext.d.ts +5 -0
  101. package/dist/data/layers/updateLayersData.d.ts +7 -0
  102. package/dist/data/map/buildDataMap.d.ts +9 -0
  103. package/dist/data/utils/deduceGranulairty.d.ts +4 -0
  104. package/dist/data/utils/granularityToTimeUnit.d.ts +4 -0
  105. package/dist/domain/constants/time/days.d.ts +8 -0
  106. package/dist/domain/constants/time/months.d.ts +8 -0
  107. package/dist/domain/constants/time/timeDurationsAsMs.d.ts +10 -0
  108. package/dist/domain/constants/timeZone/timeZones.d.ts +8 -0
  109. package/dist/domain/types/DataMap.d.ts +18 -0
  110. package/dist/domain/types/DataPoint.d.ts +14 -0
  111. package/dist/domain/types/DataPointInfo.d.ts +9 -0
  112. package/dist/domain/types/DateTimeFormatToken.d.ts +7 -0
  113. package/dist/domain/types/Granularity.d.ts +7 -0
  114. package/dist/domain/types/IndexBlock.d.ts +20 -0
  115. package/dist/domain/types/IndexProvider.d.ts +13 -0
  116. package/dist/domain/types/LayersData.d.ts +20 -0
  117. package/dist/domain/types/Layout.d.ts +19 -0
  118. package/dist/domain/types/LocalDateTime.d.ts +25 -0
  119. package/dist/domain/types/RawSession.d.ts +14 -0
  120. package/dist/domain/types/Theme.d.ts +17 -0
  121. package/dist/domain/types/TimeFormatToken.d.ts +7 -0
  122. package/dist/domain/types/TimeScale.d.ts +21 -0
  123. package/dist/domain/types/TimeUnit.d.ts +7 -0
  124. package/dist/domain/types/ViewportData.d.ts +18 -0
  125. package/dist/domain/types/gridLine/TimeGridLine.d.ts +7 -0
  126. package/dist/domain/types/gridLine/TimeGridStep.d.ts +14 -0
  127. package/dist/domain/types/gridLine/TimeIntervalSpec.d.ts +9 -0
  128. package/dist/domain/types/metrics/ChartMetrics.d.ts +5 -0
  129. package/dist/domain/types/metrics/LayerMetrics.d.ts +11 -0
  130. package/dist/domain/types/metrics/PanelMetrics.d.ts +15 -0
  131. package/dist/drawing/chart/borders/drawBorders.d.ts +4 -0
  132. package/dist/drawing/chart/crosshairs/clearChartCrosshairs.d.ts +8 -0
  133. package/dist/drawing/chart/crosshairs/drawChartCrosshairs.d.ts +13 -0
  134. package/dist/drawing/chart/crosshairs/drawChartValueCrosshairLabel.d.ts +5 -0
  135. package/dist/drawing/chart/drawChart.d.ts +9 -0
  136. package/dist/drawing/chart/grid/time/TimeGridLine.d.ts +11 -0
  137. package/dist/drawing/chart/grid/time/drawTimeGridLabels.d.ts +6 -0
  138. package/dist/drawing/chart/grid/time/drawTimeGridLines.d.ts +6 -0
  139. package/dist/drawing/chart/grid/time/isTimeGridLine.d.ts +3 -0
  140. package/dist/drawing/chart/grid/value/ValueGridLine.d.ts +10 -0
  141. package/dist/drawing/chart/grid/value/calculateValueGridLines.d.ts +3 -0
  142. package/dist/drawing/chart/grid/value/drawValueGridLines.d.ts +7 -0
  143. package/dist/drawing/chart/grid/value/getDefaultValueGridLines.d.ts +8 -0
  144. package/dist/drawing/elements/drawBar.d.ts +3 -0
  145. package/dist/drawing/elements/labels/timeLabel/drawTimeGridLabel.d.ts +4 -0
  146. package/dist/drawing/elements/labels/valueLabel/drawValueGridLabels.d.ts +9 -0
  147. package/dist/drawing/elements/line/drawLine.d.ts +8 -0
  148. package/dist/drawing/elements/line/endDrawLine.d.ts +3 -0
  149. package/dist/drawing/elements/line/startDrawLine.d.ts +3 -0
  150. package/dist/drawing/getCanvasContext.d.ts +12 -0
  151. package/dist/drawing/labels/valueLabel/drawValueGridLabels.d.ts +9 -0
  152. package/dist/drawing/layer/drawLayer.d.ts +10 -0
  153. package/dist/drawing/layer/drawLayers.d.ts +11 -0
  154. package/dist/drawing/panel/drawLayersForScale.d.ts +12 -0
  155. package/dist/drawing/panel/drawPanel.d.ts +14 -0
  156. package/dist/drawing/panel/drawPanelBorder.d.ts +9 -0
  157. package/dist/drawing/panel/drawPanels.d.ts +14 -0
  158. package/dist/drawing/panel/getPanelYAxes.d.ts +21 -0
  159. package/dist/drawing/panel/mapLayersByScale.d.ts +4 -0
  160. package/dist/drawing/valueMarker/drawDirectionalValueMarker.d.ts +12 -0
  161. package/dist/drawing/valueMarker/drawValueMarker.d.ts +12 -0
  162. package/dist/drawing/valueMarker/drawValueMarkerLabel.d.ts +13 -0
  163. package/dist/drawing/valueMarker/drawValueMarkerLine.d.ts +9 -0
  164. package/dist/exampleData/d1.d.ts +3 -0
  165. package/dist/exampleData/d1Short.d.ts +3 -0
  166. package/dist/exampleData/index.d.ts +7 -0
  167. package/dist/hooks/useDevicePixelRatio.d.ts +8 -0
  168. package/dist/hooks/useResizeObserver.d.ts +7 -0
  169. package/dist/index-Bb_QstiX.js +9443 -0
  170. package/dist/index.d.ts +13 -0
  171. package/dist/index.js +21 -0
  172. package/dist/indexProviders/continuous/createContinuousIndexProvider.d.ts +5 -0
  173. package/dist/indexProviders/continuous/findClosestIndex.d.ts +3 -0
  174. package/dist/indexProviders/continuous/getKnownBars.d.ts +6 -0
  175. package/dist/indexProviders/continuous/indexToTimestamp.d.ts +3 -0
  176. package/dist/indexProviders/continuous/lowerBound.d.ts +8 -0
  177. package/dist/indexProviders/continuous/timestampToBarIndex.d.ts +3 -0
  178. package/dist/layers/atr/ATRLayer.d.ts +8 -0
  179. package/dist/layers/atr/AtrLayerConfig.d.ts +44 -0
  180. package/dist/layers/atr/calc.d.ts +4 -0
  181. package/dist/layers/atr/draw.d.ts +10 -0
  182. package/dist/layers/atr/index.d.ts +5 -0
  183. package/dist/layers/atr/parse.d.ts +4 -0
  184. package/dist/layers/bollingerBands/BollingerBandsLayer.d.ts +8 -0
  185. package/dist/layers/bollingerBands/BollingerBandsLayerConfig.d.ts +65 -0
  186. package/dist/layers/bollingerBands/calc.d.ts +4 -0
  187. package/dist/layers/bollingerBands/draw.d.ts +10 -0
  188. package/dist/layers/bollingerBands/index.d.ts +5 -0
  189. package/dist/layers/bollingerBands/parse.d.ts +4 -0
  190. package/dist/layers/candlesticks/CandlestickLayerConfig.d.ts +42 -0
  191. package/dist/layers/candlesticks/CandlesticksLayer.d.ts +8 -0
  192. package/dist/layers/candlesticks/calc.d.ts +5 -0
  193. package/dist/layers/candlesticks/draw/_debugDrawEmptyCandle.d.ts +8 -0
  194. package/dist/layers/candlesticks/draw/draw.d.ts +10 -0
  195. package/dist/layers/candlesticks/draw/drawCandleBody.d.ts +3 -0
  196. package/dist/layers/candlesticks/draw/drawCandleWick.d.ts +3 -0
  197. package/dist/layers/candlesticks/draw/drawCandlestick.d.ts +4 -0
  198. package/dist/layers/candlesticks/index.d.ts +5 -0
  199. package/dist/layers/candlesticks/parse.d.ts +4 -0
  200. package/dist/layers/ema/EMALayer.d.ts +8 -0
  201. package/dist/layers/ema/EmaLayerConfig.d.ts +42 -0
  202. package/dist/layers/ema/calc.d.ts +4 -0
  203. package/dist/layers/ema/draw.d.ts +10 -0
  204. package/dist/layers/ema/index.d.ts +5 -0
  205. package/dist/layers/ema/parse.d.ts +4 -0
  206. package/dist/layers/index.d.ts +11 -0
  207. package/dist/layers/layers.d.ts +4 -0
  208. package/dist/layers/macd/MACDLayer.d.ts +8 -0
  209. package/dist/layers/macd/MacdLayerConfig.d.ts +61 -0
  210. package/dist/layers/macd/calc.d.ts +4 -0
  211. package/dist/layers/macd/draw.d.ts +10 -0
  212. package/dist/layers/macd/index.d.ts +5 -0
  213. package/dist/layers/macd/parse.d.ts +4 -0
  214. package/dist/layers/priceLine/PriceLineLayer.d.ts +8 -0
  215. package/dist/layers/priceLine/PriceLineLayerConfig.d.ts +39 -0
  216. package/dist/layers/priceLine/calc.d.ts +5 -0
  217. package/dist/layers/priceLine/draw.d.ts +10 -0
  218. package/dist/layers/priceLine/index.d.ts +5 -0
  219. package/dist/layers/priceLine/parse.d.ts +4 -0
  220. package/dist/layers/rsi/RSILayer.d.ts +8 -0
  221. package/dist/layers/rsi/RsiLayerConfig.d.ts +40 -0
  222. package/dist/layers/rsi/calc.d.ts +4 -0
  223. package/dist/layers/rsi/draw.d.ts +10 -0
  224. package/dist/layers/rsi/index.d.ts +5 -0
  225. package/dist/layers/rsi/parse.d.ts +4 -0
  226. package/dist/layers/sma/SMALayer.d.ts +8 -0
  227. package/dist/layers/sma/SmaLayerConfig.d.ts +42 -0
  228. package/dist/layers/sma/calc.d.ts +4 -0
  229. package/dist/layers/sma/draw.d.ts +10 -0
  230. package/dist/layers/sma/index.d.ts +5 -0
  231. package/dist/layers/sma/parse.d.ts +4 -0
  232. package/dist/layers/stochastic/StochasticLayer.d.ts +8 -0
  233. package/dist/layers/stochastic/StochasticLayerConfig.d.ts +56 -0
  234. package/dist/layers/stochastic/calc.d.ts +4 -0
  235. package/dist/layers/stochastic/draw.d.ts +10 -0
  236. package/dist/layers/stochastic/index.d.ts +5 -0
  237. package/dist/layers/stochastic/parse.d.ts +4 -0
  238. package/dist/layers/volumeBars/VolumeBarsLayer.d.ts +8 -0
  239. package/dist/layers/volumeBars/VolumeBarsLayerConfig.d.ts +38 -0
  240. package/dist/layers/volumeBars/calc.d.ts +5 -0
  241. package/dist/layers/volumeBars/draw/draw.d.ts +10 -0
  242. package/dist/layers/volumeBars/draw/drawVolumeBar.d.ts +3 -0
  243. package/dist/layers/volumeBars/index.d.ts +5 -0
  244. package/dist/layers/volumeBars/parse.d.ts +4 -0
  245. package/dist/layout/getLayout.d.ts +5 -0
  246. package/dist/metrics/chart/calculateChartMetrics.d.ts +5 -0
  247. package/dist/metrics/layer/calculateLayerMetrics.d.ts +8 -0
  248. package/dist/metrics/layer/getIndicatorScalingValues.d.ts +3 -0
  249. package/dist/metrics/layer/getMinAndMaxValues.d.ts +8 -0
  250. package/dist/propTypes.d.ts +15 -0
  251. package/dist/propTypes.js +77 -0
  252. package/dist/react-candlesticks.css +6 -0
  253. package/dist/themes/defaultDarkTheme.d.ts +3 -0
  254. package/dist/themes/defaultLightTheme.d.ts +3 -0
  255. package/dist/themes/themes.d.ts +4 -0
  256. package/dist/timeScale/continuous/continuousTimeScale.d.ts +5 -0
  257. package/dist/timeScale/core/calculateNewScrollOffset.d.ts +3 -0
  258. package/dist/timeScale/core/createTimeScale.d.ts +15 -0
  259. package/dist/timeScale/gridLines/generateTimeGridLines.d.ts +5 -0
  260. package/dist/timeScale/gridLines/getTimeGridStep.d.ts +5 -0
  261. package/dist/timeScale/gridLines/isTimeGridLine.d.ts +7 -0
  262. package/dist/utils/createSelector.d.ts +8 -0
  263. package/dist/utils/throttle.d.ts +8 -0
  264. package/dist/utils/time/isoTimestampToMs.d.ts +8 -0
  265. package/dist/utils/time/localToUtc.d.ts +14 -0
  266. package/dist/utils/time/utcToLocal.d.ts +3 -0
  267. package/package.json +117 -0
@@ -0,0 +1,22 @@
1
+ import { LineConfig, LineConfigComplete } from '../../elements/line/LineConfig';
2
+ import { ValueLabelConfig, ValueLabelConfigComplete } from '../../elements/valueLabel/ValueLabelConfig';
3
+ export interface YAxisConfigComplete {
4
+ side: 'left' | 'right';
5
+ width: number;
6
+ border: null | LineConfigComplete;
7
+ labels: null | ValueLabelConfigComplete;
8
+ }
9
+ export interface YAxisConfig {
10
+ side?: 'left' | 'right';
11
+ width?: number;
12
+ border?: false | LineConfig;
13
+ labels?: false | ValueLabelConfig;
14
+ }
15
+ export interface YAxisTheme {
16
+ side: 'left' | 'right';
17
+ width: number;
18
+ border: LineConfigComplete;
19
+ labels: ValueLabelConfigComplete;
20
+ }
21
+ export declare const yAxisDefaults: Pick<YAxisConfigComplete, 'width' | 'side'>;
22
+ export declare const themeDefaultYAxis: YAxisTheme;
@@ -0,0 +1,3 @@
1
+ import { YAxisConfigComplete, YAxisConfig, YAxisTheme } from './YAxisConfig';
2
+ declare const parseYAxisConfig: (partialConfig: (false | YAxisConfig) | undefined, valueAxisTheme: YAxisTheme) => null | YAxisConfigComplete;
3
+ export default parseYAxisConfig;
@@ -0,0 +1,29 @@
1
+ import { LabelConfig, LabelConfigComplete } from '../elements/label/LabelConfig';
2
+ import { LegendFieldConfig, LegendFieldConfigComplete, LegendFieldTheme } from './LegendFieldConfig';
3
+ export interface LegendConfigComplete extends LabelConfigComplete {
4
+ left: number;
5
+ backgroundColor: string;
6
+ borderWidth: number;
7
+ borderColor: string;
8
+ hPadding: number;
9
+ vPadding: number;
10
+ borderRadius: number;
11
+ label: string;
12
+ fields: LegendFieldConfigComplete[];
13
+ }
14
+ export interface LegendConfig extends LabelConfig {
15
+ left?: number;
16
+ backgroundColor?: string;
17
+ borderWidth?: number;
18
+ borderColor?: string;
19
+ hPadding?: number;
20
+ vPadding?: number;
21
+ borderRadius?: number;
22
+ label?: string;
23
+ fields?: LegendFieldConfig[];
24
+ }
25
+ export interface LegendTheme extends Omit<LegendConfigComplete, 'fields'> {
26
+ fields: LegendFieldTheme[];
27
+ }
28
+ export declare const legendDefaults: Pick<LegendConfigComplete, 'left' | 'hPadding' | 'vPadding' | 'backgroundColor' | 'borderWidth' | 'borderColor' | 'borderRadius' | 'label'>;
29
+ export declare const themeDefaultLegend: Omit<LegendTheme, 'fields'>;
@@ -0,0 +1,31 @@
1
+ /**
2
+ * react-candlesticks, trendingcandles.com
3
+ *
4
+ * Copyright (c) 2026 Jason Wilson
5
+ * Licensed under the MIT License (see LICENSE file in the project root).
6
+ */
7
+ export type LegendValueSource = Record<string, unknown>;
8
+ export type LegendValueSelector = (obj: LegendValueSource) => number | undefined;
9
+ export interface LegendFieldConfigComplete {
10
+ output: string;
11
+ label?: string;
12
+ color: string;
13
+ valueSelector: LegendValueSelector;
14
+ }
15
+ export interface LegendFieldConfig {
16
+ output: string;
17
+ label?: string;
18
+ color?: string;
19
+ }
20
+ export interface LegendFieldTheme {
21
+ output: string;
22
+ color: string;
23
+ label?: string;
24
+ }
25
+ export interface LegendFieldConfigDefaultsForLayer {
26
+ output: string;
27
+ label: string;
28
+ color?: string;
29
+ valueSelector: LegendValueSelector;
30
+ }
31
+ export declare const legendFieldDefaults: Omit<LegendFieldConfigComplete, 'output' | 'valueSelector'>;
@@ -0,0 +1,4 @@
1
+ import { LegendConfigComplete, LegendConfig, LegendTheme } from './LegendConfig';
2
+ import { LegendFieldConfigDefaultsForLayer } from './LegendFieldConfig';
3
+ declare const parseLegendConfig: (partialConfig: (false | LegendConfig) | undefined, legendTheme: LegendTheme, fieldsDefaultsForLayer: Record<string, LegendFieldConfigDefaultsForLayer>) => null | LegendConfigComplete;
4
+ export default parseLegendConfig;
@@ -0,0 +1,3 @@
1
+ import { LegendFieldConfig, LegendFieldConfigComplete, LegendFieldConfigDefaultsForLayer, LegendFieldTheme } from './LegendFieldConfig';
2
+ declare const parseLegendFieldConfig: (partialConfig: LegendFieldConfig, legendFieldTheme: LegendFieldTheme, fieldsDefaultsForLayer: LegendFieldConfigDefaultsForLayer) => LegendFieldConfigComplete;
3
+ export default parseLegendFieldConfig;
@@ -0,0 +1,3 @@
1
+ import { LegendFieldConfig, LegendFieldConfigComplete, LegendFieldConfigDefaultsForLayer, LegendFieldTheme } from './LegendFieldConfig';
2
+ declare const parseLegendFieldConfigs: (partialConfigs: LegendFieldConfig[] | undefined, legendFieldThemes: LegendFieldTheme[] | undefined, fieldsDefaultsForLayer: Record<string, LegendFieldConfigDefaultsForLayer>) => LegendFieldConfigComplete[];
3
+ export default parseLegendFieldConfigs;
@@ -0,0 +1,7 @@
1
+ import { ReactNode } from 'react';
2
+ import { PanelConfig } from './PanelConfig';
3
+ export interface PanelProps extends Omit<PanelConfig, 'layers'> {
4
+ children?: ReactNode;
5
+ }
6
+ declare const Panel: (_props: PanelProps) => null;
7
+ export default Panel;
@@ -0,0 +1,30 @@
1
+ import { PanelYAxes } from '../../drawing/panel/getPanelYAxes';
2
+ import { LayerConfig, LayerConfigComplete } from '../../config/layer/LayerConfig';
3
+ import { LineConfig, LineConfigComplete } from '../elements/line/LineConfig';
4
+ import { PanelControlsConfig, PanelControlsConfigComplete, PanelControlsTheme } from './controls/PanelControlsConfig';
5
+ export interface PanelConfigComplete {
6
+ id: string;
7
+ heightRatio: number;
8
+ paddingTop: number;
9
+ paddingBottom: number;
10
+ borderTop: null | LineConfigComplete;
11
+ layers: LayerConfigComplete[];
12
+ controls: PanelControlsConfigComplete;
13
+ yAxes: PanelYAxes;
14
+ }
15
+ export interface PanelConfig {
16
+ id?: string;
17
+ heightRatio?: number;
18
+ paddingTop?: number;
19
+ paddingBottom?: number;
20
+ borderTop?: LineConfig;
21
+ layers: LayerConfig[];
22
+ controls?: PanelControlsConfig;
23
+ }
24
+ export interface PanelTheme {
25
+ paddingTop: number;
26
+ paddingBottom: number;
27
+ borderTop: LineConfigComplete;
28
+ controls: PanelControlsTheme;
29
+ }
30
+ export declare const panelDefaults: Pick<PanelConfigComplete, 'heightRatio' | 'paddingTop' | 'paddingBottom'>;
@@ -0,0 +1,10 @@
1
+ import { ButtonConfig, ButtonConfigComplete, ButtonTheme } from '../../elements/button/ButtonConfig';
2
+ export interface PanelControlsConfigComplete {
3
+ goToLatestButton: null | ButtonConfigComplete;
4
+ }
5
+ export interface PanelControlsConfig {
6
+ goToLatestButton?: false | ButtonConfig;
7
+ }
8
+ export interface PanelControlsTheme {
9
+ goToLatestButton: ButtonTheme;
10
+ }
@@ -0,0 +1,3 @@
1
+ import { PanelControlsConfig, PanelControlsConfigComplete, PanelControlsTheme } from './PanelControlsConfig';
2
+ declare const parsePanelControlsConfig: (partialConfig: PanelControlsConfig, panelControlsTheme: PanelControlsTheme) => PanelControlsConfigComplete;
3
+ export default parsePanelControlsConfig;
@@ -0,0 +1,4 @@
1
+ import { Theme } from '../../domain/types/Theme';
2
+ import { PanelConfig, PanelConfigComplete } from './PanelConfig';
3
+ declare const parsePanelConfig: (partialConfig: PanelConfig, theme: Theme, panelIndex: number) => Omit<PanelConfigComplete, "yAxes">;
4
+ export default parsePanelConfig;
@@ -0,0 +1,4 @@
1
+ import { Theme } from '../../domain/types/Theme';
2
+ import { PanelConfig, PanelConfigComplete } from './PanelConfig';
3
+ declare const parsePanelConfigs: (partialPanelConfigs: readonly [PanelConfig, ...PanelConfig[]], theme: Theme) => Omit<PanelConfigComplete, "yAxes">[];
4
+ export default parsePanelConfigs;
@@ -0,0 +1,4 @@
1
+ import { LayersTopology } from '../../config/layer/createLayerTopology';
2
+ import { PanelConfigComplete } from './PanelConfig';
3
+ declare const setPanelYAxes: (panelConfigsWithoutYAxes: Omit<PanelConfigComplete, "yAxes">[], layersTopology: LayersTopology) => PanelConfigComplete[];
4
+ export default setPanelYAxes;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * react-candlesticks, trendingcandles.com
3
+ *
4
+ * Copyright (c) 2026 Jason Wilson
5
+ * Licensed under the MIT License (see LICENSE file in the project root).
6
+ */
7
+ export declare const assertFiniteNumber: (value: number, label: string) => number;
8
+ export declare const assertNonNegativeNumber: (value: number, label: string) => number;
9
+ export declare const assertPositiveNumber: (value: number, label: string) => number;
@@ -0,0 +1,25 @@
1
+ import { ValueMarkerMode } from './ValueMarkerMode';
2
+ import { ValueMarkerConfig, ValueMarkerConfigComplete, ValueMarkerTheme } from './ValueMarkerConfig';
3
+ export interface DirectionalValueMarkerConfigComplete {
4
+ mode: ValueMarkerMode;
5
+ showLine: boolean;
6
+ showLabel: boolean;
7
+ up: Omit<ValueMarkerConfigComplete, 'mode'>;
8
+ down: Omit<ValueMarkerConfigComplete, 'mode'>;
9
+ flat: Omit<ValueMarkerConfigComplete, 'mode'>;
10
+ }
11
+ export interface DirectionalValueMarkerConfig {
12
+ mode?: ValueMarkerMode;
13
+ showLine?: boolean;
14
+ showLabel?: boolean;
15
+ up?: Omit<ValueMarkerConfig, 'mode'>;
16
+ down?: Omit<ValueMarkerConfig, 'mode'>;
17
+ flat?: Omit<ValueMarkerConfig, 'mode'>;
18
+ }
19
+ export interface DirectionalValueMarkerTheme {
20
+ up: ValueMarkerTheme;
21
+ down: ValueMarkerTheme;
22
+ flat: ValueMarkerTheme;
23
+ }
24
+ export declare const directionalValueMarkerDefaults: Pick<DirectionalValueMarkerConfigComplete, 'mode' | 'showLine' | 'showLabel'>;
25
+ export declare const themeDefaultDirectionalValueMarker: DirectionalValueMarkerTheme;
@@ -0,0 +1,19 @@
1
+ import { BoxedValueLabelConfig, BoxedValueLabelConfigComplete } from '../elements/boxedValueLabel/BoxedValueLabelConfig';
2
+ import { LineConfig, LineConfigComplete } from '../elements/line/LineConfig';
3
+ import { ValueMarkerMode } from './ValueMarkerMode';
4
+ export interface ValueMarkerConfigComplete {
5
+ mode: ValueMarkerMode;
6
+ line: null | LineConfigComplete;
7
+ label: null | BoxedValueLabelConfigComplete;
8
+ }
9
+ export interface ValueMarkerConfig {
10
+ mode?: ValueMarkerMode;
11
+ line?: false | LineConfig;
12
+ label?: false | BoxedValueLabelConfig;
13
+ }
14
+ export interface ValueMarkerTheme {
15
+ line: LineConfigComplete;
16
+ label: BoxedValueLabelConfigComplete;
17
+ }
18
+ export declare const valueMarkerDefaults: Pick<ValueMarkerConfigComplete, 'mode' | 'line'>;
19
+ export declare const themeDefaultValueMarker: ValueMarkerTheme;
@@ -0,0 +1,7 @@
1
+ /**
2
+ * react-candlesticks, trendingcandles.com
3
+ *
4
+ * Copyright (c) 2026 Jason Wilson
5
+ * Licensed under the MIT License (see LICENSE file in the project root).
6
+ */
7
+ export type ValueMarkerMode = 'last-visible' | 'last-data';
@@ -0,0 +1,3 @@
1
+ import { DirectionalValueMarkerConfig, DirectionalValueMarkerConfigComplete, DirectionalValueMarkerTheme } from './DirectionalValueMarkerConfig';
2
+ declare const parseDirectionalValueMarkerConfig: (partialConfig?: false | DirectionalValueMarkerConfig, defaults?: DirectionalValueMarkerTheme) => null | DirectionalValueMarkerConfigComplete;
3
+ export default parseDirectionalValueMarkerConfig;
@@ -0,0 +1,3 @@
1
+ import { ValueMarkerConfig, ValueMarkerConfigComplete, ValueMarkerTheme } from './ValueMarkerConfig';
2
+ declare const parseValueMarkerConfig: (partialConfig?: false | ValueMarkerConfig, valueMarkerTheme?: ValueMarkerTheme, color?: string) => null | ValueMarkerConfigComplete;
3
+ export default parseValueMarkerConfig;
@@ -0,0 +1,4 @@
1
+ import { LayersTopology } from '../../config/layer/createLayerTopology';
2
+ import { LayerConfigComplete } from '../../config/layer/LayerConfig';
3
+ import { LayersData } from '../../domain/types/LayersData';
4
+ export declare const createLayersData: (layers: LayerConfigComplete[], layersTopology: LayersTopology, barsLength: number) => LayersData;
@@ -0,0 +1,4 @@
1
+ import { DataMap } from '../../domain/types/DataMap';
2
+ import { CalculationContext } from './updateLayersData';
3
+ declare const createPriceVolumeCalculationContext: (dataMap: DataMap) => CalculationContext;
4
+ export default createPriceVolumeCalculationContext;
@@ -0,0 +1,5 @@
1
+ import { DataMap } from '../../domain/types/DataMap';
2
+ import { LayersData } from '../../domain/types/LayersData';
3
+ import { CalculationContext } from './updateLayersData';
4
+ declare const createPriceVolumeDerivedLayerCalculationContext: (dataMap: DataMap, layersData: LayersData) => CalculationContext;
5
+ export default createPriceVolumeDerivedLayerCalculationContext;
@@ -0,0 +1,7 @@
1
+ import { InputSource } from '../../config/layer/BaseLayerConfig';
2
+ import { DataMap } from '../../domain/types/DataMap';
3
+ import { LayerInputSeries, LayersData } from '../../domain/types/LayersData';
4
+ export interface CalculationContext {
5
+ resolve(input: InputSource): LayerInputSeries | null;
6
+ }
7
+ export declare const updateLayersData: (layersData: LayersData, dataMap: DataMap, startBarIndex: number, endBarIndex: number) => void;
@@ -0,0 +1,9 @@
1
+ import { DataPoint } from '../../domain/types/DataPoint';
2
+ import { Granularity } from '../../domain/types/Granularity';
3
+ import { IndexBlock } from '../../domain/types/IndexBlock';
4
+ import { DataMap } from '../../domain/types/DataMap';
5
+ export interface BuildDataMapOptions {
6
+ weekStartDay?: number;
7
+ }
8
+ declare const buildDataMap: (data: DataPoint[], granularity: Granularity, blocks: IndexBlock[], options?: BuildDataMapOptions) => DataMap;
9
+ export default buildDataMap;
@@ -0,0 +1,4 @@
1
+ import { DataPoint } from '../../domain/types/DataPoint';
2
+ import { Granularity } from '../../domain/types/Granularity';
3
+ declare const deduceGranularity: (data: DataPoint[]) => Granularity;
4
+ export default deduceGranularity;
@@ -0,0 +1,4 @@
1
+ import { Granularity } from '../../domain/types/Granularity';
2
+ import { TimeUnit } from '../../domain/types/TimeUnit';
3
+ declare const granularityToTimeUnit: (granularity: Granularity) => TimeUnit;
4
+ export default granularityToTimeUnit;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * react-candlesticks, trendingcandles.com
3
+ *
4
+ * Copyright (c) 2026 Jason Wilson
5
+ * Licensed under the MIT License (see LICENSE file in the project root).
6
+ */
7
+ declare const DAYS: string[];
8
+ export default DAYS;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * react-candlesticks, trendingcandles.com
3
+ *
4
+ * Copyright (c) 2026 Jason Wilson
5
+ * Licensed under the MIT License (see LICENSE file in the project root).
6
+ */
7
+ declare const MONTHS: string[];
8
+ export default MONTHS;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * react-candlesticks, trendingcandles.com
3
+ *
4
+ * Copyright (c) 2026 Jason Wilson
5
+ * Licensed under the MIT License (see LICENSE file in the project root).
6
+ */
7
+ export declare const MINUTE_MS = 60000;
8
+ export declare const HOUR_MS = 3600000;
9
+ export declare const DAY_MS = 86400000;
10
+ export declare const WEEK_MS: number;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * react-candlesticks, trendingcandles.com
3
+ *
4
+ * Copyright (c) 2026 Jason Wilson
5
+ * Licensed under the MIT License (see LICENSE file in the project root).
6
+ */
7
+ export declare const allTimeZones: () => string[];
8
+ export declare const timeZones: () => string[];
@@ -0,0 +1,18 @@
1
+ import { DataPoint } from './DataPoint';
2
+ import { Granularity } from './Granularity';
3
+ export interface OHLCVData {
4
+ timestamp: Float64Array;
5
+ timeLabel: Float64Array;
6
+ open: Float64Array;
7
+ high: Float64Array;
8
+ low: Float64Array;
9
+ close: Float64Array;
10
+ volume: Float64Array;
11
+ }
12
+ export interface DataMap {
13
+ granularity: Granularity;
14
+ rawData: DataPoint[];
15
+ dataIndexByBar: Int32Array;
16
+ ohlcvs: OHLCVData;
17
+ lastBarWithDataIndex?: number;
18
+ }
@@ -0,0 +1,14 @@
1
+ /**
2
+ * react-candlesticks, trendingcandles.com
3
+ *
4
+ * Copyright (c) 2026 Jason Wilson
5
+ * Licensed under the MIT License (see LICENSE file in the project root).
6
+ */
7
+ export interface DataPoint {
8
+ time: string;
9
+ open: number;
10
+ high: number;
11
+ low: number;
12
+ close: number;
13
+ volume: number;
14
+ }
@@ -0,0 +1,9 @@
1
+ import { LayerDataInstance } from './LayersData';
2
+ import { OHLCVData } from './DataMap';
3
+ export interface DataPointInfo {
4
+ x: number;
5
+ barIndex: number;
6
+ ohlcvs: OHLCVData;
7
+ layerDataInstances: Record<string, LayerDataInstance>;
8
+ }
9
+ export default DataPointInfo;
@@ -0,0 +1,7 @@
1
+ /**
2
+ * react-candlesticks, trendingcandles.com
3
+ *
4
+ * Copyright (c) 2026 Jason Wilson
5
+ * Licensed under the MIT License (see LICENSE file in the project root).
6
+ */
7
+ export type DateTimeFormatToken = 'ddd DD MMM YY HH:mm' | 'ddd DD MMM YY';
@@ -0,0 +1,7 @@
1
+ /**
2
+ * react-candlesticks, trendingcandles.com
3
+ *
4
+ * Copyright (c) 2026 Jason Wilson
5
+ * Licensed under the MIT License (see LICENSE file in the project root).
6
+ */
7
+ export type Granularity = 'm1' | 'm2' | 'm3' | 'm5' | 'm10' | 'm15' | 'm30' | 'h1' | 'h2' | 'h4' | 'd1' | 'w1' | 'M1';
@@ -0,0 +1,20 @@
1
+ import { RawSession } from './RawSession';
2
+ /**
3
+ * one contiguous region of constant sized bars
4
+ * this is your lookup table
5
+ */
6
+ export type IndexBlock = {
7
+ session: RawSession | null;
8
+ sessions?: RawSession[];
9
+ startIndex: number;
10
+ startTs: number;
11
+ endTs: number;
12
+ barSizeMs: number;
13
+ bars: number;
14
+ calendar?: boolean;
15
+ daily?: boolean;
16
+ weekly?: boolean;
17
+ monthly?: boolean;
18
+ dayStartMs?: number;
19
+ labelTs?: number;
20
+ };
@@ -0,0 +1,13 @@
1
+ import { DataMap } from './DataMap';
2
+ import { TimeScale } from './TimeScale';
3
+ export interface IndexProvider {
4
+ marketHoursConfigComplete: unknown;
5
+ sessionsAndBlocks: unknown;
6
+ dataMap: DataMap;
7
+ barsLength: number;
8
+ firstDataPointIndex?: number;
9
+ lastDataPointIndex?: number;
10
+ indexToTimestamp: (timestamp: number) => number | undefined;
11
+ findClosestIndex: (timestamp: number) => number;
12
+ getTimescale: (intervalSize: number, scrollOffset: number, viewportWidth: number) => TimeScale;
13
+ }
@@ -0,0 +1,20 @@
1
+ import { LayersTopology } from '../../config/layer/createLayerTopology';
2
+ import { LayerConfigComplete } from '../../config/layer/LayerConfig';
3
+ import { LayerType } from '../../config/layer/LayerType';
4
+ export interface LayerInputSeries {
5
+ id: string;
6
+ values: Float64Array;
7
+ }
8
+ export interface LayerDataInstance {
9
+ id: string;
10
+ layerType: LayerType;
11
+ layerConfig: LayerConfigComplete;
12
+ inputs: Record<string, LayerInputSeries>;
13
+ outputValues: Record<string, Float64Array>;
14
+ computedStartIndex: number;
15
+ computedEndIndex: number;
16
+ }
17
+ export interface LayersData {
18
+ layerDataInstances: Record<string, LayerDataInstance>;
19
+ layersTopology: LayersTopology;
20
+ }
@@ -0,0 +1,19 @@
1
+ /**
2
+ * react-candlesticks, trendingcandles.com
3
+ *
4
+ * Copyright (c) 2026 Jason Wilson
5
+ * Licensed under the MIT License (see LICENSE file in the project root).
6
+ */
7
+ export interface Layout {
8
+ dpr: number;
9
+ chartWidth: number;
10
+ chartHeight: number;
11
+ drawingAreaX: number;
12
+ drawingAreaY: number;
13
+ drawingAreaWidth: number;
14
+ drawingAreaHeight: number;
15
+ drawingAreaX1: number;
16
+ drawingAreaY1: number;
17
+ drawingAreaRight: number;
18
+ drawingAreaBottom: number;
19
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * react-candlesticks, trendingcandles.com
3
+ *
4
+ * Copyright (c) 2026 Jason Wilson
5
+ * Licensed under the MIT License (see LICENSE file in the project root).
6
+ */
7
+ export interface LocalDateTimeWithDow {
8
+ year: number;
9
+ month: number;
10
+ day: number;
11
+ hour: number;
12
+ minute: number;
13
+ dow: number;
14
+ offset: number;
15
+ }
16
+ export type LocalDate = {
17
+ year: number;
18
+ month: number;
19
+ day: number;
20
+ };
21
+ export type LocalTime = {
22
+ hour: number;
23
+ minute: number;
24
+ };
25
+ export type LocalDateTime = LocalDate & LocalTime;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * react-candlesticks, trendingcandles.com
3
+ *
4
+ * Copyright (c) 2026 Jason Wilson
5
+ * Licensed under the MIT License (see LICENSE file in the project root).
6
+ */
7
+ /** one trading session in pure wall-clock */
8
+ export type RawSession = {
9
+ open: number;
10
+ close: number;
11
+ dayStartUtc: number;
12
+ weekStartUtc: number;
13
+ monthStartUtc: number;
14
+ };
@@ -0,0 +1,17 @@
1
+ import { GridTheme } from '../../config/chart/grid/GridConfig';
2
+ import { CrosshairsTheme } from '../../config/chart/crosshairs/CrosshairsConfig';
3
+ import { PanelTheme } from '../../config/panel/PanelConfig';
4
+ import { LayersTheme } from '../../config/layer/LayerConfig';
5
+ import { BordersTheme } from '../../config/chart/borders/BordersConfig';
6
+ import { XAxisTheme } from '../../config/chart/xAxis/XAxisConfig';
7
+ export interface Theme {
8
+ chart: {
9
+ backgroundColor: string;
10
+ xAxis: XAxisTheme;
11
+ borders: BordersTheme;
12
+ grid: GridTheme;
13
+ crosshairs: CrosshairsTheme;
14
+ };
15
+ panels: PanelTheme;
16
+ layers: LayersTheme;
17
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * react-candlesticks, trendingcandles.com
3
+ *
4
+ * Copyright (c) 2026 Jason Wilson
5
+ * Licensed under the MIT License (see LICENSE file in the project root).
6
+ */
7
+ export type TimeFormatToken = 'HH:mm' | 'DD/MM' | 'MMM' | 'YYYY';
@@ -0,0 +1,21 @@
1
+ import { Granularity } from './Granularity';
2
+ import { TimeGridLine } from './gridLine/TimeGridLine';
3
+ export interface TimeScale {
4
+ metadata: {
5
+ granularity: Granularity;
6
+ intervalSize: number;
7
+ halfInterval: number;
8
+ viewportWidth: number;
9
+ scrollOffset: number;
10
+ };
11
+ sessionsAndBlocks: unknown;
12
+ startIntervalIndex: number;
13
+ endIntervalIndex: number;
14
+ startBarIndex: number;
15
+ endBarIndex: number;
16
+ gridLines: TimeGridLine[];
17
+ xToBarIndex: (x: number, round?: boolean) => number;
18
+ xToIntervalX: (x: number, scrollOffset: number) => number;
19
+ timestampToIndex: (timestamp: number, nearest?: boolean) => number | undefined;
20
+ getLastVisibleBarIndex: (lastValidBarIndex: number) => number;
21
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * react-candlesticks, trendingcandles.com
3
+ *
4
+ * Copyright (c) 2026 Jason Wilson
5
+ * Licensed under the MIT License (see LICENSE file in the project root).
6
+ */
7
+ export type TimeUnit = 'minute' | 'hour' | 'day' | 'week' | 'month' | 'year';
@@ -0,0 +1,18 @@
1
+ import { DataPoint } from './DataPoint';
2
+ import { LayersData } from './LayersData';
3
+ import { default as DataPointInfo } from './DataPointInfo';
4
+ import { IndexProvider } from './IndexProvider';
5
+ import { TimeScale } from './TimeScale';
6
+ import { DataMap } from './DataMap';
7
+ export type ViewportData = {
8
+ indexProvider: IndexProvider;
9
+ timeScale: TimeScale;
10
+ data: DataPoint[];
11
+ dataMap: DataMap;
12
+ layersData: LayersData;
13
+ scrollOffset: number;
14
+ startBarIndex: number;
15
+ endBarIndex: number;
16
+ xToDataPoint: (x: number) => DataPointInfo;
17
+ };
18
+ export default ViewportData;
@@ -0,0 +1,7 @@
1
+ import { TimeGridStep } from './TimeGridStep';
2
+ export interface TimeGridLine {
3
+ step: TimeGridStep;
4
+ barIndex: number;
5
+ timestamp: number;
6
+ major?: boolean;
7
+ }
@@ -0,0 +1,14 @@
1
+ import { Granularity } from '../Granularity';
2
+ import { TimeUnit } from '../TimeUnit';
3
+ export interface TimeGridStep {
4
+ granularity: Granularity;
5
+ unit: TimeUnit;
6
+ number: number;
7
+ multiple: number;
8
+ parity?: boolean;
9
+ even?: boolean;
10
+ showLabel?: boolean;
11
+ major?: boolean;
12
+ isSecondaryLabel?: boolean;
13
+ parityGridLine?: TimeGridStep;
14
+ }