# Type alias LayoutItemToType<Item>

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

- #### Item extends layout.LayoutItem

- Defined in core/base/src/utils/layout/layout.ts:171

Generated using TypeDoc