UNPKG

@mean-finance/dca-v2-periphery

Version:

💱 Periphery smart contracts of DCA V2 by mean.finance

411 lines (410 loc) • 10.4 kB
{ "_format": "hh-sol-artifact-1", "contractName": "IDCAFeeManager", "sourceName": "contracts/interfaces/IDCAFeeManager.sol", "abi": [ { "inputs": [], "name": "MAX_TOKEN_TOTAL_SHARE", "outputs": [ { "internalType": "uint16", "name": "", "type": "uint16" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "SWAP_INTERVAL", "outputs": [ { "internalType": "uint32", "name": "", "type": "uint32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "contract IDCAHub", "name": "hub", "type": "address" }, { "internalType": "address[]", "name": "tokens", "type": "address[]" } ], "name": "availableBalances", "outputs": [ { "components": [ { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "uint256", "name": "platformBalance", "type": "uint256" }, { "internalType": "uint256", "name": "feeManagerBalance", "type": "uint256" }, { "components": [ { "internalType": "uint256", "name": "positionId", "type": "uint256" }, { "internalType": "contract IERC20Metadata", "name": "from", "type": "address" }, { "internalType": "contract IERC20Metadata", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "swapped", "type": "uint256" }, { "internalType": "uint256", "name": "remaining", "type": "uint256" } ], "internalType": "struct IDCAFeeManager.PositionBalance[]", "name": "positions", "type": "tuple[]" } ], "internalType": "struct IDCAFeeManager.AvailableBalance[]", "name": "", "type": "tuple[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "contract IDCAHub", "name": "hub", "type": "address" }, { "components": [ { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "uint32", "name": "amountOfSwaps", "type": "uint32" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "internalType": "struct IDCAFeeManager.AmountToFill[]", "name": "amounts", "type": "tuple[]" }, { "components": [ { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "uint16", "name": "shares", "type": "uint16" } ], "internalType": "struct IDCAFeeManager.TargetTokenShare[]", "name": "distribution", "type": "tuple[]" } ], "name": "fillPositions", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "pairKey", "type": "bytes32" } ], "name": "positions", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "contract IERC20[]", "name": "tokens", "type": "address[]" } ], "internalType": "struct ISwapAdapter.RevokeAction[]", "name": "revokeActions", "type": "tuple[]" } ], "name": "revokeAllowances", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "components": [ { "internalType": "contract IERC20", "name": "token", "type": "address" }, { "internalType": "address", "name": "allowanceTarget", "type": "address" }, { "internalType": "uint256", "name": "minAllowance", "type": "uint256" } ], "internalType": "struct Allowance[]", "name": "allowanceTargets", "type": "tuple[]" }, { "internalType": "address[]", "name": "swappers", "type": "address[]" }, { "internalType": "bytes[]", "name": "swaps", "type": "bytes[]" }, { "components": [ { "internalType": "uint8", "name": "swapperIndex", "type": "uint8" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "internalType": "struct SwapContext[]", "name": "swapContext", "type": "tuple[]" }, { "components": [ { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "address", "name": "recipient", "type": "address" } ], "internalType": "struct TransferOutBalance[]", "name": "transferOutBalance", "type": "tuple[]" } ], "internalType": "struct IDCAFeeManager.RunSwapsAndTransferManyParams", "name": "parameters", "type": "tuple" } ], "name": "runSwapsAndTransferMany", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "contract IDCAHub", "name": "hub", "type": "address" }, { "internalType": "uint256[]", "name": "positionIds", "type": "uint256[]" }, { "internalType": "address", "name": "recipient", "type": "address" } ], "name": "terminatePositions", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "internalType": "struct IDCAHub.AmountOfToken[]", "name": "amountToWithdraw", "type": "tuple[]" }, { "internalType": "address", "name": "recipient", "type": "address" } ], "name": "withdrawFromBalance", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "contract IDCAHub", "name": "hub", "type": "address" }, { "components": [ { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "internalType": "struct IDCAHub.AmountOfToken[]", "name": "amountToWithdraw", "type": "tuple[]" }, { "internalType": "address", "name": "recipient", "type": "address" } ], "name": "withdrawFromPlatformBalance", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "contract IDCAHub", "name": "hub", "type": "address" }, { "components": [ { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "uint256[]", "name": "positionIds", "type": "uint256[]" } ], "internalType": "struct IDCAHubPositionHandler.PositionSet[]", "name": "positionSets", "type": "tuple[]" }, { "internalType": "address", "name": "recipient", "type": "address" } ], "name": "withdrawFromPositions", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "bytecode": "0x", "deployedBytecode": "0x", "linkReferences": {}, "deployedLinkReferences": {} }