import { RaidbossOptions } from '../../raidboss_options'; import EventBus from '../EventBus'; import RaidEmulatorPopupText from '../overrides/RaidEmulatorPopupText'; import RaidEmulatorWatchCombatantsOverride from '../overrides/RaidEmulatorWatchCombatantsOverride'; import AnalyzedEncounter from './AnalyzedEncounter'; import Encounter from './Encounter'; export default class RaidEmulator extends EventBus { options: RaidbossOptions; static readonly playbackSpeed = 10; encounters: Encounter[]; currentEncounter?: AnalyzedEncounter; playingInterval?: number; currentLogLineIndex?: number; currentLogTime?: number; lastLogLineTime?: number; lastTickTime?: number; popupText?: RaidEmulatorPopupText; constructor(options: RaidbossOptions); addEncounter(encounter: Encounter): void; private setCurrent; setCurrentByID(id: number, watchCombatantsOverride: RaidEmulatorWatchCombatantsOverride): boolean; selectPerspective(id: string): void; play(): boolean; pause(): boolean; seek(timeOffset: number): Promise; seekTo(seekTimestamp: number): Promise; tick(): Promise; setPopupText(popupText: RaidEmulatorPopupText): void; }