LayoutItemToType<Item>: Item extends infer I extends layout.LayoutItem
    ? I extends layout.NumLayoutItem
        ? I["custom"] extends NumType
            ? I["custom"]
            : I["custom"] extends layout.CustomConversion<infer FromType extends NumType, infer ToType>
                ? ToType
                : I["custom"] extends layout.FixedConversion<infer FromType extends NumType, infer ToType>
                    ? ToType
                    : NumSizeToPrimitive<I["size"]>
        : I extends layout.BytesLayoutItem
            ? I["custom"] extends layout.CustomConversion<BytesType, infer ToType>
                ? ToType
                : I["custom"] extends layout.FixedConversion<BytesType, infer ToType>
                    ? ToType
                    : BytesType
            : I extends layout.ArrayLayoutItem
                ? readonly layout.LayoutToType<I["layout"]>[]
                : I extends layout.ObjectLayoutItem
                    ? layout.LayoutToType<I["layout"]>
                    : I extends SwitchLayoutItem
                        ? IdLayoutPairsToTypeUnion<I["layouts"], I["idTag"] extends string
                            ? I["idTag"]
                            : "id">
                        : never
    : never

Type Parameters

Generated using TypeDoc