@chrtco/sdk 0.10.41 → 0.10.43

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.
package/dist/index.d.cts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { F as FileSystemAdapter } from './fs-adapter-D5iwdb1Q.cjs';
2
- import { C as ColorTableName } from './s52-colors-CdVzqt2K.cjs';
3
- export { S as S52_COLORS, a as S52_DAY, b as S52_DUSK, c as S52_NIGHT, g as getColorTable, r as resolveColor } from './s52-colors-CdVzqt2K.cjs';
2
+ import { C as ColorTableName } from './symbol-families-D2Kx20HJ.cjs';
3
+ export { S as S52_COLORS, a as S52_DAY, b as S52_DUSK, c as S52_NIGHT, d as SYMBOL_FAMILIES, e as SYMBOL_FAMILY_META, f as SymbolFamily, g as SymbolFamilyMeta, h as getColorTable, i as iconExpressionForFamily, p as parseSymbolFamily, r as resolveColor } from './symbol-families-D2Kx20HJ.cjs';
4
4
  import maplibregl from 'maplibre-gl';
5
5
  import { ExpressionSpecification } from '@maplibre/maplibre-gl-style-spec';
6
6
 
@@ -2821,6 +2821,52 @@ declare class InteractClient {
2821
2821
  attach(map: InteractMapLike, opts?: AttachOptions): Promise<InteractHandle>;
2822
2822
  }
2823
2823
 
2824
+ /**
2825
+ * Light arithmetic for the chart palettes: how much light a colour emits, and
2826
+ * how to dim a colour without changing its hue.
2827
+ *
2828
+ * Everything here works in LINEAR light (WCAG 2.x relative luminance, sRGB
2829
+ * primaries). That is the quantity a dark-adapted eye responds to, and it is
2830
+ * the one `sounding-legibility.test.ts` already measures soundings in. Scaling
2831
+ * the sRGB-ENCODED channels instead would dim dark colours far more than
2832
+ * bright ones and shift every hue it touched.
2833
+ *
2834
+ * The one derivation the palettes rely on, and the reason this file exists:
2835
+ * NIGHT's deeper sounding SNDG1 (#897350) is SNDG2 (#c8aa78) at 43% of its
2836
+ * linear light. `labels.ts` builds its NIGHT secondary text the same way, so
2837
+ * the two stay one family by construction rather than by two hand-typed hexes
2838
+ * that happen to agree.
2839
+ */
2840
+ /** WCAG 2.x relative luminance of a `#rrggbb` colour, 0 (black) to 1 (white). */
2841
+ declare function relativeLuminance(hex: string): number;
2842
+ /** WCAG 2.x contrast ratio between two `#rrggbb` colours, 1 to 21. */
2843
+ declare function contrastRatio(a: string, b: string): number;
2844
+ /**
2845
+ * The same hue at `factor` times its linear light. `factor` above 1 can clip a
2846
+ * channel, which shifts the hue; nothing in the palettes brightens, so callers
2847
+ * pass 0–1.
2848
+ */
2849
+ declare function scaleLinearLight(hex: string, factor: number): string;
2850
+ /**
2851
+ * `hex` dimmed, hue kept, until its luminance is at most `ceiling`. A colour
2852
+ * already at or under the ceiling comes back unchanged (lower-cased).
2853
+ */
2854
+ declare function capLuminance(hex: string, ceiling: number): string;
2855
+ /**
2856
+ * NIGHT's two ink levels, shared by every family's text and marks.
2857
+ *
2858
+ * `NIGHT_INK` S52_NIGHT.CHBLK — the palette's linework and navigation
2859
+ * text. The brightest thing NIGHT draws on purpose.
2860
+ * `NIGHT_MUTED_INK` that ink at 43% of its linear light, which is how
2861
+ * S52_NIGHT.SNDG1 (the deeper soundings) was derived.
2862
+ * Everything that orients rather than navigates is drawn
2863
+ * at or under this, and `night-luminance.test.ts` holds
2864
+ * every visible NIGHT colour to it unless an exemption
2865
+ * names a reason.
2866
+ */
2867
+ declare const NIGHT_INK: string;
2868
+ declare const NIGHT_MUTED_INK: string;
2869
+
2824
2870
  /** S-52 display categories – controls default visibility */
2825
2871
  type DisplayCategory = "BASE" | "STANDARD" | "OTHER" | "MARINERS" | "META";
2826
2872
  /** Mapbox GL layer type we'll use for this entry */
@@ -3225,7 +3271,7 @@ declare const PLACENAME_LAND_CLASSES: readonly string[];
3225
3271
  * (tier major, bbox area minor), so when space runs out the biggest names
3226
3272
  * survive. That ranking is the per-zoom density governor P4 asked for.
3227
3273
  */
3228
- declare function buildPlaceNameLayers(sourceId: string): maplibregl.LayerSpecification[];
3274
+ declare function buildPlaceNameLayers(sourceId: string, ct?: ColorTableName): maplibregl.LayerSpecification[];
3229
3275
 
3230
3276
  /**
3231
3277
  * Spatial grid-based feature decimation for performance at low zoom levels.
@@ -4088,12 +4134,40 @@ declare const CHRT_GLYPH_NAMES: ReadonlySet<string>;
4088
4134
  * (see module header); chosen for contrast on the CHRT day water ramp.
4089
4135
  */
4090
4136
  declare const CHRT_ATON_COLORS: Record<string, string>;
4137
+ /**
4138
+ * A house colour in `palette`. The table above is the DAY look; DUSK and NIGHT
4139
+ * are derived from it so the house family follows the palette the S-52 tables
4140
+ * set, the way every other family does through its colour tokens.
4141
+ *
4142
+ * ⚠ BEFORE THIS, THE HOUSE FAMILY HAD NO NIGHT AT ALL. Its tints were literal
4143
+ * hexes in the style and its fixed-palette glyphs were loaded once, with no
4144
+ * palette, so a NIGHT chart drew a #F8FAFC white mark (L 0.95) and a #FFC805
4145
+ * yellow one (L 0.63) beside S-52 fills at L 0.01–0.06.
4146
+ *
4147
+ * DUSK every colour no brighter than DUSK's own ink (S52_DUSK.CHBLK).
4148
+ * NIGHT every colour no brighter than the NIGHT muted ink (palette-light.ts),
4149
+ * hue kept — a red mark is still red, a green one green.
4150
+ * EXCEPT BLACK, which becomes the NIGHT ink, exactly as S-52's NIGHT
4151
+ * table turns CHBLK into its light linework colour. A black topmark
4152
+ * on black water is not a dim mark, it is no mark, and a cardinal
4153
+ * without its topmark has lost the one thing that says which side to
4154
+ * pass. The ink is also brighter than the capped yellow, which is
4155
+ * what keeps a cardinal's black and yellow bands apart at night.
4156
+ */
4157
+ declare function chrtHouseColor(dayHex: string, palette?: ColorTableName): string;
4158
+ /**
4159
+ * A house glyph's SVG with every literal colour moved to `palette`. Only the
4160
+ * fixed-palette glyphs need it (cardinals, isolated danger, safe water, the
4161
+ * capability badges, the world hatches); an SDF glyph's colour is a mask and
4162
+ * its paint is the style's `icon-color`.
4163
+ */
4164
+ declare function themeChrtGlyph(svg: string, palette?: ColorTableName): string;
4091
4165
  /** First-listed-colour-wins tint expression for SDF bodies. */
4092
- declare function chrtAtonTintExpression(): unknown[];
4166
+ declare function chrtAtonTintExpression(palette?: ColorTableName): unknown[];
4093
4167
  /** Lights tint: exact colour (incl. blue/orange — the house style renders
4094
4168
  * the encoded colour, unlike the S-52 three-bucket flares); colourless
4095
4169
  * lights read as white with the dark halo carrying contrast. */
4096
- declare function chrtLightTintExpression(): unknown[];
4170
+ declare function chrtLightTintExpression(palette?: ColorTableName): unknown[];
4097
4171
  /** Per-class house icon expressions. Classes not listed keep their S-52
4098
4172
  * icons (e.g. TOPMAR's minimal black shapes already fit the house look). */
