import { AfterViewInit, EventEmitter, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core'; import { MatDialog, MatPaginator, MatSelectChange, MatSliderChange, MatSlideToggleChange, MatSnackBar, MatTableDataSource, PageEvent } from '@angular/material'; import { NgxLoopVehicleLiveMap, VehicleMap } from '../ngx-loop-vehicle-livemap/ngx-loop-vehicle-livemap'; import { PreferencesService } from '../preferences.service'; import { LiveMapService } from '../depends/livemap.service'; import * as L from 'leaflet'; import { HourPipe } from '../depends/pipe/date.pipe'; import { ConfigurationService } from '../depends/configuration.service'; import { TranslateService } from '../translate.service'; import { SatDatepicker, SatDatepickerRangeValue } from 'saturn-datepicker'; import { TrackItPeriodChangeEvent } from '../ngx-loop-map-vehicle-panel/ngx-loop-map-vehicle-panel'; export interface TrackItPointExtras { latitude: number; longitude: number; timestamp: number; color: string; title: string; relativeMessageIndex?: number; } export declare class NgxTrackItPanel implements OnInit, AfterViewInit, OnChanges, OnDestroy { liveMapService: LiveMapService; private _snackBar; private dialog; private configurationService; preferenceService: PreferencesService; translate: TranslateService; paginator: MatPaginator; rangePicker: SatDatepicker; trackItVehicleSetter: VehicleMap; trackItVehicle: VehicleMap; liveMap: NgxLoopVehicleLiveMap; additionalFields: { title: string; field: string; }[]; onClosed: EventEmitter; onTrackItChanged: EventEmitter; ref: EventEmitter; selectedPeriod: { start: string; end: string; }; loading: boolean; pageSize: number; currentPage: number; dataSource: MatTableDataSource; displayedColumns: string[]; messages: any[]; selectedMessage: any; currentTableIndex: number; pulseMarker: L.Marker; vehicleMarker: L.Marker; sekkerSize: number; sekkerIndex: number; hourPipe: HourPipe; isPlaying: boolean; intervalId: number; minimized: boolean; playbackSpeed: number; scrollToIndex: number; selectedRange: SatDatepickerRangeValue; pointExtras: TrackItPointExtras[]; extrasProcessed: boolean; showEvents: boolean; constructor(liveMapService: LiveMapService, _snackBar: MatSnackBar, dialog: MatDialog, configurationService: ConfigurationService, preferenceService: PreferencesService, translate: TranslateService); ngOnChanges(changes: SimpleChanges): void; ngOnInit(): void; onShowEventsChanged(event: MatSlideToggleChange): void; showEventsToggleButton(): boolean; setEventsMakerVisibility(visibility: boolean): void; getAccDist(): string; initFirstDate(): void; onPage(event: PageEvent): void; cleanPointExtras(): void; setPointExtras(extras: TrackItPointExtras[]): void; processExtras(): void; getEventPointPositionInTimeline(event: TrackItPointExtras): number; reset(): void; onVehicleChanged(): void; scrollToMessage(messageIndex: number): void; getAdditionalFieldValue(field: string, element: any): any; ngAfterViewInit(): void; getPageIndex(messageIndex: number): number; ngOnDestroy(): void; copyMessage(message: any, event: MouseEvent): void; onSpeedChanged(event: MatSelectChange): void; pauseAndStartPlayInterval(): void; cancelPlayInterval(): void; play(): void; nextFrame(): void; cleanMarkers(): void; onMessageSelected(message: any, scrollToView: boolean, zoom?: number): void; moveMarkers(latitude: any, longitude: any): void; canProcessExtras(): boolean; addPulseMarker(latitude: any, longitude: any): void; getMessageDateTime(message: any): any; convertSeekerIndex(sekkerIndex: any): number; convertMessageIndex(messageIndex: any): number; onSeekerChanged(event: MatSliderChange): void; seekMessage(): void; onRangeSelected(value: any): void; downloadMessages(): void; formatLabel: (index: any) => string; getMessageClass(message: any): "" | "flashit_row"; buildPolyline(): void; openSnackBar(message: string, type: string): void; }