IFClite TypeScript API
    Preparing search index...

    Interface StructuralExtractionView

    Optional live-session view used when structural data is queried in the viewer.

    interface StructuralExtractionView {
        readEntity?: (
            expressId: number,
            effectiveType: string,
            source?: RawEntity,
        ) => RawEntity | undefined;
        getNewEntities(): readonly { expressId: number; type: string }[];
        getNewEntitiesOfType?(
            type: string,
        ): Iterable<{ expressId: number; type: string }>;
        getNewEntity?(
            expressId: number,
        ): { attributes?: readonly unknown[]; type: string } | null;
        getTombstones?(): ReadonlySet<number>;
        getTypeMutations?(): ReadonlyMap<number, { newType: string }>;
        isDeleted(expressId: number): boolean;
    }

    Hierarchy (View Summary)

    Index
    readEntity?: (
        expressId: number,
        effectiveType: string,
        source?: RawEntity,
    ) => RawEntity | undefined

    Resolve the attributes for an effective entity. source is absent for a session-created entity. Callers can merge positional/named edits without making parser depend on the mutations package.

    • Overlay-created entities, in creation order, with their authored class.

      Returns readonly { expressId: number; type: string }[]

    • Created entities authored as one class, in creation order. Lets a single-class query skip the other created entities, which is what keeps per-element authoring linear (#5413). Absent: the full list is scanned.

      Parameters

      • type: string

      Returns Iterable<{ expressId: number; type: string }>

    • O(1) created-entity lookup. Absent (a plain-data snapshot): membership is built from getNewEntities.

      Parameters

      • expressId: number

      Returns { attributes?: readonly unknown[]; type: string } | null

    • Optional indexed tombstones let aggregate counts avoid a full source walk.

      Returns ReadonlySet<number>

    • Retype intents by express id. Absent means the overlay carries none.

      Returns ReadonlyMap<number, { newType: string }>

    • True for a deleted source entity and for a created-then-deleted one.

      Parameters

      • expressId: number

      Returns boolean