# Class: AssetBuyer ## Constructors \+ **new AssetBuyer**(`supportedProvider`: [SupportedProvider](#supportedprovider), `orderProvider`: [OrderProvider](#interface-orderprovider), `options`: `Partial`): *[AssetBuyer](#class-assetbuyer)* *Defined in [asset-buyer/src/asset_buyer.ts:83](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/asset_buyer.ts#L83)* Instantiates a new AssetBuyer instance **Parameters:** Name | Type | Default | Description | ------ | ------ | ------ | ------ | `supportedProvider` | [SupportedProvider](#supportedprovider) | - | The Provider instance you would like to use for interacting with the Ethereum network. | `orderProvider` | [OrderProvider](#interface-orderprovider) | - | An object that conforms to OrderProvider, see type for definition. | `options` | `Partial` | {} | Initialization options for the AssetBuyer. See type definition for details. | **Returns:** *[AssetBuyer](#class-assetbuyer)* An instance of AssetBuyer ## Properties ### chainId • **chainId**: *number* *Defined in [asset-buyer/src/asset_buyer.ts:38](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/asset_buyer.ts#L38)* ___ ### expiryBufferSeconds • **expiryBufferSeconds**: *number* *Defined in [asset-buyer/src/asset_buyer.ts:40](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/asset_buyer.ts#L40)* ___ ### orderProvider • **orderProvider**: *[OrderProvider](#interface-orderprovider)* *Defined in [asset-buyer/src/asset_buyer.ts:37](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/asset_buyer.ts#L37)* ___ ### orderRefreshIntervalMs • **orderRefreshIntervalMs**: *number* *Defined in [asset-buyer/src/asset_buyer.ts:39](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/asset_buyer.ts#L39)* ___ ### provider • **provider**: *`ZeroExProvider`* *Defined in [asset-buyer/src/asset_buyer.ts:36](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/asset_buyer.ts#L36)* ## Methods ### executeBuyQuoteAsync ▸ **executeBuyQuoteAsync**(`buyQuote`: [BuyQuote](#interface-buyquote), `options`: `Partial`): *`Promise`* *Defined in [asset-buyer/src/asset_buyer.ts:226](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/asset_buyer.ts#L226)* Given a BuyQuote and desired rate, attempt to execute the buy. **Parameters:** Name | Type | Default | Description | ------ | ------ | ------ | ------ | `buyQuote` | [BuyQuote](#interface-buyquote) | - | An object that conforms to BuyQuote. See type definition for more information. | `options` | `Partial` | {} | Options for the execution of the BuyQuote. See type definition for more information. | **Returns:** *`Promise`* A promise of the txHash. ___ ### getAvailableAssetDatasAsync ▸ **getAvailableAssetDatasAsync**(): *`Promise`* *Defined in [asset-buyer/src/asset_buyer.ts:300](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/asset_buyer.ts#L300)* Get the asset data of all assets that are purchaseable with ether token (wETH) in the order provider passed in at init. **Returns:** *`Promise`* An array of asset data strings that can be purchased using wETH. ___ ### getBuyQuoteAsync ▸ **getBuyQuoteAsync**(`assetData`: string, `assetBuyAmount`: `BigNumber`, `options`: `Partial`): *`Promise`* *Defined in [asset-buyer/src/asset_buyer.ts:125](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/asset_buyer.ts#L125)* Get a `BuyQuote` containing all information relevant to fulfilling a buy given a desired assetData. You can then pass the `BuyQuote` to `executeBuyQuoteAsync` to execute the buy. **Parameters:** Name | Type | Default | Description | ------ | ------ | ------ | ------ | `assetData` | string | - | The assetData of the desired asset to buy (for more info: https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md). | `assetBuyAmount` | `BigNumber` | - | The amount of asset to buy. | `options` | `Partial` | {} | Options for the request. See type definition for more information. | **Returns:** *`Promise`* An object that conforms to BuyQuote that satisfies the request. See type definition for more information. ___ ### getBuyQuoteForERC20TokenAddressAsync ▸ **getBuyQuoteForERC20TokenAddressAsync**(`tokenAddress`: string, `assetBuyAmount`: `BigNumber`, `options`: `Partial`): *`Promise`* *Defined in [asset-buyer/src/asset_buyer.ts:173](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/asset_buyer.ts#L173)* Get a `BuyQuote` containing all information relevant to fulfilling a buy given a desired ERC20 token address. You can then pass the `BuyQuote` to `executeBuyQuoteAsync` to execute the buy. **Parameters:** Name | Type | Default | Description | ------ | ------ | ------ | ------ | `tokenAddress` | string | - | The ERC20 token address. | `assetBuyAmount` | `BigNumber` | - | The amount of asset to buy. | `options` | `Partial` | {} | Options for the request. See type definition for more information. | **Returns:** *`Promise`* An object that conforms to BuyQuote that satisfies the request. See type definition for more information. ___ ### getLiquidityForAssetDataAsync ▸ **getLiquidityForAssetDataAsync**(`assetData`: string, `options`: `Partial`): *`Promise`* *Defined in [asset-buyer/src/asset_buyer.ts:192](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/asset_buyer.ts#L192)* Returns information about available liquidity for an asset Does not factor in slippage or fees **Parameters:** Name | Type | Default | Description | ------ | ------ | ------ | ------ | `assetData` | string | - | The assetData of the desired asset to buy (for more info: https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md). | `options` | `Partial` | {} | Options for the request. See type definition for more information. | **Returns:** *`Promise`* An object that conforms to LiquidityForAssetData that satisfies the request. See type definition for more information. ___ ### getOrdersAndFillableAmountsAsync ▸ **getOrdersAndFillableAmountsAsync**(`assetData`: string, `shouldForceOrderRefresh`: boolean): *`Promise`* *Defined in [asset-buyer/src/asset_buyer.ts:309](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/asset_buyer.ts#L309)* Grab orders from the map, if there is a miss or it is time to refresh, fetch and process the orders **Parameters:** Name | Type | Description | ------ | ------ | ------ | `assetData` | string | The assetData of the desired asset to buy (for more info: https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md). | `shouldForceOrderRefresh` | boolean | If set to true, new orders and state will be fetched instead of waiting for the next orderRefreshIntervalMs. | **Returns:** *`Promise`* ___ ### `Static` getAssetBuyerForProvidedOrders ▸ **getAssetBuyerForProvidedOrders**(`supportedProvider`: [SupportedProvider](#supportedprovider), `orders`: `SignedOrder`[], `options`: `Partial`): *[AssetBuyer](#class-assetbuyer)* *Defined in [asset-buyer/src/asset_buyer.ts:53](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/asset_buyer.ts#L53)* Instantiates a new AssetBuyer instance given existing liquidity in the form of orders and feeOrders. **Parameters:** Name | Type | Default | Description | ------ | ------ | ------ | ------ | `supportedProvider` | [SupportedProvider](#supportedprovider) | - | The Provider instance you would like to use for interacting with the Ethereum network. | `orders` | `SignedOrder`[] | - | A non-empty array of objects that conform to SignedOrder. All orders must have the same makerAssetData and takerAssetData (WETH). | `options` | `Partial` | {} | Initialization options for the AssetBuyer. See type definition for details. | **Returns:** *[AssetBuyer](#class-assetbuyer)* An instance of AssetBuyer ___ ### `Static` getAssetBuyerForStandardRelayerAPIUrl ▸ **getAssetBuyerForStandardRelayerAPIUrl**(`supportedProvider`: [SupportedProvider](#supportedprovider), `sraApiUrl`: string, `options`: `Partial`): *[AssetBuyer](#class-assetbuyer)* *Defined in [asset-buyer/src/asset_buyer.ts:72](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/asset_buyer.ts#L72)* Instantiates a new AssetBuyer instance given a [Standard Relayer API](https://github.com/0xProject/standard-relayer-api) endpoint **Parameters:** Name | Type | Default | Description | ------ | ------ | ------ | ------ | `supportedProvider` | [SupportedProvider](#supportedprovider) | - | The Provider instance you would like to use for interacting with the Ethereum network. | `sraApiUrl` | string | - | The standard relayer API base HTTP url you would like to source orders from. | `options` | `Partial` | {} | Initialization options for the AssetBuyer. See type definition for details. | **Returns:** *[AssetBuyer](#class-assetbuyer)* An instance of AssetBuyer
# Class: InsufficientAssetLiquidityError Error class representing insufficient asset liquidity ## Constructors \+ **new InsufficientAssetLiquidityError**(`amountAvailableToFill`: `BigNumber`): *[InsufficientAssetLiquidityError](#class-insufficientassetliquidityerror)* *Defined in [asset-buyer/src/errors.ts:12](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/errors.ts#L12)* **Parameters:** Name | Type | Description | ------ | ------ | ------ | `amountAvailableToFill` | `BigNumber` | The amount availabe to fill (in base units) factoring in slippage | **Returns:** *[InsufficientAssetLiquidityError](#class-insufficientassetliquidityerror)* ## Properties ### amountAvailableToFill • **amountAvailableToFill**: *`BigNumber`* *Defined in [asset-buyer/src/errors.ts:12](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/errors.ts#L12)* The amount availabe to fill (in base units) factoring in slippage. ___ ### message • **message**: *string* ___ ### name • **name**: *string* ___ ### `Optional` stack • **stack**? : *undefined | string* *Overrides void* ___ ### `Static` Error ▪ **Error**: *`ErrorConstructor`*
# Class: BasicOrderProvider ## Implements * [OrderProvider](#interface-orderprovider) ## Constructors \+ **new BasicOrderProvider**(`orders`: `SignedOrder`[]): *[BasicOrderProvider](#class-basicorderprovider)* *Defined in [asset-buyer/src/order_providers/basic_order_provider.ts:9](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/order_providers/basic_order_provider.ts#L9)* Instantiates a new BasicOrderProvider instance **Parameters:** Name | Type | Description | ------ | ------ | ------ | `orders` | `SignedOrder`[] | An array of objects that conform to SignedOrder to fetch from. | **Returns:** *[BasicOrderProvider](#class-basicorderprovider)* An instance of BasicOrderProvider ## Properties ### orders • **orders**: *`SignedOrder`[]* *Defined in [asset-buyer/src/order_providers/basic_order_provider.ts:9](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/order_providers/basic_order_provider.ts#L9)* ## Methods ### getAvailableMakerAssetDatasAsync ▸ **getAvailableMakerAssetDatasAsync**(`takerAssetData`: string): *`Promise`* *Defined in [asset-buyer/src/order_providers/basic_order_provider.ts:37](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/order_providers/basic_order_provider.ts#L37)* Given a taker asset data string, return all availabled paired maker asset data strings. **Parameters:** Name | Type | Description | ------ | ------ | ------ | `takerAssetData` | string | A string representing the taker asset data. | **Returns:** *`Promise`* An array of asset data strings that can be purchased using takerAssetData. ___ ### getOrdersAsync ▸ **getOrdersAsync**(`orderProviderRequest`: [OrderProviderRequest](#interface-orderproviderrequest)): *`Promise`* *Defined in [asset-buyer/src/order_providers/basic_order_provider.ts:24](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/order_providers/basic_order_provider.ts#L24)* Given an object that conforms to OrderFetcherRequest, return the corresponding OrderProviderResponse that satisfies the request. **Parameters:** Name | Type | Description | ------ | ------ | ------ | `orderProviderRequest` | [OrderProviderRequest](#interface-orderproviderrequest) | An instance of OrderFetcherRequest. See type for more information. | **Returns:** *`Promise`* An instance of OrderProviderResponse. See type for more information.
# Class: StandardRelayerAPIOrderProvider ## Implements * [OrderProvider](#interface-orderprovider) ## Constructors \+ **new StandardRelayerAPIOrderProvider**(`apiUrl`: string, `chainId`: number): *[StandardRelayerAPIOrderProvider](#class-standardrelayerapiorderprovider)* *Defined in [asset-buyer/src/order_providers/standard_relayer_api_order_provider.ts:48](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/order_providers/standard_relayer_api_order_provider.ts#L48)* Instantiates a new StandardRelayerAPIOrderProvider instance **Parameters:** Name | Type | Description | ------ | ------ | ------ | `apiUrl` | string | The standard relayer API base HTTP url you would like to source orders from. | `chainId` | number | The ethereum chain id. | **Returns:** *[StandardRelayerAPIOrderProvider](#class-standardrelayerapiorderprovider)* An instance of StandardRelayerAPIOrderProvider ## Properties ### apiUrl • **apiUrl**: *string* *Defined in [asset-buyer/src/order_providers/standard_relayer_api_order_provider.ts:17](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/order_providers/standard_relayer_api_order_provider.ts#L17)* ___ ### chainId • **chainId**: *number* *Defined in [asset-buyer/src/order_providers/standard_relayer_api_order_provider.ts:18](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/order_providers/standard_relayer_api_order_provider.ts#L18)* ## Methods ### getAvailableMakerAssetDatasAsync ▸ **getAvailableMakerAssetDatasAsync**(`takerAssetData`: string): *`Promise`* *Defined in [asset-buyer/src/order_providers/standard_relayer_api_order_provider.ts:91](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/order_providers/standard_relayer_api_order_provider.ts#L91)* Given a taker asset data string, return all availabled paired maker asset data strings. **Parameters:** Name | Type | Description | ------ | ------ | ------ | `takerAssetData` | string | A string representing the taker asset data. | **Returns:** *`Promise`* An array of asset data strings that can be purchased using takerAssetData. ___ ### getOrdersAsync ▸ **getOrdersAsync**(`orderProviderRequest`: [OrderProviderRequest](#interface-orderproviderrequest)): *`Promise`* *Defined in [asset-buyer/src/order_providers/standard_relayer_api_order_provider.ts:67](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/order_providers/standard_relayer_api_order_provider.ts#L67)* Given an object that conforms to OrderProviderRequest, return the corresponding OrderProviderResponse that satisfies the request. **Parameters:** Name | Type | Description | ------ | ------ | ------ | `orderProviderRequest` | [OrderProviderRequest](#interface-orderproviderrequest) | An instance of OrderProviderRequest. See type for more information. | **Returns:** *`Promise`* An instance of OrderProviderResponse. See type for more information.
# Enumeration: AssetBuyerError Possible error messages thrown by an AssetBuyer instance or associated static methods. ## Enumeration members ### AssetUnavailable • **AssetUnavailable**: = "ASSET_UNAVAILABLE" *Defined in [asset-buyer/src/types.ts:122](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L122)* ___ ### InsufficientAssetLiquidity • **InsufficientAssetLiquidity**: = "INSUFFICIENT_ASSET_LIQUIDITY" *Defined in [asset-buyer/src/types.ts:118](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L118)* ___ ### InsufficientZrxLiquidity • **InsufficientZrxLiquidity**: = "INSUFFICIENT_ZRX_LIQUIDITY" *Defined in [asset-buyer/src/types.ts:119](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L119)* ___ ### InvalidOrderProviderResponse • **InvalidOrderProviderResponse**: = "INVALID_ORDER_PROVIDER_RESPONSE" *Defined in [asset-buyer/src/types.ts:121](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L121)* ___ ### NoAddressAvailable • **NoAddressAvailable**: = "NO_ADDRESS_AVAILABLE" *Defined in [asset-buyer/src/types.ts:120](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L120)* ___ ### NoEtherTokenContractFound • **NoEtherTokenContractFound**: = "NO_ETHER_TOKEN_CONTRACT_FOUND" *Defined in [asset-buyer/src/types.ts:115](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L115)* ___ ### NoZrxTokenContractFound • **NoZrxTokenContractFound**: = "NO_ZRX_TOKEN_CONTRACT_FOUND" *Defined in [asset-buyer/src/types.ts:116](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L116)* ___ ### SignatureRequestDenied • **SignatureRequestDenied**: = "SIGNATURE_REQUEST_DENIED" *Defined in [asset-buyer/src/types.ts:123](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L123)* ___ ### StandardRelayerApiError • **StandardRelayerApiError**: = "STANDARD_RELAYER_API_ERROR" *Defined in [asset-buyer/src/types.ts:117](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L117)* ___ ### TransactionValueTooLow • **TransactionValueTooLow**: = "TRANSACTION_VALUE_TOO_LOW" *Defined in [asset-buyer/src/types.ts:124](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L124)*
# Interface: BuyQuote assetData: String that represents a specific asset (for more info: https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md). assetBuyAmount: The amount of asset to buy. orders: An array of objects conforming to SignedOrder. These orders can be used to cover the requested assetBuyAmount plus slippage. feeOrders: An array of objects conforming to SignedOrder. These orders can be used to cover the fees for the orders param above. feePercentage: Optional affiliate fee percentage used to calculate the eth amounts above. bestCaseQuoteInfo: Info about the best case price for the asset. worstCaseQuoteInfo: Info about the worst case price for the asset. ## Properties ### assetBuyAmount • **assetBuyAmount**: *`BigNumber`* *Defined in [asset-buyer/src/types.ts:48](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L48)* ___ ### assetData • **assetData**: *string* *Defined in [asset-buyer/src/types.ts:47](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L47)* ___ ### bestCaseQuoteInfo • **bestCaseQuoteInfo**: *[BuyQuoteInfo](#class-buyquoteinfo)* *Defined in [asset-buyer/src/types.ts:52](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L52)* ___ ### feeOrders • **feeOrders**: *`SignedOrder`[]* *Defined in [asset-buyer/src/types.ts:50](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L50)* ___ ### `Optional` feePercentage • **feePercentage**? : *undefined | number* *Defined in [asset-buyer/src/types.ts:51](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L51)* ___ ### orders • **orders**: *`SignedOrder`[]* *Defined in [asset-buyer/src/types.ts:49](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L49)* ___ ### worstCaseQuoteInfo • **worstCaseQuoteInfo**: *[BuyQuoteInfo](#class-buyquoteinfo)* *Defined in [asset-buyer/src/types.ts:53](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L53)*
# Interface: BuyQuoteExecutionOpts ethAmount: The desired amount of eth to spend. Defaults to buyQuote.worstCaseQuoteInfo.totalEthAmount. takerAddress: The address to perform the buy. Defaults to the first available address from the provider. gasLimit: The amount of gas to send with a transaction (in Gwei). Defaults to an eth_estimateGas rpc call. gasPrice: Gas price in Wei to use for a transaction feeRecipient: The address where affiliate fees are sent. Defaults to null address (0x000...000). ## Properties ### `Optional` ethAmount • **ethAmount**? : *`BigNumber`* *Defined in [asset-buyer/src/types.ts:93](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L93)* ___ ### feeRecipient • **feeRecipient**: *string* *Defined in [asset-buyer/src/types.ts:97](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L97)* ___ ### `Optional` gasLimit • **gasLimit**? : *undefined | number* *Defined in [asset-buyer/src/types.ts:95](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L95)* ___ ### `Optional` gasPrice • **gasPrice**? : *`BigNumber`* *Defined in [asset-buyer/src/types.ts:96](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L96)* ___ ### `Optional` takerAddress • **takerAddress**? : *undefined | string* *Defined in [asset-buyer/src/types.ts:94](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L94)*
# Interface: BuyQuoteInfo assetEthAmount: The amount of eth required to pay for the requested asset. feeEthAmount: The amount of eth required to pay the affiliate fee. totalEthAmount: The total amount of eth required to complete the buy (filling orders, feeOrders, and paying affiliate fee). ## Properties ### assetEthAmount • **assetEthAmount**: *`BigNumber`* *Defined in [asset-buyer/src/types.ts:62](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L62)* ___ ### feeEthAmount • **feeEthAmount**: *`BigNumber`* *Defined in [asset-buyer/src/types.ts:63](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L63)* ___ ### totalEthAmount • **totalEthAmount**: *`BigNumber`* *Defined in [asset-buyer/src/types.ts:64](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L64)*
# Interface: BuyQuoteRequestOpts feePercentage: The affiliate fee percentage. Defaults to 0. shouldForceOrderRefresh: If set to true, new orders and state will be fetched instead of waiting for the next orderRefreshIntervalMs. Defaults to false. slippagePercentage: The percentage buffer to add to account for slippage. Affects max ETH price estimates. Defaults to 0.2 (20%). ## Properties ### feePercentage • **feePercentage**: *number* *Defined in [asset-buyer/src/types.ts:73](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L73)* ___ ### shouldForceOrderRefresh • **shouldForceOrderRefresh**: *boolean* *Defined in [asset-buyer/src/types.ts:74](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L74)* ___ ### slippagePercentage • **slippagePercentage**: *number* *Defined in [asset-buyer/src/types.ts:75](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L75)*
# Interface: LiquidityForAssetData Represents available liquidity for a given assetData ## Properties ### ethValueAvailableInWei • **ethValueAvailableInWei**: *`BigNumber`* *Defined in [asset-buyer/src/types.ts:141](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L141)* ___ ### tokensAvailableInBaseUnits • **tokensAvailableInBaseUnits**: *`BigNumber`* *Defined in [asset-buyer/src/types.ts:140](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L140)*
# Interface: SignedOrderWithRemainingFillableMakerAssetAmount A normal SignedOrder with one extra optional property `remainingFillableMakerAssetAmount` remainingFillableMakerAssetAmount: The amount of the makerAsset that is available to be filled ## Properties ### chainId • **chainId**: *number* Defined in types/lib/index.d.ts:4 ___ ### exchangeAddress • **exchangeAddress**: *string* Defined in types/lib/index.d.ts:5 ___ ### expirationTimeSeconds • **expirationTimeSeconds**: *`BigNumber`* Defined in types/lib/index.d.ts:14 ___ ### feeRecipientAddress • **feeRecipientAddress**: *string* Defined in types/lib/index.d.ts:8 ___ ### makerAddress • **makerAddress**: *string* Defined in types/lib/index.d.ts:6 ___ ### makerAssetAmount • **makerAssetAmount**: *`BigNumber`* Defined in types/lib/index.d.ts:10 ___ ### makerAssetData • **makerAssetData**: *string* Defined in types/lib/index.d.ts:16 ___ ### makerFee • **makerFee**: *`BigNumber`* Defined in types/lib/index.d.ts:12 ___ ### makerFeeAssetData • **makerFeeAssetData**: *string* Defined in types/lib/index.d.ts:18 ___ ### `Optional` remainingFillableMakerAssetAmount • **remainingFillableMakerAssetAmount**? : *`BigNumber`* *Defined in [asset-buyer/src/types.ts:26](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L26)* ___ ### salt • **salt**: *`BigNumber`* Defined in types/lib/index.d.ts:15 ___ ### senderAddress • **senderAddress**: *string* Defined in types/lib/index.d.ts:9 ___ ### signature • **signature**: *string* Defined in types/lib/index.d.ts:22 ___ ### takerAddress • **takerAddress**: *string* Defined in types/lib/index.d.ts:7 ___ ### takerAssetAmount • **takerAssetAmount**: *`BigNumber`* Defined in types/lib/index.d.ts:11 ___ ### takerAssetData • **takerAssetData**: *string* Defined in types/lib/index.d.ts:17 ___ ### takerFee • **takerFee**: *`BigNumber`* Defined in types/lib/index.d.ts:13 ___ ### takerFeeAssetData • **takerFeeAssetData**: *string* Defined in types/lib/index.d.ts:19
# Interface: EIP1193Provider ## Properties ### isEIP1193 • **isEIP1193**: *boolean* *Defined in [ethereum-types/src/index.ts:73](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L73)* ## Methods ### on ▸ **on**(`event`: [EIP1193Event](#eip1193event), `listener`: function): *this* *Defined in [ethereum-types/src/index.ts:75](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L75)* **Parameters:** ▪ **event**: *[EIP1193Event](#eip1193event)* ▪ **listener**: *function* ▸ (`result`: any): *void* **Parameters:** Name | Type | ------ | ------ | `result` | any | **Returns:** *this* ___ ### send ▸ **send**(`method`: string, `params?`: any[]): *`Promise`* *Defined in [ethereum-types/src/index.ts:74](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L74)* **Parameters:** Name | Type | ------ | ------ | `method` | string | `params?` | any[] | **Returns:** *`Promise`*
# Interface: GanacheProvider ## Methods ### sendAsync ▸ **sendAsync**(`payload`: [JSONRPCRequestPayload](_ethereum_types_src_index_.jsonrpcrequestpayload.md), `callback`: [JSONRPCErrorCallback](#jsonrpcerrorcallback)): *void* *Defined in [ethereum-types/src/index.ts:14](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L14)* **Parameters:** Name | Type | ------ | ------ | `payload` | [JSONRPCRequestPayload](#class-jsonrpcrequestpayload) | `callback` | [JSONRPCErrorCallback](#jsonrpcerrorcallback) | **Returns:** *void*
# Interface: JSONRPCRequestPayload ## Properties ### id • **id**: *number* *Defined in [ethereum-types/src/index.ts:330](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L330)* ___ ### jsonrpc • **jsonrpc**: *string* *Defined in [ethereum-types/src/index.ts:331](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L331)* ___ ### method • **method**: *string* *Defined in [ethereum-types/src/index.ts:329](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L329)* ___ ### params • **params**: *any[]* *Defined in [ethereum-types/src/index.ts:328](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L328)*
# Interface: JSONRPCResponseError ## Properties ### code • **code**: *number* *Defined in [ethereum-types/src/index.ts:336](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L336)* ___ ### message • **message**: *string* *Defined in [ethereum-types/src/index.ts:335](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L335)*
# Interface: JSONRPCResponsePayload ## Properties ### `Optional` error • **error**? : *[JSONRPCResponseError](#class-jsonrpcresponseerror)* *Defined in [ethereum-types/src/index.ts:343](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L343)* ___ ### id • **id**: *number* *Defined in [ethereum-types/src/index.ts:341](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L341)* ___ ### jsonrpc • **jsonrpc**: *string* *Defined in [ethereum-types/src/index.ts:342](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L342)* ___ ### result • **result**: *any* *Defined in [ethereum-types/src/index.ts:340](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L340)*
# Interface: Web3JsV1Provider Web3.js version 1 provider interface This provider interface was implemented in the pre-1.0Beta releases for Web3.js. This interface allowed sending synchonous requests, support for which was later dropped. ## Methods ### send ▸ **send**(`payload`: [JSONRPCRequestPayload](_ethereum_types_src_index_.jsonrpcrequestpayload.md)): *[JSONRPCResponsePayload](#class-jsonrpcresponsepayload)* *Defined in [ethereum-types/src/index.ts:45](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L45)* **Parameters:** Name | Type | ------ | ------ | `payload` | [JSONRPCRequestPayload](#class-jsonrpcrequestpayload) | **Returns:** *[JSONRPCResponsePayload](#class-jsonrpcresponsepayload)* ___ ### sendAsync ▸ **sendAsync**(`payload`: [JSONRPCRequestPayload](_ethereum_types_src_index_.jsonrpcrequestpayload.md), `callback`: [JSONRPCErrorCallback](#jsonrpcerrorcallback)): *void* *Defined in [ethereum-types/src/index.ts:44](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L44)* **Parameters:** Name | Type | ------ | ------ | `payload` | [JSONRPCRequestPayload](#class-jsonrpcrequestpayload) | `callback` | [JSONRPCErrorCallback](#jsonrpcerrorcallback) | **Returns:** *void*
# Interface: Web3JsV2Provider Web3.js version 2 provider interface This provider interface was used in a couple of Web3.js 1.0 beta releases before the first attempts to conform to EIP1193 ## Methods ### send ▸ **send**(`payload`: [JSONRPCRequestPayload](_ethereum_types_src_index_.jsonrpcrequestpayload.md), `callback`: [JSONRPCErrorCallback](#jsonrpcerrorcallback)): *void* *Defined in [ethereum-types/src/index.ts:54](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L54)* **Parameters:** Name | Type | ------ | ------ | `payload` | [JSONRPCRequestPayload](#class-jsonrpcrequestpayload) | `callback` | [JSONRPCErrorCallback](#jsonrpcerrorcallback) | **Returns:** *void*
# Interface: Web3JsV3Provider Web3.js version 3 provider interface This provider interface was implemented with the hopes for conforming to the EIP1193 spec, however it does not conform entirely. ## Methods ### send ▸ **send**(`method`: string, `params?`: any[]): *`Promise`* *Defined in [ethereum-types/src/index.ts:63](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L63)* **Parameters:** Name | Type | ------ | ------ | `method` | string | `params?` | any[] | **Returns:** *`Promise`*
# Interface: ZeroExProvider The interface for the provider used internally by 0x libraries Any property we use from any SupportedProvider should we explicitly add here ## Properties ### `Optional` isMetaMask • **isMetaMask**? : *undefined | false | true* *Defined in [ethereum-types/src/index.ts:31](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L31)* ___ ### `Optional` isParity • **isParity**? : *undefined | false | true* *Defined in [ethereum-types/src/index.ts:32](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L32)* ___ ### `Optional` isZeroExProvider • **isZeroExProvider**? : *undefined | false | true* *Defined in [ethereum-types/src/index.ts:30](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L30)* ## Methods ### `Optional` enable ▸ **enable**(): *`Promise`* *Defined in [ethereum-types/src/index.ts:34](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L34)* **Returns:** *`Promise`* ___ ### sendAsync ▸ **sendAsync**(`payload`: [JSONRPCRequestPayload](_ethereum_types_src_index_.jsonrpcrequestpayload.md), `callback`: [JSONRPCErrorCallback](#jsonrpcerrorcallback)): *void* *Defined in [ethereum-types/src/index.ts:35](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L35)* **Parameters:** Name | Type | ------ | ------ | `payload` | [JSONRPCRequestPayload](#class-jsonrpcrequestpayload) | `callback` | [JSONRPCErrorCallback](#jsonrpcerrorcallback) | **Returns:** *void* ___ ### `Optional` stop ▸ **stop**(): *void* *Defined in [ethereum-types/src/index.ts:33](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L33)* **Returns:** *void*
# Interface: SignedOrder ## Properties ### chainId • **chainId**: *number* *Inherited from [Order](#interface-order).[chainId](#chainid)* *Defined in [types/src/index.ts:14](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L14)* ___ ### exchangeAddress • **exchangeAddress**: *string* *Inherited from [Order](#interface-order).[exchangeAddress](#exchangeaddress)* *Defined in [types/src/index.ts:15](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L15)* ___ ### expirationTimeSeconds • **expirationTimeSeconds**: *`BigNumber`* *Inherited from [Order](#interface-order).[expirationTimeSeconds](#expirationtimeseconds)* *Defined in [types/src/index.ts:24](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L24)* ___ ### feeRecipientAddress • **feeRecipientAddress**: *string* *Inherited from [Order](#interface-order).[feeRecipientAddress](#feerecipientaddress)* *Defined in [types/src/index.ts:18](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L18)* ___ ### makerAddress • **makerAddress**: *string* *Inherited from [Order](#interface-order).[makerAddress](#makeraddress)* *Defined in [types/src/index.ts:16](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L16)* ___ ### makerAssetAmount • **makerAssetAmount**: *`BigNumber`* *Inherited from [Order](#interface-order).[makerAssetAmount](#makerassetamount)* *Defined in [types/src/index.ts:20](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L20)* ___ ### makerAssetData • **makerAssetData**: *string* *Inherited from [Order](#interface-order).[makerAssetData](#makerassetdata)* *Defined in [types/src/index.ts:26](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L26)* ___ ### makerFee • **makerFee**: *`BigNumber`* *Inherited from [Order](#interface-order).[makerFee](#makerfee)* *Defined in [types/src/index.ts:22](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L22)* ___ ### makerFeeAssetData • **makerFeeAssetData**: *string* *Inherited from [Order](#interface-order).[makerFeeAssetData](#makerfeeassetdata)* *Defined in [types/src/index.ts:28](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L28)* ___ ### salt • **salt**: *`BigNumber`* *Inherited from [Order](#interface-order).[salt](#salt)* *Defined in [types/src/index.ts:25](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L25)* ___ ### senderAddress • **senderAddress**: *string* *Inherited from [Order](#interface-order).[senderAddress](#senderaddress)* *Defined in [types/src/index.ts:19](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L19)* ___ ### signature • **signature**: *string* *Defined in [types/src/index.ts:33](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L33)* ___ ### takerAddress • **takerAddress**: *string* *Inherited from [Order](#interface-order).[takerAddress](#takeraddress)* *Defined in [types/src/index.ts:17](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L17)* ___ ### takerAssetAmount • **takerAssetAmount**: *`BigNumber`* *Inherited from [Order](#interface-order).[takerAssetAmount](#takerassetamount)* *Defined in [types/src/index.ts:21](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L21)* ___ ### takerAssetData • **takerAssetData**: *string* *Inherited from [Order](#interface-order).[takerAssetData](#takerassetdata)* *Defined in [types/src/index.ts:27](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L27)* ___ ### takerFee • **takerFee**: *`BigNumber`* *Inherited from [Order](#interface-order).[takerFee](#takerfee)* *Defined in [types/src/index.ts:23](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L23)* ___ ### takerFeeAssetData • **takerFeeAssetData**: *string* *Inherited from [Order](#interface-order).[takerFeeAssetData](#takerfeeassetdata)* *Defined in [types/src/index.ts:29](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/types/src/index.ts#L29)*




## Type aliases ### LiquidityRequestOpts Ƭ **LiquidityRequestOpts**: *`Pick`* *Defined in [asset-buyer/src/types.ts:83](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/asset-buyer/src/types.ts#L83)*
## Type aliases ### EIP1193Event Ƭ **EIP1193Event**: *"accountsChanged" | "networkChanged" | "close" | "connect" | "notification"* *Defined in [ethereum-types/src/index.ts:70](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L70)* Interface for providers that conform to EIP 1193 Source: https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1193.md ___ ### JSONRPCErrorCallback Ƭ **JSONRPCErrorCallback**: *function* *Defined in [ethereum-types/src/index.ts:3](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L3)* #### Type declaration: ▸ (`err`: `Error` | null, `result?`: [JSONRPCResponsePayload](#interface-jsonrpcresponsepayload)): *void* **Parameters:** Name | Type | ------ | ------ | `err` | `Error` \| null | `result?` | [JSONRPCResponsePayload](#interface-jsonrpcresponsepayload) | ___ ### SupportedProvider Ƭ **SupportedProvider**: *[Web3JsProvider](_ethereum_types_src_index_.md#web3jsprovider) | [GanacheProvider](#interface-ganacheprovider) | [EIP1193Provider](#interface-eip1193provider) | [ZeroExProvider](#interface-zeroexprovider)* *Defined in [ethereum-types/src/index.ts:9](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L9)* Do not create your own provider. Use an existing provider from a Web3 or ProviderEngine library Read more about Providers in the guides section of the 0x docs. ___ ### Web3JsProvider Ƭ **Web3JsProvider**: *[Web3JsV1Provider](#interface-web3jsv1provider) | [Web3JsV2Provider](#interface-web3jsv2provider) | [Web3JsV3Provider](#interface-web3jsv3provider)* *Defined in [ethereum-types/src/index.ts:11](https://github.com/0xProject/0x-monorepo/blob/c93b02d55/packages/ethereum-types/src/index.ts#L11)*
## Type aliases