> ## 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.

# AbiSelfStorageSchema

Defined in: [metacomputer/gen-framework/client-and-test-utils/client-sdk-ts/packages/client-sdk/src/rpc-types/types.ts:558](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#L558)

Self-storage schema for component struct serialization.

This schema describes the structure of a component's self-storage, allowing client code to deserialize the component's state from storage reads.

## Properties

### fields

> **fields**: [`AbiStructField`](/reference/sdk/typescript/index/interfaces/AbiStructField)\[]

Defined in: [metacomputer/gen-framework/client-and-test-utils/client-sdk-ts/packages/client-sdk/src/rpc-types/types.ts:562](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#L562)

Fields of the component struct in declaration order. Used for Borsh deserialization of the stored blob.

***

### key

> **key**: `string`

Defined in: [metacomputer/gen-framework/client-and-test-utils/client-sdk-ts/packages/client-sdk/src/rpc-types/types.ts:566](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#L566)

The storage key used for self-storage (human-readable string). At runtime, this is hashed with SHA256 to produce the actual storage key bytes.

***

### struct\_name

> **struct\_name**: `string`

Defined in: [metacomputer/gen-framework/client-and-test-utils/client-sdk-ts/packages/client-sdk/src/rpc-types/types.ts:570](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#L570)

The name of the component struct in the contract source code. Used to generate a matching struct name in client code for storage deserialization.
