@candleview/core 2.9.5 → 2.9.6

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 (5) hide show
  1. package/README.md +76 -29
  2. package/dist/index.d.ts +1305 -250
  3. package/dist/index.js +531 -526
  4. package/dist/index.mjs +41925 -40515
  5. package/package.json +1 -1
package/dist/index.d.ts CHANGED
@@ -728,8 +728,43 @@ declare interface BubbleBoxMarkState {
728
728
  }
729
729
 
730
730
  export declare class CandleView {
731
- private core;
731
+ private dom;
732
+ private theme;
733
+ private i18n;
734
+ private dataManager;
735
+ private candleViewChart;
736
+ private panels;
737
+ private priceEvents;
738
+ marks: CandleViewMark | null;
739
+ private brushHint;
740
+ private config;
741
+ private container;
742
+ private isOwnContainer;
743
+ private currentTheme;
744
+ private topPanelState;
745
+ private leftPanelState;
746
+ private currentTimeframe;
747
+ private currentTimezone;
748
+ private chartType;
749
+ private onTimeframeChangeCallback;
732
750
  constructor(config: CandleViewConfig);
751
+ private resolveContainer;
752
+ private createAutoContainer;
753
+ private initDOM;
754
+ private initPanels;
755
+ private handleTimeframeChange;
756
+ private handleChartTypeChange;
757
+ private handleThemeToggle;
758
+ private handleTimezoneSelect;
759
+ private handleResize;
760
+ setData(data: ICandleViewDataPoint[]): void;
761
+ updateData(newData: ICandleViewDataPoint[]): void;
762
+ setTheme(themeType: 'light' | 'dark'): void;
763
+ setLocale(locale: 'en' | 'zh-cn'): void;
764
+ setOnTimeframeChangeCallback(callback: (candleView: CandleView, timeframe: TimeframeEnum) => void): void;
765
+ getOnTimeframeChangeCallback(): ((candleView: CandleView, timeframe: TimeframeEnum) => void) | null;
766
+ setChartType(type: MainChartType): void;
767
+ getCurrentTheme(): ThemeConfig;
733
768
  getTopPanelState(): {
734
769
  isTimeframeModalOpen: boolean;
735
770
  isIndicatorModalOpen: boolean;
@@ -743,7 +778,7 @@ export declare class CandleView {
743
778
  isMobileMenuOpen: boolean;
744
779
  activeTimeframe: TimeframeEnum;
745
780
  currentMainChartType: MainChartType;
746
- currentTimezone: string;
781
+ currentTimezone: TimezoneEnum;
747
782
  selectedSubChartIndicators: SubChartIndicatorType[];
748
783
  selectedMainChartIndicator: MainChartIndicatorInfo | null;
749
784
  mainIndicatorsSearch: string;
@@ -822,63 +857,22 @@ export declare class CandleView {
822
857
  clearAllMarks(): void;
823
858
  clearCurrentTool(): void;
824
859
  getCurrentTool(): string | null;
825
- setData(data: ICandleViewDataPoint[]): void;
826
- updateData(newData: ICandleViewDataPoint[]): void;
827
- getCurrentTheme(): ThemeConfig;
828
- setTheme(themeType: 'light' | 'dark'): void;
829
- setLocale(locale: 'en' | 'zh-cn'): void;
830
- setChartType(type: MainChartType): void;
831
860
  registerPriceEvents(events: PriceEvent[]): void;
832
861
  removePriceEventMarker(price: number): void;
833
862
  clearAllPriceEventMarkers(): void;
834
863
  getPriceEvents(): PriceEvent[];
835
- getChart(): Chart | null;
836
- destroy(): void;
837
- /**
838
- * Add a single static mark
839
- * @param time Timestamp
840
- * @param text Mark text
841
- * @param direction Mark direction (StaticMarkDirection.Top or StaticMarkDirection.Bottom)
842
- * @param type Mark type (StaticMarkType.Text or StaticMarkType.Arrow)
843
- * @param options Optional configuration
844
- */
845
864
  addStaticMark(time: number, text: string, direction: StaticMarkDirection, type: StaticMarkType, options?: IStaticMarkOptions): void;
846
- /**
847
- * Add multiple static marks in batch
848
- * @param marks Array of marks
849
- */
850
865
  addStaticMarks(marks: IStaticMarkItem[]): void;
851
- /**
852
- * Add a text mark (convenience method)
853
- * @param time Timestamp
854
- * @param text Mark text
855
- * @param direction Mark direction
856
- * @param options Optional configuration
857
- */
858
866
  addTextMark(time: number, text: string, direction: StaticMarkDirection, options?: IStaticMarkOptions): void;
859
- /**
860
- * Add an arrow mark (convenience method)
861
- * @param time Timestamp
862
- * @param direction Mark direction
863
- * @param options Optional configuration
864
- */
865
867
  addArrowMark(time: number, direction: StaticMarkDirection, options?: IStaticMarkOptions & {
866
868
  label?: string;
867
869
  }): void;
868
- /**
869
- * Add multiple text marks in batch
870
- * @param marks Array of text marks
871
- */
872
870
  addTextMarks(marks: Array<{
873
871
  time: number;
874
872
  text: string;
875
873
  direction: StaticMarkDirection;
876
874
  options?: IStaticMarkOptions;
877
875
  }>): void;
878
- /**
879
- * Add multiple arrow marks in batch
880
- * @param marks Array of arrow marks
881
- */
882
876
  addArrowMarks(marks: Array<{
883
877
  time: number;
884
878
  direction: StaticMarkDirection;
@@ -886,14 +880,29 @@ export declare class CandleView {
886
880
  label?: string;
887
881
  };
888
882
  }>): void;
889
- /**
890
- * Clear all static marks
891
- */
892
883
  clearAllStaticMarks(): void;
893
- /**
894
- * Get the count of static marks
895
- */
896
884
  getStaticMarkCount(): number;
885
+ getChart(): Chart | null;
886
+ setTitle(title: string): void;
887
+ captureScreenshot(watermark?: string, watermarkOpacity?: number): Promise<string>;
888
+ destroy(): void;
889
+ }
890
+
891
+ declare class CandleViewChart {
892
+ private chart;
893
+ private container;
894
+ private theme;
895
+ private i18n;
896
+ private chartType;
897
+ private title;
898
+ constructor(container: HTMLElement, theme: Theme, i18n: I18n, chartType: MainChartType, title: string);
899
+ init(preprocessedData: DataPreprocessResult): void;
900
+ getChart(): Chart | null;
901
+ setData(data: DataPreprocessResult): void;
902
+ updateChartType(type: MainChartType): void;
903
+ updateTheme(theme: Theme): void;
904
+ updateI18n(i18n: I18n): void;
905
+ destroy(): void;
897
906
  }
898
907
 
899
908
  export declare interface CandleViewConfig {
@@ -902,7 +911,7 @@ export declare interface CandleViewConfig {
902
911
  parent?: HTMLElement;
903
912
  parentSelector?: string;
904
913
  id?: string;
905
- title?: string;
914
+ title: string;
906
915
  data?: ICandleViewDataPoint[];
907
916
  theme?: 'light' | 'dark';
908
917
  locale?: 'en' | 'zh-cn';
@@ -910,23 +919,99 @@ export declare interface CandleViewConfig {
910
919
  showLeftPanel?: boolean;
911
920
  chartType?: MainChartType;
912
921
  activeTimeframe?: TimeframeEnum;
913
- currentTimezone?: string;
922
+ currentTimezone?: TimezoneEnum;
914
923
  onToolSelect?: (tool: string) => void;
915
- onTimeframeChange?: (timeframe: string) => void;
924
+ onTimeframeChange?: (timeframe: TimeframeEnum) => void;
916
925
  onChartTypeChange?: (type: MainChartType) => void;
917
926
  onMainChartIndicatorSelect?: (indicator: MainChartIndicatorInfo) => void;
918
927
  onSubChartIndicatorSelect?: (indicators: SubChartIndicatorType[]) => void;
919
928
  onThemeToggle?: (theme: string) => void;
920
929
  onCameraClick?: () => void;
921
930
  onFullscreenClick?: () => void;
922
- onTimezoneSelect?: (timezone: string) => void;
931
+ onTimezoneSelect?: (timezone: TimezoneEnum) => void;
932
+ onTimeframeChangeCallback?: (candleView: CandleView, timeframe: TimeframeEnum) => void;
933
+ }
934
+
935
+ declare class CandleViewMark {
936
+ private chartManager;
937
+ private staticMarkManager;
938
+ private storedMarks;
939
+ private timezone;
940
+ constructor(chartManager: CandleViewChart);
941
+ setTimezone(timezone: TimezoneEnum): void;
942
+ private initStaticMarkManager;
943
+ private ensureManager;
944
+ reapplyMarks(): void;
945
+ getStoredMarks(): IStaticMarkItem[];
946
+ private convertToChartTime;
947
+ addStaticMark(time: number, text: string, direction: StaticMarkDirection, type: StaticMarkType, options?: IStaticMarkOptions): void;
948
+ addStaticMarks(marks: IStaticMarkItem[], shouldStore?: boolean): void;
949
+ addTextMark(time: number, text: string, direction: StaticMarkDirection, options?: IStaticMarkOptions): void;
950
+ addArrowMark(time: number, direction: StaticMarkDirection, options?: IStaticMarkOptions & {
951
+ label?: string;
952
+ }): void;
953
+ addTextMarks(marks: Array<{
954
+ time: number;
955
+ text: string;
956
+ direction: StaticMarkDirection;
957
+ options?: IStaticMarkOptions;
958
+ }>): void;
959
+ addArrowMarks(marks: Array<{
960
+ time: number;
961
+ direction: StaticMarkDirection;
962
+ options?: IStaticMarkOptions & {
963
+ label?: string;
964
+ };
965
+ }>): void;
966
+ clearAllStaticMarks(): void;
967
+ getStaticMarkCount(): number;
968
+ refreshMarks(): void;
969
+ destroy(): void;
970
+ }
971
+
972
+ declare class ChannelMarkersManager implements MarkManagerModule {
973
+ parallelChannelMarkManager: ParallelChannelMarkManager | null;
974
+ linearRegressionChannelMarkManager: LinearRegressionChannelMarkManager | null;
975
+ equidistantChannelMarkManager: EquidistantChannelMarkManager | null;
976
+ disjointChannelMarkManager: DisjointChannelMarkManager | null;
977
+ initialize(context: MarkManagerContext): void;
978
+ updateProps(context: MarkManagerContext): void;
979
+ destroy(): void;
980
+ clearState(): void;
981
+ isOperatingOnChart(): boolean;
982
+ getMarkAtPoint(point: {
983
+ x: number;
984
+ y: number;
985
+ }): any;
986
+ handleMouseDown(point: {
987
+ x: number;
988
+ y: number;
989
+ }): any;
990
+ handleMouseMove(point: {
991
+ x: number;
992
+ y: number;
993
+ }): any;
994
+ handleMouseUp(point: {
995
+ x: number;
996
+ y: number;
997
+ }): any;
998
+ handleKeyDown(event: KeyboardEvent): any;
999
+ setParallelChannelMarkMode(chart: Chart): any;
1000
+ setLinearRegressionChannelMode(chart: Chart): any;
1001
+ setEquidistantChannelMarkMode(chart: Chart): any;
1002
+ setDisjointChannelMarkMode(chart: Chart): any;
1003
+ deleteMark(drawingType: DrawingType, iGraph: any): void;
1004
+ deleteAllMarks(): void;
1005
+ showAllMarks(): void;
1006
+ hideAllMarks(): void;
923
1007
  }
924
1008
 
925
1009
  declare class Chart {
926
- private container;
1010
+ container: HTMLElement;
927
1011
  originalData: ICandleViewDataPoint[];
928
1012
  preprocessedData: DataPreprocessResult | null;
929
1013
  private theme;
1014
+ private title;
930
1015
  currentTheme: ThemeConfig;
931
1016
  private chartType;
932
1017
  private resizeObserver;
@@ -936,72 +1021,80 @@ declare class Chart {
936
1021
  containerRef: {
937
1022
  current: HTMLDivElement | null;
938
1023
  };
939
- drawingManager: DrawingManager | null;
940
- chartMarkManager: ChartMarkManager | null;
941
- currentDrawingType: DrawingType | null;
942
1024
  onCloseDrawing?: () => void;
943
1025
  private chartInfo;
944
1026
  private chartInfoContainer;
945
- currentMarkSettingsStyle: IMarkStyle | null;
946
1027
  private currentOHLC;
947
1028
  private mousePosition;
948
1029
  private showOHLC;
949
- private indicators;
950
- private visibleIndicatorTypes;
951
- private maIndicatorValues;
952
- private emaIndicatorValues;
953
- private bollingerBandsValues;
954
- private ichimokuValues;
955
- private donchianChannelValues;
956
- private envelopeValues;
957
- private vwapValue;
958
1030
  private originalChartOptions;
959
- textMarkToolBar: TextMarkToolBar | null;
960
- graphMarkToolBar: GraphMarkToolBar | null;
961
- chartPanesManager: ChartPanesManager | null;
962
1031
  private i18n;
963
- mainChartTechnicalIndicatorManager: MainChartTechnicalIndicatorManager | null;
964
1032
  private chartEventManager;
1033
+ private marketProfile;
1034
+ private volumeHeatMap;
1035
+ mainChartManager: MainChartManager | null;
1036
+ private indicatorUpdateTimer;
1037
+ private panesUpdateTimer;
1038
+ private marketProfileUpdateTimer;
1039
+ private heatMapUpdateTimer;
1040
+ indicatorsManager: ChartIndicatorsManager;
1041
+ modalsManager: ChartModalsManager;
1042
+ tools: ChartTools;
1043
+ get drawingManager(): DrawingManager | null;
1044
+ get chartMarkManager(): ChartMarkManager | null;
1045
+ get currentDrawingType(): DrawingType | null;
1046
+ set currentDrawingType(v: DrawingType | null);
1047
+ get textMarkToolBar(): TextMarkToolBar | null;
1048
+ get graphMarkToolBar(): GraphMarkToolBar | null;
1049
+ get currentMarkSettingsStyle(): IMarkStyle | null;
1050
+ set currentMarkSettingsStyle(v: IMarkStyle | null);
1051
+ get chartPanesManager(): ChartPanesManager | null;
1052
+ get leftPanel(): LeftPanel | null;
1053
+ set leftPanel(v: LeftPanel | null);
1054
+ get onExitBrushMode(): (() => void) | undefined;
1055
+ set onExitBrushMode(v: (() => void) | undefined);
1056
+ get indicators(): MainChartIndicatorInfo[];
1057
+ get visibleIndicatorTypes(): MainChartIndicatorType[];
1058
+ get mainChartTechnicalIndicatorManager(): MainChartTechnicalIndicatorManager | null;
1059
+ get maIndicatorValues(): {
1060
+ [key: string]: number;
1061
+ };
1062
+ get emaIndicatorValues(): {
1063
+ [key: string]: number;
1064
+ };
1065
+ get bollingerBandsValues(): {
1066
+ [key: string]: number;
1067
+ };
1068
+ get ichimokuValues(): {
1069
+ [key: string]: number;
1070
+ };
1071
+ get donchianChannelValues(): {
1072
+ [key: string]: number;
1073
+ };
1074
+ get envelopeValues(): {
1075
+ [key: string]: number;
1076
+ };
1077
+ get vwapValue(): number | null;
1078
+ get imageUploadModal(): ImageUploadModal | null;
1079
+ get mainChartIndicatorsModal(): MainChartIndicatorsSettingModal | null;
1080
+ get subChartIndicatorsModal(): SubChartIndicatorsSettingModal | null;
1081
+ get textMarkEditorModal(): TextMarkEditorModal | null;
1082
+ get currentSubChartType(): SubChartIndicatorType | null;
1083
+ set currentSubChartType(v: SubChartIndicatorType | null);
965
1084
  private onToggleOHLCCallback?;
966
1085
  private onOpenIndicatorsModalCallback?;
967
1086
  private onRemoveIndicatorCallback?;
968
1087
  private onToggleIndicatorCallback?;
969
1088
  private onEditIndicatorParamsCallback?;
970
1089
  private onOpenIndicatorSettingsCallback?;
971
- private isDraggingToolbar;
972
- private toolbarDragStartPoint;
973
- private toolbarDragStartPosition;
974
- private imageUploadModal;
975
- private mainChartIndicatorsModal;
976
- private subChartIndicatorsModal;
977
- private textMarkEditorModal;
978
- private isImageUploadModalOpen;
979
- private isMainChartIndicatorsModalOpen;
980
- private isSubChartIndicatorsModalOpen;
981
- private isTextMarkEditorModalOpen;
982
- private onImageConfirmCallback?;
983
- private onMainChartIndicatorConfirmCallback?;
984
- private onSubChartIndicatorConfirmCallback?;
985
- private onTextMarkEditorSaveCallback?;
986
- private onTextMarkEditorCancelCallback?;
987
- private marketProfile;
988
- private volumeHeatMap;
989
- mainChartManager: MainChartManager | null;
990
- private pendingImageUrl;
991
- private editingIndicator;
992
- private editingSubChartParams;
993
- currentSubChartType: SubChartIndicatorType | null;
994
- private textMarkEditorPosition;
995
- private textMarkEditorData;
996
- onExitBrushMode?: () => void;
997
- leftPanel: LeftPanel | null;
998
1090
  constructor(options: {
999
1091
  container: HTMLElement;
1000
1092
  data: ICandleViewDataPoint[];
1001
1093
  theme: Theme;
1002
1094
  chartType: MainChartType;
1003
- preprocessedData?: DataPreprocessResult;
1095
+ preprocessedData: DataPreprocessResult;
1004
1096
  i18n: I18n;
1097
+ title: string;
1005
1098
  onReady?: () => void;
1006
1099
  onCloseDrawing?: () => void;
1007
1100
  onToggleOHLC?: () => void;
@@ -1022,7 +1115,6 @@ declare class Chart {
1022
1115
  hideMarketProfile(): void;
1023
1116
  showHeatMap(): void;
1024
1117
  hideHeatMap(): void;
1025
- private initMainChartTechnicalIndicatorManager;
1026
1118
  private initPanesManager;
1027
1119
  private initEventManager;
1028
1120
  private setupContainerEvents;
@@ -1042,22 +1134,18 @@ declare class Chart {
1042
1134
  getI18n(): I18n;
1043
1135
  openImageUploadModal(): void;
1044
1136
  closeImageUploadModal(): void;
1045
- private updateImageUploadModal;
1046
1137
  openMainChartIndicatorsModal(indicator?: MainChartIndicatorInfo | null): void;
1047
1138
  closeMainChartIndicatorsModal(): void;
1048
- private updateMainChartIndicatorsModal;
1049
1139
  openSubChartIndicatorsModal(params: IIndicatorInfo[], indicatorType: SubChartIndicatorType): void;
1050
1140
  closeSubChartIndicatorsModal(): void;
1051
- private updateSubChartIndicatorsModal;
1052
1141
  openTextMarkEditorModal(position: {
1053
1142
  x: number;
1054
1143
  y: number;
1055
1144
  }, text: string, color: string, fontSize: number, isBold: boolean, isItalic: boolean): void;
1056
1145
  closeTextMarkEditorModal(): void;
1057
- private updateTextMarkEditorModal;
1058
1146
  updateModalsTheme(): void;
1059
1147
  updateModalsI18n(i18n: I18n): void;
1060
- private updateChartInfoData;
1148
+ updateChartInfoData(): void;
1061
1149
  setTitle(title: string): void;
1062
1150
  setIndicators(indicators: MainChartIndicatorInfo[], visibleTypes: MainChartIndicatorType[]): void;
1063
1151
  setIndicatorValues(values: {
@@ -1093,18 +1181,14 @@ declare class Chart {
1093
1181
  private createHiddenBaseSeries;
1094
1182
  addOrUpdateMainChartIndicator(indicator: MainChartIndicatorInfo): void;
1095
1183
  removeMainChartIndicator(type: MainChartIndicatorType): void;
1184
+ toggleIndicatorVisibility(type: MainChartIndicatorType): void;
1185
+ updateIndicatorParams(indicatorId: string, newParams: MainChartIndicatorParam[]): void;
1096
1186
  getMainChartIndicators(): MainChartIndicatorInfo[];
1097
1187
  getVisibleIndicatorTypes(): MainChartIndicatorType[];
1098
- updateIndicatorParams(indicatorId: string, newParams: MainChartIndicatorParam[]): void;
1099
- toggleIndicatorVisibility(type: MainChartIndicatorType): void;
1100
1188
  private setupResizeObserver;
1101
1189
  handleResize(): void;
1102
1190
  getChart(): IChartApi | null;
1103
- private indicatorUpdateTimer;
1104
- private panesUpdateTimer;
1105
- private marketProfileUpdateTimer;
1106
- private heatMapUpdateTimer;
1107
- setData(preprocessedData?: DataPreprocessResult): void;
1191
+ setData(preprocessedData: DataPreprocessResult): void;
1108
1192
  updateChartType(type: MainChartType): void;
1109
1193
  getCurrentTheme(): ThemeConfig;
1110
1194
  setTheme(themeType: 'light' | 'dark'): void;
@@ -1186,7 +1270,6 @@ declare class Chart {
1186
1270
  closeTextMarkToolBar(): void;
1187
1271
  closeGraphMarkToolBar(): void;
1188
1272
  closeTableMarkToolBar(): void;
1189
- private movementDisableCount;
1190
1273
  disableChartMovement(): void;
1191
1274
  enableChartMovement(): void;
1192
1275
  handleViewportShiftLeft(): void;
@@ -1199,148 +1282,282 @@ declare class Chart {
1199
1282
  destroy(): void;
1200
1283
  }
1201
1284
 
1285
+ declare class ChartIndicatorsManager {
1286
+ private chart;
1287
+ indicators: MainChartIndicatorInfo[];
1288
+ visibleIndicatorTypes: MainChartIndicatorType[];
1289
+ mainChartTechnicalIndicatorManager: MainChartTechnicalIndicatorManager | null;
1290
+ maIndicatorValues: {
1291
+ [key: string]: number;
1292
+ };
1293
+ emaIndicatorValues: {
1294
+ [key: string]: number;
1295
+ };
1296
+ bollingerBandsValues: {
1297
+ [key: string]: number;
1298
+ };
1299
+ ichimokuValues: {
1300
+ [key: string]: number;
1301
+ };
1302
+ donchianChannelValues: {
1303
+ [key: string]: number;
1304
+ };
1305
+ envelopeValues: {
1306
+ [key: string]: number;
1307
+ };
1308
+ vwapValue: number | null;
1309
+ constructor(chart: Chart);
1310
+ init(currentTheme: ThemeConfig): void;
1311
+ addOrUpdateIndicator(indicator: MainChartIndicatorInfo): void;
1312
+ removeIndicator(type: MainChartIndicatorType): void;
1313
+ toggleVisibility(type: MainChartIndicatorType): void;
1314
+ updateParams(indicatorId: string, newParams: MainChartIndicatorParam[]): void;
1315
+ updateAllIndicatorsData(displayData: any[]): void;
1316
+ setIndicatorValues(values: {
1317
+ ma?: {
1318
+ [key: string]: number;
1319
+ };
1320
+ ema?: {
1321
+ [key: string]: number;
1322
+ };
1323
+ bollinger?: {
1324
+ [key: string]: number;
1325
+ };
1326
+ ichimoku?: {
1327
+ [key: string]: number;
1328
+ };
1329
+ donchian?: {
1330
+ [key: string]: number;
1331
+ };
1332
+ envelope?: {
1333
+ [key: string]: number;
1334
+ };
1335
+ vwap?: number | null;
1336
+ }): void;
1337
+ private updateVisibleTypes;
1338
+ getIndicators(): MainChartIndicatorInfo[];
1339
+ getVisibleTypes(): MainChartIndicatorType[];
1340
+ updateTheme(theme: ThemeConfig): void;
1341
+ destroy(): void;
1342
+ }
1343
+
1202
1344
  declare class ChartMarkManager {
1203
- lineSegmentMarkManager: LineSegmentMarkManager | null;
1204
- axisLineMarkManager: AxisLineMarkManager | null;
1205
- arrowLineMarkManager: ArrowLineMarkManager | null;
1206
- parallelChannelMarkManager: ParallelChannelMarkManager | null;
1207
- currentOperationDrawingType: DrawingType | null;
1208
- linearRegressionChannelMarkManager: LinearRegressionChannelMarkManager | null;
1209
- equidistantChannelMarkManager: EquidistantChannelMarkManager | null;
1210
- disjointChannelMarkManager: DisjointChannelMarkManager | null;
1211
- andrewPitchforkMarkManager: AndrewPitchforkMarkManager | null;
1212
- enhancedAndrewPitchforkMarkManager: EnhancedAndrewPitchforkMarkManager | null;
1213
- rectangleMarkManager: RectangleMarkManager | null;
1214
- circleMarkManager: CircleMarkManager | null;
1215
- ellipseMarkManager: EllipseMarkManager | null;
1216
- triangleMarkManager: TriangleMarkManager | null;
1217
- gannFanMarkManager: GannFanMarkManager | null;
1218
- gannBoxMarkManager: GannBoxMarkManager | null;
1219
- gannRectangleMarkManager: GannRectangleMarkManager | null;
1220
- fibonacciTimeZoonMarkManager: FibonacciTimeZoonMarkManager | null;
1221
- fibonacciRetracementMarkManager: FibonacciRetracementMarkManager | null;
1222
- fibonacciArcMarkManager: FibonacciArcMarkManager | null;
1223
- fibonacciCircleMarkManager: FibonacciCircleMarkManager | null;
1224
- fibonacciSpiralMarkManager: FibonacciSpiralMarkManager | null;
1225
- fibonacciWedgeMarkManager: FibonacciWedgeMarkManager | null;
1226
- fibonacciFanMarkManager: FibonacciFanMarkManager | null;
1227
- fibonacciChannelMarkManager: FibonacciChannelMarkManager | null;
1228
- fibonacciExtensionBasePriceMarkManager: FibonacciExtensionBasePriceMarkManager | null;
1229
- fibonacciExtensionBaseTimeMarkManager: FibonacciExtensionBaseTimeMarkManager | null;
1230
- sectorMarkManager: SectorMarkManager | null;
1231
- curveMarkManager: CurveMarkManager | null;
1232
- doubleCurveMarkManager: DoubleCurveMarkManager | null;
1233
- xabcdMarkManager: XABCDMarkManager | null;
1234
- headAndShouldersMarkManager: HeadAndShouldersMarkManager | null;
1235
- abcdMarkManager: ABCDMarkManager | null;
1236
- triangleABCDMarkManager: TriangleABCDMarkManager | null;
1237
- elliottImpulseMarkManager: ElliottImpulseMarkManager | null;
1238
- elliottCorrectiveMarkManager: ElliottCorrectiveMarkManager | null;
1239
- elliottTriangleMarkManager: ElliottTriangleMarkManager | null;
1240
- elliottDoubleCombinationMarkManager: ElliottDoubleCombinationMarkManager | null;
1241
- elliottTripleCombinationMarkManager: ElliottTripleCombinationMarkManager | null;
1242
- timeRangeMarkManager: TimeRangeMarkManager | null;
1243
- priceRangeMarkManager: PriceRangeMarkManager | null;
1244
- timePriceRangeMarkManager: TimePriceRangeMarkManager | null;
1245
- pencilMarkManager: PencilMarkManager | null;
1246
- penMarkManager: PenMarkManager | null;
1247
- brushMarkManager: BrushMarkManager | null;
1248
- markerPenMarkManager: MarkerPenMarkManager | null;
1249
- eraserMarkManager: EraserMarkManager | null;
1250
- thickArrowLineMarkManager: ThickArrowLineMarkManager | null;
1251
- imageMarkManager: ImageMarkManager | null;
1252
- longPositionMarkManager: LongPositionMarkManager | null;
1253
- shortPositionMarkManager: ShortPositionMarkManager | null;
1254
- priceLabelMarkManager: PriceLabelMarkManager | null;
1255
- flagMarkManager: FlagMarkManager | null;
1256
- priceNoteMarkManager: PriceNoteMarkManager | null;
1257
- signpostMarkManager: SignPostMarkManager | null;
1258
- emojiMarkManager: EmojiMarkManager | null;
1259
- pinMarkManager: PinMarkManager | null;
1260
- bubbleBoxMarkManager: BubbleBoxMarkManager | null;
1261
- textEditMarkManager: TextEditMarkManager | null;
1262
- mockKLineMarkManager: MockKLineMarkManager | null;
1263
- heatMapMarkManager: HeatMapMarkManager | null;
1264
- schiffPitchforkMarkManager: SchiffPitchforkMarkManager | null;
1265
- timeEventMarkManager: TimeEventMarkManager | null;
1266
- priceEventMarkManager: PriceEventMarkManager | null;
1345
+ lineMarkers: LineMarkersManager;
1346
+ channelMarkers: ChannelMarkersManager;
1347
+ forkMarkers: ForkMarkersManager;
1348
+ shapeMarkers: ShapeMarkersManager;
1349
+ gannMarkers: GannMarkersManager;
1350
+ fibonacciMarkers: FibonacciMarkersManager;
1351
+ patternMarkers: PatternMarkersManager;
1352
+ elliottMarkers: ElliottMarkersManager;
1353
+ rangeMarkers: RangeMarkersManager;
1354
+ penMarkers: PenMarkersManager;
1355
+ textMarkers: TextMarkersManager;
1356
+ contentMarkers: ContentMarkersManager;
1357
+ scriptMarkers: ScriptMarkersManager;
1358
+ specialMarkers: SpecialMarkersManager;
1359
+ get lineSegmentMarkManager(): LineSegmentMarkManager | null;
1360
+ get axisLineMarkManager(): AxisLineMarkManager | null;
1361
+ get arrowLineMarkManager(): ArrowLineMarkManager | null;
1362
+ get thickArrowLineMarkManager(): ThickArrowLineMarkManager | null;
1363
+ get parallelChannelMarkManager(): ParallelChannelMarkManager | null;
1364
+ get linearRegressionChannelMarkManager(): LinearRegressionChannelMarkManager | null;
1365
+ get equidistantChannelMarkManager(): EquidistantChannelMarkManager | null;
1366
+ get disjointChannelMarkManager(): DisjointChannelMarkManager | null;
1367
+ get andrewPitchforkMarkManager(): AndrewPitchforkMarkManager | null;
1368
+ get enhancedAndrewPitchforkMarkManager(): EnhancedAndrewPitchforkMarkManager | null;
1369
+ get schiffPitchforkMarkManager(): SchiffPitchforkMarkManager | null;
1370
+ get rectangleMarkManager(): RectangleMarkManager | null;
1371
+ get circleMarkManager(): CircleMarkManager | null;
1372
+ get ellipseMarkManager(): EllipseMarkManager | null;
1373
+ get triangleMarkManager(): TriangleMarkManager | null;
1374
+ get sectorMarkManager(): SectorMarkManager | null;
1375
+ get curveMarkManager(): CurveMarkManager | null;
1376
+ get doubleCurveMarkManager(): DoubleCurveMarkManager | null;
1377
+ get gannFanMarkManager(): GannFanMarkManager | null;
1378
+ get gannBoxMarkManager(): GannBoxMarkManager | null;
1379
+ get gannRectangleMarkManager(): GannRectangleMarkManager | null;
1380
+ get fibonacciTimeZoonMarkManager(): FibonacciTimeZoonMarkManager | null;
1381
+ get fibonacciRetracementMarkManager(): FibonacciRetracementMarkManager | null;
1382
+ get fibonacciArcMarkManager(): FibonacciArcMarkManager | null;
1383
+ get fibonacciCircleMarkManager(): FibonacciCircleMarkManager | null;
1384
+ get fibonacciSpiralMarkManager(): FibonacciSpiralMarkManager | null;
1385
+ get fibonacciWedgeMarkManager(): FibonacciWedgeMarkManager | null;
1386
+ get fibonacciFanMarkManager(): FibonacciFanMarkManager | null;
1387
+ get fibonacciChannelMarkManager(): FibonacciChannelMarkManager | null;
1388
+ get fibonacciExtensionBasePriceMarkManager(): FibonacciExtensionBasePriceMarkManager | null;
1389
+ get fibonacciExtensionBaseTimeMarkManager(): FibonacciExtensionBaseTimeMarkManager | null;
1390
+ get xabcdMarkManager(): XABCDMarkManager | null;
1391
+ get headAndShouldersMarkManager(): HeadAndShouldersMarkManager | null;
1392
+ get abcdMarkManager(): ABCDMarkManager | null;
1393
+ get triangleABCDMarkManager(): TriangleABCDMarkManager | null;
1394
+ get elliottImpulseMarkManager(): ElliottImpulseMarkManager | null;
1395
+ get elliottCorrectiveMarkManager(): ElliottCorrectiveMarkManager | null;
1396
+ get elliottTriangleMarkManager(): ElliottTriangleMarkManager | null;
1397
+ get elliottDoubleCombinationMarkManager(): ElliottDoubleCombinationMarkManager | null;
1398
+ get elliottTripleCombinationMarkManager(): ElliottTripleCombinationMarkManager | null;
1399
+ get timeRangeMarkManager(): TimeRangeMarkManager | null;
1400
+ get priceRangeMarkManager(): PriceRangeMarkManager | null;
1401
+ get timePriceRangeMarkManager(): TimePriceRangeMarkManager | null;
1402
+ get longPositionMarkManager(): LongPositionMarkManager | null;
1403
+ get shortPositionMarkManager(): ShortPositionMarkManager | null;
1404
+ get pencilMarkManager(): PencilMarkManager | null;
1405
+ get penMarkManager(): PenMarkManager | null;
1406
+ get brushMarkManager(): BrushMarkManager | null;
1407
+ get markerPenMarkManager(): MarkerPenMarkManager | null;
1408
+ get eraserMarkManager(): EraserMarkManager | null;
1409
+ get priceLabelMarkManager(): PriceLabelMarkManager | null;
1410
+ get flagMarkManager(): FlagMarkManager | null;
1411
+ get priceNoteMarkManager(): PriceNoteMarkManager | null;
1412
+ get signpostMarkManager(): SignPostMarkManager | null;
1413
+ get emojiMarkManager(): EmojiMarkManager | null;
1414
+ get pinMarkManager(): PinMarkManager | null;
1415
+ get bubbleBoxMarkManager(): BubbleBoxMarkManager | null;
1416
+ get textEditMarkManager(): TextEditMarkManager | null;
1417
+ get imageMarkManager(): ImageMarkManager | null;
1418
+ get timeEventMarkManager(): TimeEventMarkManager | null;
1419
+ get priceEventMarkManager(): PriceEventMarkManager | null;
1420
+ get mockKLineMarkManager(): MockKLineMarkManager | null;
1421
+ get heatMapMarkManager(): HeatMapMarkManager | null;
1267
1422
  constructor();
1268
- initializeEraserMarkManager(chart: Chart): void;
1423
+ initializeMarkManager(chart: Chart): void;
1424
+ initializeMarkManagerProps(chart: Chart): void;
1425
+ destroyMarkManager(): void;
1426
+ clearAllMarkManagerState(): void;
1269
1427
  registerAllDeletableMarks(): void;
1270
- initializeMarkManager: (chart: Chart) => void;
1271
- initializeMarkManagerProps: (chart: Chart) => void;
1272
- destroyMarkManager: () => void;
1273
- setMockKLineMarkMode: (chart: Chart) => void;
1274
- setTextEditMarkMode: (chart: Chart) => void;
1275
- setBubbleBoxMarkMode: (chart: Chart) => void;
1276
- setPinMarkMode: (chart: Chart) => void;
1277
- setEmojiMarkMode: (chart: Chart, emoji: string) => void;
1278
- setSignpostMarkMode: (chart: Chart) => void;
1279
- setPriceNoteMarkMode: (chart: Chart) => void;
1280
- setFlagMarkMode: (chart: Chart) => void;
1281
- setPriceLabelMode: (chart: Chart) => void;
1282
- setShortPositionMarkMode: (chart: Chart) => void;
1283
- setLongPositionMarkMode: (chart: Chart) => void;
1284
- setThickArrowLineMode: (chart: Chart) => void;
1285
- setEraserMode: (chart: Chart) => void;
1286
- setMarkerPenMode: (chart: Chart) => void;
1287
- setBrushMode: (chart: Chart) => void;
1288
- setPenMode: (chart: Chart) => void;
1289
- setPencilMode: (chart: Chart) => void;
1290
- setTimePriceRangeMarkMode: (chart: Chart) => void;
1291
- setPriceRangeMarkMode: (chart: Chart) => void;
1292
- setTimeRangeMarkMode: (chart: Chart) => void;
1293
- setElliottTripleCombinationMode: (chart: Chart) => void;
1294
- setElliottDoubleCombinationMode: (chart: Chart) => void;
1295
- setElliottTriangleMode: (chart: Chart) => void;
1296
- setElliottCorrectiveMode: (chart: Chart) => void;
1297
- setElliottImpulseMode: (chart: Chart) => void;
1298
- setTriangleABCDMode: (chart: Chart) => void;
1299
- setABCDMode: (chart: Chart) => void;
1300
- setHeadAndShouldersMode: (chart: Chart) => void;
1301
- setXABCDMode: (chart: Chart) => void;
1302
- setDoubleCurveMode: (chart: Chart) => void;
1303
- setCurveMode: (chart: Chart) => void;
1304
- setSectorMode: (chart: Chart) => void;
1305
- setFibonacciExtensionBaseTimeMode: (chart: Chart) => void;
1306
- setFibonacciExtensionBasePriceMode: (chart: Chart) => void;
1307
- setFibonacciChannelMode: (chart: Chart) => void;
1308
- setFibonacciFanMode: (chart: Chart) => void;
1309
- setFibonacciWedgeMode: (chart: Chart) => void;
1310
- setFibonacciSpiralMode: (chart: Chart) => void;
1311
- setFibonacciCircleMode: (chart: Chart) => void;
1312
- setFibonacciArcMode: (chart: Chart) => void;
1313
- setFibonacciRetracementMode: (chart: Chart) => void;
1314
- setFibonacciTimeZoonMode: (chart: Chart) => void;
1315
- setGannRectangleMode: (chart: Chart) => void;
1316
- setGannBoxMode: (chart: Chart) => void;
1317
- setGannFanMode: (chart: Chart) => void;
1318
- setTriangleMarkMode: (chart: Chart) => void;
1319
- setEllipseMarkMode: (chart: Chart) => void;
1320
- setCircleMarkMode: (chart: Chart) => void;
1321
- setRectangleMarkMode: (chart: Chart) => void;
1322
- setEnhancedAndrewPitchforkMode: (chart: Chart) => void;
1323
- setAndrewPitchforkMode: (chart: Chart) => void;
1324
- setDisjointChannelMarkMode: (chart: Chart) => void;
1325
- setEquidistantChannelMarkMode: (chart: Chart) => void;
1326
- setLinearRegressionChannelMode: (chart: Chart) => void;
1327
- setLineSegmentMarkMode: (chart: Chart) => void;
1328
- setHorizontalLineMode: (chart: Chart) => void;
1329
- setVerticalLineMode: (chart: Chart) => void;
1330
- setArrowLineMarkMode: (chart: Chart) => void;
1331
- setParallelChannelMarkMode: (chart: Chart) => void;
1332
- clearAllMarkManagerState: () => void;
1333
- setPriceEventMode: (chart: Chart) => void;
1334
- setTimeEventMode: (chart: Chart) => void;
1335
- setSchiffPitchforkMode: (chart: Chart) => void;
1336
- setHeatMapMode: (chart: Chart) => void;
1337
- clearAllMarkMode: (chart: Chart) => void;
1338
- getDrawingStepFromPhase: (phase: "firstPoint" | "secondPoint" | "widthAdjust" | "none") => number;
1339
- deleteMark: (drawingType: DrawingType, iGraph: IGraph) => void;
1340
- deleteAllMark: () => void;
1428
+ initializeEraserMarkManager(chart: Chart): void;
1429
+ closeAllBrushTools(chart: Chart): void;
1430
+ getDrawingStepFromPhase(phase: 'firstPoint' | 'secondPoint' | 'widthAdjust' | 'none'): number;
1431
+ deleteMark(drawingType: DrawingType, iGraph: IGraph): void;
1432
+ deleteAllMark(): void;
1341
1433
  showAllMarks(): void;
1342
1434
  hideAllMarks(): void;
1343
- closeAllBrushTools: (chart: Chart) => void;
1435
+ setLineSegmentMarkMode(chart: Chart): void;
1436
+ setArrowLineMarkMode(chart: Chart): void;
1437
+ setThickArrowLineMode(chart: Chart): void;
1438
+ setHorizontalLineMode(chart: Chart): void;
1439
+ setVerticalLineMode(chart: Chart): void;
1440
+ setParallelChannelMarkMode(chart: Chart): void;
1441
+ setLinearRegressionChannelMode(chart: Chart): void;
1442
+ setEquidistantChannelMarkMode(chart: Chart): void;
1443
+ setDisjointChannelMarkMode(chart: Chart): void;
1444
+ setAndrewPitchforkMode(chart: Chart): void;
1445
+ setEnhancedAndrewPitchforkMode(chart: Chart): void;
1446
+ setSchiffPitchforkMode(chart: Chart): void;
1447
+ setRectangleMarkMode(chart: Chart): void;
1448
+ setCircleMarkMode(chart: Chart): void;
1449
+ setEllipseMarkMode(chart: Chart): void;
1450
+ setTriangleMarkMode(chart: Chart): void;
1451
+ setSectorMode(chart: Chart): void;
1452
+ setCurveMode(chart: Chart): void;
1453
+ setDoubleCurveMode(chart: Chart): void;
1454
+ setGannFanMode(chart: Chart): void;
1455
+ setGannBoxMode(chart: Chart): void;
1456
+ setGannRectangleMode(chart: Chart): void;
1457
+ setFibonacciTimeZoonMode(chart: Chart): void;
1458
+ setFibonacciRetracementMode(chart: Chart): void;
1459
+ setFibonacciArcMode(chart: Chart): void;
1460
+ setFibonacciCircleMode(chart: Chart): void;
1461
+ setFibonacciSpiralMode(chart: Chart): void;
1462
+ setFibonacciWedgeMode(chart: Chart): void;
1463
+ setFibonacciFanMode(chart: Chart): void;
1464
+ setFibonacciChannelMode(chart: Chart): void;
1465
+ setFibonacciExtensionBasePriceMode(chart: Chart): void;
1466
+ setFibonacciExtensionBaseTimeMode(chart: Chart): void;
1467
+ setXABCDMode(chart: Chart): void;
1468
+ setHeadAndShouldersMode(chart: Chart): void;
1469
+ setABCDMode(chart: Chart): void;
1470
+ setTriangleABCDMode(chart: Chart): void;
1471
+ setElliottImpulseMode(chart: Chart): void;
1472
+ setElliottCorrectiveMode(chart: Chart): void;
1473
+ setElliottTriangleMode(chart: Chart): void;
1474
+ setElliottDoubleCombinationMode(chart: Chart): void;
1475
+ setElliottTripleCombinationMode(chart: Chart): void;
1476
+ setTimeRangeMarkMode(chart: Chart): void;
1477
+ setPriceRangeMarkMode(chart: Chart): void;
1478
+ setTimePriceRangeMarkMode(chart: Chart): void;
1479
+ setLongPositionMarkMode(chart: Chart): void;
1480
+ setShortPositionMarkMode(chart: Chart): void;
1481
+ setMockKLineMarkMode(chart: Chart): void;
1482
+ setTextEditMarkMode(chart: Chart): void;
1483
+ setBubbleBoxMarkMode(chart: Chart): void;
1484
+ setPinMarkMode(chart: Chart): void;
1485
+ setEmojiMarkMode(chart: Chart, emoji: string): void;
1486
+ setSignpostMarkMode(chart: Chart): void;
1487
+ setPriceNoteMarkMode(chart: Chart): void;
1488
+ setFlagMarkMode(chart: Chart): void;
1489
+ setPriceLabelMode(chart: Chart): void;
1490
+ setImageMarkMode(chart: Chart): void;
1491
+ setHeatMapMode(chart: Chart): void;
1492
+ setPriceEventMode(chart: Chart): void;
1493
+ setTimeEventMode(chart: Chart): void;
1494
+ setPencilMode(chart: Chart): void;
1495
+ setPenMode(chart: Chart): void;
1496
+ setBrushMode(chart: Chart): void;
1497
+ setMarkerPenMode(chart: Chart): void;
1498
+ setEraserMode(chart: Chart): void;
1499
+ clearAllMarkMode: (chart: Chart) => void;
1500
+ }
1501
+
1502
+ declare class ChartModalsManager {
1503
+ private chart;
1504
+ private container;
1505
+ private currentTheme;
1506
+ private i18n;
1507
+ imageUploadModal: ImageUploadModal | null;
1508
+ mainChartIndicatorsModal: MainChartIndicatorsSettingModal | null;
1509
+ subChartIndicatorsModal: SubChartIndicatorsSettingModal | null;
1510
+ textMarkEditorModal: TextMarkEditorModal | null;
1511
+ isImageUploadModalOpen: boolean;
1512
+ isMainChartIndicatorsModalOpen: boolean;
1513
+ isSubChartIndicatorsModalOpen: boolean;
1514
+ isTextMarkEditorModalOpen: boolean;
1515
+ onImageConfirmCallback?: (imageUrl: string) => void;
1516
+ onMainChartIndicatorConfirmCallback?: (indicator: MainChartIndicatorInfo) => void;
1517
+ onSubChartIndicatorConfirmCallback?: (params: IIndicatorInfo[]) => void;
1518
+ onTextMarkEditorSaveCallback?: (text: string, color: string, fontSize: number, isBold: boolean, isItalic: boolean) => void;
1519
+ onTextMarkEditorCancelCallback?: () => void;
1520
+ editingIndicator: MainChartIndicatorInfo | null;
1521
+ editingSubChartParams: IIndicatorInfo[];
1522
+ currentSubChartType: SubChartIndicatorType | null;
1523
+ pendingImageUrl: string;
1524
+ textMarkEditorPosition: {
1525
+ x: number;
1526
+ y: number;
1527
+ };
1528
+ textMarkEditorData: {
1529
+ text: string;
1530
+ color: string;
1531
+ fontSize: number;
1532
+ isBold: boolean;
1533
+ isItalic: boolean;
1534
+ };
1535
+ constructor(chart: Chart, container: HTMLElement, currentTheme: ThemeConfig, i18n: I18n);
1536
+ setCallbacks(callbacks: {
1537
+ onImageConfirm?: (imageUrl: string) => void;
1538
+ onMainChartIndicatorConfirm?: (indicator: MainChartIndicatorInfo) => void;
1539
+ onSubChartIndicatorConfirm?: (params: IIndicatorInfo[]) => void;
1540
+ onTextMarkEditorSave?: (text: string, color: string, fontSize: number, isBold: boolean, isItalic: boolean) => void;
1541
+ onTextMarkEditorCancel?: () => void;
1542
+ }): void;
1543
+ openImageUploadModal(): void;
1544
+ closeImageUploadModal(): void;
1545
+ private updateImageUploadModal;
1546
+ openMainChartIndicatorsModal(indicator?: MainChartIndicatorInfo | null): void;
1547
+ closeMainChartIndicatorsModal(): void;
1548
+ private updateMainChartIndicatorsModal;
1549
+ openSubChartIndicatorsModal(params: IIndicatorInfo[], indicatorType: SubChartIndicatorType): void;
1550
+ closeSubChartIndicatorsModal(): void;
1551
+ private updateSubChartIndicatorsModal;
1552
+ openTextMarkEditorModal(position: {
1553
+ x: number;
1554
+ y: number;
1555
+ }, text: string, color: string, fontSize: number, isBold: boolean, isItalic: boolean): void;
1556
+ closeTextMarkEditorModal(): void;
1557
+ private updateTextMarkEditorModal;
1558
+ updateTheme(theme: ThemeConfig): void;
1559
+ updateI18n(i18n: I18n): void;
1560
+ destroy(): void;
1344
1561
  }
1345
1562
 
1346
1563
  declare class ChartPanesManager {
@@ -1374,6 +1591,115 @@ declare interface ChartSeries {
1374
1591
  type: string;
1375
1592
  }
1376
1593
 
1594
+ declare class ChartTools {
1595
+ private chart;
1596
+ drawingManager: DrawingManager | null;
1597
+ chartMarkManager: ChartMarkManager | null;
1598
+ chartPanesManager: ChartPanesManager | null;
1599
+ currentDrawingType: DrawingType | null;
1600
+ textMarkToolBar: TextMarkToolBar | null;
1601
+ graphMarkToolBar: GraphMarkToolBar | null;
1602
+ currentMarkSettingsStyle: IMarkStyle | null;
1603
+ leftPanel: LeftPanel | null;
1604
+ onCloseDrawing?: () => void;
1605
+ onExitBrushMode?: () => void;
1606
+ isDraggingToolbar: boolean;
1607
+ toolbarDragStartPoint: Point | null;
1608
+ toolbarDragStartPosition: Point | null;
1609
+ private movementDisableCount;
1610
+ private originalChartOptions;
1611
+ constructor(chart: Chart);
1612
+ initDrawingManager(): void;
1613
+ initPanesManager(): void;
1614
+ addSubChart(indicatorType: SubChartIndicatorType, onSettingsClick: (type: SubChartIndicatorType) => void, onCloseClick: (type: SubChartIndicatorType) => void): void;
1615
+ removeSubChart(indicatorType: SubChartIndicatorType): void;
1616
+ getDrawingState(): DrawingManagerState | null;
1617
+ setCursorType(cursorType: CursorType): void;
1618
+ setLineSegmentMarkMode(): void;
1619
+ setArrowLineMarkMode(): void;
1620
+ setThickArrowLineMode(): void;
1621
+ setHorizontalLineMode(): void;
1622
+ setVerticalLineMode(): void;
1623
+ setParallelChannelMarkMode(): void;
1624
+ setLinearRegressionChannelMode(): void;
1625
+ setEquidistantChannelMarkMode(): void;
1626
+ setDisjointChannelMarkMode(): void;
1627
+ setAndrewPitchforkMode(): void;
1628
+ setEnhancedAndrewPitchforkMode(): void;
1629
+ setSchiffPitchforkMode(): void;
1630
+ setRectangleMarkMode(): void;
1631
+ setCircleMarkMode(): void;
1632
+ setEllipseMarkMode(): void;
1633
+ setTriangleMarkMode(): void;
1634
+ setSectorMode(): void;
1635
+ setCurveMode(): void;
1636
+ setDoubleCurveMode(): void;
1637
+ setGannFanMode(): void;
1638
+ setGannBoxMode(): void;
1639
+ setGannRectangleMode(): void;
1640
+ setFibonacciTimeZoonMode(): void;
1641
+ setFibonacciRetracementMode(): void;
1642
+ setFibonacciArcMode(): void;
1643
+ setFibonacciCircleMode(): void;
1644
+ setFibonacciSpiralMode(): void;
1645
+ setFibonacciWedgeMode(): void;
1646
+ setFibonacciFanMode(): void;
1647
+ setFibonacciChannelMode(): void;
1648
+ setFibonacciExtensionBasePriceMode(): void;
1649
+ setFibonacciExtensionBaseTimeMode(): void;
1650
+ setXABCDMode(): void;
1651
+ setHeadAndShouldersMode(): void;
1652
+ setABCDMode(): void;
1653
+ setTriangleABCDMode(): void;
1654
+ setElliottImpulseMode(): void;
1655
+ setElliottCorrectiveMode(): void;
1656
+ setElliottTriangleMode(): void;
1657
+ setElliottDoubleCombinationMode(): void;
1658
+ setElliottTripleCombinationMode(): void;
1659
+ setTimeRangeMarkMode(): void;
1660
+ setPriceRangeMarkMode(): void;
1661
+ setTimePriceRangeMarkMode(): void;
1662
+ setHeatMapMode(): void;
1663
+ setLongPositionMarkMode(): void;
1664
+ setShortPositionMarkMode(): void;
1665
+ setMockKLineMarkMode(): void;
1666
+ setPencilMode(): void;
1667
+ setPenMode(): void;
1668
+ setBrushMode(): void;
1669
+ setMarkerPenMode(): void;
1670
+ setEraserMode(): void;
1671
+ setTextEditMarkMode(): void;
1672
+ setPriceNoteMarkMode(): void;
1673
+ setBubbleBoxMarkMode(): void;
1674
+ setPinMarkMode(): void;
1675
+ setSignpostMarkMode(): void;
1676
+ setPriceLabelMode(): void;
1677
+ setFlagMarkMode(): void;
1678
+ setImageMarkMode(): void;
1679
+ setEmojiMarkMode(emoji: string): void;
1680
+ setPriceEventMode(): void;
1681
+ setTimeEventMode(): void;
1682
+ showAllMark(): void;
1683
+ hideAllMark(): void;
1684
+ clearAllMark(): void;
1685
+ showTableMarkToolBar(drawing: MarkDrawing): void;
1686
+ showTextEditMarkToolBar(drawing: MarkDrawing, isShowGrapTool: boolean): void;
1687
+ showGraphMarkToolBar(drawing: MarkDrawing): void;
1688
+ private setupToolbarDrag;
1689
+ closeTextMarkToolBar(): void;
1690
+ closeGraphMarkToolBar(): void;
1691
+ closeTableMarkToolBar(): void;
1692
+ disableChartMovement(): void;
1693
+ enableChartMovement(): void;
1694
+ handleViewportShiftLeft(): void;
1695
+ handleViewportShiftRight(): void;
1696
+ handleZoomIn(): void;
1697
+ handleZoomOut(): void;
1698
+ updateTheme(theme: ThemeConfig): void;
1699
+ updateI18n(i18n: I18n): void;
1700
+ destroy(): void;
1701
+ }
1702
+
1377
1703
  export declare enum ChartType {
1378
1704
  MainChart = "MainChart",
1379
1705
  SubChart = "SubChart"
@@ -1507,6 +1833,37 @@ declare interface CircleMarkState {
1507
1833
  isDrawing: boolean;
1508
1834
  }
1509
1835
 
1836
+ declare class ContentMarkersManager implements MarkManagerModule {
1837
+ imageMarkManager: ImageMarkManager | null;
1838
+ initialize(context: MarkManagerContext): void;
1839
+ updateProps(context: MarkManagerContext): void;
1840
+ destroy(): void;
1841
+ clearState(): void;
1842
+ isOperatingOnChart(): boolean;
1843
+ getMarkAtPoint(point: {
1844
+ x: number;
1845
+ y: number;
1846
+ }): any;
1847
+ handleMouseDown(point: {
1848
+ x: number;
1849
+ y: number;
1850
+ }): any;
1851
+ handleMouseMove(point: {
1852
+ x: number;
1853
+ y: number;
1854
+ }): any;
1855
+ handleMouseUp(point: {
1856
+ x: number;
1857
+ y: number;
1858
+ }): any;
1859
+ handleKeyDown(event: KeyboardEvent): any;
1860
+ setImageMarkMode(chart: Chart): void;
1861
+ deleteMark(drawingType: DrawingType, iGraph: any): void;
1862
+ deleteAllMarks(): void;
1863
+ showAllMarks(): void;
1864
+ hideAllMarks(): void;
1865
+ }
1866
+
1510
1867
  export declare enum CursorType {
1511
1868
  Default = "default",
1512
1869
  Crosshair = "crosshair",
@@ -2024,6 +2381,8 @@ declare class DrawingManager {
2024
2381
  startToolbarDrag(startPoint: Point, type: 'text' | 'graph'): void;
2025
2382
  updateToolbarPosition(deltaX: number, deltaY: number): void;
2026
2383
  endToolbarDrag(type: 'text' | 'graph'): void;
2384
+ updateTheme(theme: ThemeConfig): void;
2385
+ updateI18n(i18n: I18n): void;
2027
2386
  destroy(): void;
2028
2387
  }
2029
2388
 
@@ -2693,6 +3052,45 @@ declare interface ElliottImpulseMarkState {
2693
3052
  dragPoint: number | null;
2694
3053
  }
2695
3054
 
3055
+ declare class ElliottMarkersManager implements MarkManagerModule {
3056
+ elliottImpulseMarkManager: ElliottImpulseMarkManager | null;
3057
+ elliottCorrectiveMarkManager: ElliottCorrectiveMarkManager | null;
3058
+ elliottTriangleMarkManager: ElliottTriangleMarkManager | null;
3059
+ elliottDoubleCombinationMarkManager: ElliottDoubleCombinationMarkManager | null;
3060
+ elliottTripleCombinationMarkManager: ElliottTripleCombinationMarkManager | null;
3061
+ initialize(context: MarkManagerContext): void;
3062
+ updateProps(context: MarkManagerContext): void;
3063
+ destroy(): void;
3064
+ clearState(): void;
3065
+ isOperatingOnChart(): boolean;
3066
+ getMarkAtPoint(point: {
3067
+ x: number;
3068
+ y: number;
3069
+ }): any;
3070
+ handleMouseDown(point: {
3071
+ x: number;
3072
+ y: number;
3073
+ }): any;
3074
+ handleMouseMove(point: {
3075
+ x: number;
3076
+ y: number;
3077
+ }): any;
3078
+ handleMouseUp(point: {
3079
+ x: number;
3080
+ y: number;
3081
+ }): any;
3082
+ handleKeyDown(event: KeyboardEvent): any;
3083
+ setElliottImpulseMode(chart: Chart): any;
3084
+ setElliottCorrectiveMode(chart: Chart): any;
3085
+ setElliottTriangleMode(chart: Chart): any;
3086
+ setElliottDoubleCombinationMode(chart: Chart): any;
3087
+ setElliottTripleCombinationMode(chart: Chart): any;
3088
+ deleteMark(drawingType: DrawingType, iGraph: any): void;
3089
+ deleteAllMarks(): void;
3090
+ showAllMarks(): void;
3091
+ hideAllMarks(): void;
3092
+ }
3093
+
2696
3094
  declare class ElliottTriangleMark implements IGraph, IMarkStyle {
2697
3095
  private _chart;
2698
3096
  private _series;
@@ -4328,6 +4726,55 @@ declare interface FibonacciFanMarkState {
4328
4726
  isDrawing: boolean;
4329
4727
  }
4330
4728
 
4729
+ declare class FibonacciMarkersManager implements MarkManagerModule {
4730
+ fibonacciTimeZoonMarkManager: FibonacciTimeZoonMarkManager | null;
4731
+ fibonacciRetracementMarkManager: FibonacciRetracementMarkManager | null;
4732
+ fibonacciArcMarkManager: FibonacciArcMarkManager | null;
4733
+ fibonacciCircleMarkManager: FibonacciCircleMarkManager | null;
4734
+ fibonacciSpiralMarkManager: FibonacciSpiralMarkManager | null;
4735
+ fibonacciWedgeMarkManager: FibonacciWedgeMarkManager | null;
4736
+ fibonacciFanMarkManager: FibonacciFanMarkManager | null;
4737
+ fibonacciChannelMarkManager: FibonacciChannelMarkManager | null;
4738
+ fibonacciExtensionBasePriceMarkManager: FibonacciExtensionBasePriceMarkManager | null;
4739
+ fibonacciExtensionBaseTimeMarkManager: FibonacciExtensionBaseTimeMarkManager | null;
4740
+ initialize(context: MarkManagerContext): void;
4741
+ updateProps(context: MarkManagerContext): void;
4742
+ destroy(): void;
4743
+ clearState(): void;
4744
+ isOperatingOnChart(): boolean;
4745
+ getMarkAtPoint(point: {
4746
+ x: number;
4747
+ y: number;
4748
+ }): any;
4749
+ handleMouseDown(point: {
4750
+ x: number;
4751
+ y: number;
4752
+ }): any;
4753
+ handleMouseMove(point: {
4754
+ x: number;
4755
+ y: number;
4756
+ }): any;
4757
+ handleMouseUp(point: {
4758
+ x: number;
4759
+ y: number;
4760
+ }): any;
4761
+ handleKeyDown(event: KeyboardEvent): any;
4762
+ setFibonacciTimeZoonMode(chart: Chart): any;
4763
+ setFibonacciRetracementMode(chart: Chart): any;
4764
+ setFibonacciArcMode(chart: Chart): any;
4765
+ setFibonacciCircleMode(chart: Chart): any;
4766
+ setFibonacciSpiralMode(chart: Chart): any;
4767
+ setFibonacciWedgeMode(chart: Chart): any;
4768
+ setFibonacciFanMode(chart: Chart): any;
4769
+ setFibonacciChannelMode(chart: Chart): any;
4770
+ setFibonacciExtensionBasePriceMode(chart: Chart): any;
4771
+ setFibonacciExtensionBaseTimeMode(chart: Chart): any;
4772
+ deleteMark(drawingType: DrawingType, iGraph: any): void;
4773
+ deleteAllMarks(): void;
4774
+ showAllMarks(): void;
4775
+ hideAllMarks(): void;
4776
+ }
4777
+
4331
4778
  declare class FibonacciRetracementMark implements IGraph, IMarkStyle {
4332
4779
  private _chart;
4333
4780
  private _series;
@@ -4987,6 +5434,41 @@ declare interface FlagMarkState {
4987
5434
  dragTarget: FlagMark | null;
4988
5435
  }
4989
5436
 
5437
+ declare class ForkMarkersManager implements MarkManagerModule {
5438
+ andrewPitchforkMarkManager: AndrewPitchforkMarkManager | null;
5439
+ enhancedAndrewPitchforkMarkManager: EnhancedAndrewPitchforkMarkManager | null;
5440
+ schiffPitchforkMarkManager: SchiffPitchforkMarkManager | null;
5441
+ initialize(context: MarkManagerContext): void;
5442
+ updateProps(context: MarkManagerContext): void;
5443
+ destroy(): void;
5444
+ clearState(): void;
5445
+ isOperatingOnChart(): boolean;
5446
+ getMarkAtPoint(point: {
5447
+ x: number;
5448
+ y: number;
5449
+ }): any;
5450
+ handleMouseDown(point: {
5451
+ x: number;
5452
+ y: number;
5453
+ }): any;
5454
+ handleMouseMove(point: {
5455
+ x: number;
5456
+ y: number;
5457
+ }): any;
5458
+ handleMouseUp(point: {
5459
+ x: number;
5460
+ y: number;
5461
+ }): any;
5462
+ handleKeyDown(event: KeyboardEvent): any;
5463
+ setAndrewPitchforkMode(chart: Chart): any;
5464
+ setEnhancedAndrewPitchforkMode(chart: Chart): any;
5465
+ setSchiffPitchforkMode(chart: Chart): any;
5466
+ deleteMark(drawingType: DrawingType, iGraph: any): void;
5467
+ deleteAllMarks(): void;
5468
+ showAllMarks(): void;
5469
+ hideAllMarks(): void;
5470
+ }
5471
+
4990
5472
  declare class GannBoxMark implements IGraph, IMarkStyle {
4991
5473
  private _chart;
4992
5474
  private _series;
@@ -5277,6 +5759,41 @@ declare interface GannFanMarkState {
5277
5759
  isDrawing: boolean;
5278
5760
  }
5279
5761
 
5762
+ declare class GannMarkersManager implements MarkManagerModule {
5763
+ gannFanMarkManager: GannFanMarkManager | null;
5764
+ gannBoxMarkManager: GannBoxMarkManager | null;
5765
+ gannRectangleMarkManager: GannRectangleMarkManager | null;
5766
+ initialize(context: MarkManagerContext): void;
5767
+ updateProps(context: MarkManagerContext): void;
5768
+ destroy(): void;
5769
+ clearState(): void;
5770
+ isOperatingOnChart(): boolean;
5771
+ getMarkAtPoint(point: {
5772
+ x: number;
5773
+ y: number;
5774
+ }): any;
5775
+ handleMouseDown(point: {
5776
+ x: number;
5777
+ y: number;
5778
+ }): any;
5779
+ handleMouseMove(point: {
5780
+ x: number;
5781
+ y: number;
5782
+ }): any;
5783
+ handleMouseUp(point: {
5784
+ x: number;
5785
+ y: number;
5786
+ }): any;
5787
+ handleKeyDown(event: KeyboardEvent): any;
5788
+ setGannFanMode(chart: Chart): any;
5789
+ setGannBoxMode(chart: Chart): any;
5790
+ setGannRectangleMode(chart: Chart): any;
5791
+ deleteMark(drawingType: DrawingType, iGraph: any): void;
5792
+ deleteAllMarks(): void;
5793
+ showAllMarks(): void;
5794
+ hideAllMarks(): void;
5795
+ }
5796
+
5280
5797
  declare class GannRectangleMark implements IGraph, IMarkStyle {
5281
5798
  private _chart;
5282
5799
  private _series;
@@ -5461,6 +5978,8 @@ declare class GraphMarkToolBar {
5461
5978
  private bindEvents;
5462
5979
  private bindPanelEvents;
5463
5980
  updatePosition(position: Point): void;
5981
+ updateTheme(theme: ThemeConfig): void;
5982
+ updateI18n(i18n: I18n): void;
5464
5983
  destroy(): void;
5465
5984
  }
5466
5985
 
@@ -6468,6 +6987,46 @@ declare interface ImageMarkState {
6468
6987
  selectedImageUrl: string;
6469
6988
  }
6470
6989
 
6990
+ declare class ImageUploadModal {
6991
+ private container;
6992
+ private options;
6993
+ private imageUrl;
6994
+ private modalPosition;
6995
+ private isDragging;
6996
+ private dragOffset;
6997
+ private fileInput;
6998
+ private modalRef;
6999
+ private headerRef;
7000
+ private boundHandleMouseMove;
7001
+ private boundHandleMouseUp;
7002
+ constructor(options: ImageUploadModalOptions);
7003
+ private handleFileSelect;
7004
+ private handleUrlChange;
7005
+ private handleConfirm;
7006
+ private handleFileButtonClick;
7007
+ private handleMouseDown;
7008
+ private handleMouseMove;
7009
+ private handleMouseUp;
7010
+ private handleOverlayClick;
7011
+ private handleKeyPress;
7012
+ private updatePreview;
7013
+ private updateModalPosition;
7014
+ private getStyles;
7015
+ private applyStyles;
7016
+ private createElement;
7017
+ private render;
7018
+ update(options: Partial<ImageUploadModalOptions>): void;
7019
+ destroy(): void;
7020
+ }
7021
+
7022
+ declare interface ImageUploadModalOptions {
7023
+ isOpen: boolean;
7024
+ onClose: () => void;
7025
+ onConfirm: (imageUrl: string) => void;
7026
+ theme: ThemeConfig;
7027
+ i18n: I18n;
7028
+ }
7029
+
6471
7030
  declare interface IMarkManager<T = any> {
6472
7031
  getCurrentDragTarget(): T | null;
6473
7032
  getCurrentDragPoint(): string | null;
@@ -6759,6 +7318,44 @@ declare interface LinearRegressionChannelMarkState {
6759
7318
  } | null;
6760
7319
  }
6761
7320
 
7321
+ declare class LineMarkersManager implements MarkManagerModule {
7322
+ lineSegmentMarkManager: LineSegmentMarkManager | null;
7323
+ axisLineMarkManager: AxisLineMarkManager | null;
7324
+ arrowLineMarkManager: ArrowLineMarkManager | null;
7325
+ thickArrowLineMarkManager: ThickArrowLineMarkManager | null;
7326
+ initialize(context: MarkManagerContext): void;
7327
+ updateProps(context: MarkManagerContext): void;
7328
+ destroy(): void;
7329
+ clearState(): void;
7330
+ isOperatingOnChart(): boolean;
7331
+ getMarkAtPoint(point: {
7332
+ x: number;
7333
+ y: number;
7334
+ }): any;
7335
+ handleMouseDown(point: {
7336
+ x: number;
7337
+ y: number;
7338
+ }): any;
7339
+ handleMouseMove(point: {
7340
+ x: number;
7341
+ y: number;
7342
+ }): any;
7343
+ handleMouseUp(point: {
7344
+ x: number;
7345
+ y: number;
7346
+ }): any;
7347
+ handleKeyDown(event: KeyboardEvent): any;
7348
+ setLineSegmentMarkMode(chart: Chart): any;
7349
+ setHorizontalLineMode(chart: Chart): any;
7350
+ setVerticalLineMode(chart: Chart): any;
7351
+ setArrowLineMarkMode(chart: Chart): any;
7352
+ setThickArrowLineMode(chart: Chart): any;
7353
+ deleteMark(drawingType: DrawingType, iGraph: any): void;
7354
+ deleteAllMarks(): void;
7355
+ showAllMarks(): void;
7356
+ hideAllMarks(): void;
7357
+ }
7358
+
6762
7359
  declare class LineSegmentMark implements IGraph, IMarkStyle {
6763
7360
  private _chart;
6764
7361
  private _series;
@@ -7024,6 +7621,59 @@ declare interface MainChartIndicatorParam {
7024
7621
  paramValue: number;
7025
7622
  }
7026
7623
 
7624
+ declare class MainChartIndicatorsSettingModal {
7625
+ private container;
7626
+ private options;
7627
+ private indicator;
7628
+ private modalPosition;
7629
+ private isDragging;
7630
+ private dragOffset;
7631
+ private modalRef;
7632
+ private headerRef;
7633
+ private boundHandleMouseMove;
7634
+ private boundHandleMouseUp;
7635
+ private paramsListRef;
7636
+ constructor(options: MainChartIndicatorsSettingModalOptions);
7637
+ private getRandomColor;
7638
+ private getDefaultIndicatorByType;
7639
+ private canModifyItems;
7640
+ private addIndicatorParam;
7641
+ private removeIndicatorParam;
7642
+ private updateIndicatorValue;
7643
+ private updateIndicatorColor;
7644
+ private updateIndicatorLineWidth;
7645
+ private handleConfirm;
7646
+ private handleCancel;
7647
+ private getIndicatorTypeName;
7648
+ private getIndicatorItemLabel;
7649
+ private calculatePosition;
7650
+ private handleMouseDown;
7651
+ private handleMouseMove;
7652
+ private handleMouseUp;
7653
+ private handleOverlayClick;
7654
+ private handleKeyPress;
7655
+ private updateModalPosition;
7656
+ private renderParamsList;
7657
+ private getStyles;
7658
+ private applyStyles;
7659
+ private createElement;
7660
+ private injectScrollbarStyles;
7661
+ private render;
7662
+ update(options: Partial<MainChartIndicatorsSettingModalOptions>): void;
7663
+ destroy(): void;
7664
+ }
7665
+
7666
+ declare interface MainChartIndicatorsSettingModalOptions {
7667
+ isOpen: boolean;
7668
+ onClose: () => void;
7669
+ onConfirm: (indicator: MainChartIndicatorInfo) => void;
7670
+ initialIndicator?: MainChartIndicatorInfo | null;
7671
+ theme?: ThemeConfig;
7672
+ parentRef?: HTMLElement | null;
7673
+ indicatorType?: MainChartIndicatorType | null;
7674
+ i18n: I18n;
7675
+ }
7676
+
7027
7677
  export declare enum MainChartIndicatorType {
7028
7678
  MA = "MA",
7029
7679
  EMA = "EMA",
@@ -7048,6 +7698,7 @@ declare class MainChartManager {
7048
7698
  getCurrentSeries(): any;
7049
7699
  getCurrentType(): MainChartType | null;
7050
7700
  private destroyCurrentChart;
7701
+ updateTheme(theme: ThemeConfig): void;
7051
7702
  destroy(): void;
7052
7703
  }
7053
7704
 
@@ -7243,6 +7894,35 @@ declare interface MarkerPenMarkState {
7243
7894
  dragTarget: MarkerPenMark | null;
7244
7895
  }
7245
7896
 
7897
+ declare interface MarkManagerContext {
7898
+ chart: Chart;
7899
+ }
7900
+
7901
+ declare interface MarkManagerModule {
7902
+ initialize(context: MarkManagerContext): void;
7903
+ updateProps(context: MarkManagerContext): void;
7904
+ destroy(): void;
7905
+ clearState(): void;
7906
+ isOperatingOnChart(): boolean;
7907
+ getMarkAtPoint(point: {
7908
+ x: number;
7909
+ y: number;
7910
+ }): any;
7911
+ handleMouseDown(point: {
7912
+ x: number;
7913
+ y: number;
7914
+ }): any;
7915
+ handleMouseMove(point: {
7916
+ x: number;
7917
+ y: number;
7918
+ }): any;
7919
+ handleMouseUp(point: {
7920
+ x: number;
7921
+ y: number;
7922
+ }): any;
7923
+ handleKeyDown(event: KeyboardEvent): any;
7924
+ }
7925
+
7246
7926
  declare class MockKLineMark implements IGraph, IMarkStyle {
7247
7927
  private _chart;
7248
7928
  private _series;
@@ -7492,6 +8172,43 @@ declare interface ParallelChannelMarkState {
7492
8172
  } | null;
7493
8173
  }
7494
8174
 
8175
+ declare class PatternMarkersManager implements MarkManagerModule {
8176
+ xabcdMarkManager: XABCDMarkManager | null;
8177
+ headAndShouldersMarkManager: HeadAndShouldersMarkManager | null;
8178
+ abcdMarkManager: ABCDMarkManager | null;
8179
+ triangleABCDMarkManager: TriangleABCDMarkManager | null;
8180
+ initialize(context: MarkManagerContext): void;
8181
+ updateProps(context: MarkManagerContext): void;
8182
+ destroy(): void;
8183
+ clearState(): void;
8184
+ isOperatingOnChart(): boolean;
8185
+ getMarkAtPoint(point: {
8186
+ x: number;
8187
+ y: number;
8188
+ }): any;
8189
+ handleMouseDown(point: {
8190
+ x: number;
8191
+ y: number;
8192
+ }): any;
8193
+ handleMouseMove(point: {
8194
+ x: number;
8195
+ y: number;
8196
+ }): any;
8197
+ handleMouseUp(point: {
8198
+ x: number;
8199
+ y: number;
8200
+ }): any;
8201
+ handleKeyDown(event: KeyboardEvent): any;
8202
+ setXABCDMode(chart: Chart): any;
8203
+ setHeadAndShouldersMode(chart: Chart): any;
8204
+ setABCDMode(chart: Chart): any;
8205
+ setTriangleABCDMode(chart: Chart): any;
8206
+ deleteMark(drawingType: DrawingType, iGraph: any): void;
8207
+ deleteAllMarks(): void;
8208
+ showAllMarks(): void;
8209
+ hideAllMarks(): void;
8210
+ }
8211
+
7495
8212
  declare class PencilMark implements IGraph, IMarkStyle, IDeletableMark {
7496
8213
  private _chart;
7497
8214
  private _series;
@@ -7663,6 +8380,47 @@ declare class PenMark implements IGraph, IMarkStyle, IDeletableMark {
7663
8380
  getPointCount(): number;
7664
8381
  }
7665
8382
 
8383
+ declare class PenMarkersManager implements MarkManagerModule {
8384
+ pencilMarkManager: PencilMarkManager | null;
8385
+ penMarkManager: PenMarkManager | null;
8386
+ brushMarkManager: BrushMarkManager | null;
8387
+ markerPenMarkManager: MarkerPenMarkManager | null;
8388
+ eraserMarkManager: EraserMarkManager | null;
8389
+ initialize(context: MarkManagerContext): void;
8390
+ registerAllDeletableMarks(): void;
8391
+ updateProps(context: MarkManagerContext): void;
8392
+ destroy(): void;
8393
+ clearState(): void;
8394
+ isOperatingOnChart(): boolean;
8395
+ getMarkAtPoint(point: {
8396
+ x: number;
8397
+ y: number;
8398
+ }): any;
8399
+ handleMouseDown(point: {
8400
+ x: number;
8401
+ y: number;
8402
+ }): any;
8403
+ handleMouseMove(point: {
8404
+ x: number;
8405
+ y: number;
8406
+ }): any;
8407
+ handleMouseUp(point: {
8408
+ x: number;
8409
+ y: number;
8410
+ }): any;
8411
+ handleKeyDown(event: KeyboardEvent): any;
8412
+ setPencilMode(chart: Chart): any;
8413
+ setPenMode(chart: Chart): any;
8414
+ setBrushMode(chart: Chart): any;
8415
+ setMarkerPenMode(chart: Chart): any;
8416
+ setEraserMode(chart: Chart): any;
8417
+ closeAllBrushTools(chart: Chart): void;
8418
+ deleteMark(drawingType: DrawingType, iGraph: any): void;
8419
+ deleteAllMarks(): void;
8420
+ showAllMarks(): void;
8421
+ hideAllMarks(): void;
8422
+ }
8423
+
7666
8424
  declare class PenMarkManager implements IMarkManager<PenMark> {
7667
8425
  private props;
7668
8426
  private state;
@@ -8460,6 +9218,45 @@ declare interface PriceRangeMarkState {
8460
9218
  } | null;
8461
9219
  }
8462
9220
 
9221
+ declare class RangeMarkersManager implements MarkManagerModule {
9222
+ timeRangeMarkManager: TimeRangeMarkManager | null;
9223
+ priceRangeMarkManager: PriceRangeMarkManager | null;
9224
+ timePriceRangeMarkManager: TimePriceRangeMarkManager | null;
9225
+ longPositionMarkManager: LongPositionMarkManager | null;
9226
+ shortPositionMarkManager: ShortPositionMarkManager | null;
9227
+ initialize(context: MarkManagerContext): void;
9228
+ updateProps(context: MarkManagerContext): void;
9229
+ destroy(): void;
9230
+ clearState(): void;
9231
+ isOperatingOnChart(): boolean;
9232
+ getMarkAtPoint(point: {
9233
+ x: number;
9234
+ y: number;
9235
+ }): any;
9236
+ handleMouseDown(point: {
9237
+ x: number;
9238
+ y: number;
9239
+ }): any;
9240
+ handleMouseMove(point: {
9241
+ x: number;
9242
+ y: number;
9243
+ }): any;
9244
+ handleMouseUp(point: {
9245
+ x: number;
9246
+ y: number;
9247
+ }): any;
9248
+ handleKeyDown(event: KeyboardEvent): any;
9249
+ setTimeRangeMarkMode(chart: Chart): any;
9250
+ setPriceRangeMarkMode(chart: Chart): any;
9251
+ setTimePriceRangeMarkMode(chart: Chart): any;
9252
+ setLongPositionMarkMode(chart: Chart): any;
9253
+ setShortPositionMarkMode(chart: Chart): any;
9254
+ deleteMark(drawingType: DrawingType, iGraph: any): void;
9255
+ deleteAllMarks(): void;
9256
+ showAllMarks(): void;
9257
+ hideAllMarks(): void;
9258
+ }
9259
+
8463
9260
  declare class RectangleMark implements IGraph, IMarkStyle {
8464
9261
  private _chart;
8465
9262
  private _series;
@@ -8732,6 +9529,39 @@ declare interface SchiffPitchforkMarkState {
8732
9529
  } | null;
8733
9530
  }
8734
9531
 
9532
+ declare class ScriptMarkersManager implements MarkManagerModule {
9533
+ timeEventMarkManager: TimeEventMarkManager | null;
9534
+ priceEventMarkManager: PriceEventMarkManager | null;
9535
+ initialize(context: MarkManagerContext): void;
9536
+ updateProps(context: MarkManagerContext): void;
9537
+ destroy(): void;
9538
+ clearState(): void;
9539
+ isOperatingOnChart(): boolean;
9540
+ getMarkAtPoint(point: {
9541
+ x: number;
9542
+ y: number;
9543
+ }): any;
9544
+ handleMouseDown(point: {
9545
+ x: number;
9546
+ y: number;
9547
+ }): any;
9548
+ handleMouseMove(point: {
9549
+ x: number;
9550
+ y: number;
9551
+ }): any;
9552
+ handleMouseUp(point: {
9553
+ x: number;
9554
+ y: number;
9555
+ }): any;
9556
+ handleKeyDown(event: KeyboardEvent): any;
9557
+ setPriceEventMode(chart: Chart): any;
9558
+ setTimeEventMode(chart: Chart): any;
9559
+ deleteMark(drawingType: DrawingType, iGraph: any): void;
9560
+ deleteAllMarks(): void;
9561
+ showAllMarks(): void;
9562
+ hideAllMarks(): void;
9563
+ }
9564
+
8735
9565
  export declare enum ScriptType {
8736
9566
  Time = "time",
8737
9567
  Price = "price",
@@ -8873,6 +9703,49 @@ declare interface SectorMarkState {
8873
9703
 
8874
9704
  export declare function setLocale(locale: 'en' | 'zh-cn'): void;
8875
9705
 
9706
+ declare class ShapeMarkersManager implements MarkManagerModule {
9707
+ rectangleMarkManager: RectangleMarkManager | null;
9708
+ circleMarkManager: CircleMarkManager | null;
9709
+ ellipseMarkManager: EllipseMarkManager | null;
9710
+ triangleMarkManager: TriangleMarkManager | null;
9711
+ sectorMarkManager: SectorMarkManager | null;
9712
+ curveMarkManager: CurveMarkManager | null;
9713
+ doubleCurveMarkManager: DoubleCurveMarkManager | null;
9714
+ initialize(context: MarkManagerContext): void;
9715
+ updateProps(context: MarkManagerContext): void;
9716
+ destroy(): void;
9717
+ clearState(): void;
9718
+ isOperatingOnChart(): boolean;
9719
+ getMarkAtPoint(point: {
9720
+ x: number;
9721
+ y: number;
9722
+ }): any;
9723
+ handleMouseDown(point: {
9724
+ x: number;
9725
+ y: number;
9726
+ }): any;
9727
+ handleMouseMove(point: {
9728
+ x: number;
9729
+ y: number;
9730
+ }): any;
9731
+ handleMouseUp(point: {
9732
+ x: number;
9733
+ y: number;
9734
+ }): any;
9735
+ handleKeyDown(event: KeyboardEvent): any;
9736
+ setRectangleMarkMode(chart: Chart): any;
9737
+ setCircleMarkMode(chart: Chart): any;
9738
+ setEllipseMarkMode(chart: Chart): any;
9739
+ setTriangleMarkMode(chart: Chart): any;
9740
+ setSectorMode(chart: Chart): any;
9741
+ setCurveMode(chart: Chart): any;
9742
+ setDoubleCurveMode(chart: Chart): any;
9743
+ deleteMark(drawingType: DrawingType, iGraph: any): void;
9744
+ deleteAllMarks(): void;
9745
+ showAllMarks(): void;
9746
+ hideAllMarks(): void;
9747
+ }
9748
+
8876
9749
  declare class ShortPositionMark implements IGraph, IMarkStyle {
8877
9750
  private _chart;
8878
9751
  private _series;
@@ -9174,6 +10047,39 @@ declare interface SignPostMarkState {
9174
10047
  dragTarget: SignPostMark | null;
9175
10048
  }
9176
10049
 
10050
+ declare class SpecialMarkersManager implements MarkManagerModule {
10051
+ mockKLineMarkManager: MockKLineMarkManager | null;
10052
+ heatMapMarkManager: HeatMapMarkManager | null;
10053
+ initialize(context: MarkManagerContext): void;
10054
+ updateProps(context: MarkManagerContext): void;
10055
+ destroy(): void;
10056
+ clearState(): void;
10057
+ isOperatingOnChart(): boolean;
10058
+ getMarkAtPoint(point: {
10059
+ x: number;
10060
+ y: number;
10061
+ }): any;
10062
+ handleMouseDown(point: {
10063
+ x: number;
10064
+ y: number;
10065
+ }): any;
10066
+ handleMouseMove(point: {
10067
+ x: number;
10068
+ y: number;
10069
+ }): any;
10070
+ handleMouseUp(point: {
10071
+ x: number;
10072
+ y: number;
10073
+ }): any;
10074
+ handleKeyDown(event: KeyboardEvent): any;
10075
+ setMockKLineMarkMode(chart: Chart): any;
10076
+ setHeatMapMode(chart: Chart): any;
10077
+ deleteMark(drawingType: DrawingType, iGraph: any): void;
10078
+ deleteAllMarks(): void;
10079
+ showAllMarks(): void;
10080
+ hideAllMarks(): void;
10081
+ }
10082
+
9177
10083
  export declare enum StaticMarkDirection {
9178
10084
  Top = "Top",
9179
10085
  Bottom = "Bottom"
@@ -9184,6 +10090,58 @@ export declare enum StaticMarkType {
9184
10090
  Arrow = "Arrow"
9185
10091
  }
9186
10092
 
10093
+ declare class SubChartIndicatorsSettingModal {
10094
+ private container;
10095
+ private options;
10096
+ private params;
10097
+ private modalPosition;
10098
+ private isDragging;
10099
+ private dragOffset;
10100
+ private modalRef;
10101
+ private headerRef;
10102
+ private boundHandleMouseMove;
10103
+ private boundHandleMouseUp;
10104
+ private paramsListRef;
10105
+ constructor(options: SubChartIndicatorsSettingModalOptions);
10106
+ private getIndicatorTitle;
10107
+ private getRandomColor;
10108
+ private getIndicatorConstraints;
10109
+ private addIndicatorParam;
10110
+ private removeIndicatorParam;
10111
+ private updateIndicatorName;
10112
+ private updateIndicatorValue;
10113
+ private updateIndicatorColor;
10114
+ private updateIndicatorLineWidth;
10115
+ private handleConfirm;
10116
+ private handleCancel;
10117
+ private calculatePosition;
10118
+ private handleMouseDown;
10119
+ private handleMouseMove;
10120
+ private handleMouseUp;
10121
+ private handleOverlayClick;
10122
+ private handleKeyPress;
10123
+ private updateModalPosition;
10124
+ private renderParamsList;
10125
+ private getStyles;
10126
+ private applyStyles;
10127
+ private createElement;
10128
+ private injectScrollbarStyles;
10129
+ private render;
10130
+ update(options: Partial<SubChartIndicatorsSettingModalOptions>): void;
10131
+ destroy(): void;
10132
+ }
10133
+
10134
+ declare interface SubChartIndicatorsSettingModalOptions {
10135
+ isOpen: boolean;
10136
+ onClose: () => void;
10137
+ onConfirm: (params: IIndicatorInfo[]) => void;
10138
+ initialParams: IIndicatorInfo[];
10139
+ theme?: ThemeConfig;
10140
+ parentRef?: HTMLElement | null;
10141
+ indicatorType: SubChartIndicatorType | null;
10142
+ i18n: I18n;
10143
+ }
10144
+
9187
10145
  export declare enum SubChartIndicatorType {
9188
10146
  RSI = "RSI",
9189
10147
  MACD = "MACD",
@@ -9365,6 +10323,101 @@ declare interface TextEditMarkState {
9365
10323
  dragType: 'bubble' | null;
9366
10324
  }
9367
10325
 
10326
+ declare class TextMarkEditorModal {
10327
+ private container;
10328
+ private options;
10329
+ private text;
10330
+ private color;
10331
+ private fontSize;
10332
+ private isBold;
10333
+ private isItalic;
10334
+ private modalPosition;
10335
+ private isDragging;
10336
+ private dragOffset;
10337
+ private modalRef;
10338
+ private headerRef;
10339
+ private textareaRef;
10340
+ private boundHandleMouseMove;
10341
+ private boundHandleMouseUp;
10342
+ constructor(options: TextMarkEditorModalOptions);
10343
+ private handleSave;
10344
+ private handleCancel;
10345
+ private handleMouseDown;
10346
+ private handleMouseMove;
10347
+ private handleMouseUp;
10348
+ private handleOverlayClick;
10349
+ private handleKeyPress;
10350
+ private updateModalPosition;
10351
+ private getStyles;
10352
+ private applyStyles;
10353
+ private createElement;
10354
+ private render;
10355
+ update(options: Partial<TextMarkEditorModalOptions>): void;
10356
+ destroy(): void;
10357
+ }
10358
+
10359
+ declare interface TextMarkEditorModalOptions {
10360
+ isOpen: boolean;
10361
+ position: {
10362
+ x: number;
10363
+ y: number;
10364
+ };
10365
+ theme: ThemeConfig;
10366
+ initialText: string;
10367
+ initialColor: string;
10368
+ initialFontSize: number;
10369
+ initialIsBold: boolean;
10370
+ initialIsItalic: boolean;
10371
+ onSave: (text: string, color: string, fontSize: number, isBold: boolean, isItalic: boolean) => void;
10372
+ onCancel: () => void;
10373
+ i18n: I18n;
10374
+ }
10375
+
10376
+ declare class TextMarkersManager implements MarkManagerModule {
10377
+ priceLabelMarkManager: PriceLabelMarkManager | null;
10378
+ flagMarkManager: FlagMarkManager | null;
10379
+ priceNoteMarkManager: PriceNoteMarkManager | null;
10380
+ signpostMarkManager: SignPostMarkManager | null;
10381
+ emojiMarkManager: EmojiMarkManager | null;
10382
+ pinMarkManager: PinMarkManager | null;
10383
+ bubbleBoxMarkManager: BubbleBoxMarkManager | null;
10384
+ textEditMarkManager: TextEditMarkManager | null;
10385
+ initialize(context: MarkManagerContext): void;
10386
+ updateProps(context: MarkManagerContext): void;
10387
+ destroy(): void;
10388
+ clearState(): void;
10389
+ isOperatingOnChart(): boolean;
10390
+ getMarkAtPoint(point: {
10391
+ x: number;
10392
+ y: number;
10393
+ }): any;
10394
+ handleMouseDown(point: {
10395
+ x: number;
10396
+ y: number;
10397
+ }): any;
10398
+ handleMouseMove(point: {
10399
+ x: number;
10400
+ y: number;
10401
+ }): any;
10402
+ handleMouseUp(point: {
10403
+ x: number;
10404
+ y: number;
10405
+ }): any;
10406
+ handleKeyDown(event: KeyboardEvent): any;
10407
+ setPriceLabelMode(chart: Chart): any;
10408
+ setFlagMarkMode(chart: Chart): any;
10409
+ setPriceNoteMarkMode(chart: Chart): any;
10410
+ setSignpostMarkMode(chart: Chart): any;
10411
+ setEmojiMarkMode(chart: Chart, emoji: string): any;
10412
+ setPinMarkMode(chart: Chart): any;
10413
+ setBubbleBoxMarkMode(chart: Chart): any;
10414
+ setTextEditMarkMode(chart: Chart): any;
10415
+ deleteMark(drawingType: DrawingType, iGraph: any): void;
10416
+ deleteAllMarks(): void;
10417
+ showAllMarks(): void;
10418
+ hideAllMarks(): void;
10419
+ }
10420
+
9368
10421
  declare class TextMarkToolBar {
9369
10422
  container: HTMLElement | null;
9370
10423
  private options;
@@ -9400,6 +10453,8 @@ declare class TextMarkToolBar {
9400
10453
  private updateItalicButton;
9401
10454
  private bindPanelEvents;
9402
10455
  updatePosition(position: Point): void;
10456
+ updateTheme(theme: ThemeConfig): void;
10457
+ updateI18n(i18n: I18n): void;
9403
10458
  destroy(): void;
9404
10459
  }
9405
10460