4099
4173
  declare const CHRT_ICON_EXPRESSIONS: Record<string, () => string | unknown[]>;
@@ -4103,7 +4177,8 @@ declare const CHRT_ICON_EXPRESSIONS: Record<string, () => string | unknown[]>;
4103
4177
  * layers, and restore the house dash on the cable/pipeline family. Returns
4104
4178
  * the same style object (mutated).
4105
4179
  *
4106
- * @param palette Active colour table, used to resolve the house dash tokens.
4180
+ * @param palette Active colour table: resolves the house dash tokens and
4181
+ * moves the ATON/LIGHTS tints to that palette (`chrtHouseColor`).
4107
4182
  * Defaults to DAY so existing single-arg callers keep working.
4108
4183
  */
4109
4184
  declare function applyChrtSymbolSet(style: MapboxStyle, palette?: ColorTableName): MapboxStyle;
@@ -4204,36 +4279,6 @@ declare const S52_ATON_LOOKUPS: Record<string, AtonClassLookup>;
4204
4279
  */
4205
4280
  declare const S52_ATON_LOOKUPS_PAPER: Record<string, AtonClassLookup>;
4206
4281
 
4207
- /**
4208
- * The symbol-artwork families, as one shared vocabulary.
4209
- *
4210
- * `applyS101SymbolSet` / `applyChrtSymbolSet` / `applyRasterSymbolSet`
4211
- * switch a whole generated style document. Consumers that build layers
4212
- * class-by-class (the /map viewer's renderer) need the same decision at
4213
- * the level of a single class — that's `iconExpressionForFamily`, so the
4214
- * viewer and the Style API can never disagree about what a family means.
4215
- */
4216
- type SymbolFamily = "s52" | "s101" | "chrt" | "raster";
4217
- /** Every family, in presentation order. Mirrors the Style API's
4218
- * `?symbols=` values (SYMBOL_SET_PARAMS in the tile worker). */
4219
- declare const SYMBOL_FAMILIES: readonly SymbolFamily[];
4220
- interface SymbolFamilyMeta {
4221
- /** Short UI label. */
4222
- label: string;
4223
- /** One-line description of what the family is. */
4224
- description: string;
4225
- }
4226
- declare const SYMBOL_FAMILY_META: Record<SymbolFamily, SymbolFamilyMeta>;
4227
- /** Narrow an arbitrary string to a family, or null. Case-insensitive. */
4228
- declare function parseSymbolFamily(raw: string | null | undefined): SymbolFamily | null;
4229
- /**
4230
- * The icon-image expression for one S-57 class under a given family —
4231
- * the per-class equivalent of the `apply*SymbolSet` style rewrites.
4232
- * Classes a family doesn't restyle fall back to the S-52 expression,
4233
- * exactly as they do on a served style.
4234
- */
4235
- declare function iconExpressionForFamily(objectClass: string, family: SymbolFamily): string | unknown[];
4236
-
4237
4282
  /**
4238
4283
  * Spec-exact ATON + LIGHTS icon selection, compiled from the S-52 PresLib
4239
4284
  * lookup tables in `s52-aton-lookups-generated.ts` (P7b wave A1).
@@ -5279,4 +5324,4 @@ declare class Chrt {
5279
5324
  warmTiles(region?: string): Promise<TileTokenResponse>;
5280
5325
  }
5281
5326
 
5282
- export { ALL_NAV_AID_LAYERS, ALL_WATER_BODY_LAYERS, AREA_QUERY_LAYERS, ATON_EXPRESSION_CLASSES, type AheadCoverageCell, type AheadFeatureProperties, type AheadOptions, type AheadResponse, type AlongRouteFeatureProperties, type AlongRouteOptions, type AlongRouteResponse, type AreaInspectResult, type AtlasStyle, type AttachOptions, BAND_CODE_ALIASES, BAND_DRAW_ORDER, BAND_PRIORITY_RANGES, BASE_ATTRIBUTION, BASE_BUNDLE_ATTRIBUTION, BASE_BUNDLE_ID, BASE_BUNDLE_MAXZOOM, BASE_BUNDLE_SCHEMA, BASE_BUNDLE_SOURCE_LAYERS, BASE_CLIENT_RASTER_BEFORE_ID, BASE_MAXZOOM, BASE_MINZOOM, BASE_REGION, type BBox, BRIDGE_QUERY_LAYERS, BUILD_MAXZOOM, BUILD_MINZOOM, BUILD_PARAM, type BandCode, type BandPriorityRange, type BridgeInspectResult, type BuildOfflineStyleOptions, type BuildSourcesOptions, CHART_BAND_CODES, CHART_CASCADE_CODES, CHART_SECTIONS, CHRTRASTER_REF_CROPS, CHRTRASTER_SVGS, CHRT_ATON_COLORS, CHRT_GLYPH_NAMES, CHRT_GLYPH_SVGS, CHRT_ICON_EXPRESSIONS, CHRT_ICON_PREFIX, CHRT_SDF_GLYPHS, CHRT_STYLE_MODES, type CandidateQueryOptions, type CandidatesEventContext, type CellDeletedEvent, type CellDetail, type CellEventData, type CellNewEvent, type CellUpdatedData, type CellUpdatedEvent, type CellsOptions, type CellsResponse, type ChartSection, Chrt, type ChrtConfig, ChrtError, type ChrtStyleMode, type ChrtStyleOptions, type ChrtStyleTheme, type ChrtSymbolSet, type ClickAnchor, ColorTableName, type CoverageOptions, type CoverageResponse, type CoverageRouteCell, type CoverageRouteOptions, type CoverageRouteResponse, type CoverageSource, type CustomStyleConfig, DEFAULT_CLICK_TOLERANCE, DEFAULT_CUSTOM_STYLE_CONFIG, DEFAULT_INSPECT_CLASS_RANK, DEFAULT_LABEL_SETTINGS, DEFAULT_NAV_AID_SETTINGS, DEFAULT_REGION, DEFAULT_SAFETY_CONTOUR_M, DEFAULT_SOUNDING_SETTINGS, DEFAULT_TILE_BASE_URL, DEFAULT_TILE_REGION, DEFAULT_WATER_BODY_SETTINGS, DRAPEABLE_LAYER_TYPES, type DecodedAreaFeature, type DecodedBridge, type DecodedNavAid, type DecodedProperty, type DisplayCategory, type DisplayMode, type FeatureCollection, type FeaturesOptions, type FetchStyleOptions, FileSystemAdapter, type FlashPattern, type FlashPhase, type GenerateCustomStyleOptions, type GeneratedCustomStyle, type GeoJsonFeature, type GeoJsonGeometry, type GeomType, INSPECT_CLASS_RANK, INSPECT_RANK_DEVIATIONS, type InspectCandidate, type InspectCandidateSet, type InspectEnrichment, type InspectEventContext, type InspectNotice, type InspectOptions, type InspectResult, type InspectTargetClass, type InspectableFeature, InteractClient, type InteractEntitlement, InteractError, type InteractErrorCode, type InteractHandle, type InteractMapLike, type InteractMapMouseEvent, LABELED_LAYERS, LABEL_BEHAVIOR, LABEL_LAYER_GROUPS, LABEL_PRIORITY, LAMP_CORE_LAYER_ID, LAMP_GLOW_LAYER_ID, LAMP_LAYER_IDS, LAMP_TICK_MS, LAND_ATTRIBUTION, LAND_BUILD_MAXZOOM, LAND_REGION, type LabelBehavior, type LabelConfigOptions, type LabelLayerConfig, type LabelSettings, type LampLayer, type LookupEntry, type MapLibreStyle, type MapboxStyle, type MapboxVectorSource, type MarineAlert, type MarineAlertsOptions, type MarineAlertsResponse, type MarineConditionsObservation, type MarineConditionsOptions, type MarineConditionsResponse, type MarineConditionsSeries, type MarineForecastOptions, type MarineForecastPeriod, type MarineForecastResponse, type MarineSeas, type MarineStation, type MarineSwellTrain, type MarineWind, type MarineZoneRef, NAUTICAL_SYMBOLS, NAV_AID_LAYER_GROUPS, NAV_AID_QUERY_LAYERS, NON_SOLAS_DISCLAIMER, NON_SOLAS_DISCLAIMER_SHORT, type NauticalCategory, type NauticalSymbol, type NavAidInspectResult, type NavAidSettings, type NearbyMarineStation, type OfflineBundleResponse, type OfflineDownloadOptions, type OfflineDownloadProgress, type OfflineDownloadResult, OfflineError, type OfflineErrorCode, type OfflineFetchStyleOptions, type OfflineHeartbeatOptions, type OfflineRegionSummary, type OfflineRemoveOptions, OfflineStyleError, type OfflineStylePlatform, type OfflineStyleResponse, PLACENAME_LAND_CLASSES, PLACENAME_SOURCE_LAYER, PLACENAME_WATER_CLASSES, type ParsedSigseqTerms, type PmtilesVectorSource, type Poi, type PoiCoverage, type PoiDataset, type PoiOptions, type PoiResponse, type QueryFeatureProperties, type QueryOptions, type QueryResponse, RASTER_ATON_CLASSES, RASTER_GLYPH_NAMES, RASTER_ICON_PREFIX, RELIEF_ATTRIBUTION, RELIEF_ENCODING, RELIEF_REGION, RELIEF_TILE_SIZE, type ResolvedStyle, type ResolvedTheme, type S101ArtworkProvenance, type S101Feature, S101_AREA_FILL_NAMES, S101_CHART_SECTIONS, S101_FEATURES, S101_ICON_PREFIX, S101_LINE_STYLE_NAMES, S101_NEW_SYMBOLS, S101_NO_OFFICIAL_COUNTERPART, S101_SOURCE_COMMIT, S101_SYMBOL_GROUPS, S101_SYMBOL_NAMES, S52_ATON_LOOKUPS, S52_ATON_LOOKUPS_PAPER, S52_DRAW_ORDER, S52_LOOKUP, S52_PATTERN_SPRITE_PREFIX, SIGPER_TOLERANCE_SECONDS, SIGSEQ_MAX_TERMS, SOUNDING_LAYERS, SYMBOL_FAMILIES, SYMBOL_FAMILY_META, SYMBOL_GROUPS, SYMBOL_MAP, type ScaleBand, type SearchCoverageNotice, type SearchHit, type SearchOptions, type SearchResponse, type SectorArcFeature, type SectorArcFeatureCollection, type SectorInfo, type SigseqRefusal, type SigseqTerm, type SoundingSettings, type SourceMode, type StyleGeneratorOptions, type StyleLayer, type StyleUrlOptions, type SymbolFamily, type SymbolFamilyMeta, type SymbolGroup, TileAuth, type TileGroup, type TileGroupsResponse, TileTokenError, type TileTokenErrorCode, type TileTokenResponse, type TransformRequest, type TransformedRequest, type VectorSourceSpec, type VesselProfile, WATER_BODY_LAYER_GROUPS, type WaterBodySettings, WeatherEndpoint, type WeatherReading, type WebhookEvent, type WebhookEventType, type WebhookPayload, applyBaseBundle, applyChrtSymbolSet, applyColorTheme, applyCustomStyleSettings, applyRasterSymbolSet, applyS101SymbolSet, atonIconExpression, bandFilterExpression, buildAirportTierExpression, buildBuiltUpAreaTierExpression, buildFlashPattern, buildLabelLayer, buildLakeTierExpression, buildLampLayers, buildLandAreaTierExpression, buildLandRegionTierExpression, buildLayersForClass, buildOfflineStyle, buildPlaceNameLayers, buildRiverTierExpression, buildSeaAreaTierExpression, buildSectorArcGeoJSON, buildSectorArcsFC, buildSectorsFromFeatures, buildSources, candidateRank, cellBandCharacters, cellBandMatch, chrtAtonTintExpression, chrtLightTintExpression, collectCandidates, collectClickCandidates, combineWithBandFilter, daymarkColor, decimateFeatures, decodeAreaFeatureProps, decodeBridgeProps, decodeCandidate, decodeNavAidProps, depareColor, depareFillExpression, deriveMarinerName, drapeHalves, drapedFirst, extractNavAidDesignation, featureIdentity, generateCustomStyle, generateSpriteManifest, generateSpriteSheet, generateStyle, generateStyleJSON, getAvailableLineSymbols, getAvailablePatterns, getAvailablePointSymbols, getCollisionSettings, getDrawPriority, getGridSizeForZoom, getIconExpression, getLabelBehavior, getLabelConfig, getLabelPriority, getLookupEntry, getMaxCellsForZoom, getOrderedClasses, getRasterSvg, getS52SvgString, getS52SymbolStats, getStyleStats, getSymbolSvgString, getThemedS101Svg, getThemedS52Svg, getTopmarkMeaning, hazardColor, hazardFillExpression, iconExpressionForFamily, isDrapeable, isLabelLayerVisible, isNavAidLayer, isNavAidLayerVisible, isSoundingLayerVisible, isVisibleInMode, isWaterBodyLayerVisible, labelSortKey, lampRhythmColour, lampRhythmOpacity, lateralColor, lateralFillExpression, lightColor, lightFillExpression, lightsIconExpression, normalizeStyleMode, normalizeTheme, paginate, parseListCodes, parseSigseqTerms, parseSymbolFamily, parseWebhook, patternSpriteId, preprocessLights, preprocessNavAids, preprocessSoundings, preprocessWaterBodies, rasterAtonIconExpression, resolveCustomTheme, resolveRasterImage, resolveS101Color, resolveStyle, resolveTargetClass, rhythmProperties, s101ArtworkProvenance, sanitizeCustomStyleConfig, scaleSizeValue, scaminToMinZoom, sectorLimitToArcBearing, styleModeBand, terrainStackCount, tileTemplate, uncoveredSectorArcs, withinBboxFilter, worldMinusBboxPolygon };
5327
+ export { ALL_NAV_AID_LAYERS, ALL_WATER_BODY_LAYERS, AREA_QUERY_LAYERS, ATON_EXPRESSION_CLASSES, type AheadCoverageCell, type AheadFeatureProperties, type AheadOptions, type AheadResponse, type AlongRouteFeatureProperties, type AlongRouteOptions, type AlongRouteResponse, type AreaInspectResult, type AtlasStyle, type AttachOptions, BAND_CODE_ALIASES, BAND_DRAW_ORDER, BAND_PRIORITY_RANGES, BASE_ATTRIBUTION, BASE_BUNDLE_ATTRIBUTION, BASE_BUNDLE_ID, BASE_BUNDLE_MAXZOOM, BASE_BUNDLE_SCHEMA, BASE_BUNDLE_SOURCE_LAYERS, BASE_CLIENT_RASTER_BEFORE_ID, BASE_MAXZOOM, BASE_MINZOOM, BASE_REGION, type BBox, BRIDGE_QUERY_LAYERS, BUILD_MAXZOOM, BUILD_MINZOOM, BUILD_PARAM, type BandCode, type BandPriorityRange, type BridgeInspectResult, type BuildOfflineStyleOptions, type BuildSourcesOptions, CHART_BAND_CODES, CHART_CASCADE_CODES, CHART_SECTIONS, CHRTRASTER_REF_CROPS, CHRTRASTER_SVGS, CHRT_ATON_COLORS, CHRT_GLYPH_NAMES, CHRT_GLYPH_SVGS, CHRT_ICON_EXPRESSIONS, CHRT_ICON_PREFIX, CHRT_SDF_GLYPHS, CHRT_STYLE_MODES, type CandidateQueryOptions, type CandidatesEventContext, type CellDeletedEvent, type CellDetail, type CellEventData, type CellNewEvent, type CellUpdatedData, type CellUpdatedEvent, type CellsOptions, type CellsResponse, type ChartSection, Chrt, type ChrtConfig, ChrtError, type ChrtStyleMode, type ChrtStyleOptions, type ChrtStyleTheme, type ChrtSymbolSet, type ClickAnchor, ColorTableName, type CoverageOptions, type CoverageResponse, type CoverageRouteCell, type CoverageRouteOptions, type CoverageRouteResponse, type CoverageSource, type CustomStyleConfig, DEFAULT_CLICK_TOLERANCE, DEFAULT_CUSTOM_STYLE_CONFIG, DEFAULT_INSPECT_CLASS_RANK, DEFAULT_LABEL_SETTINGS, DEFAULT_NAV_AID_SETTINGS, DEFAULT_REGION, DEFAULT_SAFETY_CONTOUR_M, DEFAULT_SOUNDING_SETTINGS, DEFAULT_TILE_BASE_URL, DEFAULT_TILE_REGION, DEFAULT_WATER_BODY_SETTINGS, DRAPEABLE_LAYER_TYPES, type DecodedAreaFeature, type DecodedBridge, type DecodedNavAid, type DecodedProperty, type DisplayCategory, type DisplayMode, type FeatureCollection, type FeaturesOptions, type FetchStyleOptions, FileSystemAdapter, type FlashPattern, type FlashPhase, type GenerateCustomStyleOptions, type GeneratedCustomStyle, type GeoJsonFeature, type GeoJsonGeometry, type GeomType, INSPECT_CLASS_RANK, INSPECT_RANK_DEVIATIONS, type InspectCandidate, type InspectCandidateSet, type InspectEnrichment, type InspectEventContext, type InspectNotice, type InspectOptions, type InspectResult, type InspectTargetClass, type InspectableFeature, InteractClient, type InteractEntitlement, InteractError, type InteractErrorCode, type InteractHandle, type InteractMapLike, type InteractMapMouseEvent, LABELED_LAYERS, LABEL_BEHAVIOR, LABEL_LAYER_GROUPS, LABEL_PRIORITY, LAMP_CORE_LAYER_ID, LAMP_GLOW_LAYER_ID, LAMP_LAYER_IDS, LAMP_TICK_MS, LAND_ATTRIBUTION, LAND_BUILD_MAXZOOM, LAND_REGION, type LabelBehavior, type LabelConfigOptions, type LabelLayerConfig, type LabelSettings, type LampLayer, type LookupEntry, type MapLibreStyle, type MapboxStyle, type MapboxVectorSource, type MarineAlert, type MarineAlertsOptions, type MarineAlertsResponse, type MarineConditionsObservation, type MarineConditionsOptions, type MarineConditionsResponse, type MarineConditionsSeries, type MarineForecastOptions, type MarineForecastPeriod, type MarineForecastResponse, type MarineSeas, type MarineStation, type MarineSwellTrain, type MarineWind, type MarineZoneRef, NAUTICAL_SYMBOLS, NAV_AID_LAYER_GROUPS, NAV_AID_QUERY_LAYERS, NIGHT_INK, NIGHT_MUTED_INK, NON_SOLAS_DISCLAIMER, NON_SOLAS_DISCLAIMER_SHORT, type NauticalCategory, type NauticalSymbol, type NavAidInspectResult, type NavAidSettings, type NearbyMarineStation, type OfflineBundleResponse, type OfflineDownloadOptions, type OfflineDownloadProgress, type OfflineDownloadResult, OfflineError, type OfflineErrorCode, type OfflineFetchStyleOptions, type OfflineHeartbeatOptions, type OfflineRegionSummary, type OfflineRemoveOptions, OfflineStyleError, type OfflineStylePlatform, type OfflineStyleResponse, PLACENAME_LAND_CLASSES, PLACENAME_SOURCE_LAYER, PLACENAME_WATER_CLASSES, type ParsedSigseqTerms, type PmtilesVectorSource, type Poi, type PoiCoverage, type PoiDataset, type PoiOptions, type PoiResponse, type QueryFeatureProperties, type QueryOptions, type QueryResponse, RASTER_ATON_CLASSES, RASTER_GLYPH_NAMES, RASTER_ICON_PREFIX, RELIEF_ATTRIBUTION, RELIEF_ENCODING, RELIEF_REGION, RELIEF_TILE_SIZE, type ResolvedStyle, type ResolvedTheme, type S101ArtworkProvenance, type S101Feature, S101_AREA_FILL_NAMES, S101_CHART_SECTIONS, S101_FEATURES, S101_ICON_PREFIX, S101_LINE_STYLE_NAMES, S101_NEW_SYMBOLS, S101_NO_OFFICIAL_COUNTERPART, S101_SOURCE_COMMIT, S101_SYMBOL_GROUPS, S101_SYMBOL_NAMES, S52_ATON_LOOKUPS, S52_ATON_LOOKUPS_PAPER, S52_DRAW_ORDER, S52_LOOKUP, S52_PATTERN_SPRITE_PREFIX, SIGPER_TOLERANCE_SECONDS, SIGSEQ_MAX_TERMS, SOUNDING_LAYERS, SYMBOL_GROUPS, SYMBOL_MAP, type ScaleBand, type SearchCoverageNotice, type SearchHit, type SearchOptions, type SearchResponse, type SectorArcFeature, type SectorArcFeatureCollection, type SectorInfo, type SigseqRefusal, type SigseqTerm, type SoundingSettings, type SourceMode, type StyleGeneratorOptions, type StyleLayer, type StyleUrlOptions, type SymbolGroup, TileAuth, type TileGroup, type TileGroupsResponse, TileTokenError, type TileTokenErrorCode, type TileTokenResponse, type TransformRequest, type TransformedRequest, type VectorSourceSpec, type VesselProfile, WATER_BODY_LAYER_GROUPS, type WaterBodySettings, WeatherEndpoint, type WeatherReading, type WebhookEvent, type WebhookEventType, type WebhookPayload, applyBaseBundle, applyChrtSymbolSet, applyColorTheme, applyCustomStyleSettings, applyRasterSymbolSet, applyS101SymbolSet, atonIconExpression, bandFilterExpression, buildAirportTierExpression, buildBuiltUpAreaTierExpression, buildFlashPattern, buildLabelLayer, buildLakeTierExpression, buildLampLayers, buildLandAreaTierExpression, buildLandRegionTierExpression, buildLayersForClass, buildOfflineStyle, buildPlaceNameLayers, buildRiverTierExpression, buildSeaAreaTierExpression, buildSectorArcGeoJSON, buildSectorArcsFC, buildSectorsFromFeatures, buildSources, candidateRank, capLuminance, cellBandCharacters, cellBandMatch, chrtAtonTintExpression, chrtHouseColor, chrtLightTintExpression, collectCandidates, collectClickCandidates, combineWithBandFilter, contrastRatio, daymarkColor, decimateFeatures, decodeAreaFeatureProps, decodeBridgeProps, decodeCandidate, decodeNavAidProps, depareColor, depareFillExpression, deriveMarinerName, drapeHalves, drapedFirst, extractNavAidDesignation, featureIdentity, generateCustomStyle, generateSpriteManifest, generateSpriteSheet, generateStyle, generateStyleJSON, getAvailableLineSymbols, getAvailablePatterns, getAvailablePointSymbols, getCollisionSettings, getDrawPriority, getGridSizeForZoom, getIconExpression, getLabelBehavior, getLabelConfig, getLabelPriority, getLookupEntry, getMaxCellsForZoom, getOrderedClasses, getRasterSvg, getS52SvgString, getS52SymbolStats, getStyleStats, getSymbolSvgString, getThemedS101Svg, getThemedS52Svg, getTopmarkMeaning, hazardColor, hazardFillExpression, isDrapeable, isLabelLayerVisible, isNavAidLayer, isNavAidLayerVisible, isSoundingLayerVisible, isVisibleInMode, isWaterBodyLayerVisible, labelSortKey, lampRhythmColour, lampRhythmOpacity, lateralColor, lateralFillExpression, lightColor, lightFillExpression, lightsIconExpression, normalizeStyleMode, normalizeTheme, paginate, parseListCodes, parseSigseqTerms, parseWebhook, patternSpriteId, preprocessLights, preprocessNavAids, preprocessSoundings, preprocessWaterBodies, rasterAtonIconExpression, relativeLuminance, resolveCustomTheme, resolveRasterImage, resolveS101Color, resolveStyle, resolveTargetClass, rhythmProperties, s101ArtworkProvenance, sanitizeCustomStyleConfig, scaleLinearLight, scaleSizeValue, scaminToMinZoom, sectorLimitToArcBearing, styleModeBand, terrainStackCount, themeChrtGlyph, tileTemplate, uncoveredSectorArcs, withinBboxFilter, worldMinusBboxPolygon };
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { F as FileSystemAdapter } from './fs-adapter-D5iwdb1Q.js';
2
- import { C as ColorTableName } from './s52-colors-CdVzqt2K.js';
3
- export { S as S52_COLORS, a as S52_DAY, b as S52_DUSK, c as S52_NIGHT, g as getColorTable, r as resolveColor } from './s52-colors-CdVzqt2K.js';
2
+ import { C as ColorTableName } from './symbol-families-D2Kx20HJ.js';
3
+ export { S as S52_COLORS, a as S52_DAY, b as S52_DUSK, c as S52_NIGHT, d as SYMBOL_FAMILIES, e as SYMBOL_FAMILY_META, f as SymbolFamily, g as SymbolFamilyMeta, h as getColorTable, i as iconExpressionForFamily, p as parseSymbolFamily, r as resolveColor } from './symbol-families-D2Kx20HJ.js';
4
4
  import maplibregl from 'maplibre-gl';
5
5
  import { ExpressionSpecification } from '@maplibre/maplibre-gl-style-spec';
6
6
 
@@ -2821,6 +2821,52 @@ declare class InteractClient {
2821
2821
  attach(map: InteractMapLike, opts?: AttachOptions): Promise<InteractHandle>;
2822
2822
  }
2823
2823
 
2824
+ /**
2825
+ * Light arithmetic for the chart palettes: how much light a colour emits, and
2826
+ * how to dim a colour without changing its hue.
2827
+ *
2828
+ * Everything here works in LINEAR light (WCAG 2.x relative luminance, sRGB
2829
+ * primaries). That is the quantity a dark-adapted eye responds to, and it is
2830
+ * the one `sounding-legibility.test.ts` already measures soundings in. Scaling
2831
+ * the sRGB-ENCODED channels instead would dim dark colours far more than
2832
+ * bright ones and shift every hue it touched.
2833
+ *
2834
+ * The one derivation the palettes rely on, and the reason this file exists:
2835
+ * NIGHT's deeper sounding SNDG1 (#897350) is SNDG2 (#c8aa78) at 43% of its
2836
+ * linear light. `labels.ts` builds its NIGHT secondary text the same way, so
2837
+ * the two stay one family by construction rather than by two hand-typed hexes
2838
+ * that happen to agree.
2839
+ */
2840
+ /** WCAG 2.x relative luminance of a `#rrggbb` colour, 0 (black) to 1 (white). */
2841
+ declare function relativeLuminance(hex: string): number;
2842
+ /** WCAG 2.x contrast ratio between two `#rrggbb` colours, 1 to 21. */
2843
+ declare function contrastRatio(a: string, b: string): number;
2844
+ /**
2845
+ * The same hue at `factor` times its linear light. `factor` above 1 can clip a
2846
+ * channel, which shifts the hue; nothing in the palettes brightens, so callers
2847
+ * pass 0–1.
2848
+ */
2849
+ declare function scaleLinearLight(hex: string, factor: number): string;
2850
+ /**
2851
+ * `hex` dimmed, hue kept, until its luminance is at most `ceiling`. A colour
2852
+ * already at or under the ceiling comes back unchanged (lower-cased).
2853
+ */
2854
+ declare function capLuminance(hex: string, ceiling: number): string;
2855
+ /**
2856
+ * NIGHT's two ink levels, shared by every family's text and marks.
2857
+ *
2858
+ * `NIGHT_INK` S52_NIGHT.CHBLK — the palette's linework and navigation
2859
+ * text. The brightest thing NIGHT draws on purpose.
2860
+ * `NIGHT_MUTED_INK` that ink at 43% of its linear light, which is how
2861
+ * S52_NIGHT.SNDG1 (the deeper soundings) was derived.
2862
+ * Everything that orients rather than navigates is drawn
2863
+ * at or under this, and `night-luminance.test.ts` holds
2864
+ * every visible NIGHT colour to it unless an exemption
2865
+ * names a reason.
2866
+ */
2867
+ declare const NIGHT_INK: string;
2868
+ declare const NIGHT_MUTED_INK: string;
2869
+
2824
2870
  /** S-52 display categories – controls default visibility */
