/** * Named room maps. Each map is an RTAB-Map database on the robot * (`~/.agenticros/maps/.db`) plus a row in `index.json`. * ARC stores the public catalog (id, label, active); the database stays local. */ export interface RobotMap { id: string; label: string; createdAt: string; updatedAt: string; /** Absolute path to the RTAB-Map database. Not sent to ARC. */ databasePath: string; } export interface MapCatalog { version: 1; activeId: string | null; maps: RobotMap[]; } export interface PublicRobotMap { id: string; label: string; createdAt: string; updatedAt: string; active: boolean; } export interface PublicMapCatalog { activeId: string | null; maps: PublicRobotMap[]; } /** 1–40 chars: letters, numbers, spaces, period, underscore, hyphen. */ export declare const MAP_LABEL_RE: RegExp; export declare const MAP_ID_RE: RegExp; export interface MapStorePaths { catalogPath?: string; mapsDir?: string; /** Override `~/.ros/rtabmap.db` (tests). */ legacyDatabasePath?: string; /** Override `~/.agenticros/places.json` when deleting a map (tests). */ placesPath?: string; } export declare function defaultMapsDir(): string; export declare function defaultCatalogPath(): string; export declare function normalizeMapLabel(label: string): string; export declare function assertMapLabel(label: string): string; export declare function loadCatalog(catalogPath?: string): MapCatalog; export declare function saveCatalog(catalog: MapCatalog, catalogPath?: string): void; export declare function toPublicCatalog(catalog: MapCatalog): PublicMapCatalog; export declare function findMap(catalog: MapCatalog, idOrLabel: string): RobotMap | undefined; export declare function createMap(label: string, opts?: MapStorePaths): RobotMap; export declare function renameMap(idOrLabel: string, label: string, opts?: MapStorePaths): RobotMap; export declare function setActiveMap(idOrLabel: string, opts?: MapStorePaths): RobotMap; export declare function activeMap(opts?: MapStorePaths): RobotMap | undefined; /** Create a "Room" map when the catalog is empty, and return the active map. */ export declare function ensureActiveMap(opts?: MapStorePaths & { label?: string; }): RobotMap; export declare function deleteMap(idOrLabel: string, opts?: MapStorePaths): PublicMapCatalog; export declare function publicCatalog(opts?: MapStorePaths): PublicMapCatalog; //# sourceMappingURL=maps.d.ts.map