import { BaseOptions } from '../../types/data'; import { CactbotBaseRegExp } from '../../types/net_trigger'; import { LocaleObject, LocaleText } from '../../types/trigger'; import './eureka_config'; import '../../resources/defaults.css'; import './eureka.css'; type WeatherForFunc = (nowMs: number, stopTime?: number) => string; type WeatherInFunc = (nowMs: number, startTime: number) => string; type WeatherTimeForFunc = (dayNightMin: number) => string; type FieldNote = { id: number; name: LocaleText; shortName: LocaleText; rarity: number; }; type NMInfo = { label: LocaleText; x: number; y: number; respawnMinutes?: number; element?: HTMLElement; progressElement?: HTMLElement; timeElement?: HTMLElement; respawnTimeMsLocal?: number; respawnTimeMsTracker?: number; fateId?: number; trackerName?: LocaleText; weather?: string; time?: string; bunny?: boolean; ceKey?: number; shortLabel?: LocaleText; fieldNotes?: number; isCritical?: boolean; isCEPrecursor?: boolean; isDuel?: boolean; isDuelPrecursor?: boolean; }; export type EurekaZoneInfo = { mapImage: string; mapWidth: number; mapHeight: number; shortName: string; mapToPixelXScalar: number; mapToPixelXConstant: number; mapToPixelYScalar: number; mapToPixelYConstant: number; nms: { [nmId: string]: NMInfo; }; hasTracker?: boolean; primaryWeather?: string[]; fairy?: LocaleText; onlyShowInactiveWithExplicitRespawns?: boolean; treatNMsAsSkirmishes?: boolean; fieldNotes?: FieldNote[]; }; declare const defaultEurekaConfigOptions: { FlagTimeoutMs: number; CompleteNamesSTQ: boolean; EnrichedSTQ: boolean; PopNoiseForNM: boolean; PopNoiseForBunny: boolean; PopNoiseForSkirmish: boolean; PopNoiseForCriticalEngagement: boolean; PopNoiseForDuel: boolean; PopVolume: number; BunnyPopVolume: number; CriticalPopVolume: number; RefreshRateMs: number; }; type EurekaConfigOptions = typeof defaultEurekaConfigOptions; export type EurekaTimeStrings = { weatherFor: LocaleObject; weatherIn: LocaleObject; timeFor: LocaleObject; minute: LocaleText; }; export interface EurekaOptions extends BaseOptions, EurekaConfigOptions { PopSound: string; BunnyPopSound: string; CriticalPopSound: string; timeStrings: EurekaTimeStrings; Regex: LocaleObject<{ flagRegex: CactbotBaseRegExp<'GameLog'>; trackerRegex: CactbotBaseRegExp<'GameLog'>; importRegex: CactbotBaseRegExp<'GameLog'>; timeRegex: RegExp; }>; ZoneInfo: { [zoneId: number]: EurekaZoneInfo; }; } export {};