Marmot-TS
    Preparing search index...

    Type Alias MarmotGroupEvents<THistory, TMedia>

    Map of events that can be emitted by a MarmotGroup

    type MarmotGroupEvents<
        THistory extends BaseGroupHistory
        | undefined = any,
        TMedia extends BaseGroupMedia | undefined = any,
    > = {
        applicationMessage: (message: Uint8Array) => void;
        destroyed: (group: MarmotGroup<THistory, TMedia>) => void;
        historyChanged: (group: MarmotGroup<THistory, TMedia>) => void;
        historyError: (error: Error) => void;
        removed: (group: MarmotGroup<THistory, TMedia>) => void;
        stateChanged: (state: ClientState) => void;
        stateSaved: (group: MarmotGroup<THistory, TMedia>) => void;
    }

    Type Parameters

    Index

    Client - Group

    applicationMessage: (message: Uint8Array) => void

    Emitted when a new application message is received

    destroyed: (group: MarmotGroup<THistory, TMedia>) => void

    Emitted when the group is destroyed

    historyChanged: (group: MarmotGroup<THistory, TMedia>) => void

    Emitted when the fork-history tree grew during ingest — a new commit or a newly observed fork branch. Fires even when the canonical state is unchanged (a superseded fork still adds nodes). Read forkTreeView to re-render.

    historyError: (error: Error) => void

    Emitted when history persistence fails (best-effort, non-blocking)

    removed: (group: MarmotGroup<THistory, TMedia>) => void

    Emitted when an inbound commit removed this member from the group — an admin's involuntary Remove, or a peer committing this member's own self_remove. Local state is kept as a removedFromGroup tombstone (it is persisted, but the group can no longer send or decrypt); the application decides when to call MarmotGroup.destroy to purge it.

    stateChanged: (state: ClientState) => void

    Emitted when the group state is updated

    stateSaved: (group: MarmotGroup<THistory, TMedia>) => void

    Emitted when the group state is saved