import type { ParsedMVF } from './types/bundle.js'; import type { FloorId, FloorStackId } from './types/core.js'; export declare const availableFloorIds: (mvf: ParsedMVF) => Set; export declare const availableFloorStackIds: (mvf: ParsedMVF) => Set; /** * For a map stack to be valid, all of the map IDs listed on the maps property must be a map listed in the maps * property. * * @throws {@link FloorStackUnknownMapError} */ export declare const validateMapStacks: (mvf: ParsedMVF) => boolean; /** * For a space collection to be valid: * - Each collection must have a map ID corresponding to a map available in the MVF * - Each space that has destination nodes must point to real nodes * * @throws {@link SpaceCollectionUnknownMapError} * @throws {@link SpaceUnknownNodeError} */ export declare const validateSpaces: (mvf: ParsedMVF) => boolean; /** * For an obstruction collection to be valid: * - Each collection must have a map ID corresponding to a map available in the MVF * - Each obstruction that has entrance IDs must have those entrances: * - In the entrance collection, and * - On the same map as the obstruction. * * @throws {@link ObstructionCollectionUnknownMapError} * @throws {@link ObstructionUnknownEntranceError} */ export declare const validateObstructions: (mvf: ParsedMVF) => boolean; /** * For a connection to be valid, it must only contain node IDs that exist in the MVF. * * @throws {@link ConnectionUnknownNodeError} */ export declare const validateConnections: (mvf: ParsedMVF) => boolean; /** * For the node collection to be valid: * - Each node must have a valid map ID property * - Each space ID in a node's space property must be a valid space ID on the same map * - Each neighbor of a node should have a valid node ID * * @throws {@link NodeUnknownFloorError} * @throws {@link NodeUnknownSpaceError} * @throws {@link NodeUnknownNeighborError} */ export declare const validateNodes: (mvf: ParsedMVF) => boolean; /** * For a facade to be valid: * - The floor stack ID (key in mvf.facade) must correspond to an existing floor stack * - The floor ID must correspond to an existing floor * - The space ID must correspond to an existing space * - Empty or null collections are allowed * * @throws {@link FacadeUnknownFloorStackError} * @throws {@link FacadeUnknownSpaceError} * @throws {@link FacadeUnknownFloorError} */ export declare const validateFacades: (mvf: ParsedMVF) => boolean; /** * For a style to be valid, it must only apply to valid space or obstruction. * * @throws {@link StyleUnknownPolygonError} * @throws {@link StyleUnknownLineStringError} * @throws {@link InvalidStyleError} */ export declare const validateStyles: (mvf: ParsedMVF) => boolean; /** * For a text to be valid, it must be either anchored or floating. * - Each anchored text must reference an existing space or obstruction on the correct map * - Each floating text must have a valid vertical offset * * @throws {@link AnchoredFloorTextUnknownSpaceError} * @throws {@link AnchoredFloorTextUnknownObstructionError} */ export declare const validateFloorText: (mvf: ParsedMVF) => boolean; /** * For a map image entry to be valid, it must either be a floating image, or a polygon image that references a space, * obstruction, or area on the correct map. * * @throws {@link AnchoredImageUnknownSpaceError} * @throws {@link AnchoredImageUnknownObstructionError} * @throws {@link AnchoredImageUnknownAreaError} */ export declare const validateFloorImages: (mvf: ParsedMVF) => boolean; /** * For a text area to be valid, it must be either anchored or floating. * - Each anchored text area must reference an existing space or obstruction on the correct map * - Each floating text area must have a valid vertical offset * * @throws {@link TextAreaUnknownSpaceError} * @throws {@link TextAreaUnknownObstructionError} */ export declare const validateTextAreas: (mvf: ParsedMVF) => boolean; export declare const validateEnterprise: (mvf: ParsedMVF) => boolean; /** * Validates that tileset keys are unique across the file * * @throws {@link DuplicateTilesetKeyError} */ export declare const validateTilesets: (mvf: ParsedMVF) => boolean; export declare const validateAnnotationSymbols: (mvf: ParsedMVF) => boolean; /** * Assumes a valid MVF is being given to verify referential integrity is held. * * @throws {@link ConnectionUnknownNodeError} * @throws {@link FacadeUnknownFloorStackError} * @throws {@link FacadeUnknownSpaceError} * @throws {@link FacadeUnknownFloorError} * @throws {@link InvalidStyleError} * @throws {@link MapStackUnknownMapError} * @throws {@link NodeUnknownFloorError} * @throws {@link NodeUnknownNeighborError} * @throws {@link NodeUnknownSpaceError} * @throws {@link ObstructionCollectionUnknownMapError} * @throws {@link ObstructionUnknownEntranceError} * @throws {@link PolygonImageUnknownObstructionError} * @throws {@link PolygonImageUnknownSpaceError} * @throws {@link SpaceCollectionUnknownMapError} * @throws {@link SpaceUnknownNodeError} * @throws {@link StyleUnknownLineStringError} * @throws {@link StyleUnknownPolygonError} * @throws {@link EnterpriseUnknownLocationError} * @throws {@link EnterpriseUnknownMapError} * @throws {@link EnterpriseLocationUnknownSpaceError} * @throws {@link EnterpriseLocationUnknownNodeError} * @throws {@link EnterpriseUnknownCategoryError} * @throws {@link EnterpriseInconsistentMapError} * @throws {@link EnterpriseCyclicalCategoryReferenceError} * @throws {@link EnterpriseInvalidTimeZoneError} * @throws {@link AnnotationSymbolUnknownError} * @throws {@link AnnotationSymbolDuplicateError} */ export declare const verifyMvfIntegrity: (mvf: ParsedMVF) => boolean; //# sourceMappingURL=integrity.d.ts.map