2825
2871
  type DisplayCategory = "BASE" | "STANDARD" | "OTHER" | "MARINERS" | "META";
2826
2872
  /** Mapbox GL layer type we'll use for this entry */
@@ -3225,7 +3271,7 @@ declare const PLACENAME_LAND_CLASSES: readonly string[];
3225
3271
  * (tier major, bbox area minor), so when space runs out the biggest names
3226
3272
  * survive. That ranking is the per-zoom density governor P4 asked for.
3227
3273
  */
3228
- declare function buildPlaceNameLayers(sourceId: string): maplibregl.LayerSpecification[];
3274
+ declare function buildPlaceNameLayers(sourceId: string, ct?: ColorTableName): maplibregl.LayerSpecification[];
3229
3275
 
3230
3276
  /**
3231
3277
  * Spatial grid-based feature decimation for performance at low zoom levels.
@@ -4088,12 +4134,40 @@ declare const CHRT_GLYPH_NAMES: ReadonlySet<string>;
4088
4134
  * (see module header); chosen for contrast on the CHRT day water ramp.
4089
4135
  */
4090
4136
  declare const CHRT_ATON_COLORS: Record<string, string>;
4137
+ /**
4138
+ * A house colour in `palette`. The table above is the DAY look; DUSK and NIGHT
4139
+ * are derived from it so the house family follows the palette the S-52 tables
4140
+ * set, the way every other family does through its colour tokens.
4141
+ *
4142
+ * ⚠ BEFORE THIS, THE HOUSE FAMILY HAD NO NIGHT AT ALL. Its tints were literal
4143
+ * hexes in the style and its fixed-palette glyphs were loaded once, with no
4144
+ * palette, so a NIGHT chart drew a #F8FAFC white mark (L 0.95) and a #FFC805
4145
+ * yellow one (L 0.63) beside S-52 fills at L 0.01–0.06.
4146
+ *
4147
+ * DUSK every colour no brighter than DUSK's own ink (S52_DUSK.CHBLK).
4148
+ * NIGHT every colour no brighter than the NIGHT muted ink (palette-light.ts),
4149
+ * hue kept — a red mark is still red, a green one green.
4150
+ * EXCEPT BLACK, which becomes the NIGHT ink, exactly as S-52's NIGHT
4151
+ * table turns CHBLK into its light linework colour. A black topmark
4152
+ * on black water is not a dim mark, it is no mark, and a cardinal
4153
+ * without its topmark has lost the one thing that says which side to
4154
+ * pass. The ink is also brighter than the capped yellow, which is
4155
+ * what keeps a cardinal's black and yellow bands apart at night.
4156
+ */
4157
+ declare function chrtHouseColor(dayHex: string, palette?: ColorTableName): string;
4158
+ /**
4159
+ * A house glyph's SVG with every literal colour moved to `palette`. Only the
4160
+ * fixed-palette glyphs need it (cardinals, isolated danger, safe water, the
4161
+ * capability badges, the world hatches); an SDF glyph's colour is a mask and
4162
+ * its paint is the style's `icon-color`.
4163
+ */
4164
+ declare function themeChrtGlyph(svg: string, palette?: ColorTableName): string;
4091
4165
  /** First-listed-colour-wins tint expression for SDF bodies. */
