# SmartAccountSigner | @aa-sdk/core

> A signer that can sign messages and typed data.

> For the complete documentation index, see [llms.txt](/docs/llms.txt).

{/* This file is auto-generated by TypeDoc. Do not edit manually. */}

Defined in: [aa-sdk/core/src/signer/types.ts:45](https://github.com/alchemyplatform/aa-sdk/blob/main/aa-sdk/core/src/signer/types.ts#L45)

A signer that can sign messages and typed data.

## Extended by

- [`SmartAccountAuthenticator`](SmartAccountAuthenticator)

## Type Parameters

<table>
  <thead>
    <tr>
      <th align="left">Type Parameter</th>
      <th align="left">Default type</th>
      <th align="left">Description</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        `Inner`
      </td>

      <td>
        `any`
      </td>

      <td>
        the generic type of the inner client that the signer wraps to provide functionality such as signing, etc.
      </td>
    </tr>

  </tbody>
</table>

## Properties

<table>
  <thead>
    <tr>
      <th align="left">Property</th>
      <th align="left">Type</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        <a id="getaddress" /> `getAddress`
      </td>

      <td>
        () => `Promise`\<`` `0x${string}` ``>
      </td>
    </tr>

    <tr>
      <td>
        <a id="inner-1" /> `inner`
      </td>

      <td>
        `Inner`
      </td>
    </tr>

    <tr>
      <td>
        <a id="signauthorization" /> `signAuthorization?`
      </td>

      <td>
        (`unsignedAuthorization`) => `Promise`\<[`SignedAuthorization`](https://viem.sh)\<`number`>>
      </td>
    </tr>

    <tr>
      <td>
        <a id="signertype" /> `signerType`
      </td>

      <td>
        `string`
      </td>
    </tr>

    <tr>
      <td>
        <a id="signmessage" /> `signMessage`
      </td>

      <td>
        (`message`) => `Promise`\<`` `0x${string}` ``>
      </td>
    </tr>

    <tr>
      <td>
        <a id="signtypeddata" /> `signTypedData`
      </td>

      <td>
        \<`TTypedData`, `TPrimaryType`>(`params`) => `Promise`\<`` `0x${string}` ``>
      </td>
    </tr>

  </tbody>
</table>