@expofp/schema 0.0.0-experimental.cf063fc

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/dist/index.d.ts +24 -0
  2. package/dist/index.js +23 -0
  3. package/dist/lib/booth.d.ts +74 -0
  4. package/dist/lib/booth.js +35 -0
  5. package/dist/lib/branding.d.ts +21 -0
  6. package/dist/lib/branding.js +20 -0
  7. package/dist/lib/camera.d.ts +24 -0
  8. package/dist/lib/camera.js +36 -0
  9. package/dist/lib/categories.d.ts +9 -0
  10. package/dist/lib/categories.js +7 -0
  11. package/dist/lib/config-defaults.d.ts +147 -0
  12. package/dist/lib/config-defaults.js +164 -0
  13. package/dist/lib/config.d.ts +2146 -0
  14. package/dist/lib/config.js +438 -0
  15. package/dist/lib/exhibitor.d.ts +66 -0
  16. package/dist/lib/exhibitor.js +69 -0
  17. package/dist/lib/filters.d.ts +23 -0
  18. package/dist/lib/filters.js +24 -0
  19. package/dist/lib/flags.d.ts +17 -0
  20. package/dist/lib/flags.js +63 -0
  21. package/dist/lib/fp-geo.d.ts +105 -0
  22. package/dist/lib/fp-geo.js +55 -0
  23. package/dist/lib/fp-svg.d.ts +399 -0
  24. package/dist/lib/fp-svg.js +196 -0
  25. package/dist/lib/heatmap.d.ts +23 -0
  26. package/dist/lib/heatmap.js +24 -0
  27. package/dist/lib/intents.d.ts +173 -0
  28. package/dist/lib/intents.js +153 -0
  29. package/dist/lib/journey.d.ts +27 -0
  30. package/dist/lib/journey.js +26 -0
  31. package/dist/lib/kiosk.d.ts +39 -0
  32. package/dist/lib/kiosk.js +65 -0
  33. package/dist/lib/maplibre.d.ts +43 -0
  34. package/dist/lib/maplibre.js +51 -0
  35. package/dist/lib/maps.d.ts +22 -0
  36. package/dist/lib/maps.js +19 -0
  37. package/dist/lib/poi-types.d.ts +13 -0
  38. package/dist/lib/poi-types.js +17 -0
  39. package/dist/lib/schedule.d.ts +25 -0
  40. package/dist/lib/schedule.js +20 -0
  41. package/dist/lib/search.d.ts +51 -0
  42. package/dist/lib/search.js +36 -0
  43. package/dist/lib/venues.d.ts +222 -0
  44. package/dist/lib/venues.js +150 -0
  45. package/dist/lib/visibility.d.ts +17 -0
  46. package/dist/lib/visibility.js +23 -0
  47. package/dist/lib/wayfinding.d.ts +104 -0
  48. package/dist/lib/wayfinding.js +52 -0
  49. package/package.json +35 -0
