@expofp/floorplan
Version:
Interactive floor plan library for expos and events
55 lines • 2.14 kB
TypeScript
import { type AlertProps } from '@expofp/ui';
import { type Kiosk, type StatusMessage } from './SetKiosk';
import { type SetKioskChangeEvent } from './SetKiosk/types';
declare class KioskStore {
get kiosk(): Kiosk | null;
setKiosk(kiosk: Kiosk | null): void;
private getCameraState;
savedKiosk: Kiosk | null;
get hasUnsavedChanges(): boolean;
statusMessages: StatusMessage[];
addStatusMessage(message: Omit<AlertProps, 'closeLabel'>): void;
clearStatusMessages(): void;
statusMessageTimer: number;
startCleanupMessages(): void;
private isResettingCamera;
/**
* Set while a restore's own camera movement is still to be heard about, and consumed by the settle
* it ends with — see {@link handleNavigationChange}. Assigned from what the restore reports it
* moved, so a panel opened with no camera at all does not read the operator's first move as the
* restore's.
*/
private isRestoringFraming;
resetCamera(): Promise<void>;
/**
* Restores the home framing in map mode. The kiosk is integrated at page load,
* well before the map has finished loading, so wait for the camera port rather
* than giving up on the first miss. Returns false when there was no map camera
* to restore through.
*/
private resetMaplibreCamera;
private waitForMaplibreCameraPort;
/**
* Restores the home framing on the floor plan. The plan's own camera takes it whenever it is up;
* without one mounted there is nothing to move.
* @returns Whether there was a camera to move.
*/
private resetPlanCamera;
restoreData(): void;
handleSetupReady(): void;
handleClose(): void;
handleDelete(): void;
handleSave(): void;
delayChange(cb: () => void): void;
handleChange(event: SetKioskChangeEvent): void;
initialPtScale?: number;
setInitialPtScale(ptscale: number): void;
handleClick(point: {
x: number;
y: number;
}): void;
handleNavigationChange(): void;
}
declare const _default: KioskStore;
export default _default;
//# sourceMappingURL=KioskStore.d.ts.map