IFClite TypeScript API
    Preparing search index...

    Interface EffectiveChange

    One change as the overlay CURRENTLY stands, for getEffectiveChanges().

    Unlike a Mutation from mutationHistory (append-only — undo does not pop it, see MutablePropertyView.getMutations()), this is derived fresh from the live overlay maps every call, so it always agrees with hasPendingChanges() / getModifiedEntityCount() — including after an undo→redo cycle.

    interface EffectiveChange {
        deleted?: boolean;
        entityId: number;
        kind: EffectiveChangeKind;
        name?: string;
        newValue?: string;
        previousValue?: string;
        setName?: string;
    }
    Index
    deleted?: boolean

    true only for a kind: 'property' | 'quantity' row backed by a DELETE mutation (the property/quantity is actually removed on export). Undefined/false for every other row, including a SET whose value happens to stringify to undefined (a null value) — that row still carries a value, just an empty one, and must not render as deleted.

    entityId: number

    Entity EXPRESS ID the change applies to.

    What kind of overlay entry this is.

    name?: string

    Attribute / property / quantity name, where applicable.

    newValue?: string

    New value, stringified. Absent both for a DELETE-operation property/quantity AND for a SET whose stored value is null (null is a legitimate, present-but-empty value — e.g. an unset Boolean added from bSDD, issue #1107 — not an absence). deleted below is the only reliable signal for telling those two apart; do not infer "deleted" from newValue === undefined alone.

    previousValue?: string

    Previous value, stringified. Derived from the base data (property table / on-demand extractor / attribute extractor) — NEVER from mutationHistory — so it stays correct across undo→redo. Absent when the base value can't be resolved (e.g. no extractor registered, or the property/attribute did not exist before this session).

    setName?: string

    Pset/Qset name, for 'property' | 'quantity' | 'pset-added' | 'pset-deleted' | 'qset-added' | 'qset-deleted'.