acttrader-charts 1.0.21 → 1.1.1

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.
package/README.md CHANGED
@@ -280,17 +280,21 @@ When `enableTrading` is on and live BID/ASK data is streaming, hovering / activa
280
280
  | `tickClosePriceSource` | | `"bid"` | Which quote side drives live tick close/high/low (`"bid"` or `"ask"`) |
281
281
  | `showBidAskLines` | | `false` | Show both bid and ask as dashed lines during a live stream |
282
282
  | `showActLogo` | | `false` | Show the ACT watermark logo in the bottom-left corner |
283
- | `showCandleCountdown` | | `true` | Show countdown timer on the live candle |
283
+ | `showCandleCountdown` | | `true` | Show countdown timer on the live candle (time axis) |
284
284
  | `candleCountdownTimeframes` | | intraday only | Timeframes where the countdown appears; `'all'` or `Timeframe[]` |
285
+ | `showPriceAxisCountdown` | | `false` | Show candle countdown timer on the right price axis, just below the live price tag. Honours `candleCountdownTimeframes`. Toggleable from the Settings dialog (Appearance tab). |
285
286
  | `maxSubPanes` | | `3` | Max simultaneous oscillator sub-panes |
286
287
  | `tradeDisplayFilter` | | `"all"` | Which TFC levels are visible: `"all"` · `"positions"` · `"orders"` · `"none"` |
287
288
  | `positionRenderStyle` | | auto | Force position render style: `"line"` or `"dot"` |
288
289
  | `hideLevelConfirmCancel` | | `false` | Hide on-canvas ✓/✗ confirm-cancel buttons for TFC level edits |
290
+ | `deselectActiveOnOutsideClick` | | `false` | When `true`, clicking/tapping anywhere outside a selected trade level dismisses it (reverting any pending edits, mirroring ✗ Cancel). Default `false` keeps the level active so incidental clicks — price-axis resize, taps outside the QTY input — don't drop an in-progress edit. The level can still be dismissed via ✓/✗, tapping the level again, or `setLevels()` removing it |
291
+ | `showTradeLevelsAlways` | | `false` | Always render SL/TP bracket lines + price pills, even when the parent level is not hovered or selected. The close (×) button stays hover-only so the chart isn't cluttered. Toggleable from the Settings dialog (Trading tab). Persisted in `localStorage`. |
289
292
  | `tradeLevelButtonScale` | | `1` | Multiplier for trade-level Confirm/Cancel/Edit/Close button radii and gaps. Scales visuals **and** hit/drag areas together — raise it on touch devices for larger tap targets. Clamped to `[1, 3]`. Also settable at runtime via `chart.setTradeLevelButtonScale(scale)` |
290
293
  | `tfcEnabled` | | `true` | Enable the TFC toggle button in the top bar. When `false`, TFC is completely disabled — the toggle button is hidden and all trade levels, draft orders, and the floating trade button are suppressed |
291
294
  | `levelClusteringEnabled` | | `true` | Enable trade-level fan-out clustering; overlapping levels group into expandable badges |
292
295
  | `clusterThresholdDistance` | | `20` | Pixel proximity threshold for clustering (only when `levelClusteringEnabled` is `true`) |
293
- | `hideSymbolAndTick` | | `false` | Hide the symbol name, OHLC strip, and tick-activity dot overlay |
296
+ | `hideSymbolAndTick` | | `false` | Hide the symbol name and tick-activity (streaming) dot in the top-left overlay. Does **not** affect the OHLC(V) strip — use `hideOHLCV` for that |
297
+ | `hideOHLCV` | | `false` | Hide the OHLC(V) data strip (`O: H: L: C: V:`) in the top-left overlay. Independent of `hideSymbolAndTick` — set both to `true` to hide the entire overlay |
294
298
  | `showBottomBar` | | `false` | Show the bottom duration-selector bar |
295
299
  | `hideQtyButton` | | `false` | Hide the floating Qty input overlay on draft orders |
