import { TomTomMap, TrafficFlowModule, TrafficIncidentsModule } from "@tomtom-org/maps-sdk/map"; export interface MapControlsOptions { position?: "top-left" | "top-right" | "bottom-left" | "bottom-right"; showTrafficToggle?: boolean; showIncidentsToggle?: boolean; showThemeToggle?: boolean; initialTrafficEnabled?: boolean; initialIncidentsEnabled?: boolean; initialTheme?: "light" | "dark"; /** Pass existing TrafficFlowModule to control instead of creating new one */ externalTrafficModule?: TrafficFlowModule; /** Pass existing TrafficIncidentsModule to control instead of creating new one */ externalIncidentsModule?: TrafficIncidentsModule; /** Called after a theme change once the new style has loaded. Use this to re-add custom sources/layers. */ onThemeChange?: () => void; } /** * Creates map control buttons for theme switching and traffic toggle */ export declare function createMapControls(map: TomTomMap, options?: MapControlsOptions): Promise<{ trafficModule: TrafficFlowModule | null; incidentsModule: TrafficIncidentsModule | null; setTheme: (theme: "light" | "dark") => void; setTrafficVisible: (visible: boolean) => void; setIncidentsVisible: (visible: boolean) => void; destroy: () => void; }>;