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

# Signer

<Note>
  **This page has been updated for Wallets SDK V1.** If you are using the previous version,
  see the [previous version docs](/wallets/v0/overview) or the [V1 migration guide](/wallets/guides/migrate-to-v1).
</Note>

> **Signer** = \{ `id`: `string`; `locator`: `string`; `name`: `string`; `publicKey`: \{ `x`: `string`; `y`: `string`; }; `status`: [`SignerStatus`](./SignerStatus); `type`: `"passkey"`; `validatorContractVersion`: `string`; } | \{ `address`: `string`; `locator`: `string`; `status`: [`SignerStatus`](./SignerStatus); `type`: `"api-key"`; } | \{ `address`: `string`; `locator`: `string`; `status`: [`SignerStatus`](./SignerStatus); `type`: `"external-wallet"`; } | \{ `address`: `string`; `email`: `string`; `locator`: `string`; `status`: [`SignerStatus`](./SignerStatus); `type`: `"email"`; } | \{ `address`: `string`; `locator`: `string`; `phone`: `string`; `status`: [`SignerStatus`](./SignerStatus); `type`: `"phone"`; } | \{ `locator`: `string`; `publicKey`: \{ `x`: `string`; `y`: `string`; }; `status`: [`SignerStatus`](./SignerStatus); `type`: `"device"`; } | \{ `address`: `string`; `locator`: `string`; `status`: [`SignerStatus`](./SignerStatus); `type`: `"server"`; }

Defined in: [packages/wallets/src/wallets/types.ts:121](https://github.com/Crossmint/crossmint-sdk/blob/main/packages/wallets/src/wallets/types.ts#L121)
