import { AfterContentInit, ChangeDetectorRef, DestroyRef, ElementRef, EventEmitter, NgZone, OnDestroy, OnInit, QueryList } from '@angular/core'; import { BehaviorSubject, Observable } from 'rxjs'; import { ChartBetsComponent, ChartCursorsComponent, ChartDateMarkersComponent, ChartHistogramComponent, ChartVolumeAxisComponent, ChartLineComponent, ChartPriceAxisComponent, ChartTimelineComponent, ChartZonesComponent } from '.'; import { ChartService } from './services/chart.service'; import { ChartConfig, ChartPoint, ChartRangeConfig, DateRange } from './entities/chart-entities'; import { ChartBase } from './base/chart.base'; import { ChartScaleUtil, ScaleConfig } from './utils/chart-scale.util'; import { Option } from '@suntech-innovation/option'; import { PriceChartBet } from '../../entities'; import * as i0 from "@angular/core"; export declare const DEFAULT_CONFIG: ChartConfig; export declare class ChartComponent extends ChartBase implements OnInit, AfterContentInit, OnDestroy { #private; private elRef; private chartService; private cdRef; private zone; private destroyRef; static displayedDateRange$: BehaviorSubject | null>; hover: EventEmitter; init: EventEmitter; scaleChanged: EventEmitter; lineRef: QueryList; charts: QueryList; timelineRef: ChartTimelineComponent; cursorsRef: ChartCursorsComponent; betsRef: ChartBetsComponent; zonesRef: ChartZonesComponent; histogramRef: ChartHistogramComponent; volumeAxisRef: ChartVolumeAxisComponent; pricesRef: ChartPriceAxisComponent; dateMarkersRef: ChartDateMarkersComponent; hovered: number; holstId: string; id: string; scale: ChartScaleUtil; getConfiguration: (range: Option) => ChartRangeConfig; private cursorMovementSub; private painter; private basePosition; private smoothRender; constructor(elRef: ElementRef, chartService: ChartService, cdRef: ChangeDetectorRef, zone: NgZone, destroyRef: DestroyRef); get window(): ChartRangeConfig; get nativeElement(): HTMLElement; get holstElement(): HTMLElement; get lineChanges(): Observable; get priceColor(): string | undefined; set config(config: Partial); render(): void; ngOnInit(): void; ngAfterContentInit(): void; ngOnDestroy(): void; setConfig(): void; renderTimeline(range: DateRange): void; /** * Allows to configure the time range for the timeline of the graph * If emitEvent = true, URL will be changed */ setTimeRange(range?: DateRange, emitEvent?: boolean): void; moveInTimeline(): void; handleCursorMovement(): void; drawLineMarkers([date, price]: ChartPoint, color: string): void; drawGrid(): void; renderPriceAxis(minStep: number, position: 'left' | 'right'): void; renderDateAxis(): void; onOffsetChanges(dateRange: DateRange): void; findIndexByOffset(offset: number, dates?: number[]): number; drawVerticalLine([date]: ChartPoint): void; mouseDownHandler(event: MouseEvent): void; /** * Handling mouse movement to display and setting an offset */ initRangeChangesHandler(entry: number, end?: number): void; handleResizing(): void; handleKeyboard(): void; expandConfigWithBets(bets: PriceChartBet[]): void; getPricePosition(y: number, base?: number): number; changeScale(event: WheelEvent): void; moveChart(entryY?: number, entryX?: number): void; resetScale(): void; emitScaleChanges(state: ScaleConfig): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }