# getDerivedPublicKey

Derives a public key based on a predecessor address and a derivation path.

## Usage

```ts twoslash
// [!include ~/snippets/code/solana/fee-delegation.ts]
const solanaChainSigContract = chainSigContract
// ---cut---
const publicKey = await solanaChainSigContract.getDerivedPublicKey({
  path: 'my_derivation_path',
  predecessor: '7yvgcBEf6TuXeD1s2XcPX7XM5faVerS4rydTE6McVAzX',
  keyVersion: 1,
})
```

## Parameters

| Parameter          | Type     | Description                           |
| ------------------ | -------- | ------------------------------------- |
| `args`             | `object` | Arguments for deriving the public key |
| `args.path`        | `string` | The derivation path to use            |
| `args.predecessor` | `string` | Address requesting the signature      |
| `args.keyVersion`  | `number` | The version of the MPC key to use     |

## Returns

| Type                              | Description                                    |
| --------------------------------- | ---------------------------------------------- |
| `Promise<UncompressedPubKeySEC1>` | Derived public key in SEC1 uncompressed format |