296
300
  | `showQuantityField` | | `false` | Render an editable QTY pill at the left of the draft order info box. Clicking the pill opens a flyout input to edit the quantity before submitting |
@@ -426,6 +426,12 @@ interface TradeLevelColors {
426
426
  /** Color of the drag grip icon when hovered. */
427
427
  dragHandleHover: string;
428
428
  }
429
+ /**
430
+ * Default per-drawing-type style fallbacks. Each drawing type has an entry that
431
+ * provides default stroke/fill/text values; per-instance `IDrawing.style`
432
+ * overrides these. Used by `resolveStyle()` in `src/drawings/styleUtils.ts`.
433
+ */
434
+ type DrawingThemeMap = Record<DrawingToolType, AnyDrawingStyle>;
429
435
  /** Colors for the Trade Panel side drawer. */
430
436
  interface TradePanelColors {
431
437
  background: string;
@@ -476,6 +482,8 @@ interface ChartTheme {
476
482
  tradeLevels: TradeLevelColors;
477
483
  /** Trade Panel side drawer colors */
478
484
  tradePanel: TradePanelColors;
485
+ /** Per-drawing-type default style fallbacks (keyed by DrawingToolType). */
486
+ drawing: DrawingThemeMap;
479
487
  }
480
488
  /** A deep-partial version of ChartTheme for use in `themeOverrides`. */
481
489
  type DeepPartialChartTheme = DeepPartial<ChartTheme>;
@@ -871,6 +879,31 @@ interface ChartConfig {
871
879
  * Default: `false`.
872
880
  */
873
881
  hideLevelConfirmCancel?: boolean;
882
+ /**
883
+ * When `true`, clicking or tapping anywhere outside a selected/active trade
884
+ * level dismisses it (reverting any pending edits, mirroring ✗ Cancel).
885
+ * When `false` (default), the active level is preserved across outside
886
+ * clicks — only explicit ✓ / ✗ buttons, tapping the level itself, or
887
+ * `setLevels()` removing it will dismiss it. Recommended `false` so
888
+ * incidental clicks (e.g. price-axis resize, tapping outside the QTY input)
889
+ * don't drop the user's in-progress edit.
890
+ * Default: `false`.
891
+ */
892
+ deselectActiveOnOutsideClick?: boolean;
893
+ /**
894
+ * Always render SL/TP bracket lines + price pills, even when the parent
895
+ * trade level is not hovered or selected. Close (×) buttons remain
896
+ * hover-only to keep the chart uncluttered.
897
+ * Default: `false`.
898
+ */
899
+ showTradeLevelsAlways?: boolean;
900
+ /**
901
+ * Show the candle countdown timer on the right price axis, just below
902
+ * the live price tag. Subject to the same `candleCountdownTimeframes`
903
+ * filter as the time-axis countdown.
904
+ * Default: `false`.
905
+ */
906
+ showPriceAxisCountdown?: boolean;
874
907
  /**
875
908
  * Multiplier applied to the Confirm (✓), Cancel (✗), Edit (✎), and Close (×)
876
909
  * buttons on trade-level overlays (both main-level and SL/TP bracket boxes).
@@ -885,11 +918,18 @@ interface ChartConfig {
885
918
  */
886
919
  enableThemeToggle?: boolean;
887
920
  /**
888
- * Hide the symbol name, OHLC strip, and tick-activity dot overlay
889
- * shown in the top-left corner of the chart canvas.
890
- * Default: `false` (overlay is visible).
921
+ * Hide the symbol name and tick-activity (streaming) dot shown in the
922
+ * top-left corner of the chart canvas. The OHLC(V) data strip is **not**
923
+ * affected by this flag — use `hideOHLCV` to hide it independently.
924
+ * Default: `false` (symbol + dot are visible).
891
925
  */
892
926
  hideSymbolAndTick?: boolean;
927
+ /**
928
+ * Hide the OHLC(V) data strip rendered in the top-left overlay
929
+ * (the `O: H: L: C: V:` line(s)). Independent of `hideSymbolAndTick`.
930
+ * Default: `false` (strip is visible).
931
+ */
932
+ hideOHLCV?: boolean;
893
933
  /**
894
934
  * Show the bottom duration-selector bar.
895
935
  * Default: `false` (bar is hidden).
@@ -943,6 +983,38 @@ interface DrawingHandle {
943
983
  pointIndex: number;
944
984
  cursor: string;
945
985
  }
986
+ /** Base per-instance style fields applicable to every drawing. */
987
+ interface DrawingStyle {
988
+ /** Primary line/border/marker color. */
989
+ strokeColor?: string;
990
+ /** Stroke width in px (typically 1–4). */
991
+ lineWidth?: number;
992
+ /** Dash pattern for lines and shape borders. */
993
+ lineStyle?: 'solid' | 'dashed' | 'dotted';
994
+ /** Fill color for shapes that have a fill (rectangle, channel, fib level fills). */
995
+ fillColor?: string;
996
+ /** Fill opacity (0..1). */
997
+ fillOpacity?: number;
998
+ }
999
+ /** Extends DrawingStyle for text-bearing drawings (text, callout, anchoredNote, priceNote). */
1000
+ interface DrawingTextStyle extends DrawingStyle {
1001
+ /** Foreground text color. */
1002
+ textColor?: string;
1003
+ /** Font size in px (default 13). */
1004
+ fontSize?: number;
1005
+ }
1006
+ /** Per-level visibility + color for multi-level drawings (fib family, gann box). */
1007
+ interface DrawingLevelStyle {
1008
+ visible: boolean;
1009
+ color: string;
1010
+ }
1011
+ /** Extends DrawingStyle for fib/multi-level drawings. */
1012
+ interface DrawingFibStyle extends DrawingStyle {
1013
+ /** Map of level value (as string, e.g. '0', '0.236', '0.5', '1') → per-level style. */
1014
+ levels?: Record<string, DrawingLevelStyle>;
1015
+ }
1016
+ /** Union of all drawing style shapes. */
1017
+ type AnyDrawingStyle = DrawingStyle | DrawingTextStyle | DrawingFibStyle;
946
1018
  interface IDrawing {
947
1019
  id: string;
948
1020
  type: DrawingToolType;
@@ -951,7 +1023,9 @@ interface IDrawing {
951
1023
  visible?: boolean;
952
1024
  locked?: boolean;
953
1025
  text?: string;
954
- render(ctx: CanvasRenderingContext2D, scale: ScaleManager, viewport: Viewport, priceRange: PriceRange, chartW: number, chartH: number, isSelected: boolean, pricePrecision?: number): void;
1026
+ /** Optional per-instance style override; falls back to theme defaults when absent. */
1027
+ style?: AnyDrawingStyle;
1028
+ render(ctx: CanvasRenderingContext2D, scale: ScaleManager, viewport: Viewport, priceRange: PriceRange, chartW: number, chartH: number, isSelected: boolean, pricePrecision?: number, theme?: ChartTheme): void;
955
1029
  hitTest(x: number, y: number, scale: ScaleManager, viewport: Viewport, priceRange: PriceRange, chartW: number, chartH: number): boolean;
956
1030
  /** Returns the handle under (x, y), or null if none */
957
1031
  getHandle(x: number, y: number, scale: ScaleManager, viewport: Viewport, priceRange: PriceRange, chartW: number, chartH: number): DrawingHandle | null;
@@ -985,6 +1059,8 @@ interface SerializedDrawing {
985
1059
  visible?: boolean;
986
1060
  text?: string;
987
1061
  locked?: boolean;
1062
+ /** Optional per-instance style override; absent for drawings using theme defaults. */
1063
+ style?: AnyDrawingStyle;
988
1064
  }
989
1065
  /** Serializable per-symbol chart state emitted via the `stateChange` event. */
990
1066
  interface IndicatorStateEntry {
@@ -1442,4 +1518,4 @@ declare class MACD implements IIndicator {
1442
1518
  render(ctx: CanvasRenderingContext2D, results: IndicatorResult[], scale: ScaleManager, viewport: Viewport, paneHeight: number, rangeOverride?: PriceRange): void;
1443
1519
  }
1444
1520
 
1445
- export { type IndicatorOverlayUiConfig as $, type AnyLevel as A, BollingerBands as B, type ChartConfig as C, type DrawingToolType as D, DEFAULT_INDICATOR_OVERLAY_CONFIG as E, DEFAULT_LABELS as F, DEFAULT_PRICE_AXIS_CONFIG as G, DEFAULT_TIME_AXIS_CONFIG as H, type IIndicator as I, DEFAULT_TOP_BAR_CONFIG as J, DEFAULT_TRADE_BUTTON_CONFIG as K, DEFAULT_UI_CONFIG as L, type DataLoaderParams as M, type DeepPartial$1 as N, type OHLCVBar as O, type PriceRange as P, type DeepPartialChartTheme as Q, type DialogLabels as R, type SeriesType as S, type Timeframe as T, type DrawingToolbarColors as U, type Viewport as V, type DrawingToolbarLabels as W, type DrawingToolbarUiConfig as X, type Duration as Y, EMA as Z, type IndicatorOverlayColors as _, type ChartEventMap as a, type IndicatorParams as a0, type IndicatorResult as a1, type IndicatorStateEntry as a2, LIGHT_THEME as a3, MACD as a4, type OhlcLabels as a5, type OrderSubmit as a6, type Padding as a7, type PendingOrderLevel as a8, type PositionLevel as a9, type PositionRenderStyle as aa, type PriceAxisUiConfig as ab, RSI as ac, SMA as ad, type Theme as ae, type ThemeOverrides as af, type TimeAxisUiConfig as ag, type TopBarColors as ah, type TopBarLabels as ai, type TopBarUiConfig as aj, type TradeButtonUiConfig as ak, type TradeDisplayFilter as al, type TradeLabels as am, type TradeLevel as an, type TradeLevelColors as ao, type TradePanelColors as ap, type UiConfig as aq, deepMergeTheme as ar, resolveCssVarsInTheme as as, resolveLabels as at, resolveUiConfig as au, type PriceSource as av, type ChartState as b, type IDrawing as c, type IWebSocketAdapter as d, type TradeLevelType as e, type DrawingPoint as f, ScaleManager as g, type DrawingHandle as h, type SerializedDrawing as i, type Tick as j, type StreamStatus as k, type ActiveIndicatorState as l, type BottomBarColors as m, type BottomBarLabels as n, type BottomBarUiConfig as o, type CanvasColorSettings as p, type ChartLabels as q, type ChartMiscLabels as r, type ChartTheme as s, type ChartThemeUi as t, type CrosshairPosition as u, type CrosshairUiConfig as v, DARK_THEME as w, DEFAULT_BOTTOM_BAR_CONFIG as x, DEFAULT_CROSSHAIR_CONFIG as y, DEFAULT_DRAWING_TOOLBAR_CONFIG as z };
1521
+ export { type IndicatorOverlayColors as $, type AnyDrawingStyle as A, BollingerBands as B, type ChartConfig as C, type DrawingToolType as D, DEFAULT_DRAWING_TOOLBAR_CONFIG as E, DEFAULT_INDICATOR_OVERLAY_CONFIG as F, DEFAULT_LABELS as G, DEFAULT_PRICE_AXIS_CONFIG as H, type IIndicator as I, DEFAULT_TIME_AXIS_CONFIG as J, DEFAULT_TOP_BAR_CONFIG as K, DEFAULT_TRADE_BUTTON_CONFIG as L, DEFAULT_UI_CONFIG as M, type DataLoaderParams as N, type OHLCVBar as O, type PriceRange as P, type DeepPartial$1 as Q, type DeepPartialChartTheme as R, type SeriesType as S, type Timeframe as T, type DialogLabels as U, type Viewport as V, type DrawingToolbarColors as W, type DrawingToolbarLabels as X, type DrawingToolbarUiConfig as Y, type Duration as Z, EMA as _, type ChartEventMap as a, type IndicatorOverlayUiConfig as a0, type IndicatorParams as a1, type IndicatorResult as a2, type IndicatorStateEntry as a3, LIGHT_THEME as a4, MACD as a5, type OhlcLabels as a6, type OrderSubmit as a7, type Padding as a8, type PendingOrderLevel as a9, type PositionLevel as aa, type PositionRenderStyle as ab, type PriceAxisUiConfig as ac, RSI as ad, SMA as ae, type Theme as af, type ThemeOverrides as ag, type TimeAxisUiConfig as ah, type TopBarColors as ai, type TopBarLabels as aj, type TopBarUiConfig as ak, type TradeButtonUiConfig as al, type TradeDisplayFilter as am, type TradeLabels as an, type TradeLevel as ao, type TradeLevelColors as ap, type TradePanelColors as aq, type UiConfig as ar, deepMergeTheme as as, resolveCssVarsInTheme as at, resolveLabels as au, resolveUiConfig as av, type PriceSource as aw, type ChartState as b, type IDrawing as c, type IWebSocketAdapter as d, type TradeLevelType as e, type AnyLevel as f, type DrawingPoint as g, ScaleManager as h, type DrawingHandle as i, type ChartTheme as j, type SerializedDrawing as k, type Tick as l, type StreamStatus as m, type ActiveIndicatorState as n, type BottomBarColors as o, type BottomBarLabels as p, type BottomBarUiConfig as q, type CanvasColorSettings as r, type ChartLabels as s, type ChartMiscLabels as t, type ChartThemeUi as u, type CrosshairPosition as v, type CrosshairUiConfig as w, DARK_THEME as x, DEFAULT_BOTTOM_BAR_CONFIG as y, DEFAULT_CROSSHAIR_CONFIG as z };
@@ -426,6 +426,12 @@ interface TradeLevelColors {
426
426
  /** Color of the drag grip icon when hovered. */
427
427
  dragHandleHover: string;
428
428
  }
429
+ /**
430
+ * Default per-drawing-type style fallbacks. Each drawing type has an entry that
431
+ * provides default stroke/fill/text values; per-instance `IDrawing.style`
432
+ * overrides these. Used by `resolveStyle()` in `src/drawings/styleUtils.ts`.
433
+ */
434
+ type DrawingThemeMap = Record<DrawingToolType, AnyDrawingStyle>;
429
435
  /** Colors for the Trade Panel side drawer. */
430
436
  interface TradePanelColors {
431
437
  background: string;
@@ -476,6 +482,8 @@ interface ChartTheme {
476
482
  tradeLevels: TradeLevelColors;
477
483
  /** Trade Panel side drawer colors */
478
484
  tradePanel: TradePanelColors;
485
+ /** Per-drawing-type default style fallbacks (keyed by DrawingToolType). */
486
+ drawing: DrawingThemeMap;
479
487
  }
480
488
  /** A deep-partial version of ChartTheme for use in `themeOverrides`. */
481
489
  type DeepPartialChartTheme = DeepPartial<ChartTheme>;
@@ -871,6 +879,31 @@ interface ChartConfig {
871
879
  * Default: `false`.
872
880
  */
873
881
  hideLevelConfirmCancel?: boolean;
882
+ /**
883
+ * When `true`, clicking or tapping anywhere outside a selected/active trade
884
+ * level dismisses it (reverting any pending edits, mirroring ✗ Cancel).
885
+ * When `false` (default), the active level is preserved across outside
886
+ * clicks — only explicit ✓ / ✗ buttons, tapping the level itself, or
887
+ * `setLevels()` removing it will dismiss it. Recommended `false` so
888
+ * incidental clicks (e.g. price-axis resize, tapping outside the QTY input)
889
+ * don't drop the user's in-progress edit.
890
+ * Default: `false`.
891
+ */
892
+ deselectActiveOnOutsideClick?: boolean;
893
+ /**
894
+ * Always render SL/TP bracket lines + price pills, even when the parent
895
+ * trade level is not hovered or selected. Close (×) buttons remain
896
+ * hover-only to keep the chart uncluttered.
897
+ * Default: `false`.
898
+ */
899
+ showTradeLevelsAlways?: boolean;
900
+ /**
901
+ * Show the candle countdown timer on the right price axis, just below
902
+ * the live price tag. Subject to the same `candleCountdownTimeframes`
903
+ * filter as the time-axis countdown.
904
+ * Default: `false`.
905
+ */
906
+ showPriceAxisCountdown?: boolean;
874
907
  /**
875
908
  * Multiplier applied to the Confirm (✓), Cancel (✗), Edit (✎), and Close (×)
876
909
  * buttons on trade-level overlays (both main-level and SL/TP bracket boxes).
@@ -885,11 +918,18 @@ interface ChartConfig {
885
918
  */
886
919
  enableThemeToggle?: boolean;
887
920
  /**
888
- * Hide the symbol name, OHLC strip, and tick-activity dot overlay
889
- * shown in the top-left corner of the chart canvas.
890
- * Default: `false` (overlay is visible).
921
+ * Hide the symbol name and tick-activity (streaming) dot shown in the
922
+ * top-left corner of the chart canvas. The OHLC(V) data strip is **not**
923
+ * affected by this flag — use `hideOHLCV` to hide it independently.
924
+ * Default: `false` (symbol + dot are visible).
891
925
  */
892
926
  hideSymbolAndTick?: boolean;
927
+ /**
928
+ * Hide the OHLC(V) data strip rendered in the top-left overlay
929
+ * (the `O: H: L: C: V:` line(s)). Independent of `hideSymbolAndTick`.
930
+ * Default: `false` (strip is visible).
931
+ */
932
+ hideOHLCV?: boolean;
893
933
  /**
894
934
  * Show the bottom duration-selector bar.
895
935
  * Default: `false` (bar is hidden).
@@ -943,6 +983,38 @@ interface DrawingHandle {
943
983
  pointIndex: number;
944
984
  cursor: string;
945
985
  }
986
+ /** Base per-instance style fields applicable to every drawing. */
987
+ interface DrawingStyle {
988
+ /** Primary line/border/marker color. */
989
+ strokeColor?: string;
990
+ /** Stroke width in px (typically 1–4). */
991
+ lineWidth?: number;
992
+ /** Dash pattern for lines and shape borders. */
993
+ lineStyle?: 'solid' | 'dashed' | 'dotted';
994
+ /** Fill color for shapes that have a fill (rectangle, channel, fib level fills). */
995
+ fillColor?: string;
996
+ /** Fill opacity (0..1). */
997
+ fillOpacity?: number;
998
+ }
999
+ /** Extends DrawingStyle for text-bearing drawings (text, callout, anchoredNote, priceNote). */
1000
+ interface DrawingTextStyle extends DrawingStyle {
1001
+ /** Foreground text color. */
1002
+ textColor?: string;
1003
+ /** Font size in px (default 13). */
1004
+ fontSize?: number;
1005
+ }
1006
+ /** Per-level visibility + color for multi-level drawings (fib family, gann box). */
1007
+ interface DrawingLevelStyle {
1008
+ visible: boolean;
1009
+ color: string;
1010
+ }
1011
+ /** Extends DrawingStyle for fib/multi-level drawings. */
1012
+ interface DrawingFibStyle extends DrawingStyle {
1013
+ /** Map of level value (as string, e.g. '0', '0.236', '0.5', '1') → per-level style. */
1014
+ levels?: Record<string, DrawingLevelStyle>;
1015
+ }
1016
+ /** Union of all drawing style shapes. */
1017
+ type AnyDrawingStyle = DrawingStyle | DrawingTextStyle | DrawingFibStyle;
946
1018
  interface IDrawing {
947
1019
  id: string;
948
1020
  type: DrawingToolType;
@@ -951,7 +1023,9 @@ interface IDrawing {
951
1023
  visible?: boolean;
952
1024
  locked?: boolean;
953
1025
  text?: string;
954
- render(ctx: CanvasRenderingContext2D, scale: ScaleManager, viewport: Viewport, priceRange: PriceRange, chartW: number, chartH: number, isSelected: boolean, pricePrecision?: number): void;
1026
+ /** Optional per-instance style override; falls back to theme defaults when absent. */
1027
+ style?: AnyDrawingStyle;
1028
+ render(ctx: CanvasRenderingContext2D, scale: ScaleManager, viewport: Viewport, priceRange: PriceRange, chartW: number, chartH: number, isSelected: boolean, pricePrecision?: number, theme?: ChartTheme): void;
955
1029
  hitTest(x: number, y: number, scale: ScaleManager, viewport: Viewport, priceRange: PriceRange, chartW: number, chartH: number): boolean;
956
1030
  /** Returns the handle under (x, y), or null if none */
957
1031
  getHandle(x: number, y: number, scale: ScaleManager, viewport: Viewport, priceRange: PriceRange, chartW: number, chartH: number): DrawingHandle | null;
@@ -985,6 +1059,8 @@ interface SerializedDrawing {
985
1059
  visible?: boolean;
986
1060
  text?: string;
987
1061
  locked?: boolean;
1062
+ /** Optional per-instance style override; absent for drawings using theme defaults. */
1063
+ style?: AnyDrawingStyle;
988
1064
  }
989
1065
  /** Serializable per-symbol chart state emitted via the `stateChange` event. */
990
1066
  interface IndicatorStateEntry {
@@ -1442,4 +1518,4 @@ declare class MACD implements IIndicator {
1442
1518
  render(ctx: CanvasRenderingContext2D, results: IndicatorResult[], scale: ScaleManager, viewport: Viewport, paneHeight: number, rangeOverride?: PriceRange): void;
1443
1519
  }
1444
1520
 
1445
- export { type IndicatorOverlayUiConfig as $, type AnyLevel as A, BollingerBands as B, type ChartConfig as C, type DrawingToolType as D, DEFAULT_INDICATOR_OVERLAY_CONFIG as E, DEFAULT_LABELS as F, DEFAULT_PRICE_AXIS_CONFIG as G, DEFAULT_TIME_AXIS_CONFIG as H, type IIndicator as I, DEFAULT_TOP_BAR_CONFIG as J, DEFAULT_TRADE_BUTTON_CONFIG as K, DEFAULT_UI_CONFIG as L, type DataLoaderParams as M, type DeepPartial$1 as N, type OHLCVBar as O, type PriceRange as P, type DeepPartialChartTheme as Q, type DialogLabels as R, type SeriesType as S, type Timeframe as T, type DrawingToolbarColors as U, type Viewport as V, type DrawingToolbarLabels as W, type DrawingToolbarUiConfig as X, type Duration as Y, EMA as Z, type IndicatorOverlayColors as _, type ChartEventMap as a, type IndicatorParams as a0, type IndicatorResult as a1, type IndicatorStateEntry as a2, LIGHT_THEME as a3, MACD as a4, type OhlcLabels as a5, type OrderSubmit as a6, type Padding as a7, type PendingOrderLevel as a8, type PositionLevel as a9, type PositionRenderStyle as aa, type PriceAxisUiConfig as ab, RSI as ac, SMA as ad, type Theme as ae, type ThemeOverrides as af, type TimeAxisUiConfig as ag, type TopBarColors as ah, type TopBarLabels as ai, type TopBarUiConfig as aj, type TradeButtonUiConfig as ak, type TradeDisplayFilter as al, type TradeLabels as am, type TradeLevel as an, type TradeLevelColors as ao, type TradePanelColors as ap, type UiConfig as aq, deepMergeTheme as ar, resolveCssVarsInTheme as as, resolveLabels as at, resolveUiConfig as au, type PriceSource as av, type ChartState as b, type IDrawing as c, type IWebSocketAdapter as d, type TradeLevelType as e, type DrawingPoint as f, ScaleManager as g, type DrawingHandle as h, type SerializedDrawing as i, type Tick as j, type StreamStatus as k, type ActiveIndicatorState as l, type BottomBarColors as m, type BottomBarLabels as n, type BottomBarUiConfig as o, type CanvasColorSettings as p, type ChartLabels as q, type ChartMiscLabels as r, type ChartTheme as s, type ChartThemeUi as t, type CrosshairPosition as u, type CrosshairUiConfig as v, DARK_THEME as w, DEFAULT_BOTTOM_BAR_CONFIG as x, DEFAULT_CROSSHAIR_CONFIG as y, DEFAULT_DRAWING_TOOLBAR_CONFIG as z };
1521
+ export { type IndicatorOverlayColors as $, type AnyDrawingStyle as A, BollingerBands as B, type ChartConfig as C, type DrawingToolType as D, DEFAULT_DRAWING_TOOLBAR_CONFIG as E, DEFAULT_INDICATOR_OVERLAY_CONFIG as F, DEFAULT_LABELS as G, DEFAULT_PRICE_AXIS_CONFIG as H, type IIndicator as I, DEFAULT_TIME_AXIS_CONFIG as J, DEFAULT_TOP_BAR_CONFIG as K, DEFAULT_TRADE_BUTTON_CONFIG as L, DEFAULT_UI_CONFIG as M, type DataLoaderParams as N, type OHLCVBar as O, type PriceRange as P, type DeepPartial$1 as Q, type DeepPartialChartTheme as R, type SeriesType as S, type Timeframe as T, type DialogLabels as U, type Viewport as V, type DrawingToolbarColors as W, type DrawingToolbarLabels as X, type DrawingToolbarUiConfig as Y, type Duration as Z, EMA as _, type ChartEventMap as a, type IndicatorOverlayUiConfig as a0, type IndicatorParams as a1, type IndicatorResult as a2, type IndicatorStateEntry as a3, LIGHT_THEME as a4, MACD as a5, type OhlcLabels as a6, type OrderSubmit as a7, type Padding as a8, type PendingOrderLevel as a9, type PositionLevel as aa, type PositionRenderStyle as ab, type PriceAxisUiConfig as ac, RSI as ad, SMA as ae, type Theme as af, type ThemeOverrides as ag, type TimeAxisUiConfig as ah, type TopBarColors as ai, type TopBarLabels as aj, type TopBarUiConfig as ak, type TradeButtonUiConfig as al, type TradeDisplayFilter as am, type TradeLabels as an, type TradeLevel as ao, type TradeLevelColors as ap, type TradePanelColors as aq, type UiConfig as ar, deepMergeTheme as as, resolveCssVarsInTheme as at, resolveLabels as au, resolveUiConfig as av, type PriceSource as aw, type ChartState as b, type IDrawing as c, type IWebSocketAdapter as d, type TradeLevelType as e, type AnyLevel as f, type DrawingPoint as g, ScaleManager as h, type DrawingHandle as i, type ChartTheme as j, type SerializedDrawing as k, type Tick as l, type StreamStatus as m, type ActiveIndicatorState as n, type BottomBarColors as o, type BottomBarLabels as p, type BottomBarUiConfig as q, type CanvasColorSettings as r, type ChartLabels as s, type ChartMiscLabels as t, type ChartThemeUi as u, type CrosshairPosition as v, type CrosshairUiConfig as w, DARK_THEME as x, DEFAULT_BOTTOM_BAR_CONFIG as y, DEFAULT_CROSSHAIR_CONFIG as z };