import type { Details } from '../types/core.js'; /** * A NavigationFlagDeclaration describes the relationship between a "key" that a developer might use to wayfind using that flag, and the index and bit position in an object's `flags` array. * Ie, if there is a flag with a key of `vip`, index 1 and bit position 0, then an item with flags as `[0, 0]` does not have the flag, `[0, 1]` does, and `[1, 2]` or `[1, 0]` do not. * * NavigationFlagDeclarations also may contain details about the flag, which can be displayed to a user if present. */ export type NavigationFlagDeclaration = { /** * The index of the flag in a flags array. ie, 0 means the first bitfield, 1 means the second bitfield, etc. * @minimum 0 */ index: number; /** * The bit position of the flag in a flag's bitfield. ie, 0 means the first bit, 1 means the second bit, etc. * A flag bitfield with that bit set to 1 means the flag is present. Other than for Well Known Flags, this is not expected to be durable across different versions of the same MVF. * @minimum 0 * @maximum 31 */ bit: number; details?: Details; }; /** * A map of all NavigationFlagDeclarations present in the MVF. The key is the durable value a developer should use to interact with the flag when wayfinding, and the * value is the definition of the flag that describes how to determine whether it's set in an object's flags array. */ export type NavigationFlagDeclarations = { [key: string]: NavigationFlagDeclaration; }; /** * A Flags array is an array of 32 bit integers, each representing a bit string of included flags. 1 means the flag is present, 0 means it's not. */ export type Flags = number[]; /** * All well known navigation flags. These may or may not be present in an MVF, but if they are, they always mean the same thing. */ export declare const WELL_KNOWN_FLAGS: { /** * A flag indicating that something is accessible, specifically that it can be crossed by users with reduced mobility, including those using wheelchairs. */ readonly accessible: "accessible"; /** * A flag indicating that something is outside of a building, in the open air. The sky is NOT NECESSARILY visible, an 'outdoors' path may be under a bridge or awning. */ readonly outdoors: "outdoors"; /** * A flag indicating that something is navigable by the public users of the building or space. By default, consumers of MVF should not route through non-public things unless specifically requested. */ readonly public: "public"; }; //# sourceMappingURL=navigationFlags.d.ts.map