@@ -0,0 +1,63 @@
1
+ import * as z from 'zod';
2
+ /**
3
+ * Feature flags. Historically a nested `flags` object; now flattened onto the
4
+ * config root (`...FlagsSchema.shape` in `ConfigSchema`). The deprecated nested
5
+ * form still parses through `DataJsonSchema`.
6
+ */
7
+ export const FlagsSchema = z.looseObject({
8
+ /** Enable experimental MapLibre GL JS support. */
9
+ enableExperimentalMaplibre: z.boolean().optional(),
10
+ /**
11
+ * Enable experimental outdoor PoI markers: booths on an `Outdoor*` layer
12
+ * leave the renderer scene and draw as fixed-size native MapLibre markers
13
+ * with clustering.
14
+ *
15
+ * Unset or `false` disables the feature outright — Outdoor layers then
16
+ * render like any other layer, exactly as they did before it existed. Unlike
17
+ * `enableExperimentalMaplibre` this is NOT tri-state: no drawing field opts a
18
+ * plan in, so there is nothing for `undefined` to defer to.
19
+ */
20
+ enableExperimentalOutdoorMarkers: z.boolean().optional(),
21
+ /**
22
+ * Enable experimental venue framing on multi-venue (campus) plans: entering
23
+ * a venue or switching its level holds the camera on the venue footprint
24
+ * instead of flying to the level's own viewbox.
25
+ *
26
+ * Unset or `false` lets each level frame its own viewbox (falling back to
27
+ * its rect). Not tri-state.
28
+ */
29
+ enableExperimentalVenueFraming: z.boolean().optional(),
30
+ /**
31
+ * Enable experimental north-up framing in the MapLibre map view: the initial
32
+ * load, Fit to screen and the campus-wide fits face north (bearing 0)
33
+ * instead of turning the map so the plan stands upright. Entering a venue —
34
+ * and focusing a booth inside one — turns the map to that level's authored
35
+ * viewbox instead, so a building reads along its own axes.
36
+ *
37
+ * Unset or `false` keeps the plan-upright bearing. Not tri-state. The
38
+ * standalone floor plan view has no geographic north and ignores it.
39
+ */
40
+ enableExperimentalNorthUp: z.boolean().optional(),
41
+ /** Custom `setkiosk` phrase. */
42
+ customSetKiosk: z.string().optional(),
43
+ /** Hide booth number badges. */
44
+ hideBoothBadges: z.boolean().optional(),
45
+ /**
46
+ * Enable cross-venue journeys: where the wayfinding graph cannot route
47
+ * between two venues, the plan offers a Journey with an external maps handoff
48
+ * instead of a dead end (ADR-0010).
49
+ *
50
+ * Off by default and not tri-state — nothing in the data opts a plan in, so
51
+ * there is nothing for `undefined` to defer to. The same switch stays the
52
+ * producer's opt-out once the feature is generally available.
53
+ */
54
+ crossVenueJourneys: z.boolean().optional(),
55
+ /**
56
+ * Enable live bus/transport routing on the floor plan.
57
+ *
58
+ * Disabled by default: most plans have no transit routes, and probing for
59
+ * them issues an extra HTTP request on every load. Set to `true` only for
60
+ * plans that actually provide bus routes.
61
+ */
62
+ busRoutes: z.boolean().optional(),
63
+ });
@@ -0,0 +1,105 @@
1
+ import * as z from 'zod';
2
+ /**
3
+ * `__fpGeo`: the georeferencing block carried in an `fp.svg.js` payload — corner
4
+ * anchors, map orientation, and overlay images, structured as a
5
+ * GeoJSON-FeatureCollection extension. The runtime reads `properties.config`,
6
+ * `properties.style`, and `images` (`data/fpGeo.ts`); the FeatureCollection part
7
+ * (`type`, `features`) passes through untyped.
8
+ */
9
+ /** A plan point pinned to a map coordinate — geo-references the drawing. */
10
+ export declare const FpGeoAnchorSchema: z.ZodObject<{
11
+ lat: z.ZodNumber;
12
+ lng: z.ZodNumber;
13
+ x: z.ZodNumber;
14
+ y: z.ZodNumber;
15
+ }, z.core.$strip>;
16
+ /** `__fpGeo.properties.config`: corner anchors, map orientation, and palette. */
17
+ export declare const FpGeoConfigSchema: z.ZodObject<{
18
+ p0: z.ZodOptional<z.ZodObject<{
19
+ lat: z.ZodNumber;
20
+ lng: z.ZodNumber;
21
+ x: z.ZodNumber;
22
+ y: z.ZodNumber;
23
+ }, z.core.$strip>>;
24
+ p1: z.ZodOptional<z.ZodObject<{
25
+ lat: z.ZodNumber;
26
+ lng: z.ZodNumber;
27
+ x: z.ZodNumber;
28
+ y: z.ZodNumber;
29
+ }, z.core.$strip>>;
30
+ p2: z.ZodOptional<z.ZodObject<{
31
+ lat: z.ZodNumber;
32
+ lng: z.ZodNumber;
33
+ x: z.ZodNumber;
34
+ y: z.ZodNumber;
35
+ }, z.core.$strip>>;
36
+ p3: z.ZodOptional<z.ZodObject<{
37
+ lat: z.ZodNumber;
38
+ lng: z.ZodNumber;
39
+ x: z.ZodNumber;
40
+ y: z.ZodNumber;
41
+ }, z.core.$strip>>;
42
+ bearing: z.ZodOptional<z.ZodNumber>;
43
+ snapThreshold: z.ZodOptional<z.ZodNumber>;
44
+ style: z.ZodOptional<z.ZodEnum<{
45
+ dark: "dark";
46
+ light: "light";
47
+ }>>;
48
+ type: z.ZodOptional<z.ZodLiteral<"maplibre">>;
49
+ }, z.core.$loose>;
50
+ /** A georeferenced overlay image (`__fpGeo.images[]`). */
51
+ export declare const FpGeoImageSchema: z.ZodObject<{
52
+ layer: z.ZodString;
53
+ data: z.ZodString;
54
+ points: z.ZodArray<z.ZodArray<z.ZodUnknown>>;
55
+ }, z.core.$loose>;
56
+ /** The full `__fpGeo` block. */
57
+ export declare const FpGeoSchema: z.ZodObject<{
58
+ properties: z.ZodOptional<z.ZodObject<{
59
+ config: z.ZodOptional<z.ZodObject<{
60
+ p0: z.ZodOptional<z.ZodObject<{
61
+ lat: z.ZodNumber;
62
+ lng: z.ZodNumber;
63
+ x: z.ZodNumber;
64
+ y: z.ZodNumber;
65
+ }, z.core.$strip>>;
66
+ p1: z.ZodOptional<z.ZodObject<{
67
+ lat: z.ZodNumber;
68
+ lng: z.ZodNumber;
69
+ x: z.ZodNumber;
70
+ y: z.ZodNumber;
71
+ }, z.core.$strip>>;
72
+ p2: z.ZodOptional<z.ZodObject<{
73
+ lat: z.ZodNumber;
74
+ lng: z.ZodNumber;
75
+ x: z.ZodNumber;
76
+ y: z.ZodNumber;
77
+ }, z.core.$strip>>;
78
+ p3: z.ZodOptional<z.ZodObject<{
79
+ lat: z.ZodNumber;
80
+ lng: z.ZodNumber;
81
+ x: z.ZodNumber;
82
+ y: z.ZodNumber;
83
+ }, z.core.$strip>>;
84
+ bearing: z.ZodOptional<z.ZodNumber>;
85
+ snapThreshold: z.ZodOptional<z.ZodNumber>;
86
+ style: z.ZodOptional<z.ZodEnum<{
87
+ dark: "dark";
88
+ light: "light";
89
+ }>>;
90
+ type: z.ZodOptional<z.ZodLiteral<"maplibre">>;
91
+ }, z.core.$loose>>;
92
+ mpViewbox: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
93
+ useMaplibre: z.ZodOptional<z.ZodBoolean>;
94
+ }, z.core.$loose>>;
95
+ images: z.ZodOptional<z.ZodArray<z.ZodObject<{
96
+ layer: z.ZodString;
97
+ data: z.ZodString;
98
+ points: z.ZodArray<z.ZodArray<z.ZodUnknown>>;
99
+ }, z.core.$loose>>>;
100
+ }, z.core.$loose>;
101
+ export type FpGeoAnchor = z.infer<typeof FpGeoAnchorSchema>;
102
+ export type FpGeoConfig = z.infer<typeof FpGeoConfigSchema>;
103
+ export type FpGeoImage = z.infer<typeof FpGeoImageSchema>;
104
+ export type FpGeo = z.infer<typeof FpGeoSchema>;
105
+ //# sourceMappingURL=fp-geo.d.ts.map
@@ -0,0 +1,55 @@
1
+ import * as z from 'zod';
2
+ import { MapThemeSchema } from './maplibre.js';
3
+ /**
4
+ * `__fpGeo`: the georeferencing block carried in an `fp.svg.js` payload — corner
5
+ * anchors, map orientation, and overlay images, structured as a
6
+ * GeoJSON-FeatureCollection extension. The runtime reads `properties.config`,
7
+ * `properties.style`, and `images` (`data/fpGeo.ts`); the FeatureCollection part
8
+ * (`type`, `features`) passes through untyped.
9
+ */
10
+ /** A plan point pinned to a map coordinate — geo-references the drawing. */
11
+ export const FpGeoAnchorSchema = z.object({
12
+ lat: z.number(),
13
+ lng: z.number(),
14
+ x: z.number(),
15
+ y: z.number(),
16
+ });
17
+ /** `__fpGeo.properties.config`: corner anchors, map orientation, and palette. */
18
+ export const FpGeoConfigSchema = z.looseObject({
19
+ p0: FpGeoAnchorSchema.optional(),
20
+ p1: FpGeoAnchorSchema.optional(),
21
+ p2: FpGeoAnchorSchema.optional(),
22
+ p3: FpGeoAnchorSchema.optional(),
23
+ bearing: z.number().optional(),
24
+ snapThreshold: z.number().optional(),
25
+ /**
26
+ * Basemap palette the drawing is authored for ({@link MapThemeSchema}) — what
27
+ * the Designer emits. Left unset by drawings that predate it, where the SDK
28
+ * falls back to `__fpSettings.backgroundColor`'s lightness.
29
+ */
30
+ style: MapThemeSchema.optional(),
31
+ /**
32
+ * The map the drawing is authored for. `'maplibre'` — the only value the
33
+ * Designer emits — asks the SDK to render the plan on the MapLibre basemap;
34
+ * unset leaves the plan on the plain floor plan. An explicit
35
+ * `enableExperimentalMaplibre` from any config layer still overrides it.
36
+ */
37
+ type: z.literal('maplibre').optional(),
38
+ });
39
+ /** A georeferenced overlay image (`__fpGeo.images[]`). */
40
+ export const FpGeoImageSchema = z.looseObject({
41
+ layer: z.string(),
42
+ data: z.string(),
43
+ points: z.array(z.array(z.unknown())),
44
+ });
45
+ /** The full `__fpGeo` block. */
46
+ export const FpGeoSchema = z.looseObject({
47
+ properties: z
48
+ .looseObject({
49
+ config: FpGeoConfigSchema.optional(),
50
+ mpViewbox: z.array(z.number()).optional(),
51
+ useMaplibre: z.boolean().optional(),
52
+ })
53
+ .optional(),
54
+ images: z.array(FpGeoImageSchema).optional(),
55
+ });
@@ -0,0 +1,399 @@
1
+ import * as z from 'zod';
2
+ /**
3
+ * One `__fpPaths` entry: a shape outline triangulated for the WebGL renderer,
4
+ * indexed by the SVG paths' `data-index`. Matches the renderer's `MeshType`
5
+ * (`renderer/engine-core/types.ts`) — whose `positions` are 3D vertices, the
6
+ * shape the V2 converter emits (see {@link PositionSchema}).
7
+ */
8
+ export declare const FpPathSchema: z.ZodObject<{
9
+ positions: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodOptional<z.ZodNumber>], null>>;
10
+ cells: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
11
+ }, z.core.$strip>;
12
+ /**
13
+ * `__fpSettings`: renderer style overrides, deep-merged into the `FpSettings`
14
+ * singleton (`tools/settings.ts`).
15
+ */
16
+ export declare const FpSettingsSchema: z.ZodObject<{
17
+ boothLabelColor: z.ZodOptional<z.ZodString>;
18
+ boothBorderColor: z.ZodOptional<z.ZodString>;
19
+ backgroundColor: z.ZodOptional<z.ZodString>;
20
+ boothBorderWidth: z.ZodOptional<z.ZodNumber>;
21
+ heatmapColors: z.ZodOptional<z.ZodArray<z.ZodString>>;
22
+ maxZoom: z.ZodOptional<z.ZodNumber>;
23
+ fpVer: z.ZodOptional<z.ZodString>;
24
+ }, z.core.$loose>;
25
+ /** `__fpStat`: converter output stats. `dataSize` is in bytes. */
26
+ export declare const FpStatSchema: z.ZodObject<{
27
+ dataSize: z.ZodOptional<z.ZodNumber>;
28
+ }, z.core.$loose>;
29
+ /**
30
+ * `__viewbox`: the author-drawn initial view rectangle — the fit-to-screen
31
+ * reference, taking precedence over the drawing's own bounds.
32
+ */
33
+ export declare const FpViewboxSchema: z.ZodObject<{
34
+ x: z.ZodNumber;
35
+ y: z.ZodNumber;
36
+ width: z.ZodNumber;
37
+ height: z.ZodNumber;
38
+ angle: z.ZodOptional<z.ZodNumber>;
39
+ }, z.core.$loose>;
40
+ /** A min/max rectangle in the legacy `core/Rect` shape. */
41
+ export declare const FpRectSchema: z.ZodObject<{
42
+ x1: z.ZodNumber;
43
+ y1: z.ZodNumber;
44
+ x2: z.ZodNumber;
45
+ y2: z.ZodNumber;
46
+ angle: z.ZodOptional<z.ZodNumber>;
47
+ p0: z.ZodOptional<z.ZodObject<{
48
+ x: z.ZodNumber;
49
+ y: z.ZodNumber;
50
+ }, z.core.$strip>>;
51
+ p1: z.ZodOptional<z.ZodObject<{
52
+ x: z.ZodNumber;
53
+ y: z.ZodNumber;
54
+ }, z.core.$strip>>;
55
+ p2: z.ZodOptional<z.ZodObject<{
56
+ x: z.ZodNumber;
57
+ y: z.ZodNumber;
58
+ }, z.core.$strip>>;
59
+ p3: z.ZodOptional<z.ZodObject<{
60
+ x: z.ZodNumber;
61
+ y: z.ZodNumber;
62
+ }, z.core.$strip>>;
63
+ }, z.core.$loose>;
64
+ /**
65
+ * One `__fpLayers` entry (consumed by `store/init/init-layers.ts`). `name` also
66
+ * derives the layer's file and global names: `fp.svg.<name>.js`, `__fp<name>`,
67
+ * `__fpPaths<name>`. `mode` is the numeric `LayerMode` enum (0 Unset, 1
68
+ * AlwaysVisible, 2 AlwaysHidden, 3 TurnedOn, 4 TurnedOff — `store/LayerStore.ts`).
69
+ */
70
+ export declare const FpLayerSchema: z.ZodObject<{
71
+ name: z.ZodString;
72
+ description: z.ZodOptional<z.ZodString>;
73
+ frozen: z.ZodOptional<z.ZodBoolean>;
74
+ mode: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
75
+ rect: z.ZodOptional<z.ZodNullable<z.ZodObject<{
76
+ x1: z.ZodNumber;
77
+ y1: z.ZodNumber;
78
+ x2: z.ZodNumber;
79
+ y2: z.ZodNumber;
80
+ angle: z.ZodOptional<z.ZodNumber>;
81
+ p0: z.ZodOptional<z.ZodObject<{
82
+ x: z.ZodNumber;
83
+ y: z.ZodNumber;
84
+ }, z.core.$strip>>;
85
+ p1: z.ZodOptional<z.ZodObject<{
86
+ x: z.ZodNumber;
87
+ y: z.ZodNumber;
88
+ }, z.core.$strip>>;
89
+ p2: z.ZodOptional<z.ZodObject<{
90
+ x: z.ZodNumber;
91
+ y: z.ZodNumber;
92
+ }, z.core.$strip>>;
93
+ p3: z.ZodOptional<z.ZodObject<{
94
+ x: z.ZodNumber;
95
+ y: z.ZodNumber;
96
+ }, z.core.$strip>>;
97
+ }, z.core.$loose>>>;
98
+ viewbox: z.ZodOptional<z.ZodNullable<z.ZodObject<{
99
+ x1: z.ZodNumber;
100
+ y1: z.ZodNumber;
101
+ x2: z.ZodNumber;
102
+ y2: z.ZodNumber;
103
+ angle: z.ZodOptional<z.ZodNumber>;
104
+ p0: z.ZodOptional<z.ZodObject<{
105
+ x: z.ZodNumber;
106
+ y: z.ZodNumber;
107
+ }, z.core.$strip>>;
108
+ p1: z.ZodOptional<z.ZodObject<{
109
+ x: z.ZodNumber;
110
+ y: z.ZodNumber;
111
+ }, z.core.$strip>>;
112
+ p2: z.ZodOptional<z.ZodObject<{
113
+ x: z.ZodNumber;
114
+ y: z.ZodNumber;
115
+ }, z.core.$strip>>;
116
+ p3: z.ZodOptional<z.ZodObject<{
117
+ x: z.ZodNumber;
118
+ y: z.ZodNumber;
119
+ }, z.core.$strip>>;
120
+ }, z.core.$loose>>>;
121
+ floorIndex: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
122
+ }, z.core.$loose>;
123
+ /**
124
+ * The evaluated `fp.svg.<layerName>.js` payload — one drawing layer, loaded on
125
+ * demand when a multi-floor plan shows a layer whose paths are not present yet
126
+ * (`components/Map/drawing/config/config-load-layer.ts`).
127
+ */
128
+ export declare const FpSvgLayerJsSchema: z.ZodObject<{
129
+ __fp: z.ZodOptional<z.ZodString>;
130
+ __fpPaths: z.ZodOptional<z.ZodArray<z.ZodObject<{
131
+ positions: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodOptional<z.ZodNumber>], null>>;
132
+ cells: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
133
+ }, z.core.$strip>>>;
134
+ __fpGeo: z.ZodOptional<z.ZodObject<{
135
+ properties: z.ZodOptional<z.ZodObject<{
136
+ config: z.ZodOptional<z.ZodObject<{
137
+ p0: z.ZodOptional<z.ZodObject<{
138
+ lat: z.ZodNumber;
139
+ lng: z.ZodNumber;
140
+ x: z.ZodNumber;
141
+ y: z.ZodNumber;
142
+ }, z.core.$strip>>;
143
+ p1: z.ZodOptional<z.ZodObject<{
144
+ lat: z.ZodNumber;
145
+ lng: z.ZodNumber;
146
+ x: z.ZodNumber;
147
+ y: z.ZodNumber;
148
+ }, z.core.$strip>>;
149
+ p2: z.ZodOptional<z.ZodObject<{
150
+ lat: z.ZodNumber;
151
+ lng: z.ZodNumber;
152
+ x: z.ZodNumber;
153
+ y: z.ZodNumber;
154
+ }, z.core.$strip>>;
155
+ p3: z.ZodOptional<z.ZodObject<{
156
+ lat: z.ZodNumber;
157
+ lng: z.ZodNumber;
158
+ x: z.ZodNumber;
159
+ y: z.ZodNumber;
160
+ }, z.core.$strip>>;
161
+ bearing: z.ZodOptional<z.ZodNumber>;
162
+ snapThreshold: z.ZodOptional<z.ZodNumber>;
163
+ style: z.ZodOptional<z.ZodEnum<{
164
+ dark: "dark";
165
+ light: "light";
166
+ }>>;
167
+ type: z.ZodOptional<z.ZodLiteral<"maplibre">>;
168
+ }, z.core.$loose>>;
169
+ mpViewbox: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
170
+ useMaplibre: z.ZodOptional<z.ZodBoolean>;
171
+ }, z.core.$loose>>;
172
+ images: z.ZodOptional<z.ZodArray<z.ZodObject<{
173
+ layer: z.ZodString;
174
+ data: z.ZodString;
175
+ points: z.ZodArray<z.ZodArray<z.ZodUnknown>>;
176
+ }, z.core.$loose>>>;
177
+ }, z.core.$loose>>;
178
+ __fpSettings: z.ZodOptional<z.ZodObject<{
179
+ boothLabelColor: z.ZodOptional<z.ZodString>;
180
+ boothBorderColor: z.ZodOptional<z.ZodString>;
181
+ backgroundColor: z.ZodOptional<z.ZodString>;
182
+ boothBorderWidth: z.ZodOptional<z.ZodNumber>;
183
+ heatmapColors: z.ZodOptional<z.ZodArray<z.ZodString>>;
184
+ maxZoom: z.ZodOptional<z.ZodNumber>;
185
+ fpVer: z.ZodOptional<z.ZodString>;
186
+ }, z.core.$loose>>;
187
+ __fpStat: z.ZodOptional<z.ZodObject<{
188
+ dataSize: z.ZodOptional<z.ZodNumber>;
189
+ }, z.core.$loose>>;
190
+ __fpVersion: z.ZodOptional<z.ZodNumber>;
191
+ }, z.core.$loose>;
192
+ /**
193
+ * A `$ref` to one layer's `fp.svg.<layerName>.js`. The layer's data is not
194
+ * loaded eagerly: `resolve()` (`@expofp/resolve`) evaluates a `.js` ref on
195
+ * demand and returns its assigned globals as JSON — a {@link FpSvgLayerJsSchema}
196
+ * payload.
197
+ */
198
+ export declare const FpSvgLayerJsRefSchema: z.ZodObject<{
199
+ $ref: z.ZodString;
200
+ }, z.core.$strip>;
201
+ /**
202
+ * The evaluated `fp.svg.js` payload — the default layer's drawing plus plan-wide
203
+ * metadata.
204
+ */
205
+ export declare const FpSvgJsSchema: z.ZodObject<{
206
+ __fp: z.ZodOptional<z.ZodString>;
207
+ __fpPaths: z.ZodOptional<z.ZodArray<z.ZodObject<{
208
+ positions: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodOptional<z.ZodNumber>], null>>;
209
+ cells: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
210
+ }, z.core.$strip>>>;
211
+ __fpGeo: z.ZodOptional<z.ZodObject<{
212
+ properties: z.ZodOptional<z.ZodObject<{
213
+ config: z.ZodOptional<z.ZodObject<{
214
+ p0: z.ZodOptional<z.ZodObject<{
215
+ lat: z.ZodNumber;
216
+ lng: z.ZodNumber;
217
+ x: z.ZodNumber;
218
+ y: z.ZodNumber;
219
+ }, z.core.$strip>>;
220
+ p1: z.ZodOptional<z.ZodObject<{
221
+ lat: z.ZodNumber;
222
+ lng: z.ZodNumber;
223
+ x: z.ZodNumber;
224
+ y: z.ZodNumber;
225
+ }, z.core.$strip>>;
226
+ p2: z.ZodOptional<z.ZodObject<{
227
+ lat: z.ZodNumber;
228
+ lng: z.ZodNumber;
229
+ x: z.ZodNumber;
230
+ y: z.ZodNumber;
231
+ }, z.core.$strip>>;
232
+ p3: z.ZodOptional<z.ZodObject<{
233
+ lat: z.ZodNumber;
234
+ lng: z.ZodNumber;
235
+ x: z.ZodNumber;
236
+ y: z.ZodNumber;
237
+ }, z.core.$strip>>;
238
+ bearing: z.ZodOptional<z.ZodNumber>;
239
+ snapThreshold: z.ZodOptional<z.ZodNumber>;
240
+ style: z.ZodOptional<z.ZodEnum<{
241
+ dark: "dark";
242
+ light: "light";
243
+ }>>;
244
+ type: z.ZodOptional<z.ZodLiteral<"maplibre">>;
245
+ }, z.core.$loose>>;
246
+ mpViewbox: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
247
+ useMaplibre: z.ZodOptional<z.ZodBoolean>;
248
+ }, z.core.$loose>>;
249
+ images: z.ZodOptional<z.ZodArray<z.ZodObject<{
250
+ layer: z.ZodString;
251
+ data: z.ZodString;
252
+ points: z.ZodArray<z.ZodArray<z.ZodUnknown>>;
253
+ }, z.core.$loose>>>;
254
+ }, z.core.$loose>>;
255
+ __fpSettings: z.ZodOptional<z.ZodObject<{
256
+ boothLabelColor: z.ZodOptional<z.ZodString>;
257
+ boothBorderColor: z.ZodOptional<z.ZodString>;
258
+ backgroundColor: z.ZodOptional<z.ZodString>;
259
+ boothBorderWidth: z.ZodOptional<z.ZodNumber>;
260
+ heatmapColors: z.ZodOptional<z.ZodArray<z.ZodString>>;
261
+ maxZoom: z.ZodOptional<z.ZodNumber>;
262
+ fpVer: z.ZodOptional<z.ZodString>;
263
+ }, z.core.$loose>>;
264
+ __fpStat: z.ZodOptional<z.ZodObject<{
265
+ dataSize: z.ZodOptional<z.ZodNumber>;
266
+ }, z.core.$loose>>;
267
+ __fpVersion: z.ZodOptional<z.ZodNumber>;
268
+ __fpPending: z.ZodOptional<z.ZodBoolean>;
269
+ __viewbox: z.ZodOptional<z.ZodObject<{
270
+ x: z.ZodNumber;
271
+ y: z.ZodNumber;
272
+ width: z.ZodNumber;
273
+ height: z.ZodNumber;
274
+ angle: z.ZodOptional<z.ZodNumber>;
275
+ }, z.core.$loose>>;
276
+ __fpLayers: z.ZodOptional<z.ZodArray<z.ZodObject<{
277
+ name: z.ZodString;
278
+ description: z.ZodOptional<z.ZodString>;
279
+ frozen: z.ZodOptional<z.ZodBoolean>;
280
+ mode: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
281
+ rect: z.ZodOptional<z.ZodNullable<z.ZodObject<{
282
+ x1: z.ZodNumber;
283
+ y1: z.ZodNumber;
284
+ x2: z.ZodNumber;
285
+ y2: z.ZodNumber;
286
+ angle: z.ZodOptional<z.ZodNumber>;
287
+ p0: z.ZodOptional<z.ZodObject<{
288
+ x: z.ZodNumber;
289
+ y: z.ZodNumber;
290
+ }, z.core.$strip>>;
291
+ p1: z.ZodOptional<z.ZodObject<{
292
+ x: z.ZodNumber;
293
+ y: z.ZodNumber;
294
+ }, z.core.$strip>>;
295
+ p2: z.ZodOptional<z.ZodObject<{
296
+ x: z.ZodNumber;
297
+ y: z.ZodNumber;
298
+ }, z.core.$strip>>;
299
+ p3: z.ZodOptional<z.ZodObject<{
300
+ x: z.ZodNumber;
301
+ y: z.ZodNumber;
302
+ }, z.core.$strip>>;
303
+ }, z.core.$loose>>>;
304
+ viewbox: z.ZodOptional<z.ZodNullable<z.ZodObject<{
305
+ x1: z.ZodNumber;
306
+ y1: z.ZodNumber;
307
+ x2: z.ZodNumber;
308
+ y2: z.ZodNumber;
309
+ angle: z.ZodOptional<z.ZodNumber>;
310
+ p0: z.ZodOptional<z.ZodObject<{
311
+ x: z.ZodNumber;
312
+ y: z.ZodNumber;
313
+ }, z.core.$strip>>;
314
+ p1: z.ZodOptional<z.ZodObject<{
315
+ x: z.ZodNumber;
316
+ y: z.ZodNumber;
317
+ }, z.core.$strip>>;
318
+ p2: z.ZodOptional<z.ZodObject<{
319
+ x: z.ZodNumber;
320
+ y: z.ZodNumber;
321
+ }, z.core.$strip>>;
322
+ p3: z.ZodOptional<z.ZodObject<{
323
+ x: z.ZodNumber;
324
+ y: z.ZodNumber;
325
+ }, z.core.$strip>>;
326
+ }, z.core.$loose>>>;
327
+ floorIndex: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
328
+ }, z.core.$loose>>>;
329
+ __fpLayersMode: z.ZodOptional<z.ZodNumber>;
330
+ __fpDefaultLayer: z.ZodOptional<z.ZodString>;
331
+ __fpVenues: z.ZodOptional<z.ZodObject<{
332
+ venuesVersion: z.ZodOptional<z.ZodLiteral<1>>;
333
+ venues: z.ZodOptional<z.ZodArray<z.ZodObject<{
334
+ id: z.ZodString;
335
+ name: z.ZodString;
336
+ order: z.ZodOptional<z.ZodNumber>;
337
+ levels: z.ZodOptional<z.ZodArray<z.ZodObject<{
338
+ layer: z.ZodOptional<z.ZodString>;
339
+ ordinal: z.ZodOptional<z.ZodInt>;
340
+ name: z.ZodOptional<z.ZodOptional<z.ZodString>>;
341
+ initial: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
342
+ }, z.core.$loose>>>;
343
+ contour: z.ZodOptional<z.ZodArray<z.ZodObject<{
344
+ x: z.ZodNumber;
345
+ y: z.ZodNumber;
346
+ }, z.core.$strip>>>;
347
+ markerPoint: z.ZodOptional<z.ZodObject<{
348
+ x: z.ZodNumber;
349
+ y: z.ZodNumber;
350
+ }, z.core.$strip>>;
351
+ detailMinSizePx: z.ZodOptional<z.ZodNumber>;
352
+ markerMaxSizePx: z.ZodOptional<z.ZodNumber>;
353
+ layers: z.ZodOptional<z.ZodArray<z.ZodObject<{
354
+ layer: z.ZodOptional<z.ZodString>;
355
+ render: z.ZodOptional<z.ZodEnum<{
356
+ marker: "marker";
357
+ scene: "scene";
358
+ }>>;
359
+ replacesDefault: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
360
+ suppressesLabel: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
361
+ minSizePx: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
362
+ maxSizePx: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<"detail">]>>>;
363
+ }, z.core.$loose>>>;
364
+ entrances: z.ZodOptional<z.ZodArray<z.ZodObject<{
365
+ layer: z.ZodOptional<z.ZodString>;
366
+ point: z.ZodOptional<z.ZodObject<{
367
+ x: z.ZodNumber;
368
+ y: z.ZodNumber;
369
+ }, z.core.$strip>>;
370
+ name: z.ZodOptional<z.ZodOptional<z.ZodString>>;
371
+ }, z.core.$loose>>>;
372
+ campusViewbox: z.ZodOptional<z.ZodObject<{
373
+ x: z.ZodOptional<z.ZodNumber>;
374
+ y: z.ZodOptional<z.ZodNumber>;
375
+ width: z.ZodOptional<z.ZodNumber>;
376
+ height: z.ZodOptional<z.ZodNumber>;
377
+ }, z.core.$loose>>;
378
+ }, z.core.$loose>>>;
379
+ }, z.core.$loose>>;
380
+ }, z.core.$loose>;
381
+ /**
382
+ * A `$ref` to the expo's `fp.svg.js` — resolves to a {@link FpSvgJsSchema}
383
+ * payload. Set explicitly (e.g. by an offline copy pointing at a resolved
384
+ * `fp.svg.json`) to override the `<legacyDataUrlBase>fp.svg.js` derivation.
385
+ */
386
+ export declare const FpSvgJsRefSchema: z.ZodObject<{
387
+ $ref: z.ZodString;
388
+ }, z.core.$strip>;
389
+ export type FpPath = z.infer<typeof FpPathSchema>;
390
+ export type FpSettings = z.infer<typeof FpSettingsSchema>;
391
+ export type FpStat = z.infer<typeof FpStatSchema>;
392
+ export type FpViewbox = z.infer<typeof FpViewboxSchema>;
393
+ export type FpRect = z.infer<typeof FpRectSchema>;
394
+ export type FpLayer = z.infer<typeof FpLayerSchema>;
395
+ export type FpSvgLayerJs = z.infer<typeof FpSvgLayerJsSchema>;
396
+ export type FpSvgLayerJsRef = z.infer<typeof FpSvgLayerJsRefSchema>;
397
+ export type FpSvgJs = z.infer<typeof FpSvgJsSchema>;
398
+ export type FpSvgJsRef = z.infer<typeof FpSvgJsRefSchema>;
399
+ //# sourceMappingURL=fp-svg.d.ts.map