Flesh out types
This commit is contained in:
		@@ -47,7 +47,9 @@
 | 
				
			|||||||
    },
 | 
					    },
 | 
				
			||||||
    "homepage": "https://github.com/0xProject/0x-monorepo/packages/forwarder-helper/README.md",
 | 
					    "homepage": "https://github.com/0xProject/0x-monorepo/packages/forwarder-helper/README.md",
 | 
				
			||||||
    "dependencies": {
 | 
					    "dependencies": {
 | 
				
			||||||
 | 
					        "@0xproject/types": "^0.8.2",
 | 
				
			||||||
        "@0xproject/typescript-typings": "^1.0.4",
 | 
					        "@0xproject/typescript-typings": "^1.0.4",
 | 
				
			||||||
 | 
					        "@0xproject/utils": "^1.0.5",
 | 
				
			||||||
        "@types/node": "^8.0.53"
 | 
					        "@types/node": "^8.0.53"
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "devDependencies": {
 | 
					    "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"
 | 
					    utf8 "^3.0.0"
 | 
				
			||||||
    uuid "^3.3.2"
 | 
					    uuid "^3.3.2"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
ethers@0xproject/ethers.js#eip-838-reasons, ethers@3.0.22:
 | 
					ethers@3.0.22:
 | 
				
			||||||
  version "3.0.18"
 | 
					  version "3.0.22"
 | 
				
			||||||
  resolved "https://codeload.github.com/0xproject/ethers.js/tar.gz/b91342bd200d142af0165d6befddf783c8ae8447"
 | 
					  resolved "https://registry.yarnpkg.com/ethers/-/ethers-3.0.22.tgz#7fab1ea16521705837aa43c15831877b2716b436"
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    aes-js "3.0.0"
 | 
					    aes-js "3.0.0"
 | 
				
			||||||
    bn.js "^4.4.0"
 | 
					    bn.js "^4.4.0"
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user