4092
- declare function chrtAtonTintExpression(): unknown[];
4166
+ declare function chrtAtonTintExpression(palette?: ColorTableName): unknown[];
4093
4167
  /** Lights tint: exact colour (incl. blue/orange — the house style renders
4094
4168
  * the encoded colour, unlike the S-52 three-bucket flares); colourless
4095
4169
  * lights read as white with the dark halo carrying contrast. */
4096
- declare function chrtLightTintExpression(): unknown[];
4170
+ declare function chrtLightTintExpression(palette?: ColorTableName): unknown[];
4097
4171
  /** Per-class house icon expressions. Classes not listed keep their S-52
4098
4172
  * icons (e.g. TOPMAR's minimal black shapes already fit the house look). */
4099
4173
  declare const CHRT_ICON_EXPRESSIONS: Record<string, () => string | unknown[]>;
@@ -4103,7 +4177,8 @@ declare const CHRT_ICON_EXPRESSIONS: Record<string, () => string | unknown[]>;
4103
4177
  * layers, and restore the house dash on the cable/pipeline family. Returns
4104
4178
  * the same style object (mutated).
4105
4179
  *
4106
- * @param palette Active colour table, used to resolve the house dash tokens.
4180
+ * @param palette Active colour table: resolves the house dash tokens and
4181
+ * moves the ATON/LIGHTS tints to that palette (`chrtHouseColor`).
4107
4182
  * Defaults to DAY so existing single-arg callers keep working.
