Skip to content

Commit 10cde65

Browse files
committed
arrakis uniV3 adapter contract draft-1
1 parent ce0add3 commit 10cde65

File tree

5 files changed

+340
-226
lines changed

5 files changed

+340
-226
lines changed
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
// SPDX-License-Identifier: GPL-3.0
2+
3+
/*
4+
Copyright 2020 Set Labs Inc.
5+
Licensed under the Apache License, Version 2.0 (the "License");
6+
you may not use this file except in compliance with the License.
7+
You may obtain a copy of the License at
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
Unless required by applicable law or agreed to in writing, software
10+
distributed under the License is distributed on an "AS IS" BASIS,
11+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
See the License for the specific language governing permissions and
13+
limitations under the License.
14+
SPDX-License-Identifier: Apache License, Version 2.0
15+
*/
16+
17+
pragma solidity 0.6.10;
18+
19+
import {IERC20} from "@openzeppelin/contracts/token/ERC20/SafeERC20.sol";
20+
21+
import {
22+
IUniswapV3Pool
23+
} from "@uniswap/v3-core/contracts/interfaces/IUniswapV3Pool.sol";
24+
25+
interface IGUniPool {
26+
function mint(uint256 mintAmount, address receiver)
27+
external
28+
returns (
29+
uint256 amount0,
30+
uint256 amount1,
31+
uint128 liquidityMinted
32+
);
33+
34+
function burn(uint256 burnAmount, address receiver)
35+
external
36+
returns (
37+
uint256 amount0,
38+
uint256 amount1,
39+
uint128 liquidityBurned
40+
);
41+
42+
function getMintAmounts(uint256 amount0Max, uint256 amount1Max)
43+
external
44+
view
45+
returns (
46+
uint256 amount0,
47+
uint256 amount1,
48+
uint256 mintAmount
49+
);
50+
51+
function getUnderlyingBalances()
52+
external
53+
view
54+
returns (uint256 amount0, uint256 amount1);
55+
56+
function getPositionID() external view returns (bytes32 positionID);
57+
58+
function token0() external view returns (IERC20);
59+
60+
function token1() external view returns (IERC20);
61+
62+
function upperTick() external view returns (int24);
63+
64+
function lowerTick() external view returns (int24);
65+
66+
function pool() external view returns (IUniswapV3Pool);
67+
68+
function totalSupply() external view returns (uint256);
69+
70+
function balanceOf(address account) external view returns (uint256);
71+
}

contracts/interfaces/external/IUniswapV3Factory.sol

Lines changed: 0 additions & 78 deletions
This file was deleted.

0 commit comments

Comments
 (0)