import type { CurrentPosition, MarkersData } from './store/RouteStore';
import type { Visibility } from './store/types';
import type { FloorPlan, FloorPlanCustomButtonEvent, FloorPlanDetailsEvent, FloorPlanGetCoordsEvent, FloorPlanMarkerEvent, FloorPlanOptions, GeoConfig } from './types';
import { type Bounds, type POISelectors } from './types/sdk.types';
export default class FloorPlanLoader implements FloorPlan {
    protected readonly options: FloorPlanOptions;
    protected readonly renderTarget: HTMLDivElement;
    private readonly _ready;
    readonly element: HTMLDivElement;
    readonly eventId: string;
    readonly dataUrl: string;
    readonly noOverlay: boolean;
    readonly offHistory: boolean;
    readonly ignoreQuery: boolean;
    readonly allowConsent: boolean | undefined;
    readonly onInit: (fp: FloorPlan) => void;
    readonly disableRuntimeAlerts: boolean;
    readonly viewerMode: boolean;
    readonly maplibre: FloorPlanOptions['maplibre'];
    protected efpStyleLoadHandler: (e: Event) => void;
    protected resolveReady: () => void;
    readonly icons: Map<FloorPlanIcon, HTMLImageElement>;
    enableRotation: boolean;
    alwaysShowSidebar: boolean;
    get ready(): Promise<void>;
    get previewMode(): boolean;
    onBoothClick: (e: FloorPlanBoothClickEvent) => void;
    onBookmarkClick: (e: FloorPlanBookmarkClickEvent) => void;
    onVisitedClick: (e: FloorPlanVisitedClickEvent) => void;
    onCategoryClick: (e: FloorPlanCategoryClickEvent) => void;
    onFpConfigured: () => void;
    onDirection: (e: FloorPlanDirectionEvent) => void;
    onDetails: (e: FloorPlanDetailsEvent) => void;
    onExhibitorCustomButtonClick: (e: FloorPlanCustomButtonEvent) => void;
    onGetCoordsClick: (e: FloorPlanGetCoordsEvent) => void;
    onMarkerClick: (e: FloorPlanMarkerEvent) => void;
    onLeaveEvent: () => void;
    selectBooth(nameOrExternalId: string | string[]): void;
    selectExhibitor(nameOrExternalId: string | string[]): void;
    selectRoute(startOrWaypoints: RouteWaypoint | RouteWaypoint[], to?: RouteWaypoint): void;
    getOptimizedRoutes(waypoints: RouteWaypoint[]): RouteInfo[];
    selectCurrentPosition(point: CurrentPosition, focus: boolean, icon?: number): void;
    setBookmarks(bookmarks: {
        name?: string;
        externalId?: string;
        bookmarked: boolean;
    }[]): void;
    setEntitiesBookmarks(bookmarks: {
        type: 'exhibitor' | 'event' | 'speaker' | 'booth';
        name?: string;
        externalId?: string;
        bookmarked: boolean;
    }[]): void;
    setEntitiesVisited(entities: {
        type: 'exhibitor' | 'event';
        name?: string;
        externalId?: string;
        visited: boolean;
    }[]): void;
    setMarkers(markersData: MarkersData): void;
    /** @deprecated Use activateFloor instead */
    updateLayerVisibility(layer: string, visible: boolean): void;
    getCenterCoordinates(): any;
    applyParameters(parameters: string): void;
    exhibitorsList(): any;
    boothsList(): any;
    categoriesList(): any;
    selectCategory(nameOrSlug?: string): void;
    getVisibility(): any;
    setVisibility(visibility: Visibility): void;
    findLocation(): void;
    zoomIn(): void;
    zoomOut(): void;
    zoomTo(selector: POISelectors, options?: {
        padding?: number;
    }): void;
    switchView(): void;
    fitBounds(): void;
    getBounds(selectors: POISelectors): Bounds | undefined;
    getBoothRect(name: string): any;
    convertToGeo(x: number, y: number): any;
    getGeoConfig(): GeoConfig | null;
    unstable_destroy(): void;
    highlightExhibitors(externalIds: string[]): void;
    highlightBooths(externalIds: string[]): void;
    onCurrentPositionChanged(point: CurrentPosition): void;
    search(term: string): Promise<{
        item: unknown;
        score: number;
    }[]>;
    getFloors(): Floor[];
    onFloorActivated(floor: Floor): void;
    activateFloor(floorId: {
        name?: string;
        index?: number;
    }): void;
    showPathway(name: string, boothExternalIds: string[]): void;
    showPathwayOnly(pathwayId: string, floorId: string): void;
    hidePathways(): void;
    showSearch(): void;
    changeLanguage(langId: string): void;
    isGpsTrackingEnabled(): boolean;
    setGpsTrackingEnabled(value: boolean): void;
    deselectCurrentPosition(): void;
    deselectRoute(): void;
    reset(): void;
    selectAccessibleRoute(waypoints: RouteWaypoint[]): void;
    constructor(options?: FloorPlanOptions);
}
//# sourceMappingURL=floorplan.loader.d.ts.map