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

# ContractRefError

> `const` **ContractRefError**: [`EnumFactories`](/reference/sdk/typescript/index/type-aliases/EnumFactories)\<`"ContractRefError"`, \{ `InstanceMismatch`: \{ `struct`: \{ `expected`: [`StructDefinition`](/reference/sdk/typescript/index/interfaces/StructDefinition)\<`"GvmContract"`, \{ `deployer`: [`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"EntityId"`, readonly \[[`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"H256"`, readonly \[...]>]>; `component_index`: [`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"GvmComponentIndex"`, readonly \[[`GenType`](/reference/sdk/typescript/index/interfaces/GenType)\<`number`, `"u32"`>]>; }>; `actual`: [`StructDefinition`](/reference/sdk/typescript/index/interfaces/StructDefinition)\<`"GvmContract"`, \{ `deployer`: [`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"EntityId"`, readonly \[[`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"H256"`, readonly \[...]>]>; `component_index`: [`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"GvmComponentIndex"`, readonly \[[`GenType`](/reference/sdk/typescript/index/interfaces/GenType)\<`number`, `"u32"`>]>; }>; }; }; `ImplementationMismatch`: \{ `struct`: \{ `expected`: [`StructDefinition`](/reference/sdk/typescript/index/interfaces/StructDefinition)\<`"GvmContractCodeId"`, \{ `pusher_entity`: [`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"EntityId"`, readonly \[[`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"H256"`, readonly \[...]>]>; `push_index`: [`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"GvmPushIndex"`, readonly \[[`GenType`](/reference/sdk/typescript/index/interfaces/GenType)\<`number`, `"u32"`>]>; }>; `actual`: [`StructDefinition`](/reference/sdk/typescript/index/interfaces/StructDefinition)\<`"GvmContractCodeId"`, \{ `pusher_entity`: [`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"EntityId"`, readonly \[[`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"H256"`, readonly \[...]>]>; `push_index`: [`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"GvmPushIndex"`, readonly \[[`GenType`](/reference/sdk/typescript/index/interfaces/GenType)\<`number`, `"u32"`>]>; }>; }; }; `ComponentTypeMismatch`: \{ `struct`: \{ `expected`: [`GenType`](/reference/sdk/typescript/index/interfaces/GenType)\<`number`, `"u32"`>; `actual`: [`GenType`](/reference/sdk/typescript/index/interfaces/GenType)\<`number`, `"u32"`>; }; }; }> & [`EnumDefinition`](/reference/sdk/typescript/index/interfaces/EnumDefinition)\<`"ContractRefError"`, \{ `InstanceMismatch`: \{ `struct`: \{ `expected`: [`StructDefinition`](/reference/sdk/typescript/index/interfaces/StructDefinition)\<`"GvmContract"`, \{ `deployer`: [`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"EntityId"`, readonly \[[`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"H256"`, readonly \[...]>]>; `component_index`: [`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"GvmComponentIndex"`, readonly \[[`GenType`](/reference/sdk/typescript/index/interfaces/GenType)\<`number`, `"u32"`>]>; }>; `actual`: [`StructDefinition`](/reference/sdk/typescript/index/interfaces/StructDefinition)\<`"GvmContract"`, \{ `deployer`: [`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"EntityId"`, readonly \[[`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"H256"`, readonly \[...]>]>; `component_index`: [`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"GvmComponentIndex"`, readonly \[[`GenType`](/reference/sdk/typescript/index/interfaces/GenType)\<`number`, `"u32"`>]>; }>; }; }; `ImplementationMismatch`: \{ `struct`: \{ `expected`: [`StructDefinition`](/reference/sdk/typescript/index/interfaces/StructDefinition)\<`"GvmContractCodeId"`, \{ `pusher_entity`: [`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"EntityId"`, readonly \[[`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"H256"`, readonly \[...]>]>; `push_index`: [`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"GvmPushIndex"`, readonly \[[`GenType`](/reference/sdk/typescript/index/interfaces/GenType)\<`number`, `"u32"`>]>; }>; `actual`: [`StructDefinition`](/reference/sdk/typescript/index/interfaces/StructDefinition)\<`"GvmContractCodeId"`, \{ `pusher_entity`: [`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"EntityId"`, readonly \[[`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"H256"`, readonly \[...]>]>; `push_index`: [`TupleDefinition`](/reference/sdk/typescript/index/interfaces/TupleDefinition)\<`"GvmPushIndex"`, readonly \[[`GenType`](/reference/sdk/typescript/index/interfaces/GenType)\<`number`, `"u32"`>]>; }>; }; }; `ComponentTypeMismatch`: \{ `struct`: \{ `expected`: [`GenType`](/reference/sdk/typescript/index/interfaces/GenType)\<`number`, `"u32"`>; `actual`: [`GenType`](/reference/sdk/typescript/index/interfaces/GenType)\<`number`, `"u32"`>; }; }; }>

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