> ## Documentation Index
> Fetch the complete documentation index at: https://docs.genlabs.co/llms.txt
> Use this file to discover all available pages before exploring further.

# AbiVariant

Defined in: [metacomputer/gen-framework/client-and-test-utils/client-sdk-ts/packages/client-sdk/src/rpc-types/types.ts:493](https://github.com/gen-bc/gen/blob/main/metacomputer/gen-framework/client-and-test-utils/client-sdk-ts/packages/client-sdk/src/rpc-types/types.ts#L493)

Physical representation of a single enum variant.

The wire-format discriminant is derived from the variant's position in the parent variants array (0, 1, 2, ...). This matches Borsh's default serialization, which writes the variant index as a u8 byte.

## Properties

### docs?

> `optional` **docs?**: `string`\[]

Defined in: [metacomputer/gen-framework/client-and-test-utils/client-sdk-ts/packages/client-sdk/src/rpc-types/types.ts:497](https://github.com/gen-bc/gen/blob/main/metacomputer/gen-framework/client-and-test-utils/client-sdk-ts/packages/client-sdk/src/rpc-types/types.ts#L497)

Doc comments captured from source

***

### fields?

> `optional` **fields?**: [`AbiVariantFields`](/reference/sdk/typescript/index/type-aliases/AbiVariantFields) | `null`

Defined in: [metacomputer/gen-framework/client-and-test-utils/client-sdk-ts/packages/client-sdk/src/rpc-types/types.ts:501](https://github.com/gen-bc/gen/blob/main/metacomputer/gen-framework/client-and-test-utils/client-sdk-ts/packages/client-sdk/src/rpc-types/types.ts#L501)

Optional tuple or named fields encoded alongside the discriminant.

***

### name

> **name**: [`VariantName`](/reference/sdk/typescript/index/type-aliases/VariantName)

Defined in: [metacomputer/gen-framework/client-and-test-utils/client-sdk-ts/packages/client-sdk/src/rpc-types/types.ts:505](https://github.com/gen-bc/gen/blob/main/metacomputer/gen-framework/client-and-test-utils/client-sdk-ts/packages/client-sdk/src/rpc-types/types.ts#L505)

Variant identifier
