> For the complete documentation index, see [llms.txt](https://docs.nucleusearn.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.nucleusearn.io/nucleus-architecture/smart-contracts/contracts/interfaces/istaking/iuserwithdrawmanager.md).

# IUserWithdrawManager

[Git Source](https://github.com/Ion-Protocol/nucleus-boring-vault/blob/cc0b494b83e17b9b169a73b96050d2810b690477/src/interfaces/IStaking.sol)

## Functions

### requestWithdraw

```solidity
function requestWithdraw(uint256 _ethXAmount, address _owner) external returns (uint256);
```

### claim

```solidity
function claim(uint256 _requestId) external;
```

### userWithdrawRequests

```solidity
function userWithdrawRequests(uint256) external view returns (WithdrawRequest memory);
```

### finalizeUserWithdrawalRequest

```solidity
function finalizeUserWithdrawalRequest() external;
```

## Structs

### WithdrawRequest

```solidity
struct WithdrawRequest {
    address owner;
    uint256 ethXAmount;
    uint256 ethExpected;
    uint256 ethFinalized;
    uint256 requestTime;
}
```