4108
4183
  */
4109
4184
  declare function applyChrtSymbolSet(style: MapboxStyle, palette?: ColorTableName): MapboxStyle;
@@ -4204,36 +4279,6 @@ declare const S52_ATON_LOOKUPS: Record<string, AtonClassLookup>;
4204
4279
  */
4205
4280
  declare const S52_ATON_LOOKUPS_PAPER: Record<string, AtonClassLookup>;
4206
4281
 
4207
- /**
4208
- * The symbol-artwork families, as one shared vocabulary.
4209
- *
4210
- * `applyS101SymbolSet` / `applyChrtSymbolSet` / `applyRasterSymbolSet`
4211
- * switch a whole generated style document. Consumers that build layers
4212
- * class-by-class (the /map viewer's renderer) need the same decision at
4213
- * the level of a single class — that's `iconExpressionForFamily`, so the
4214
- * viewer and the Style API can never disagree about what a family means.
4215
- */
4216
- type SymbolFamily = "s52" | "s101" | "chrt" | "raster";
4217
- /** Every family, in presentation order. Mirrors the Style API's
4218
- * `?symbols=` values (SYMBOL_SET_PARAMS in the tile worker). */
4219
- declare const SYMBOL_FAMILIES: readonly SymbolFamily[];
4220
- interface SymbolFamilyMeta {
4221
- /** Short UI label. */
4222
- label: string;
4223
- /** One-line description of what the family is. */
4224
- description: string;
4225
- }
4226
- declare const SYMBOL_FAMILY_META: Record<SymbolFamily, SymbolFamilyMeta>;
4227
- /** Narrow an arbitrary string to a family, or null. Case-insensitive. */
4228
- declare function parseSymbolFamily(raw: string | null | undefined): SymbolFamily | null;
4229
- /**
4230
- * The icon-image expression for one S-57 class under a given family —
4231
- * the per-class equivalent of the `apply*SymbolSet` style rewrites.
4232
- * Classes a family doesn't restyle fall back to the S-52 expression,
4233
- * exactly as they do on a served style.
4234
- */
4235
- declare function iconExpressionForFamily(objectClass: string, family: SymbolFamily): string | unknown[];
4236
-
4237
4282
  /**
4238
4283
  * Spec-exact ATON + LIGHTS icon selection, compiled from the S-52 PresLib
4239
4284
  * lookup tables in `s52-aton-lookups-generated.ts` (P7b wave A1).
@@ -5279,4 +5324,4 @@ declare class Chrt {
5279
5324
  warmTiles(region?: string): Promise<TileTokenResponse>;
5280
5325
  }
5281
5326
 
5282
- export { ALL_NAV_AID_LAYERS, ALL_WATER_BODY_LAYERS, AREA_QUERY_LAYERS, ATON_EXPRESSION_CLASSES, type AheadCoverageCell, type AheadFeatureProperties, type AheadOptions, type AheadResponse, type AlongRouteFeatureProperties, type AlongRouteOptions, type AlongRouteResponse, type AreaInspectResult, type AtlasStyle, type AttachOptions, BAND_CODE_ALIASES, BAND_DRAW_ORDER, BAND_PRIORITY_RANGES, BASE_ATTRIBUTION, BASE_BUNDLE_ATTRIBUTION, BASE_BUNDLE_ID, BASE_BUNDLE_MAXZOOM, BASE_BUNDLE_SCHEMA, BASE_BUNDLE_SOURCE_LAYERS, BASE_CLIENT_RASTER_BEFORE_ID, BASE_MAXZOOM, BASE_MINZOOM, BASE_REGION, type BBox, BRIDGE_QUERY_LAYERS, BUILD_MAXZOOM, BUILD_MINZOOM, BUILD_PARAM, type BandCode, type BandPriorityRange, type BridgeInspectResult, type BuildOfflineStyleOptions, type BuildSourcesOptions, CHART_BAND_CODES, CHART_CASCADE_CODES, CHART_SECTIONS, CHRTRASTER_REF_CROPS, CHRTRASTER_SVGS, CHRT_ATON_COLORS, CHRT_GLYPH_NAMES, CHRT_GLYPH_SVGS, CHRT_ICON_EXPRESSIONS, CHRT_ICON_PREFIX, CHRT_SDF_GLYPHS, CHRT_STYLE_MODES, type CandidateQueryOptions, type CandidatesEventContext, type CellDeletedEvent, type CellDetail, type CellEventData, type CellNewEvent, type CellUpdatedData, type CellUpdatedEvent, type CellsOptions, type CellsResponse, type ChartSection, Chrt, type ChrtConfig, ChrtError, type ChrtStyleMode, type ChrtStyleOptions, type ChrtStyleTheme, type ChrtSymbolSet, type ClickAnchor, ColorTableName, type CoverageOptions, type CoverageResponse, type CoverageRouteCell, type CoverageRouteOptions, type CoverageRouteResponse, type CoverageSource, type CustomStyleConfig, DEFAULT_CLICK_TOLERANCE, DEFAULT_CUSTOM_STYLE_CONFIG, DEFAULT_INSPECT_CLASS_RANK, DEFAULT_LABEL_SETTINGS, DEFAULT_NAV_AID_SETTINGS, DEFAULT_REGION, DEFAULT_SAFETY_CONTOUR_M, DEFAULT_SOUNDING_SETTINGS, DEFAULT_TILE_BASE_URL, DEFAULT_TILE_REGION, DEFAULT_WATER_BODY_SETTINGS, DRAPEABLE_LAYER_TYPES, type DecodedAreaFeature, type DecodedBridge, type DecodedNavAid, type DecodedProperty, type DisplayCategory, type DisplayMode, type FeatureCollection, type FeaturesOptions, type FetchStyleOptions, FileSystemAdapter, type FlashPattern, type FlashPhase, type GenerateCustomStyleOptions, type GeneratedCustomStyle, type GeoJsonFeature, type GeoJsonGeometry, type GeomType, INSPECT_CLASS_RANK, INSPECT_RANK_DEVIATIONS, type InspectCandidate, type InspectCandidateSet, type InspectEnrichment, type InspectEventContext, type InspectNotice, type InspectOptions, type InspectResult, type InspectTargetClass, type InspectableFeature, InteractClient, type InteractEntitlement, InteractError, type InteractErrorCode, type InteractHandle, type InteractMapLike, type InteractMapMouseEvent, LABELED_LAYERS, LABEL_BEHAVIOR, LABEL_LAYER_GROUPS, LABEL_PRIORITY, LAMP_CORE_LAYER_ID, LAMP_GLOW_LAYER_ID, LAMP_LAYER_IDS, LAMP_TICK_MS, LAND_ATTRIBUTION, LAND_BUILD_MAXZOOM, LAND_REGION, type LabelBehavior, type LabelConfigOptions, type LabelLayerConfig, type LabelSettings, type LampLayer, type LookupEntry, type MapLibreStyle, type MapboxStyle, type MapboxVectorSource, type MarineAlert, type MarineAlertsOptions, type MarineAlertsResponse, type MarineConditionsObservation, type MarineConditionsOptions, type MarineConditionsResponse, type MarineConditionsSeries, type MarineForecastOptions, type MarineForecastPeriod, type MarineForecastResponse, type MarineSeas, type MarineStation, type MarineSwellTrain, type MarineWind, type MarineZoneRef, NAUTICAL_SYMBOLS, NAV_AID_LAYER_GROUPS, NAV_AID_QUERY_LAYERS, NON_SOLAS_DISCLAIMER, NON_SOLAS_DISCLAIMER_SHORT, type NauticalCategory, type NauticalSymbol, type NavAidInspectResult, type NavAidSettings, type NearbyMarineStation, type OfflineBundleResponse, type OfflineDownloadOptions, type OfflineDownloadProgress, type OfflineDownloadResult, OfflineError, type OfflineErrorCode, type OfflineFetchStyleOptions, type OfflineHeartbeatOptions, type OfflineRegionSummary, type OfflineRemoveOptions, OfflineStyleError, type OfflineStylePlatform, type OfflineStyleResponse, PLACENAME_LAND_CLASSES, PLACENAME_SOURCE_LAYER, PLACENAME_WATER_CLASSES, type ParsedSigseqTerms, type PmtilesVectorSource, type Poi, type PoiCoverage, type PoiDataset, type PoiOptions, type PoiResponse, type QueryFeatureProperties, type QueryOptions, type QueryResponse, RASTER_ATON_CLASSES, RASTER_GLYPH_NAMES, RASTER_ICON_PREFIX, RELIEF_ATTRIBUTION, RELIEF_ENCODING, RELIEF_REGION, RELIEF_TILE_SIZE, type ResolvedStyle, type ResolvedTheme, type S101ArtworkProvenance, type S101Feature, S101_AREA_FILL_NAMES, S101_CHART_SECTIONS, S101_FEATURES, S101_ICON_PREFIX, S101_LINE_STYLE_NAMES, S101_NEW_SYMBOLS, S101_NO_OFFICIAL_COUNTERPART, S101_SOURCE_COMMIT, S101_SYMBOL_GROUPS, S101_SYMBOL_NAMES, S52_ATON_LOOKUPS, S52_ATON_LOOKUPS_PAPER, S52_DRAW_ORDER, S52_LOOKUP, S52_PATTERN_SPRITE_PREFIX, SIGPER_TOLERANCE_SECONDS, SIGSEQ_MAX_TERMS, SOUNDING_LAYERS, SYMBOL_FAMILIES, SYMBOL_FAMILY_META, SYMBOL_GROUPS, SYMBOL_MAP, type ScaleBand, type SearchCoverageNotice, type SearchHit, type SearchOptions, type SearchResponse, type SectorArcFeature, type SectorArcFeatureCollection, type SectorInfo, type SigseqRefusal, type SigseqTerm, type SoundingSettings, type SourceMode, type StyleGeneratorOptions, type StyleLayer, type StyleUrlOptions, type SymbolFamily, type SymbolFamilyMeta, type SymbolGroup, TileAuth, type TileGroup, type TileGroupsResponse, TileTokenError, type TileTokenErrorCode, type TileTokenResponse, type TransformRequest, type TransformedRequest, type VectorSourceSpec, type VesselProfile, WATER_BODY_LAYER_GROUPS, type WaterBodySettings, WeatherEndpoint, type WeatherReading, type WebhookEvent, type WebhookEventType, type WebhookPayload, applyBaseBundle, applyChrtSymbolSet, applyColorTheme, applyCustomStyleSettings, applyRasterSymbolSet, applyS101SymbolSet, atonIconExpression, bandFilterExpression, buildAirportTierExpression, buildBuiltUpAreaTierExpression, buildFlashPattern, buildLabelLayer, buildLakeTierExpression, buildLampLayers, buildLandAreaTierExpression, buildLandRegionTierExpression, buildLayersForClass, buildOfflineStyle, buildPlaceNameLayers, buildRiverTierExpression, buildSeaAreaTierExpression, buildSectorArcGeoJSON, buildSectorArcsFC, buildSectorsFromFeatures, buildSources, candidateRank, cellBandCharacters, cellBandMatch, chrtAtonTintExpression, chrtLightTintExpression, collectCandidates, collectClickCandidates, combineWithBandFilter, daymarkColor, decimateFeatures, decodeAreaFeatureProps, decodeBridgeProps, decodeCandidate, decodeNavAidProps, depareColor, depareFillExpression, deriveMarinerName, drapeHalves, drapedFirst, extractNavAidDesignation, featureIdentity, generateCustomStyle, generateSpriteManifest, generateSpriteSheet, generateStyle, generateStyleJSON, getAvailableLineSymbols, getAvailablePatterns, getAvailablePointSymbols, getCollisionSettings, getDrawPriority, getGridSizeForZoom, getIconExpression, getLabelBehavior, getLabelConfig, getLabelPriority, getLookupEntry, getMaxCellsForZoom, getOrderedClasses, getRasterSvg, getS52SvgString, getS52SymbolStats, getStyleStats, getSymbolSvgString, getThemedS101Svg, getThemedS52Svg, getTopmarkMeaning, hazardColor, hazardFillExpression, iconExpressionForFamily, isDrapeable, isLabelLayerVisible, isNavAidLayer, isNavAidLayerVisible, isSoundingLayerVisible, isVisibleInMode, isWaterBodyLayerVisible, labelSortKey, lampRhythmColour, lampRhythmOpacity, lateralColor, lateralFillExpression, lightColor, lightFillExpression, lightsIconExpression, normalizeStyleMode, normalizeTheme, paginate, parseListCodes, parseSigseqTerms, parseSymbolFamily, parseWebhook, patternSpriteId, preprocessLights, preprocessNavAids, preprocessSoundings, preprocessWaterBodies, rasterAtonIconExpression, resolveCustomTheme, resolveRasterImage, resolveS101Color, resolveStyle, resolveTargetClass, rhythmProperties, s101ArtworkProvenance, sanitizeCustomStyleConfig, scaleSizeValue, scaminToMinZoom, sectorLimitToArcBearing, styleModeBand, terrainStackCount, tileTemplate, uncoveredSectorArcs, withinBboxFilter, worldMinusBboxPolygon };
5327
+ export { ALL_NAV_AID_LAYERS, ALL_WATER_BODY_LAYERS, AREA_QUERY_LAYERS, ATON_EXPRESSION_CLASSES, type AheadCoverageCell, type AheadFeatureProperties, type AheadOptions, type AheadResponse, type AlongRouteFeatureProperties, type AlongRouteOptions, type AlongRouteResponse, type AreaInspectResult, type AtlasStyle, type AttachOptions, BAND_CODE_ALIASES, BAND_DRAW_ORDER, BAND_PRIORITY_RANGES, BASE_ATTRIBUTION, BASE_BUNDLE_ATTRIBUTION, BASE_BUNDLE_ID, BASE_BUNDLE_MAXZOOM, BASE_BUNDLE_SCHEMA, BASE_BUNDLE_SOURCE_LAYERS, BASE_CLIENT_RASTER_BEFORE_ID, BASE_MAXZOOM, BASE_MINZOOM, BASE_REGION, type BBox, BRIDGE_QUERY_LAYERS, BUILD_MAXZOOM, BUILD_MINZOOM, BUILD_PARAM, type BandCode, type BandPriorityRange, type BridgeInspectResult, type BuildOfflineStyleOptions, type BuildSourcesOptions, CHART_BAND_CODES, CHART_CASCADE_CODES, CHART_SECTIONS, CHRTRASTER_REF_CROPS, CHRTRASTER_SVGS, CHRT_ATON_COLORS, CHRT_GLYPH_NAMES, CHRT_GLYPH_SVGS, CHRT_ICON_EXPRESSIONS, CHRT_ICON_PREFIX, CHRT_SDF_GLYPHS, CHRT_STYLE_MODES, type CandidateQueryOptions, type CandidatesEventContext, type CellDeletedEvent, type CellDetail, type CellEventData, type CellNewEvent, type CellUpdatedData, type CellUpdatedEvent, type CellsOptions, type CellsResponse, type ChartSection, Chrt, type ChrtConfig, ChrtError, type ChrtStyleMode, type ChrtStyleOptions, type ChrtStyleTheme, type ChrtSymbolSet, type ClickAnchor, ColorTableName, type CoverageOptions, type CoverageResponse, type CoverageRouteCell, type CoverageRouteOptions, type CoverageRouteResponse, type CoverageSource, type CustomStyleConfig, DEFAULT_CLICK_TOLERANCE, DEFAULT_CUSTOM_STYLE_CONFIG, DEFAULT_INSPECT_CLASS_RANK, DEFAULT_LABEL_SETTINGS, DEFAULT_NAV_AID_SETTINGS, DEFAULT_REGION, DEFAULT_SAFETY_CONTOUR_M, DEFAULT_SOUNDING_SETTINGS, DEFAULT_TILE_BASE_URL, DEFAULT_TILE_REGION, DEFAULT_WATER_BODY_SETTINGS, DRAPEABLE_LAYER_TYPES, type DecodedAreaFeature, type DecodedBridge, type DecodedNavAid, type DecodedProperty, type DisplayCategory, type DisplayMode, type FeatureCollection, type FeaturesOptions, type FetchStyleOptions, FileSystemAdapter, type FlashPattern, type FlashPhase, type GenerateCustomStyleOptions, type GeneratedCustomStyle, type GeoJsonFeature, type GeoJsonGeometry, type GeomType, INSPECT_CLASS_RANK, INSPECT_RANK_DEVIATIONS, type InspectCandidate, type InspectCandidateSet, type InspectEnrichment, type InspectEventContext, type InspectNotice, type InspectOptions, type InspectResult, type InspectTargetClass, type InspectableFeature, InteractClient, type InteractEntitlement, InteractError, type InteractErrorCode, type InteractHandle, type InteractMapLike, type InteractMapMouseEvent, LABELED_LAYERS, LABEL_BEHAVIOR, LABEL_LAYER_GROUPS, LABEL_PRIORITY, LAMP_CORE_LAYER_ID, LAMP_GLOW_LAYER_ID, LAMP_LAYER_IDS, LAMP_TICK_MS, LAND_ATTRIBUTION, LAND_BUILD_MAXZOOM, LAND_REGION, type LabelBehavior, type LabelConfigOptions, type LabelLayerConfig, type LabelSettings, type LampLayer, type LookupEntry, type MapLibreStyle, type MapboxStyle, type MapboxVectorSource, type MarineAlert, type MarineAlertsOptions, type MarineAlertsResponse, type MarineConditionsObservation, type MarineConditionsOptions, type MarineConditionsResponse, type MarineConditionsSeries, type MarineForecastOptions, type MarineForecastPeriod, type MarineForecastResponse, type MarineSeas, type MarineStation, type MarineSwellTrain, type MarineWind, type MarineZoneRef, NAUTICAL_SYMBOLS, NAV_AID_LAYER_GROUPS, NAV_AID_QUERY_LAYERS, NIGHT_INK, NIGHT_MUTED_INK, NON_SOLAS_DISCLAIMER, NON_SOLAS_DISCLAIMER_SHORT, type NauticalCategory, type NauticalSymbol, type NavAidInspectResult, type NavAidSettings, type NearbyMarineStation, type OfflineBundleResponse, type OfflineDownloadOptions, type OfflineDownloadProgress, type OfflineDownloadResult, OfflineError, type OfflineErrorCode, type OfflineFetchStyleOptions, type OfflineHeartbeatOptions, type OfflineRegionSummary, type OfflineRemoveOptions, OfflineStyleError, type OfflineStylePlatform, type OfflineStyleResponse, PLACENAME_LAND_CLASSES, PLACENAME_SOURCE_LAYER, PLACENAME_WATER_CLASSES, type ParsedSigseqTerms, type PmtilesVectorSource, type Poi, type PoiCoverage, type PoiDataset, type PoiOptions, type PoiResponse, type QueryFeatureProperties, type QueryOptions, type QueryResponse, RASTER_ATON_CLASSES, RASTER_GLYPH_NAMES, RASTER_ICON_PREFIX, RELIEF_ATTRIBUTION, RELIEF_ENCODING, RELIEF_REGION, RELIEF_TILE_SIZE, type ResolvedStyle, type ResolvedTheme, type S101ArtworkProvenance, type S101Feature, S101_AREA_FILL_NAMES, S101_CHART_SECTIONS, S101_FEATURES, S101_ICON_PREFIX, S101_LINE_STYLE_NAMES, S101_NEW_SYMBOLS, S101_NO_OFFICIAL_COUNTERPART, S101_SOURCE_COMMIT, S101_SYMBOL_GROUPS, S101_SYMBOL_NAMES, S52_ATON_LOOKUPS, S52_ATON_LOOKUPS_PAPER, S52_DRAW_ORDER, S52_LOOKUP, S52_PATTERN_SPRITE_PREFIX, SIGPER_TOLERANCE_SECONDS, SIGSEQ_MAX_TERMS, SOUNDING_LAYERS, SYMBOL_GROUPS, SYMBOL_MAP, type ScaleBand, type SearchCoverageNotice, type SearchHit, type SearchOptions, type SearchResponse, type SectorArcFeature, type SectorArcFeatureCollection, type SectorInfo, type SigseqRefusal, type SigseqTerm, type SoundingSettings, type SourceMode, type StyleGeneratorOptions, type StyleLayer, type StyleUrlOptions, type SymbolGroup, TileAuth, type TileGroup, type TileGroupsResponse, TileTokenError, type TileTokenErrorCode, type TileTokenResponse, type TransformRequest, type TransformedRequest, type VectorSourceSpec, type VesselProfile, WATER_BODY_LAYER_GROUPS, type WaterBodySettings, WeatherEndpoint, type WeatherReading, type WebhookEvent, type WebhookEventType, type WebhookPayload, applyBaseBundle, applyChrtSymbolSet, applyColorTheme, applyCustomStyleSettings, applyRasterSymbolSet, applyS101SymbolSet, atonIconExpression, bandFilterExpression, buildAirportTierExpression, buildBuiltUpAreaTierExpression, buildFlashPattern, buildLabelLayer, buildLakeTierExpression, buildLampLayers, buildLandAreaTierExpression, buildLandRegionTierExpression, buildLayersForClass, buildOfflineStyle, buildPlaceNameLayers, buildRiverTierExpression, buildSeaAreaTierExpression, buildSectorArcGeoJSON, buildSectorArcsFC, buildSectorsFromFeatures, buildSources, candidateRank, capLuminance, cellBandCharacters, cellBandMatch, chrtAtonTintExpression, chrtHouseColor, chrtLightTintExpression, collectCandidates, collectClickCandidates, combineWithBandFilter, contrastRatio, daymarkColor, decimateFeatures, decodeAreaFeatureProps, decodeBridgeProps, decodeCandidate, decodeNavAidProps, depareColor, depareFillExpression, deriveMarinerName, drapeHalves, drapedFirst, extractNavAidDesignation, featureIdentity, generateCustomStyle, generateSpriteManifest, generateSpriteSheet, generateStyle, generateStyleJSON, getAvailableLineSymbols, getAvailablePatterns, getAvailablePointSymbols, getCollisionSettings, getDrawPriority, getGridSizeForZoom, getIconExpression, getLabelBehavior, getLabelConfig, getLabelPriority, getLookupEntry, getMaxCellsForZoom, getOrderedClasses, getRasterSvg, getS52SvgString, getS52SymbolStats, getStyleStats, getSymbolSvgString, getThemedS101Svg, getThemedS52Svg, getTopmarkMeaning, hazardColor, hazardFillExpression, isDrapeable, isLabelLayerVisible, isNavAidLayer, isNavAidLayerVisible, isSoundingLayerVisible, isVisibleInMode, isWaterBodyLayerVisible, labelSortKey, lampRhythmColour, lampRhythmOpacity, lateralColor, lateralFillExpression, lightColor, lightFillExpression, lightsIconExpression, normalizeStyleMode, normalizeTheme, paginate, parseListCodes, parseSigseqTerms, parseWebhook, patternSpriteId, preprocessLights, preprocessNavAids, preprocessSoundings, preprocessWaterBodies, rasterAtonIconExpression, relativeLuminance, resolveCustomTheme, resolveRasterImage, resolveS101Color, resolveStyle, resolveTargetClass, rhythmProperties, s101ArtworkProvenance, sanitizeCustomStyleConfig, scaleLinearLight, scaleSizeValue, scaminToMinZoom, sectorLimitToArcBearing, styleModeBand, terrainStackCount, themeChrtGlyph, tileTemplate, uncoveredSectorArcs, withinBboxFilter, worldMinusBboxPolygon };