Interface HonuaServerFeatureChangeEnvelope<TFeature>

Shape of the envelope honua-server writes to the /api/v1/streaming/features SSE stream. Each envelope carries the service / layer scope, ordering metadata, and one or more feature changes.

interface HonuaServerFeatureChangeEnvelope<TFeature> {
    attributes?: Readonly<Record<string, unknown>>;
    changes?: readonly HonuaServerFeatureChange<TFeature>[];
    cursor?: string;
    deltaToken?: string;
    eventId?: string;
    feature?: TFeature;
    featureId?: FeatureId;
    geometry?: unknown;
    kind?: string;
    layerId?: string | number;
    objectId?: FeatureId;
    op?:
        | "delete"
        | "snapshot"
        | "update"
        | "insert";
    operation?: "delete" | "update" | "insert";
    sequence?: number;
    serviceId?: string;
    sourceId?: string;
    timestamp?: string;
    type?: string;
    updatedAt?: string;
    version?: number;
    watermark?: string;
}

Type Parameters

  • TFeature = unknown

Properties

attributes?: Readonly<Record<string, unknown>>

Current honua-server full attribute snapshot for insert/update events.

changes?: readonly HonuaServerFeatureChange<TFeature>[]
cursor?: string
deltaToken?: string
eventId?: string
feature?: TFeature
featureId?: FeatureId
geometry?: unknown

Current honua-server GeoJSON geometry field.

kind?: string

change (or feature-change) is the default envelope kind.

layerId?: string | number
objectId?: FeatureId
op?:
    | "delete"
    | "snapshot"
    | "update"
    | "insert"

Single-change envelopes inline the change instead of a changes array.

operation?: "delete" | "update" | "insert"

Current honua-server wire field; normalized to HonuaServerFeatureChange.op.

sequence?: number
serviceId?: string
sourceId?: string
timestamp?: string
type?: string

Pass-through status / heartbeat / error envelopes.

updatedAt?: string
version?: number
watermark?: string