diff options
Diffstat (limited to 'packages/asset-buyer/src/constants.ts')
-rw-r--r-- | packages/asset-buyer/src/constants.ts | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/packages/asset-buyer/src/constants.ts b/packages/asset-buyer/src/constants.ts new file mode 100644 index 000000000..c0e1bf27d --- /dev/null +++ b/packages/asset-buyer/src/constants.ts @@ -0,0 +1,40 @@ +import { SignedOrder } from '@0x/types'; +import { BigNumber } from '@0x/utils'; + +import { AssetBuyerOpts, BuyQuoteExecutionOpts, BuyQuoteRequestOpts, OrdersAndFillableAmounts } from './types'; + +const NULL_ADDRESS = '0x0000000000000000000000000000000000000000'; +const MAINNET_NETWORK_ID = 1; + +const DEFAULT_ASSET_BUYER_OPTS: AssetBuyerOpts = { + networkId: MAINNET_NETWORK_ID, + orderRefreshIntervalMs: 10000, // 10 seconds + expiryBufferSeconds: 120, // 2 minutes +}; + +const DEFAULT_BUY_QUOTE_REQUEST_OPTS: BuyQuoteRequestOpts = { + feePercentage: 0, + shouldForceOrderRefresh: false, + slippagePercentage: 0.2, // 20% slippage protection +}; + +// Other default values are dynamically determined +const DEFAULT_BUY_QUOTE_EXECUTION_OPTS: BuyQuoteExecutionOpts = { + feeRecipient: NULL_ADDRESS, +}; + +const EMPTY_ORDERS_AND_FILLABLE_AMOUNTS: OrdersAndFillableAmounts = { + orders: [] as SignedOrder[], + remainingFillableMakerAssetAmounts: [] as BigNumber[], +}; + +export const constants = { + ZERO_AMOUNT: new BigNumber(0), + NULL_ADDRESS, + MAINNET_NETWORK_ID, + ETHER_TOKEN_DECIMALS: 18, + DEFAULT_ASSET_BUYER_OPTS, + DEFAULT_BUY_QUOTE_EXECUTION_OPTS, + DEFAULT_BUY_QUOTE_REQUEST_OPTS, + EMPTY_ORDERS_AND_FILLABLE_AMOUNTS, +}; |