SoulFire TypeScript SDK 2.10.3
    Preparing search index...

    Type Alias ContainerLayout

    ContainerLayout: Message<"soulfire.v1.ContainerLayout"> & {
        bookPages: BookPage[];
        buttons: ContainerButton[];
        containerType: string;
        currentBookPage: number;
        regions: SlotRegion[];
        textInputs: ContainerTextInput[];
        title: string;
        totalSlots: number;
    }

    Complete layout description for an open container menu. Provides all information needed to render the container UI.

    Type Declaration

    • bookPages: BookPage[]

      Book pages for lectern containers. Contains all pages of the book on the lectern.

      from field: repeated soulfire.v1.BookPage book_pages = 7;

    • buttons: ContainerButton[]

      Available action buttons for this container. Present for: stonecutter (recipes), enchanting table (3 enchant options), loom (patterns), villager trading (trade offers), beacon (effects), etc.

      from field: repeated soulfire.v1.ContainerButton buttons = 4;

    • containerType: string

      Container type identifier for client-specific rendering. Values: "inventory", "chest", "dispenser", "hopper", "furnace", "crafting", "anvil", "enchanting", "brewing", "beacon", "shulker", "grindstone", "stonecutter", "loom", "cartography", "smithing", "merchant", "crafter", "lectern", "generic"

      from field: string container_type = 5;

    • currentBookPage: number

      Current page being displayed (for lectern). Zero-indexed into book_pages.

      from field: int32 current_book_page = 8;

    • regions: SlotRegion[]

      Ordered list of slot regions defining the container layout. Regions are listed in rendering order (typically container slots first, then player inventory).

      from field: repeated soulfire.v1.SlotRegion regions = 2;

    • textInputs: ContainerTextInput[]

      Text input fields available in this container. Currently only populated for anvil menus.

      from field: repeated soulfire.v1.ContainerTextInput text_inputs = 6;

    • title: string

      Container title/name displayed at the top. Examples: "Chest", "Crafting Table", "Inventory", custom container names.

      from field: string title = 1;

    • totalSlots: number

      Total number of slots in the container. Sum of all region slot_counts.

      from field: int32 total_slots = 3;

    from message soulfire.v1.ContainerLayout