# PeripheryPaymentsExtended

### Functions <a href="#functions" id="functions"></a>

#### unwrapWSEI <a href="#unwrapwsei" id="unwrapwsei"></a>

Unwraps the contract's WSEI balance and sends it to msg.sender as SEI.

*The amountMinimum parameter prevents malicious contracts from stealing WSEI from users.*

```solidity
function unwrapWSEI(uint256 amountMinimum) external payable override;
```

**Parameters**

| Name            | Type      | Description                          |
| --------------- | --------- | ------------------------------------ |
| `amountMinimum` | `uint256` | The minimum amount of WSEI to unwrap |

#### wrapSEI <a href="#wrapsei" id="wrapsei"></a>

Wraps the contract's SEI balance into WSEI

*The resulting WSEI is custodied by the router, thus will require further distribution*

```solidity
function wrapSEI(uint256 value) external payable override;
```

**Parameters**

| Name    | Type      | Description               |
| ------- | --------- | ------------------------- |
| `value` | `uint256` | The amount of SEI to wrap |

#### sweepToken <a href="#sweeptoken" id="sweeptoken"></a>

Transfers the full amount of a token held by this contract to msg.sender

*The amountMinimum parameter prevents malicious contracts from stealing the token from users*

```solidity
function sweepToken(address token, uint256 amountMinimum) external payable override;
```

**Parameters**

| Name            | Type      | Description                                                               |
| --------------- | --------- | ------------------------------------------------------------------------- |
| `token`         | `address` | The contract address of the token which will be transferred to msg.sender |
| `amountMinimum` | `uint256` | The minimum amount of token required for a transfer                       |

#### pull <a href="#pull" id="pull"></a>

Transfers the specified amount of a token from the msg.sender to address(this)

```solidity
function pull(address token, uint256 value) external payable override;
```

**Parameters**

| Name    | Type      | Description       |
| ------- | --------- | ----------------- |
| `token` | `address` | The token to pull |
| `value` | `uint256` | The amount to pay |
