Skip to main content

Interface: VisualizationSpec

Defined in: spec/types.ts:717

Properties​

__resolved?​

optional __resolved?: boolean

Defined in: spec/types.ts:785

Internal marker set by resolveSpecFromMapType to prevent double-resolution. Consumers should not set this field directly.


adapterHints?​

optional adapterHints?: unknown

Defined in: spec/types.ts:749

Deprecated​

No longer used by the adapter. Kept for backward compatibility so existing specs continue to pass validateSpec(). Will be removed in a future breaking-change release.


attributionControlEnabled?​

optional attributionControlEnabled?: boolean

Defined in: spec/types.ts:779

Controls whether MapLibre's attribution control — the round button in the map's bottom-right corner that expands into the basemap credits — is mounted. Defaults to true.

Set it to false only when the application renders the same credits somewhere else: basemap and source licences (OpenStreetMap's among them) generally require attribution to stay visible, and hiding the control does not lift that obligation. Each source's own attribution string is unaffected — it simply has no built-in surface left to appear on.


basemap?​

optional basemap?: BaseMapSpec

Defined in: spec/types.ts:725


control?​

optional control?: LayerControl

Defined in: spec/types.ts:801

A single floating panel of layer-visibility toggles, overlaid on the map. When present, <GeoVisProvider> auto-mounts a <GeoVisLayerControl> for it — the consumer does not place the component. Each item toggles a set of layers by id via dispatch({ type: 'toggle-layer' }).


description?​

optional description?: string

Defined in: spec/types.ts:721


engine​

engine: "maplibre"

Defined in: spec/types.ts:722


images?​

optional images?: PinImage[]

Defined in: spec/types.ts:742

Images registered on the map, for symbol layers to reference by id (paint.iconImage). They are built and loaded asynchronously; a layer drawing one shows it as soon as it is ready, and again after a basemap change.


layers​

layers: VisualizationLayer[]

Defined in: spec/types.ts:727


legendEnabled?​

optional legendEnabled?: boolean

Defined in: spec/types.ts:766

Controls whether auto-generated legends are produced for the resolved mapType. Defaults to true. Has no effect on legends the user supplies directly via spec.legends.


legends?​

optional legends?: LegendSpec[]

Defined in: spec/types.ts:729

Optional top-level legend registry used by legend UI components.


mapData?​

optional mapData?: MapData[]

Defined in: spec/types.ts:735

Optional attribute datasets joined to geojson sources. Each entry references a source via mapId and provides per-feature values for use in styling, tooltips, charts.


mapType?​

optional mapType?: MapType

Defined in: spec/types.ts:723


metadata?​

optional metadata?: Record<string, unknown>

Defined in: spec/types.ts:743


scaleMaxValue?​

optional scaleMaxValue?: number

Defined in: spec/types.ts:759

Visual scale ceiling for proportional symbol rendering.

Values above scaleMaxValue render at the maximum symbol size (e.g. max circle radius). The tooltip always shows the real feature value.

When omitted, the adapter computes it from the dataset.


schemaVersion?​

optional schemaVersion?: number

Defined in: spec/types.ts:719

Schema version this spec was authored against. Omit for the current version — see SPEC_SCHEMA_VERSION.


sources​

sources: DataSource[]

Defined in: spec/types.ts:726


title?​

optional title?: string

Defined in: spec/types.ts:720


view?​

optional view?: ViewState

Defined in: spec/types.ts:724


viewPresets?​

optional viewPresets?: ViewPreset[]

Defined in: spec/types.ts:793

Named, curated camera positions the AI (or a UI control) can jump to by id (dispatch({ type: 'set-view-preset' }), PRD-002) — bounded to positions the application actually declared, instead of raw coordinates an AI would otherwise have to invent.