Interface HonuaMapPackage

v1 MapPackage shape — mirrors the draft server type in /home/makani/honua-server/src/Honua.Core/Features/Geoprocessing/Domain/MapPackage.cs. Unknown fields are preserved through updatePackage round-trip so minor additive changes do not break runtime consumers.

interface HonuaMapPackage {
    boundArtifacts?: readonly string[];
    createdAt?: string;
    expiresAt?: string;
    format: "honua_map_package.v1";
    initialView?: HonuaMapPackageInitialView;
    labelBindings?: readonly HonuaMapPackageLabelBinding[];
    legend?: readonly HonuaMapPackageLegendEntry[];
    mapPackageId: string;
    mapSpec: HonuaStyleSpecification;
    popupBindings?: readonly HonuaMapPackagePopupBinding[];
    previewArtifactId?: string;
    sourceBindings: readonly HonuaMapPackageSourceBinding[];
    status?: HonuaMapPackageStatus;
    styleRefs?: readonly HonuaMapPackageStyleRef[];
    templateId?: string;
    theme?: HonuaMapPackageThemeSpec;
    themeId?: string;
    updatedAt?: string;
    [extra: string]: unknown;
}

Indexable

  • [extra: string]: unknown

    Preserve additive fields through round-trip without forcing a type bump.

Properties

boundArtifacts?: readonly string[]
createdAt?: string
expiresAt?: string

Optional server retention / hosting expiry timestamp.

format
labelBindings?: readonly HonuaMapPackageLabelBinding[]
legend?: readonly HonuaMapPackageLegendEntry[]
mapPackageId: string

MapLibre-compatible style document. The runtime composes style-ref overrides and theme tokens into this body before handing it to maplibre-gl.Map.setStyle.

popupBindings?: readonly HonuaMapPackagePopupBinding[]
previewArtifactId?: string
sourceBindings: readonly HonuaMapPackageSourceBinding[]
styleRefs?: readonly HonuaMapPackageStyleRef[]
templateId?: string

Optional inline theme body. Overrides out-of-band theme lookup.

themeId?: string
updatedAt?: string