import type { EntranceId, ObstructionId, SpaceId } from '../types/core.js'; export type Style = { /** * How far off the "ground" the objects belonging to this layer should be drawn, in meters. * * @minimum 0 */ altitude: number; /** * Color should be represented with a hash (#), followed by 6 hexadecimal digits. * ex: #RRGGBB * * @pattern ^#[0-9a-fA-F]{6}$ */ color: string; /** * The height of the objects belonging to this layer, in meters. * * @minimum 0 */ height: number; /** * @minimum 0 * @maximum 1 */ opacity: number; }; export type PolygonStyle = Style & { /** * Whether or not the first image attached to the space or obstruction should be displayed on the polygon. */ showImage?: boolean; /** * The polygons which this style applies to. */ polygons: (ObstructionId | SpaceId)[]; /** * Optional color for the top face of extruded geometry. * If not specified, falls back to color. * * @pattern ^#[0-9a-fA-F]{6}$ */ topColor?: string; }; export type LineStringStyle = Style & { /** * The thickness of the line when rendered, in meters, measured from the center to the edge. * * @exclusiveMinimum 0 */ width: number; /** * The line strings which this style applies to. */ lineStrings: (EntranceId | ObstructionId | SpaceId)[]; /** * Optional color for the top face of extruded geometry. * If not specified, falls back to color. * * @pattern ^#[0-9a-fA-F]{6}$ */ topColor?: string; }; export type PointStyle = { /** * Whether or not the first image attached to the space or obstruction should be displayed on the point. */ showImage?: boolean; /** * The points which this style applies to. */ points: SpaceId[]; }; /** * A map of layer styles, where keys represent the group IDs of each style. */ export type StyleCollection = { [groupId: string]: PolygonStyle | LineStringStyle | PointStyle | undefined; }; //# sourceMappingURL=style.d.ts.map