# IBonsaiswapV3FlashCallback

Any contract that calls IBonsaiswapV3PoolActions#flash must implement this interface

### Functions[​](https://docs.uniswap.org/contracts/v3/reference/core/interfaces/callback/IUniswapV3FlashCallback#functions) <a href="#functions" id="functions"></a>

#### bonsaiswapV3FlashCallback[​](https://docs.uniswap.org/contracts/v3/reference/core/interfaces/callback/IUniswapV3FlashCallback#uniswapv3flashcallback) <a href="#uniswapv3flashcallback" id="uniswapv3flashcallback"></a>

```
  function bonsaiswapV3FlashCallback(
    uint256 fee0,
    uint256 fee1,
    bytes data
  ) external
```

Called to `msg.sender` after transferring to the recipient from IBonsaiswapV3Pool#flash.

In the implementation you must repay the pool the tokens sent by flash plus the computed fee amounts. The caller of this method must be checked to be a BonsaiswapV3Pool deployed by the canonical BonsaiswapV3Factory.

**Parameters:**[**​**](https://docs.uniswap.org/contracts/v3/reference/core/interfaces/callback/IUniswapV3FlashCallback#parameters)

| Name   | Type    | Description                                                                       |
| ------ | ------- | --------------------------------------------------------------------------------- |
| `fee0` | uint256 | The fee amount in token0 due to the pool by the end of the flash                  |
| `fee1` | uint256 | The fee amount in token1 due to the pool by the end of the flash                  |
| `data` | bytes   | Any data passed through by the caller via the IBonsaiswapV3PoolActions#flash call |
