mirror of
https://github.com/Instadapp/dsa-connectors.git
synced 2024-07-29 22:37:00 +00:00
119 lines
2.2 KiB
Solidity
119 lines
2.2 KiB
Solidity
//SPDX-License-Identifier: MIT
|
|
pragma solidity ^0.7.0;
|
|
pragma abicoder v2;
|
|
|
|
struct UserCollateral {
|
|
uint128 balance;
|
|
uint128 _reserved;
|
|
}
|
|
|
|
interface CometInterface {
|
|
function supply(address asset, uint256 amount) external virtual;
|
|
|
|
function supplyTo(
|
|
address dst,
|
|
address asset,
|
|
uint256 amount
|
|
) external virtual;
|
|
|
|
function supplyFrom(
|
|
address from,
|
|
address dst,
|
|
address asset,
|
|
uint256 amount
|
|
) external virtual;
|
|
|
|
function transfer(address dst, uint256 amount)
|
|
external
|
|
virtual
|
|
returns (bool);
|
|
|
|
function transferFrom(
|
|
address src,
|
|
address dst,
|
|
uint256 amount
|
|
) external virtual returns (bool);
|
|
|
|
function transferAsset(
|
|
address dst,
|
|
address asset,
|
|
uint256 amount
|
|
) external virtual;
|
|
|
|
function transferAssetFrom(
|
|
address src,
|
|
address dst,
|
|
address asset,
|
|
uint256 amount
|
|
) external virtual;
|
|
|
|
function withdraw(address asset, uint256 amount) external virtual;
|
|
|
|
function withdrawTo(
|
|
address to,
|
|
address asset,
|
|
uint256 amount
|
|
) external virtual;
|
|
|
|
function withdrawFrom(
|
|
address src,
|
|
address to,
|
|
address asset,
|
|
uint256 amount
|
|
) external virtual;
|
|
|
|
function approveThis(
|
|
address manager,
|
|
address asset,
|
|
uint256 amount
|
|
) external virtual;
|
|
|
|
function withdrawReserves(address to, uint256 amount) external virtual;
|
|
|
|
function absorb(address absorber, address[] calldata accounts)
|
|
external
|
|
virtual;
|
|
|
|
function buyCollateral(
|
|
address asset,
|
|
uint256 minAmount,
|
|
uint256 baseAmount,
|
|
address recipient
|
|
) external virtual;
|
|
|
|
function quoteCollateral(address asset, uint256 baseAmount)
|
|
external
|
|
view
|
|
returns (uint256);
|
|
|
|
function userCollateral(address, address)
|
|
external
|
|
returns (UserCollateral memory);
|
|
|
|
function baseToken() external view returns (address);
|
|
|
|
function balanceOf(address account) external view returns (uint256);
|
|
|
|
function borrowBalanceOf(address account) external view returns (uint256);
|
|
}
|
|
|
|
interface CometRewards {
|
|
function claim(
|
|
address comet,
|
|
address src,
|
|
bool shouldAccrue
|
|
) external;
|
|
|
|
function claimTo(
|
|
address comet,
|
|
address src,
|
|
address to,
|
|
bool shouldAccrue
|
|
) external;
|
|
|
|
function rewardsClaimed(address cometProxy, address account)
|
|
external
|
|
view
|
|
returns (uint256);
|
|
}
|