Flesh out types
This commit is contained in:
@@ -47,7 +47,9 @@
|
||||
},
|
||||
"homepage": "https://github.com/0xProject/0x-monorepo/packages/forwarder-helper/README.md",
|
||||
"dependencies": {
|
||||
"@0xproject/types": "^0.8.2",
|
||||
"@0xproject/typescript-typings": "^1.0.4",
|
||||
"@0xproject/utils": "^1.0.5",
|
||||
"@types/node": "^8.0.53"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
@@ -0,0 +1,80 @@
|
||||
import { SignedOrder } from '@0xproject/types';
|
||||
import { BigNumber } from '@0xproject/utils';
|
||||
|
||||
export interface ForwarderHelper {
|
||||
/**
|
||||
* Given a MarketBuyOrdersInfoRequest, returns a MarketBuyOrdersInfo containing all information relevant to fulfilling the request
|
||||
* using the ForwarderContract marketBuyOrdersWithEth function.
|
||||
* @param request An object that conforms to MarketBuyOrdersInfoRequest. See type definition for more information.
|
||||
* @return An object that conforms to MarketBuyOrdersInfo that satisfies the request. See type definition for more information.
|
||||
*/
|
||||
getMarketBuyOrdersInfo: (request: MarketBuyOrdersInfoRequest) => MarketBuyOrdersInfo;
|
||||
/**
|
||||
* Given a MarketSellOrdersInfoRequest, returns a MarketSellOrdersInfo containing all information relevant to fulfilling the request
|
||||
* using the ForwarderContract marketSellOrdersWithEth function.
|
||||
* @param request An object that conforms to MarketSellOrdersInfoRequest. See type definition for more information.
|
||||
* @return An object that conforms to MarketSellOrdersInfo that satisfies the request. See type definition for more information.
|
||||
*/
|
||||
getMarketSellOrdersInfo: (request: MarketSellOrdersInfoRequest) => MarketSellOrdersInfo;
|
||||
}
|
||||
|
||||
export enum ForwarderHelperError {
|
||||
InsufficientLiquidity = 'INSUFFICIENT_LIQUIDITY',
|
||||
InsufficientZrxLiquidity = 'INSUFFICIENT_ZRX_LIQUIDITY',
|
||||
}
|
||||
|
||||
/**
|
||||
* makerAssetFillAmount: The amount of makerAsset requesting to be filled
|
||||
* feePercentage: Optional affiliate percentage amount factoring into eth amount calculations
|
||||
* acceptableEthAmountRange: maximum difference between min and max eth cost
|
||||
*/
|
||||
export interface MarketBuyOrdersInfoRequest {
|
||||
makerAssetFillAmount: BigNumber;
|
||||
feePercentage?: BigNumber;
|
||||
acceptableEthAmountRange?: BigNumber;
|
||||
}
|
||||
|
||||
/**
|
||||
* makerAssetFillAmount: The amount of makerAsset requesting to be filled
|
||||
* orders: An array of objects conforming to SignedOrder. These orders can be used to cover the requested makerAssetFillAmount plus slippage
|
||||
* feeOrders: An array of objects conforming to SignedOrder. These orders can be used to cover the fees for the orders param above
|
||||
* minEthAmount: Amount of eth in wei to send with the tx for the most optimistic case
|
||||
* maxEthAmount: Amount of eth in wei to send with the tx for the worst case
|
||||
* feePercentage: Affiliate fee percentage used to calculate the eth amounts above. Passed thru directly from the request
|
||||
*/
|
||||
export interface MarketBuyOrdersInfo {
|
||||
makerAssetFillAmount: BigNumber;
|
||||
orders: SignedOrder[];
|
||||
feeOrders: SignedOrder[];
|
||||
feePercentage?: BigNumber;
|
||||
minEthAmount: BigNumber;
|
||||
maxEthAmount: BigNumber;
|
||||
}
|
||||
|
||||
/**
|
||||
* ethAmount: The amount of eth used to fill
|
||||
* feePercentage: Optional affiliate percentage amount factoring into eth amount calculations
|
||||
* acceptableFillAmountRange: maximum difference between min and max asset filled
|
||||
*/
|
||||
export interface MarketSellOrdersInfoRequest {
|
||||
ethAmount: BigNumber;
|
||||
feePercentage?: BigNumber;
|
||||
acceptableFillAmountRange?: BigNumber;
|
||||
}
|
||||
|
||||
/**
|
||||
* ethAmount: The amount of eth used to fill
|
||||
* orders: An array of objects conforming to SignedOrder. These orders can be used to cover the requested ethAmount plus slippage
|
||||
* feeOrders: An array of objects conforming to SignedOrder. These orders can be used to cover the fees for the orders param above
|
||||
* minFillAmount: Amount of asset purchased in the worst case
|
||||
* maxFillAmount: Amount of asset purchased in the best case
|
||||
* feePercentage: Affiliate fee percentage used to calculate the eth amounts above. Passed thru directly from the request
|
||||
*/
|
||||
export interface MarketSellOrdersInfo {
|
||||
ethAmount: BigNumber;
|
||||
orders: SignedOrder[];
|
||||
feeOrders: SignedOrder[];
|
||||
minFillAmount: BigNumber;
|
||||
maxFillAmount: BigNumber;
|
||||
feePercentage?: BigNumber;
|
||||
}
|
||||
|
||||
@@ -5256,9 +5256,9 @@ ethereumjs-wallet@~0.6.0:
|
||||
utf8 "^3.0.0"
|
||||
uuid "^3.3.2"
|
||||
|
||||
ethers@0xproject/ethers.js#eip-838-reasons, ethers@3.0.22:
|
||||
version "3.0.18"
|
||||
resolved "https://codeload.github.com/0xproject/ethers.js/tar.gz/b91342bd200d142af0165d6befddf783c8ae8447"
|
||||
ethers@3.0.22:
|
||||
version "3.0.22"
|
||||
resolved "https://registry.yarnpkg.com/ethers/-/ethers-3.0.22.tgz#7fab1ea16521705837aa43c15831877b2716b436"
|
||||
dependencies:
|
||||
aes-js "3.0.0"
|
||||
bn.js "^4.4.0"
|
||||
|
||||
Reference in New Issue
Block a user