해당 컨트랙트는 ERC721 대체 불가능한 토큰 인터페이스의 KLAYswap V3 포지션을 wrapping합니다.
Events, Read-Only Functions, and State-Changing Functions
Events
IncreaseLiquidity
event IncreaseLiquidity(
uint256 indexed tokenId,
uint128 liquidity,
uint256 amount0,
uint256 amount1
);
포지션 NFT에 대한 유동성 증가 시 발생 또한 토큰이 발행될 때 방출됩니다.
Parameters:
Name | Type | Description |
---|
| | The ID of the token for which liquidity was increased |
| | The amount by which liquidity for the NFT position was increased |
| | The amount of token0 that was paid for the increase in liquidity |
| | The amount of token1 that was paid for the increase in liquidity |
DecreaseLiquidity
event DecreaseLiquidity(
uint256 indexed tokenId,
uint128 liquidity,
uint256 amount0,
uint256 amount1
);
포지션 NFT에 대한 유동성 감소 시 발생
Parameters:
Name | Type | Description |
---|
| | The ID of the token for which liquidity was decreased |
| | The amount by which liquidity for the NFT position was decreased |
| | The amount of token0 that was accounted for the decrease in liquidity |
| | The amount of token1 that was accounted for the decrease in liquidity |
Collect
event Collect(
uint256 indexed tokenId,
address recipient,
uint256 amount0,
uint256 amount1,
uint256 reward
);
포지션 NFT에 대한 토큰이 수집될 때 발생합니다.
보고된 금액은 반올림 동작으로 인해 이체된 금액과 정확히 일치하지 않을 수 있습니다.
Parameters:
Parameter Structs
struct MintParams {
address token0;
address token1;
uint24 fee;
int24 tickLower;
int24 tickUpper;
uint256 amount0Desired;
uint256 amount1Desired;
uint256 amount0Min;
uint256 amount1Min;
address recipient;
uint256 deadline;
}
struct IncreaseLiquidityParams {
uint256 tokenId;
uint256 amount0Desired;
uint256 amount1Desired;
uint256 amount0Min;
uint256 amount1Min;
uint256 deadline;
}
struct DecreaseLiquidityParams {
uint256 tokenId;
uint128 liquidity;
uint256 amount0Min;
uint256 amount1Min;
uint256 deadline;
}
struct CollectParams {
uint256 tokenId;
address recipient;
uint128 amount0Max;
uint128 amount1Max;
}
Read-Only Functions
function positions(
uint256 tokenId
) external view returns (
uint96 nonce,
address operator,
address token0,
address token1,
uint24 fee,
int24 tickLower,
int24 tickUpper,
uint128 liquidity,
uint256 feeGrowthInside0LastX128,
uint256 feeGrowthInside1LastX128,
uint128 tokensOwed0,
uint128 tokensOwed1
)
주어진 토큰 ID와 관련된 위치 정보를 반환합니다.
토큰 ID가 유효하지 않은 경우 throw.
Parameters:
Return Values:
Name | Type | Description |
---|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | 개별 포지션에 대한 마지막 조치를 기준으로 token0의 수수료 증가 |
| | 개별 포지션에 대한 마지막 조치를 기준으로 token1의 수수료 증가 |
| | 마지막 계산 시점의 위치에 대한 미수금된 token0의 양 |
| | 마지막 계산 시점의 위치에 대한 미수금된 token1의 양 |
positionRewards
function positionRewards(uint256 tokenId)
external
view
returns (
uint256 rewardGrowthInsideLastX128,
uint128 reward,
uint128 fee0Sum,
uint128 fee1Sum,
uint128 rewardSum
);
Parameters:
Return Values:
Name | Type | Description |
---|
rewardGrowthInsideLastX128
| | 개별 포지션에 대한 마지막 행동에 따른 보상 증가 |
| | |
| | |
| | |
| | |
function getApproved() public view returns (address)
tokenId 토큰에 대해 승인된 계정을 반환합니다.
요구 사항: 토큰 ID가 있어야 합니다.
function tokenURI(uint256 tokenId) public view returns (string)
특정 토큰 ID를 설명하는 URI를 반환합니다.
Parameters:
Return Values:
URI 데이터가 포함된 base64 문자열입니다.
function baseURI() public returns (string)
State-Changing Functions
function mint(
struct INonfungiblePositionManager.MintParams params
) external returns (
uint256 tokenId,
uint128 liquidity,
uint256 amount0,
uint256 amount1
)
NFT로 래핑된 새 포지션을 생성합니다.
풀이 존재하고 초기화될 때 이것을 호출하십시오. 풀이 생성되었지만 초기화되지 않은 경우 메서드가 존재하지 않습니다. 즉, 풀이 초기화된 것으로 간주됩니다.
Parameters:
Name | Type | Description |
---|
| struct INonfungiblePositionManager.MintParams
| calldata에서 MintParams로 인코딩된 위치를 생성하는 데 필요한 매개변수 |
Return Values:
function increaseLiquidity(
struct INonfungiblePositionManager.IncreaseLiquidityParams params
) external returns (
uint128 liquidity,
uint256 amount0,
uint256 amount1
)
msg.sender
가 지불한 토큰으로 포지션의 유동성을 높입니다.
Parameters:
Name | Type | Description |
---|
| struct INonfungiblePositionManager.IncreaseLiquidityParams
| calldata에서 IncreaseLiquidityParams로 인코딩된 포지션의 유동성을 증가시키는 데 필요한 매개변수 |
Return Values:
function decreaseLiquidity(
struct INonfungiblePositionManager.DecreaseLiquidityParams params
) external returns (uint256 amount0, uint256 amount1)
포지션의 유동성을 줄여 포지션에 반영
Parameters:
Name | Type | Description |
---|
| struct INonfungiblePositionManager.DecreaseLiquidityParams
| calldata에서 IncreaseLiquidityParams로 인코딩된 포지션의 유동성을 줄이는 데 필요한 매개변수 |
Return Values:
Name | Type | Description |
---|
| | 포지션의 빚진 토큰에 해당하는 token0의 양 |
| | 포지션의 빚진 토큰에 해당하는 token1의 양 |
function collect(
struct INonfungiblePositionManager.CollectParams params
) external returns (uint256 amount0, uint256 amount1)
수령인에게 지불해야 하는 최대 금액의 수수료를 징수합니다.
Parameters:
Name | Type | Description |
---|
| struct INonfungiblePositionManager.CollectParams
| calldata에서 CollectParams로 인코딩된 수집에 필요한 매개변수 |
Return Values:
function burn(uint256 tokenId) external
NFT 계약에서 토큰 ID를 삭제하는 토큰 ID를 소각합니다.
토큰은 유동성이 0이어야 하며 모든 토큰이 먼저 수집되어야 합니다.
Parameters: