# @integraledger/lcp/x402-upto-solana

> The exports of @integraledger/lcp/x402-upto-solana.

Source: https://lcp.integraledger.com/reference/api/x402-upto-solana

## Interfaces

### UptoSvmChoice

#### Properties

| Property             | Type                                                             |
| -------------------- | ---------------------------------------------------------------- |
|  `accepted`          | [`PaymentRequirements`](https://lcp.integraledger.com/reference/api/x402#paymentrequirements) |
|  `computeUnitLimit?` | `number`                                                         |
|  `computeUnitPrice?` | `bigint`                                                         |
|  `nonce`             | `bigint`                                                         |
|  `now`               | `number`                                                         |
|  `openSlot`          | `bigint`                                                         |
|  `payer`             | `string`                                                         |
|  `recentBlockhash`   | `string`                                                         |
|  `required`          | [`PaymentRequired`](https://lcp.integraledger.com/reference/api/x402#paymentrequired)         |
|  `tokenProgram`      | `string`                                                         |

***

### UptoSvmPayload

#### Properties

| Property            | Type     | Description                                        |
| ------------------- | -------- | -------------------------------------------------- |
|  `authorizedSigner` | `string` | -                                                  |
|  `channelId`        | `string` | -                                                  |
|  `deposit`          | `string` | -                                                  |
|  `expiresAt`        | `number` | -                                                  |
|  `from`             | `string` | -                                                  |
|  `maxAmount`        | `string` | -                                                  |
|  `nonce`            | `string` | -                                                  |
|  `openSlot`         | `number` | -                                                  |
|  `openTransaction`  | `string` | Base64 of the partially signed `open` transaction. |
|  `validAfter`       | `number` | -                                                  |

***

### UptoSvmPaymentPayload

#### Properties

| Property       | Type                                                             |
| -------------- | ---------------------------------------------------------------- |
|  `accepted`    | [`PaymentRequirements`](https://lcp.integraledger.com/reference/api/x402#paymentrequirements) |
|  `extensions?` | `object`                                                         |
|  `payload`     | [`UptoSvmPayload`](#uptosvmpayload)                              |
|  `resource?`   | `object`                                                         |
| `resource.url` | `string`                                                         |
|  `x402Version` | `2`                                                              |

## Variables

### uptoSvm

> `const` **uptoSvm**: `Readonly`\<\{ `advertise`: (`doc`, `h`, `link`, `offer`, `agreementUrl?`) => [`Refusal`](https://lcp.integraledger.com/reference/api#refusal) | [`PaymentRequired`](https://lcp.integraledger.com/reference/api/x402#paymentrequired); `bound`: (`presented`) => `Promise`\<`` `0x${string}` `` | [`Refusal`](https://lcp.integraledger.com/reference/api#refusal)>; `build`: (`c`, `h`) => `Promise`\<[`Refusal`](https://lcp.integraledger.com/reference/api#refusal) | [`SvmUnsigned`](https://lcp.integraledger.com/reference/api/x402-exact-solana#svmunsigned)\<[`UptoSvmPaymentPayload`](#uptosvmpaymentpayload)>>; `carrier`: `"extra.memo"`; `claims`: `true`; `id`: `"x402/upto/solana"`; `pattern`: [`LcpPattern`](https://lcp.integraledger.com/reference/api/x402#lcppattern); `read`: (`doc`) => [`Refusal`](https://lcp.integraledger.com/reference/api#refusal) | [`X402Read`](https://lcp.integraledger.com/reference/api/x402#x402read); `recover`: (`ref`, `reader`) => `Promise`\<`` `0x${string}` `` | [`Refusal`](https://lcp.integraledger.com/reference/api#refusal)>; `reference`: (`presented`) => `Promise`\<[`Refusal`](https://lcp.integraledger.com/reference/api#refusal) | `Omit`\<[`SvmRef`](https://lcp.integraledger.com/reference/api/svm#svmref), `"fromSlot"`>>; `status`: (`ref`, `reader`) => `Promise`\<[`ChannelStatus`](https://lcp.integraledger.com/reference/api/svm#channelstatus)>; `tie`: (`accepts`, `request`) => \[`"x402"`, \{ `accepts`: readonly [`PaymentRequirements`](https://lcp.integraledger.com/reference/api/x402#paymentrequirements)\[]; `request`: [`RequestCommitment`](https://lcp.integraledger.com/reference/api/x402#requestcommitment); }]; `unplaced`: (`option`) => [`PaymentRequirements`](https://lcp.integraledger.com/reference/api/x402#paymentrequirements); }>

## Functions

### pairingOf()

> **pairingOf**(`option`): `"x402/upto/solana"` | `undefined`

This pairing's id for an option it can pay, or undefined.

#### Parameters

| Parameter | Type                                                             |
| --------- | ---------------------------------------------------------------- |
| `option`  | [`PaymentRequirements`](https://lcp.integraledger.com/reference/api/x402#paymentrequirements) |

#### Returns

`"x402/upto/solana"` | `undefined`
