Files
protocol/packages/website/mdx/tools/@0x/asset-swapper/v1.0.1/reference.mdx
2019-08-24 00:04:47 +02:00

2873 lines
80 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Class: InsufficientAssetLiquidityError
Error class representing insufficient asset liquidity
### Hierarchy
* `Error`
* **InsufficientAssetLiquidityError**
### Constructors
## constructer
\+ **new InsufficientAssetLiquidityError**(`amountAvailableToFill`: `BigNumber`): *[InsufficientAssetLiquidityError](#class-insufficientassetliquidityerror)*
*Defined in [errors.ts:12](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/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 [errors.ts:12](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/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`*
<hr />
# Class: BasicOrderProvider
### Hierarchy
* **BasicOrderProvider**
### Implements
* [OrderProvider](#interface-orderprovider)
### Constructors
## constructer
\+ **new BasicOrderProvider**(`orders`: `SignedOrder`[]): *[BasicOrderProvider](#class-basicorderprovider)*
*Defined in [order_providers/basic_order_provider.ts:9](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/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 [order_providers/basic_order_provider.ts:9](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/order_providers/basic_order_provider.ts#L9)*
### Methods
## getAvailableMakerAssetDatasAsync
▸ **getAvailableMakerAssetDatasAsync**(`takerAssetData`: string): *`Promise<string[]>`*
*Defined in [order_providers/basic_order_provider.ts:37](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/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<string[]>`*
An array of asset data strings that can be purchased using takerAssetData.
___
## getAvailableTakerAssetDatasAsync
▸ **getAvailableTakerAssetDatasAsync**(`makerAssetData`: string): *`Promise<string[]>`*
*Defined in [order_providers/basic_order_provider.ts:46](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/order_providers/basic_order_provider.ts#L46)*
Given a maker asset data string, return all availabled paired taker asset data strings.
**Parameters:**
Name | Type | Description |
------ | ------ | ------ |
`makerAssetData` | string | A string representing the maker asset data. |
**Returns:** *`Promise<string[]>`*
An array of asset data strings that can be used to purchased makerAssetData.
___
## getOrdersAsync
▸ **getOrdersAsync**(`orderProviderRequest`: [OrderProviderRequest](#interface-orderproviderrequest)): *`Promise<OrderProviderResponse>`*
*Defined in [order_providers/basic_order_provider.ts:24](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/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<OrderProviderResponse>`*
An instance of OrderProviderResponse. See type for more information.
<hr />
# Class: StandardRelayerAPIOrderProvider
### Hierarchy
* **StandardRelayerAPIOrderProvider**
### Implements
* [OrderProvider](#interface-orderprovider)
### Constructors
## constructer
\+ **new StandardRelayerAPIOrderProvider**(`apiUrl`: string, `networkId`: number): *[StandardRelayerAPIOrderProvider](#class-standardrelayerapiorderprovider)*
*Defined in [order_providers/standard_relayer_api_order_provider.ts:49](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/order_providers/standard_relayer_api_order_provider.ts#L49)*
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. |
`networkId` | number | The ethereum network id. |
**Returns:** *[StandardRelayerAPIOrderProvider](#class-standardrelayerapiorderprovider)*
An instance of StandardRelayerAPIOrderProvider
### Properties
## apiUrl
• **apiUrl**: *string*
*Defined in [order_providers/standard_relayer_api_order_provider.ts:18](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/order_providers/standard_relayer_api_order_provider.ts#L18)*
___
## networkId
• **networkId**: *number*
*Defined in [order_providers/standard_relayer_api_order_provider.ts:19](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/order_providers/standard_relayer_api_order_provider.ts#L19)*
### Methods
## getAvailableMakerAssetDatasAsync
▸ **getAvailableMakerAssetDatasAsync**(`takerAssetData`: string): *`Promise<string[]>`*
*Defined in [order_providers/standard_relayer_api_order_provider.ts:92](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/order_providers/standard_relayer_api_order_provider.ts#L92)*
Given a taker asset data string, return all available paired maker asset data strings.
**Parameters:**
Name | Type | Description |
------ | ------ | ------ |
`takerAssetData` | string | A string representing the taker asset data. |
**Returns:** *`Promise<string[]>`*
An array of asset data strings that can be purchased using takerAssetData.
___
## getAvailableTakerAssetDatasAsync
▸ **getAvailableTakerAssetDatasAsync**(`makerAssetData`: string): *`Promise<string[]>`*
*Defined in [order_providers/standard_relayer_api_order_provider.ts:120](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/order_providers/standard_relayer_api_order_provider.ts#L120)*
Given a maker asset data string, return all availabled paired taker asset data strings.
**Parameters:**
Name | Type | Description |
------ | ------ | ------ |
`makerAssetData` | string | A string representing the maker asset data. |
**Returns:** *`Promise<string[]>`*
An array of asset data strings that can be used to purchased makerAssetData.
___
## getOrdersAsync
▸ **getOrdersAsync**(`orderProviderRequest`: [OrderProviderRequest](#interface-orderproviderrequest)): *`Promise<OrderProviderResponse>`*
*Defined in [order_providers/standard_relayer_api_order_provider.ts:68](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/order_providers/standard_relayer_api_order_provider.ts#L68)*
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<OrderProviderResponse>`*
An instance of OrderProviderResponse. See type for more information.
<hr />
# Class: ExchangeSwapQuoteConsumer
### Hierarchy
* **ExchangeSwapQuoteConsumer**
### Implements
* [SwapQuoteConsumerBase](#exchangesmartcontractparams)*
### Constructors
## constructer
\+ **new ExchangeSwapQuoteConsumer**(`supportedProvider`: `SupportedProvider`, `options`: `Partial<SwapQuoteConsumerOpts>`): *[ExchangeSwapQuoteConsumer](#class-exchangeswapquoteconsumer)*
*Defined in [quote_consumers/exchange_swap_quote_consumer.ts:28](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/exchange_swap_quote_consumer.ts#L28)*
**Parameters:**
Name | Type | Default |
------ | ------ | ------ |
`supportedProvider` | `SupportedProvider` | - |
`options` | `Partial<SwapQuoteConsumerOpts>` | {} |
**Returns:** *[ExchangeSwapQuoteConsumer](#class-exchangeswapquoteconsumer)*
### Properties
## networkId
• **networkId**: *number*
*Defined in [quote_consumers/exchange_swap_quote_consumer.ts:26](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/exchange_swap_quote_consumer.ts#L26)*
___
## provider
• **provider**: *`ZeroExProvider`*
*Defined in [quote_consumers/exchange_swap_quote_consumer.ts:25](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/exchange_swap_quote_consumer.ts#L25)*
### Methods
## executeSwapQuoteOrThrowAsync
▸ **executeSwapQuoteOrThrowAsync**(`quote`: [SwapQuote](#swapquote), `opts`: `Partial<SwapQuoteExecutionOptsBase>`): *`Promise<string>`*
*Implementation of [SwapQuoteConsumerBase](#interface-swapquoteconsumerbase)*
*Defined in [quote_consumers/exchange_swap_quote_consumer.ts:121](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/exchange_swap_quote_consumer.ts#L121)*
**Parameters:**
Name | Type |
------ | ------ |
`quote` | [SwapQuote](#swapquote) |
`opts` | `Partial<SwapQuoteExecutionOptsBase>` |
**Returns:** *`Promise<string>`*
___
## getCalldataOrThrowAsync
▸ **getCalldataOrThrowAsync**(`quote`: [SwapQuote](#swapquote), `opts`: `Partial<SwapQuoteGetOutputOptsBase>`): *`Promise<CalldataInfo>`*
*Implementation of [SwapQuoteConsumerBase](#interface-swapquoteconsumerbase)*
*Defined in [quote_consumers/exchange_swap_quote_consumer.ts:42](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/exchange_swap_quote_consumer.ts#L42)*
**Parameters:**
Name | Type |
------ | ------ |
`quote` | [SwapQuote](#swapquote) |
`opts` | `Partial<SwapQuoteGetOutputOptsBase>` |
**Returns:** *`Promise<CalldataInfo>`*
___
## getSmartContractParamsOrThrowAsync
▸ **getSmartContractParamsOrThrowAsync**(`quote`: [SwapQuote](#swapquote), `_opts`: `Partial<SwapQuoteGetOutputOptsBase>`): *`Promise<SmartContractParamsInfo<ExchangeSmartContractParams>>`*
*Implementation of [SwapQuoteConsumerBase](#interface-swapquoteconsumerbase)*
*Defined in [quote_consumers/exchange_swap_quote_consumer.ts:70](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/exchange_swap_quote_consumer.ts#L70)*
**Parameters:**
Name | Type |
------ | ------ |
`quote` | [SwapQuote](#swapquote) |
`_opts` | `Partial<SwapQuoteGetOutputOptsBase>` |
**Returns:** *`Promise<SmartContractParamsInfo<ExchangeSmartContractParams>>`*
<hr />
# Class: ForwarderSwapQuoteConsumer
### Hierarchy
* **ForwarderSwapQuoteConsumer**
### Implements
* [SwapQuoteConsumerBase](#forwardersmartcontractparams)*
### Constructors
## constructer
\+ **new ForwarderSwapQuoteConsumer**(`supportedProvider`: `SupportedProvider`, `options`: `Partial<SwapQuoteConsumerOpts>`): *[ForwarderSwapQuoteConsumer](#class-forwarderswapquoteconsumer)*
*Defined in [quote_consumers/forwarder_swap_quote_consumer.ts:30](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/forwarder_swap_quote_consumer.ts#L30)*
**Parameters:**
Name | Type | Default |
------ | ------ | ------ |
`supportedProvider` | `SupportedProvider` | - |
`options` | `Partial<SwapQuoteConsumerOpts>` | {} |
**Returns:** *[ForwarderSwapQuoteConsumer](#class-forwarderswapquoteconsumer)*
### Properties
## networkId
• **networkId**: *number*
*Defined in [quote_consumers/forwarder_swap_quote_consumer.ts:28](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/forwarder_swap_quote_consumer.ts#L28)*
___
## provider
• **provider**: *`ZeroExProvider`*
*Defined in [quote_consumers/forwarder_swap_quote_consumer.ts:27](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/forwarder_swap_quote_consumer.ts#L27)*
### Methods
## executeSwapQuoteOrThrowAsync
▸ **executeSwapQuoteOrThrowAsync**(`quote`: [SwapQuote](#swapquote), `opts`: `Partial<ForwarderSwapQuoteExecutionOpts>`): *`Promise<string>`*
*Implementation of [SwapQuoteConsumerBase](#interface-swapquoteconsumerbase)*
*Defined in [quote_consumers/forwarder_swap_quote_consumer.ts:159](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/forwarder_swap_quote_consumer.ts#L159)*
Given a SwapQuote and desired rate (in Eth), attempt to execute the swap.
**Parameters:**
Name | Type | Description |
------ | ------ | ------ |
`quote` | [SwapQuote](#swapquote) | An object that conforms to SwapQuote. See type definition for more information. |
`opts` | `Partial<ForwarderSwapQuoteExecutionOpts>` | Options for getting CalldataInfo. See type definition for more information. |
**Returns:** *`Promise<string>`*
___
## getCalldataOrThrowAsync
▸ **getCalldataOrThrowAsync**(`quote`: [SwapQuote](#swapquote), `opts`: `Partial<ForwarderSwapQuoteGetOutputOpts>`): *`Promise<CalldataInfo>`*
*Implementation of [SwapQuoteConsumerBase](#interface-swapquoteconsumerbase)*
*Defined in [quote_consumers/forwarder_swap_quote_consumer.ts:49](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/forwarder_swap_quote_consumer.ts#L49)*
Given a SwapQuote, returns 'CalldataInfo' for a forwarder extension call. See type definition of CalldataInfo for more information.
**Parameters:**
Name | Type | Description |
------ | ------ | ------ |
`quote` | [SwapQuote](#swapquote) | An object that conforms to SwapQuote. See type definition for more information. |
`opts` | `Partial<ForwarderSwapQuoteGetOutputOpts>` | Options for getting CalldataInfo. See type definition for more information. |
**Returns:** *`Promise<CalldataInfo>`*
___
## getSmartContractParamsOrThrowAsync
▸ **getSmartContractParamsOrThrowAsync**(`quote`: [SwapQuote](#swapquote), `opts`: `Partial<ForwarderSwapQuoteGetOutputOpts>`): *`Promise<SmartContractParamsInfo<ForwarderSmartContractParams>>`*
*Implementation of [SwapQuoteConsumerBase](#interface-swapquoteconsumerbase)*
*Defined in [quote_consumers/forwarder_swap_quote_consumer.ts:81](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/forwarder_swap_quote_consumer.ts#L81)*
Given a SwapQuote, returns 'SmartContractParamsInfo' for a forwarder extension call. See type definition of CalldataInfo for more information.
**Parameters:**
Name | Type | Description |
------ | ------ | ------ |
`quote` | [SwapQuote](#swapquote) | An object that conforms to SwapQuote. See type definition for more information. |
`opts` | `Partial<ForwarderSwapQuoteGetOutputOpts>` | Options for getting SmartContractParams. See type definition for more information. |
**Returns:** *`Promise<SmartContractParamsInfo<ForwarderSmartContractParams>>`*
<hr />
# Class: SwapQuoteConsumer
### Hierarchy
* **SwapQuoteConsumer**
### Implements
* [SwapQuoteConsumerBase](#smartcontractparams)*
### Constructors
## constructer
\+ **new SwapQuoteConsumer**(`supportedProvider`: `SupportedProvider`, `options`: `Partial<SwapQuoteConsumerOpts>`): *[SwapQuoteConsumer](#class-swapquoteconsumer)*
*Defined in [quote_consumers/swap_quote_consumer.ts:30](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/swap_quote_consumer.ts#L30)*
**Parameters:**
Name | Type | Default |
------ | ------ | ------ |
`supportedProvider` | `SupportedProvider` | - |
`options` | `Partial<SwapQuoteConsumerOpts>` | {} |
**Returns:** *[SwapQuoteConsumer](#class-swapquoteconsumer)*
### Properties
## networkId
• **networkId**: *number*
*Defined in [quote_consumers/swap_quote_consumer.ts:26](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/swap_quote_consumer.ts#L26)*
___
## provider
• **provider**: *`ZeroExProvider`*
*Defined in [quote_consumers/swap_quote_consumer.ts:25](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/swap_quote_consumer.ts#L25)*
### Methods
## executeSwapQuoteOrThrowAsync
▸ **executeSwapQuoteOrThrowAsync**(`quote`: [SwapQuote](#swapquote), `opts`: `Partial<SwapQuoteExecutionOpts>`): *`Promise<string>`*
*Implementation of [SwapQuoteConsumerBase](#interface-swapquoteconsumerbase)*
*Defined in [quote_consumers/swap_quote_consumer.ts:80](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/swap_quote_consumer.ts#L80)*
Given a SwapQuote and desired rate (in takerAsset), attempt to execute the swap.
**Parameters:**
Name | Type | Description |
------ | ------ | ------ |
`quote` | [SwapQuote](#swapquote) | An object that conforms to SwapQuote. See type definition for more information. |
`opts` | `Partial<SwapQuoteExecutionOpts>` | Options for getting CalldataInfo. See type definition for more information. |
**Returns:** *`Promise<string>`*
___
## getCalldataOrThrowAsync
▸ **getCalldataOrThrowAsync**(`quote`: [SwapQuote](#swapquote), `opts`: `Partial<SwapQuoteGetOutputOpts>`): *`Promise<CalldataInfo>`*
*Implementation of [SwapQuoteConsumerBase](#interface-swapquoteconsumerbase)*
*Defined in [quote_consumers/swap_quote_consumer.ts:52](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/swap_quote_consumer.ts#L52)*
Given a SwapQuote, returns 'CalldataInfo' for a 0x exchange call. See type definition of CalldataInfo for more information.
**Parameters:**
Name | Type | Description |
------ | ------ | ------ |
`quote` | [SwapQuote](#swapquote) | An object that conforms to SwapQuote. See type definition for more information. |
`opts` | `Partial<SwapQuoteGetOutputOpts>` | Options for getting SmartContractParams. See type definition for more information. |
**Returns:** *`Promise<CalldataInfo>`*
___
## getSmartContractParamsOrThrowAsync
▸ **getSmartContractParamsOrThrowAsync**(`quote`: [SwapQuote](#swapquote), `opts`: `Partial<SwapQuoteGetOutputOpts>`): *`Promise<SmartContractParamsInfo<SmartContractParams>>`*
*Implementation of [SwapQuoteConsumerBase](#interface-swapquoteconsumerbase)*
*Defined in [quote_consumers/swap_quote_consumer.ts:66](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/quote_consumers/swap_quote_consumer.ts#L66)*
Given a SwapQuote, returns 'SmartContractParamsInfo' for a 0x exchange call. See type definition of SmartContractParamsInfo for more information.
**Parameters:**
Name | Type | Description |
------ | ------ | ------ |
`quote` | [SwapQuote](#swapquote) | An object that conforms to SwapQuote. See type definition for more information. |
`opts` | `Partial<SwapQuoteGetOutputOpts>` | Options for getting SmartContractParams. See type definition for more information. |
**Returns:** *`Promise<SmartContractParamsInfo<SmartContractParams>>`*
<hr />
# Class: SwapQuoter
### Hierarchy
* **SwapQuoter**
### Constructors
## constructer
\+ **new SwapQuoter**(`supportedProvider`: `SupportedProvider`, `orderProvider`: [OrderProvider](#interface-orderprovider), `options`: `Partial<SwapQuoterOpts>`): *[SwapQuoter](#class-swapquoter)*
*Defined in [swap_quoter.ts:92](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L92)*
Instantiates a new SwapQuoter instance
**Parameters:**
Name | Type | Default | Description |
------ | ------ | ------ | ------ |
`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<SwapQuoterOpts>` | {} | Initialization options for the SwapQuoter. See type definition for details. |
**Returns:** *[SwapQuoter](#class-swapquoter)*
An instance of SwapQuoter
### Properties
## expiryBufferMs
• **expiryBufferMs**: *number*
*Defined in [swap_quoter.ts:40](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L40)*
___
## networkId
• **networkId**: *number*
*Defined in [swap_quoter.ts:38](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L38)*
___
## orderProvider
• **orderProvider**: *[OrderProvider](#interface-orderprovider)*
*Defined in [swap_quoter.ts:37](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L37)*
___
## orderRefreshIntervalMs
• **orderRefreshIntervalMs**: *number*
*Defined in [swap_quoter.ts:39](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L39)*
___
## provider
• **provider**: *`ZeroExProvider`*
*Defined in [swap_quoter.ts:36](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L36)*
### Methods
## getAvailableMakerAssetDatasAsync
▸ **getAvailableMakerAssetDatasAsync**(`takerAssetData`: string): *`Promise<string[]>`*
*Defined in [swap_quoter.ts:290](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L290)*
Get the asset data of all assets that are purchaseable with takerAssetData in the order provider passed in at init.
**Parameters:**
Name | Type |
------ | ------ |
`takerAssetData` | string |
**Returns:** *`Promise<string[]>`*
An array of asset data strings that are purchaseable with takerAssetData.
___
## getAvailableTakerAssetDatasAsync
▸ **getAvailableTakerAssetDatasAsync**(`makerAssetData`: string): *`Promise<string[]>`*
*Defined in [swap_quoter.ts:279](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L279)*
Get the asset data of all assets that can be used to purchase makerAssetData in the order provider passed in at init.
**Parameters:**
Name | Type |
------ | ------ |
`makerAssetData` | string |
**Returns:** *`Promise<string[]>`*
An array of asset data strings that can purchase makerAssetData.
___
## getLiquidityForMakerTakerAssetDataPairAsync
▸ **getLiquidityForMakerTakerAssetDataPairAsync**(`makerAssetData`: string, `takerAssetData`: string, `options`: `Partial<LiquidityRequestOpts>`): *`Promise<LiquidityForAssetData>`*
*Defined in [swap_quoter.ts:245](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L245)*
Returns information about available liquidity for an asset
Does not factor in slippage or fees
**Parameters:**
Name | Type | Default | Description |
------ | ------ | ------ | ------ |
`makerAssetData` | string | - | The makerAssetData of the desired asset to swap for (for more info: https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md). |
`takerAssetData` | string | - | The takerAssetData of the asset to swap makerAssetData for (for more info: https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md). |
`options` | `Partial<LiquidityRequestOpts>` | {} | Options for the request. See type definition for more information. |
**Returns:** *`Promise<LiquidityForAssetData>`*
An object that conforms to LiquidityForAssetData that satisfies the request. See type definition for more information.
___
## getMarketBuySwapQuoteAsync
▸ **getMarketBuySwapQuoteAsync**(`makerTokenAddress`: string, `takerTokenAddress`: string, `makerAssetBuyAmount`: `BigNumber`, `options`: `Partial<SwapQuoteRequestOpts>`): *`Promise<SwapQuote>`*
*Defined in [swap_quoter.ts:186](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L186)*
Get a `SwapQuote` containing all information relevant to fulfilling a swap between a desired ERC20 token address and ERC20 owned by a provided address.
You can then pass the `SwapQuote` to a `SwapQuoteConsumer` to execute a buy, or process SwapQuote for on-chain consumption.
**Parameters:**
Name | Type | Default | Description |
------ | ------ | ------ | ------ |
`makerTokenAddress` | string | - | The address of the maker asset |
`takerTokenAddress` | string | - | The address of the taker asset |
`makerAssetBuyAmount` | `BigNumber` | - | The amount of maker asset to swap for. |
`options` | `Partial<SwapQuoteRequestOpts>` | {} | Options for the request. See type definition for more information. |
**Returns:** *`Promise<SwapQuote>`*
An object that conforms to SwapQuote that satisfies the request. See type definition for more information.
___
## getMarketBuySwapQuoteForAssetDataAsync
▸ **getMarketBuySwapQuoteForAssetDataAsync**(`makerAssetData`: string, `takerAssetData`: string, `makerAssetBuyAmount`: `BigNumber`, `options`: `Partial<SwapQuoteRequestOpts>`): *`Promise<MarketBuySwapQuote>`*
*Defined in [swap_quoter.ts:161](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L161)*
Get a `SwapQuote` containing all information relevant to fulfilling a swap between a desired ERC20 token address and ERC20 owned by a provided address.
You can then pass the `SwapQuote` to a `SwapQuoteConsumer` to execute a buy, or process SwapQuote for on-chain consumption.
**Parameters:**
Name | Type | Default | Description |
------ | ------ | ------ | ------ |
`makerAssetData` | string | - | The makerAssetData of the desired asset to swap for (for more info: https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md). |
`takerAssetData` | string | - | The takerAssetData of the asset to swap makerAssetData for (for more info: https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md). |
`makerAssetBuyAmount` | `BigNumber` | - | The amount of maker asset to swap for. |
`options` | `Partial<SwapQuoteRequestOpts>` | {} | Options for the request. See type definition for more information. |
**Returns:** *`Promise<MarketBuySwapQuote>`*
An object that conforms to SwapQuote that satisfies the request. See type definition for more information.
___
## getMarketSellSwapQuoteAsync
▸ **getMarketSellSwapQuoteAsync**(`makerTokenAddress`: string, `takerTokenAddress`: string, `takerAssetSellAmount`: `BigNumber`, `options`: `Partial<SwapQuoteRequestOpts>`): *`Promise<SwapQuote>`*
*Defined in [swap_quoter.ts:216](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L216)*
Get a `SwapQuote` containing all information relevant to fulfilling a swap between a desired ERC20 token address and ERC20 owned by a provided address.
You can then pass the `SwapQuote` to a `SwapQuoteConsumer` to execute a buy, or process SwapQuote for on-chain consumption.
**Parameters:**
Name | Type | Default | Description |
------ | ------ | ------ | ------ |
`makerTokenAddress` | string | - | The address of the maker asset |
`takerTokenAddress` | string | - | The address of the taker asset |
`takerAssetSellAmount` | `BigNumber` | - | The amount of taker asset to sell. |
`options` | `Partial<SwapQuoteRequestOpts>` | {} | Options for the request. See type definition for more information. |
**Returns:** *`Promise<SwapQuote>`*
An object that conforms to SwapQuote that satisfies the request. See type definition for more information.
___
## getMarketSellSwapQuoteForAssetDataAsync
▸ **getMarketSellSwapQuoteForAssetDataAsync**(`makerAssetData`: string, `takerAssetData`: string, `takerAssetSellAmount`: `BigNumber`, `options`: `Partial<SwapQuoteRequestOpts>`): *`Promise<MarketSellSwapQuote>`*
*Defined in [swap_quoter.ts:135](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L135)*
Get a `SwapQuote` containing all information relevant to fulfilling a swap between a desired ERC20 token address and ERC20 owned by a provided address.
You can then pass the `SwapQuote` to a `SwapQuoteConsumer` to execute a buy, or process SwapQuote for on-chain consumption.
**Parameters:**
Name | Type | Default | Description |
------ | ------ | ------ | ------ |
`makerAssetData` | string | - | The makerAssetData of the desired asset to swap for (for more info: https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md). |
`takerAssetData` | string | - | The takerAssetData of the asset to swap makerAssetData for (for more info: https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md). |
`takerAssetSellAmount` | `BigNumber` | - | The amount of taker asset to swap for. |
`options` | `Partial<SwapQuoteRequestOpts>` | {} | Options for the request. See type definition for more information. |
**Returns:** *`Promise<MarketSellSwapQuote>`*
An object that conforms to SwapQuote that satisfies the request. See type definition for more information.
___
## getOrdersAndFillableAmountsAsync
▸ **getOrdersAndFillableAmountsAsync**(`makerAssetData`: string, `takerAssetData`: string, `shouldForceOrderRefresh`: boolean): *`Promise<OrdersAndFillableAmounts>`*
*Defined in [swap_quoter.ts:319](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L319)*
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 |
------ | ------ | ------ |
`makerAssetData` | string | The makerAssetData of the desired asset to swap for (for more info: https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md). |
`takerAssetData` | string | The takerAssetData of the asset to swap makerAssetData for (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<OrdersAndFillableAmounts>`*
___
## isTakerAddressAllowanceEnoughForBestAndWorstQuoteInfoAsync
▸ **isTakerAddressAllowanceEnoughForBestAndWorstQuoteInfoAsync**(`swapQuote`: [SwapQuote](#swapquote), `takerAddress`: string): *`Promise<[boolean, boolean]>`*
*Defined in [swap_quoter.ts:380](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L380)*
Util function to check if takerAddress's allowance is enough for 0x exchange contracts to conduct the swap specified by the swapQuote.
**Parameters:**
Name | Type | Description |
------ | ------ | ------ |
`swapQuote` | [SwapQuote](#swapquote) | The swapQuote in question to check enough allowance enabled for 0x exchange contracts to conduct the swap. |
`takerAddress` | string | The address of the taker of the provided swapQuote |
**Returns:** *`Promise<[boolean, boolean]>`*
___
## isTakerMakerAssetDataPairAvailableAsync
▸ **isTakerMakerAssetDataPairAvailableAsync**(`makerAssetData`: string, `takerAssetData`: string): *`Promise<boolean>`*
*Defined in [swap_quoter.ts:301](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L301)*
Validates the taker + maker asset pair is available from the order provider provided to `SwapQuote`.
**Parameters:**
Name | Type |
------ | ------ |
`makerAssetData` | string |
`takerAssetData` | string |
**Returns:** *`Promise<boolean>`*
A boolean on if the taker, maker pair exists
___
## `Static` getSwapQuoterForProvidedOrders
▸ **getSwapQuoterForProvidedOrders**(`supportedProvider`: `SupportedProvider`, `orders`: `SignedOrder`[], `options`: `Partial<SwapQuoterOpts>`): *[SwapQuoter](#class-swapquoter)*
*Defined in [swap_quoter.ts:53](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L53)*
Instantiates a new SwapQuoter instance given existing liquidity in the form of orders and feeOrders.
**Parameters:**
Name | Type | Default | Description |
------ | ------ | ------ | ------ |
`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. |
`options` | `Partial<SwapQuoterOpts>` | {} | Initialization options for the SwapQuoter. See type definition for details. |
**Returns:** *[SwapQuoter](#class-swapquoter)*
An instance of SwapQuoter
___
## `Static` getSwapQuoterForStandardRelayerAPIUrl
▸ **getSwapQuoterForStandardRelayerAPIUrl**(`supportedProvider`: `SupportedProvider`, `sraApiUrl`: string, `options`: `Partial<SwapQuoterOpts>`): *[SwapQuoter](#class-swapquoter)*
*Defined in [swap_quoter.ts:73](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/swap_quoter.ts#L73)*
Instantiates a new SwapQuoter instance given a [Standard Relayer API](https://github.com/0xProject/standard-relayer-api) endpoint
**Parameters:**
Name | Type | Default | Description |
------ | ------ | ------ | ------ |
`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<SwapQuoterOpts>` | {} | Initialization options for the SwapQuoter. See type definition for details. |
**Returns:** *[SwapQuoter](#class-swapquoter)*
An instance of SwapQuoter
<hr />
# Enumeration: ConsumerType
Represents the varying smart contracts that can consume a valid swap quote
### Enumeration members
## Exchange
• **Exchange**:
*Defined in [types.ts:102](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L102)*
___
## Forwarder
• **Forwarder**:
*Defined in [types.ts:101](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L101)*
<hr />
# Enumeration: SwapQuoteConsumerError
Possible error messages thrown by an SwapQuoterConsumer instance or associated static methods.
### Enumeration members
## InvalidForwarderSwapQuote
• **InvalidForwarderSwapQuote**: = "INVALID_FORWARDER_SWAP_QUOTE_PROVIDED"
*Defined in [types.ts:304](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L304)*
___
## InvalidMarketSellOrMarketBuySwapQuote
• **InvalidMarketSellOrMarketBuySwapQuote**: = "INVALID_MARKET_BUY_SELL_SWAP_QUOTE"
*Defined in [types.ts:303](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L303)*
___
## NoAddressAvailable
• **NoAddressAvailable**: = "NO_ADDRESS_AVAILABLE"
*Defined in [types.ts:305](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L305)*
___
## SignatureRequestDenied
• **SignatureRequestDenied**: = "SIGNATURE_REQUEST_DENIED"
*Defined in [types.ts:306](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L306)*
___
## TransactionValueTooLow
• **TransactionValueTooLow**: = "TRANSACTION_VALUE_TOO_LOW"
*Defined in [types.ts:307](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L307)*
<hr />
# Enumeration: SwapQuoterError
Possible error messages thrown by an SwapQuoter instance or associated static methods.
### Enumeration members
## AssetUnavailable
• **AssetUnavailable**: = "ASSET_UNAVAILABLE"
*Defined in [types.ts:320](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L320)*
___
## InsufficientAssetLiquidity
• **InsufficientAssetLiquidity**: = "INSUFFICIENT_ASSET_LIQUIDITY"
*Defined in [types.ts:317](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L317)*
___
## InsufficientZrxLiquidity
• **InsufficientZrxLiquidity**: = "INSUFFICIENT_ZRX_LIQUIDITY"
*Defined in [types.ts:318](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L318)*
___
## InvalidOrderProviderResponse
• **InvalidOrderProviderResponse**: = "INVALID_ORDER_PROVIDER_RESPONSE"
*Defined in [types.ts:319](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L319)*
___
## NoEtherTokenContractFound
• **NoEtherTokenContractFound**: = "NO_ETHER_TOKEN_CONTRACT_FOUND"
*Defined in [types.ts:314](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L314)*
___
## NoZrxTokenContractFound
• **NoZrxTokenContractFound**: = "NO_ZRX_TOKEN_CONTRACT_FOUND"
*Defined in [types.ts:315](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L315)*
___
## StandardRelayerApiError
• **StandardRelayerApiError**: = "STANDARD_RELAYER_API_ERROR"
*Defined in [types.ts:316](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L316)*
<hr />
# Interface: CalldataInfo
Represents the metadata to call a smart contract with calldata.
calldataHexString: The hexstring of the calldata.
methodAbi: The ABI of the smart contract method to call.
toAddress: The contract address to call.
ethAmount: If provided, the eth amount in wei to send with the smart contract call.
### Hierarchy
* **CalldataInfo**
### Properties
## calldataHexString
• **calldataHexString**: *string*
*Defined in [types.ts:50](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L50)*
___
## `Optional` ethAmount
• **ethAmount**? : *`BigNumber`*
*Defined in [types.ts:53](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L53)*
___
## methodAbi
• **methodAbi**: *`MethodAbi`*
*Defined in [types.ts:51](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L51)*
___
## toAddress
• **toAddress**: *string*
*Defined in [types.ts:52](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L52)*
<hr />
# Interface: ExchangeMarketBuySmartContractParams
makerAssetFillAmount: The amount of makerAsset to swap for.
type: String specifiying which market operation will be performed with the provided parameters. (In this case a market buy operation)
### Hierarchy
* [SmartContractParamsBase](#interface-smartcontractparamsbase)
* **ExchangeMarketBuySmartContractParams**
* [ForwarderMarketBuySmartContractParams](#interface-forwardermarketbuysmartcontractparams)
### Properties
## makerAssetFillAmount
• **makerAssetFillAmount**: *`BigNumber`*
*Defined in [types.ts:84](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L84)*
___
## orders
• **orders**: *`SignedOrder`[]*
*Inherited from [SmartContractParamsBase](#orders)*
*Defined in [types.ts:75](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L75)*
___
## signatures
• **signatures**: *string[]*
*Inherited from [SmartContractParamsBase](#signatures)*
*Defined in [types.ts:76](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L76)*
___
## type
• **type**: *`Buy`*
*Defined in [types.ts:85](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L85)*
<hr />
# Interface: ExchangeMarketSellSmartContractParams
takerAssetFillAmount: The amount of takerAsset swapped for makerAsset.
type: String specifiying which market operation will be performed with the provided parameters. (In this case a market sell operation)
### Hierarchy
* [SmartContractParamsBase](#interface-smartcontractparamsbase)
* **ExchangeMarketSellSmartContractParams**
### Properties
## orders
• **orders**: *`SignedOrder`[]*
*Inherited from [SmartContractParamsBase](#orders)*
*Defined in [types.ts:75](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L75)*
___
## signatures
• **signatures**: *string[]*
*Inherited from [SmartContractParamsBase](#signatures)*
*Defined in [types.ts:76](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L76)*
___
## takerAssetFillAmount
• **takerAssetFillAmount**: *`BigNumber`*
*Defined in [types.ts:93](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L93)*
___
## type
• **type**: *`Sell`*
*Defined in [types.ts:94](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L94)*
<hr />
# Interface: ForwarderMarketBuySmartContractParams
### Hierarchy
* [ExchangeMarketBuySmartContractParams](#interface-exchangemarketbuysmartcontractparams)
* [ForwarderSmartContractParamsBase](#interface-forwardersmartcontractparamsbase)
* **ForwarderMarketBuySmartContractParams**
### Properties
## feeOrders
• **feeOrders**: *`SignedOrder`[]*
*Inherited from [ForwarderSmartContractParamsBase](#feeorders)*
*Defined in [types.ts:117](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L117)*
___
## feePercentage
• **feePercentage**: *`BigNumber`*
*Inherited from [ForwarderSmartContractParamsBase](#feepercentage)*
*Defined in [types.ts:119](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L119)*
___
## feeRecipient
• **feeRecipient**: *string*
*Inherited from [ForwarderSmartContractParamsBase](#feerecipient)*
*Defined in [types.ts:120](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L120)*
___
## feeSignatures
• **feeSignatures**: *string[]*
*Inherited from [ForwarderSmartContractParamsBase](#feesignatures)*
*Defined in [types.ts:118](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L118)*
___
## makerAssetFillAmount
• **makerAssetFillAmount**: *`BigNumber`*
*Inherited from [ExchangeMarketBuySmartContractParams](#makerassetfillamount)*
*Defined in [types.ts:84](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L84)*
___
## orders
• **orders**: *`SignedOrder`[]*
*Inherited from [SmartContractParamsBase](#orders)*
*Defined in [types.ts:75](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L75)*
___
## signatures
• **signatures**: *string[]*
*Inherited from [SmartContractParamsBase](#signatures)*
*Defined in [types.ts:76](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L76)*
___
## type
• **type**: *`Buy`*
*Inherited from [ExchangeMarketBuySmartContractParams](#type)*
*Defined in [types.ts:85](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L85)*
<hr />
# Interface: ForwarderMarketSellSmartContractParams
### Hierarchy
* object
* [ForwarderSmartContractParamsBase](#interface-forwardersmartcontractparamsbase)
* **ForwarderMarketSellSmartContractParams**
### Properties
## feeOrders
• **feeOrders**: *`SignedOrder`[]*
*Inherited from [ForwarderSmartContractParamsBase](#feeorders)*
*Defined in [types.ts:117](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L117)*
___
## feePercentage
• **feePercentage**: *`BigNumber`*
*Inherited from [ForwarderSmartContractParamsBase](#feepercentage)*
*Defined in [types.ts:119](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L119)*
___
## feeRecipient
• **feeRecipient**: *string*
*Inherited from [ForwarderSmartContractParamsBase](#feerecipient)*
*Defined in [types.ts:120](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L120)*
___
## feeSignatures
• **feeSignatures**: *string[]*
*Inherited from [ForwarderSmartContractParamsBase](#feesignatures)*
*Defined in [types.ts:118](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L118)*
<hr />
# Interface: ForwarderSmartContractParamsBase
feeOrders: An array of objects conforming to SignedOrder. These orders can be used to cover the fees for the orders param above.
feeSignatures: An array of signatures that attest that the maker of the orders in fact made the orders.
feePercentage: Optional affiliate fee percentage used to calculate the eth amount paid to fee recipient.
feeRecipient: The address where affiliate fees are sent. Defaults to null address (0x000...000).
### Hierarchy
* **ForwarderSmartContractParamsBase**
* [ForwarderMarketBuySmartContractParams](#interface-forwardermarketbuysmartcontractparams)
* [ForwarderMarketSellSmartContractParams](#interface-forwardermarketsellsmartcontractparams)
### Properties
## feeOrders
• **feeOrders**: *`SignedOrder`[]*
*Defined in [types.ts:117](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L117)*
___
## feePercentage
• **feePercentage**: *`BigNumber`*
*Defined in [types.ts:119](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L119)*
___
## feeRecipient
• **feeRecipient**: *string*
*Defined in [types.ts:120](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L120)*
___
## feeSignatures
• **feeSignatures**: *string[]*
*Defined in [types.ts:118](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L118)*
<hr />
# Interface: ForwarderSwapQuoteExecutionOpts
### Hierarchy
* [ForwarderSwapQuoteGetOutputOpts](#interface-forwarderswapquotegetoutputopts)
* [SwapQuoteExecutionOptsBase](#interface-swapquoteexecutionoptsbase)
* **ForwarderSwapQuoteExecutionOpts**
* [SwapQuoteExecutionOpts](#interface-swapquoteexecutionopts)
### Properties
## `Optional` ethAmount
• **ethAmount**? : *`BigNumber`*
*Inherited from [ForwarderSwapQuoteGetOutputOpts](#optional-ethamount)*
*Defined in [types.ts:192](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L192)*
___
## feePercentage
• **feePercentage**: *number*
*Inherited from [ForwarderSwapQuoteGetOutputOpts](#feepercentage)*
*Defined in [types.ts:190](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L190)*
___
## feeRecipient
• **feeRecipient**: *string*
*Inherited from [ForwarderSwapQuoteGetOutputOpts](#feerecipient)*
*Defined in [types.ts:191](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L191)*
___
## `Optional` gasLimit
• **gasLimit**? : *undefined | number*
*Inherited from [SwapQuoteExecutionOptsBase](#optional-gaslimit)*
*Defined in [types.ts:180](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L180)*
___
## `Optional` gasPrice
• **gasPrice**? : *`BigNumber`*
*Inherited from [SwapQuoteExecutionOptsBase](#optional-gasprice)*
*Defined in [types.ts:181](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L181)*
___
## `Optional` takerAddress
• **takerAddress**? : *undefined | string*
*Inherited from [SwapQuoteExecutionOptsBase](#optional-takeraddress)*
*Defined in [types.ts:179](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L179)*
<hr />
# Interface: ForwarderSwapQuoteGetOutputOpts
feePercentage: percentage (up to 5%) of the taker asset paid to feeRecipient
feeRecipient: address of the receiver of the feePercentage of taker asset
ethAmount: The amount of eth (in Wei) sent to the forwarder contract.
### Hierarchy
* [SwapQuoteGetOutputOptsBase](#interface-swapquotegetoutputoptsbase)
* **ForwarderSwapQuoteGetOutputOpts**
* [SwapQuoteGetOutputOpts](#interface-swapquotegetoutputopts)
* [ForwarderSwapQuoteExecutionOpts](#interface-forwarderswapquoteexecutionopts)
### Properties
## `Optional` ethAmount
• **ethAmount**? : *`BigNumber`*
*Defined in [types.ts:192](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L192)*
___
## feePercentage
• **feePercentage**: *number*
*Defined in [types.ts:190](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L190)*
___
## feeRecipient
• **feeRecipient**: *string*
*Defined in [types.ts:191](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L191)*
<hr />
# Interface: LiquidityForAssetData
Represents available liquidity for a given assetData
### Hierarchy
* **LiquidityForAssetData**
### Properties
## makerTokensAvailableInBaseUnits
• **makerTokensAvailableInBaseUnits**: *`BigNumber`*
*Defined in [types.ts:336](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L336)*
___
## takerTokensAvailableInBaseUnits
• **takerTokensAvailableInBaseUnits**: *`BigNumber`*
*Defined in [types.ts:337](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L337)*
<hr />
# Interface: MarketBuySwapQuote
makerAssetFillAmount: The amount of makerAsset bought with takerAsset.
type: Specified MarketOperation the SwapQuote is provided for
### Hierarchy
* [SwapQuoteBase](#interface-swapquotebase)
* **MarketBuySwapQuote**
* [MarketBuySwapQuoteWithAffiliateFee](#interface-marketbuyswapquotewithaffiliatefee)
### Properties
## bestCaseQuoteInfo
• **bestCaseQuoteInfo**: *[SwapQuoteInfo](#interface-swapquoteinfo)*
*Inherited from [SwapQuoteBase](#bestcasequoteinfo)*
*Defined in [types.ts:226](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L226)*
___
## feeOrders
• **feeOrders**: *`SignedOrder`[]*
*Inherited from [SwapQuoteBase](#feeorders)*
*Defined in [types.ts:225](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L225)*
___
## makerAssetData
• **makerAssetData**: *string*
*Inherited from [SwapQuoteBase](#makerassetdata)*
*Defined in [types.ts:223](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L223)*
___
## makerAssetFillAmount
• **makerAssetFillAmount**: *`BigNumber`*
*Defined in [types.ts:244](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L244)*
___
## orders
• **orders**: *`SignedOrder`[]*
*Inherited from [SwapQuoteBase](#orders)*
*Defined in [types.ts:224](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L224)*
___
## takerAssetData
• **takerAssetData**: *string*
*Inherited from [SwapQuoteBase](#takerassetdata)*
*Defined in [types.ts:222](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L222)*
___
## type
• **type**: *`Buy`*
*Defined in [types.ts:245](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L245)*
___
## worstCaseQuoteInfo
• **worstCaseQuoteInfo**: *[SwapQuoteInfo](#interface-swapquoteinfo)*
*Inherited from [SwapQuoteBase](#worstcasequoteinfo)*
*Defined in [types.ts:227](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L227)*
<hr />
# Interface: MarketBuySwapQuoteWithAffiliateFee
### Hierarchy
* [SwapQuoteWithAffiliateFeeBase](#interface-swapquotewithaffiliatefeebase)
* [MarketBuySwapQuote](#interface-marketbuyswapquote)
* **MarketBuySwapQuoteWithAffiliateFee**
### Properties
## bestCaseQuoteInfo
• **bestCaseQuoteInfo**: *[SwapQuoteInfo](#interface-swapquoteinfo)*
*Inherited from [SwapQuoteBase](#bestcasequoteinfo)*
*Defined in [types.ts:226](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L226)*
___
## feeOrders
• **feeOrders**: *`SignedOrder`[]*
*Inherited from [SwapQuoteBase](#feeorders)*
*Defined in [types.ts:225](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L225)*
___
## feePercentage
• **feePercentage**: *number*
*Inherited from [SwapQuoteWithAffiliateFeeBase](#feepercentage)*
*Defined in [types.ts:249](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L249)*
___
## makerAssetData
• **makerAssetData**: *string*
*Inherited from [SwapQuoteBase](#makerassetdata)*
*Defined in [types.ts:223](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L223)*
___
## makerAssetFillAmount
• **makerAssetFillAmount**: *`BigNumber`*
*Inherited from [MarketBuySwapQuote](#makerassetfillamount)*
*Defined in [types.ts:244](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L244)*
___
## orders
• **orders**: *`SignedOrder`[]*
*Inherited from [SwapQuoteBase](#orders)*
*Defined in [types.ts:224](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L224)*
___
## takerAssetData
• **takerAssetData**: *string*
*Inherited from [SwapQuoteBase](#takerassetdata)*
*Defined in [types.ts:222](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L222)*
___
## type
• **type**: *`Buy`*
*Inherited from [MarketBuySwapQuote](#type)*
*Defined in [types.ts:245](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L245)*
___
## worstCaseQuoteInfo
• **worstCaseQuoteInfo**: *[SwapQuoteInfo](#interface-swapquoteinfo)*
*Inherited from [SwapQuoteBase](#worstcasequoteinfo)*
*Defined in [types.ts:227](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L227)*
<hr />
# Interface: MarketSellSwapQuote
takerAssetFillAmount: The amount of takerAsset sold for makerAsset.
type: Specified MarketOperation the SwapQuote is provided for
### Hierarchy
* [SwapQuoteBase](#interface-swapquotebase)
* **MarketSellSwapQuote**
* [MarketSellSwapQuoteWithAffiliateFee](#interface-marketsellswapquotewithaffiliatefee)
### Properties
## bestCaseQuoteInfo
• **bestCaseQuoteInfo**: *[SwapQuoteInfo](#interface-swapquoteinfo)*
*Inherited from [SwapQuoteBase](#bestcasequoteinfo)*
*Defined in [types.ts:226](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L226)*
___
## feeOrders
• **feeOrders**: *`SignedOrder`[]*
*Inherited from [SwapQuoteBase](#feeorders)*
*Defined in [types.ts:225](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L225)*
___
## makerAssetData
• **makerAssetData**: *string*
*Inherited from [SwapQuoteBase](#makerassetdata)*
*Defined in [types.ts:223](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L223)*
___
## orders
• **orders**: *`SignedOrder`[]*
*Inherited from [SwapQuoteBase](#orders)*
*Defined in [types.ts:224](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L224)*
___
## takerAssetData
• **takerAssetData**: *string*
*Inherited from [SwapQuoteBase](#takerassetdata)*
*Defined in [types.ts:222](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L222)*
___
## takerAssetFillAmount
• **takerAssetFillAmount**: *`BigNumber`*
*Defined in [types.ts:235](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L235)*
___
## type
• **type**: *`Sell`*
*Defined in [types.ts:236](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L236)*
___
## worstCaseQuoteInfo
• **worstCaseQuoteInfo**: *[SwapQuoteInfo](#interface-swapquoteinfo)*
*Inherited from [SwapQuoteBase](#worstcasequoteinfo)*
*Defined in [types.ts:227](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L227)*
<hr />
# Interface: MarketSellSwapQuoteWithAffiliateFee
### Hierarchy
* [SwapQuoteWithAffiliateFeeBase](#interface-swapquotewithaffiliatefeebase)
* [MarketSellSwapQuote](#interface-marketsellswapquote)
* **MarketSellSwapQuoteWithAffiliateFee**
### Properties
## bestCaseQuoteInfo
• **bestCaseQuoteInfo**: *[SwapQuoteInfo](#interface-swapquoteinfo)*
*Inherited from [SwapQuoteBase](#bestcasequoteinfo)*
*Defined in [types.ts:226](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L226)*
___
## feeOrders
• **feeOrders**: *`SignedOrder`[]*
*Inherited from [SwapQuoteBase](#feeorders)*
*Defined in [types.ts:225](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L225)*
___
## feePercentage
• **feePercentage**: *number*
*Inherited from [SwapQuoteWithAffiliateFeeBase](#feepercentage)*
*Defined in [types.ts:249](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L249)*
___
## makerAssetData
• **makerAssetData**: *string*
*Inherited from [SwapQuoteBase](#makerassetdata)*
*Defined in [types.ts:223](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L223)*
___
## orders
• **orders**: *`SignedOrder`[]*
*Inherited from [SwapQuoteBase](#orders)*
*Defined in [types.ts:224](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L224)*
___
## takerAssetData
• **takerAssetData**: *string*
*Inherited from [SwapQuoteBase](#takerassetdata)*
*Defined in [types.ts:222](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L222)*
___
## takerAssetFillAmount
• **takerAssetFillAmount**: *`BigNumber`*
*Inherited from [MarketSellSwapQuote](#takerassetfillamount)*
*Defined in [types.ts:235](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L235)*
___
## type
• **type**: *`Sell`*
*Inherited from [MarketSellSwapQuote](#type)*
*Defined in [types.ts:236](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L236)*
___
## worstCaseQuoteInfo
• **worstCaseQuoteInfo**: *[SwapQuoteInfo](#interface-swapquoteinfo)*
*Inherited from [SwapQuoteBase](#worstcasequoteinfo)*
*Defined in [types.ts:227](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L227)*
<hr />
# Interface: OrderProvider
gerOrdersAsync: Given an OrderProviderRequest, get an OrderProviderResponse.
getAvailableMakerAssetDatasAsync: Given a taker asset data string, return all availabled paired maker asset data strings.
getAvailableTakerAssetDatasAsync: Given a maker asset data string, return all availabled paired taker asset data strings.
### Hierarchy
* **OrderProvider**
### Implemented by
* [BasicOrderProvider](#class-basicorderprovider)
* [StandardRelayerAPIOrderProvider](#class-standardrelayerapiorderprovider)
### Properties
## getAvailableMakerAssetDatasAsync
• **getAvailableMakerAssetDatasAsync**: *function*
*Defined in [types.ts:38](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L38)*
#### Type declaration:
▸ (`takerAssetData`: string): *`Promise<string[]>`*
**Parameters:**
Name | Type |
------ | ------ |
`takerAssetData` | string |
___
## getAvailableTakerAssetDatasAsync
• **getAvailableTakerAssetDatasAsync**: *function*
*Defined in [types.ts:39](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L39)*
#### Type declaration:
▸ (`makerAssetData`: string): *`Promise<string[]>`*
**Parameters:**
Name | Type |
------ | ------ |
`makerAssetData` | string |
___
## getOrdersAsync
• **getOrdersAsync**: *function*
*Defined in [types.ts:37](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L37)*
#### Type declaration:
▸ (`orderProviderRequest`: [OrderProviderRequest](#interface-orderproviderrequest)): *`Promise<OrderProviderResponse>`*
**Parameters:**
Name | Type |
------ | ------ |
`orderProviderRequest` | [OrderProviderRequest](#interface-orderproviderrequest) |
<hr />
# Interface: OrderProviderRequest
makerAssetData: The assetData representing the desired makerAsset.
takerAssetData: The assetData representing the desired takerAsset.
networkId: The networkId that the desired orders should be for.
### Hierarchy
* **OrderProviderRequest**
### Properties
## makerAssetData
• **makerAssetData**: *string*
*Defined in [types.ts:11](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L11)*
___
## networkId
• **networkId**: *number*
*Defined in [types.ts:13](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L13)*
___
## takerAssetData
• **takerAssetData**: *string*
*Defined in [types.ts:12](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L12)*
<hr />
# Interface: OrderProviderResponse
orders: An array of orders with optional remaining fillable makerAsset amounts. See type for more info.
### Hierarchy
* **OrderProviderResponse**
### Properties
## orders
• **orders**: *[SignedOrderWithRemainingFillableMakerAssetAmount](#interface-signedorderwithremainingfillablemakerassetamount)[]*
*Defined in [types.ts:20](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L20)*
<hr />
# Interface: OrdersAndFillableAmounts
orders: An array of signed orders
remainingFillableMakerAssetAmounts: A list of fillable amounts for the signed orders. The index of an item in the array associates the amount with the corresponding order.
### Hierarchy
* **OrdersAndFillableAmounts**
### Properties
## orders
• **orders**: *`SignedOrder`[]*
*Defined in [types.ts:328](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L328)*
___
## remainingFillableMakerAssetAmounts
• **remainingFillableMakerAssetAmounts**: *`BigNumber`[]*
*Defined in [types.ts:329](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L329)*
<hr />
# Interface: SignedOrderWithRemainingFillableMakerAssetAmount
A normal SignedOrder with one extra optional property `remainingFillableMakerAssetAmount`
remainingFillableMakerAssetAmount: The amount of the makerAsset that is available to be filled
### Hierarchy
* `SignedOrder`
* **SignedOrderWithRemainingFillableMakerAssetAmount**
### Properties
## exchangeAddress
• **exchangeAddress**: *string*
___
## expirationTimeSeconds
• **expirationTimeSeconds**: *`BigNumber`*
___
## feeRecipientAddress
• **feeRecipientAddress**: *string*
___
## makerAddress
• **makerAddress**: *string*
___
## makerAssetAmount
• **makerAssetAmount**: *`BigNumber`*
___
## makerAssetData
• **makerAssetData**: *string*
___
## makerFee
• **makerFee**: *`BigNumber`*
___
## `Optional` remainingFillableMakerAssetAmount
• **remainingFillableMakerAssetAmount**? : *`BigNumber`*
*Defined in [types.ts:28](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L28)*
___
## salt
• **salt**: *`BigNumber`*
___
## senderAddress
• **senderAddress**: *string*
___
## signature
• **signature**: *string*
___
## takerAddress
• **takerAddress**: *string*
___
## takerAssetAmount
• **takerAssetAmount**: *`BigNumber`*
___
## takerAssetData
• **takerAssetData**: *string*
___
## takerFee
• **takerFee**: *`BigNumber`*
<hr />
# Interface: SmartContractParamsBase
orders: An array of objects conforming to SignedOrder. These orders can be used to cover the requested assetBuyAmount plus slippage.
signatures: An array of signatures that attest that the maker of the orders in fact made the orders.
### Hierarchy
* **SmartContractParamsBase**
* [ExchangeMarketBuySmartContractParams](#interface-exchangemarketbuysmartcontractparams)
* [ExchangeMarketSellSmartContractParams](#interface-exchangemarketsellsmartcontractparams)
### Properties
## orders
• **orders**: *`SignedOrder`[]*
*Defined in [types.ts:75](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L75)*
___
## signatures
• **signatures**: *string[]*
*Defined in [types.ts:76](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L76)*
<hr />
# Interface: SmartContractParamsInfo <**T**>
Represents the metadata to call a smart contract with parameters.
params: The metadata object containing all the input parameters of a smart contract call.
toAddress: The contract address to call.
ethAmount: If provided, the eth amount in wei to send with the smart contract call.
methodAbi: The ABI of the smart contract method to call with params.
### Type parameters
▪ **T**
### Hierarchy
* **SmartContractParamsInfo**
### Properties
## `Optional` ethAmount
• **ethAmount**? : *`BigNumber`*
*Defined in [types.ts:66](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L66)*
___
## methodAbi
• **methodAbi**: *`MethodAbi`*
*Defined in [types.ts:67](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L67)*
___
## params
• **params**: *`T`*
*Defined in [types.ts:64](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L64)*
___
## toAddress
• **toAddress**: *string*
*Defined in [types.ts:65](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L65)*
<hr />
# Interface: SwapQuoteBase
takerAssetData: String that represents a specific taker asset (for more info: https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md).
makerAssetData: String that represents a specific maker asset (for more info: https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md).
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.
bestCaseQuoteInfo: Info about the best case price for the asset.
worstCaseQuoteInfo: Info about the worst case price for the asset.
### Hierarchy
* **SwapQuoteBase**
* [MarketSellSwapQuote](#interface-marketsellswapquote)
* [MarketBuySwapQuote](#interface-marketbuyswapquote)
### Properties
## bestCaseQuoteInfo
• **bestCaseQuoteInfo**: *[SwapQuoteInfo](#interface-swapquoteinfo)*
*Defined in [types.ts:226](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L226)*
___
## feeOrders
• **feeOrders**: *`SignedOrder`[]*
*Defined in [types.ts:225](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L225)*
___
## makerAssetData
• **makerAssetData**: *string*
*Defined in [types.ts:223](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L223)*
___
## orders
• **orders**: *`SignedOrder`[]*
*Defined in [types.ts:224](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L224)*
___
## takerAssetData
• **takerAssetData**: *string*
*Defined in [types.ts:222](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L222)*
___
## worstCaseQuoteInfo
• **worstCaseQuoteInfo**: *[SwapQuoteInfo](#interface-swapquoteinfo)*
*Defined in [types.ts:227](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L227)*
<hr />
# Interface: SwapQuoteConsumerBase <**T**>
Interface that varying SwapQuoteConsumers adhere to (exchange consumer, router consumer, forwarder consumer, coordinator consumer)
getCalldataOrThrow: Get CalldataInfo to swap for tokens with provided SwapQuote. Throws if invalid SwapQuote is provided.
getSmartContractParamsOrThrow: Get SmartContractParamsInfo to swap for tokens with provided SwapQuote. Throws if invalid SwapQuote is provided.
executeSwapQuoteOrThrowAsync: Executes a web3 transaction to swap for tokens with provided SwapQuote. Throws if invalid SwapQuote is provided.
### Type parameters
▪ **T**
### Hierarchy
* **SwapQuoteConsumerBase**
### Implemented by
* [ExchangeSwapQuoteConsumer](#class-exchangeswapquoteconsumer)
* [ForwarderSwapQuoteConsumer](#class-forwarderswapquoteconsumer)
* [SwapQuoteConsumer](#class-swapquoteconsumer)
### Methods
## executeSwapQuoteOrThrowAsync
▸ **executeSwapQuoteOrThrowAsync**(`quote`: [SwapQuote](#swapquote), `opts`: `Partial<SwapQuoteExecutionOptsBase>`): *`Promise<string>`*
*Defined in [types.ts:158](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L158)*
**Parameters:**
Name | Type |
------ | ------ |
`quote` | [SwapQuote](#swapquote) |
`opts` | `Partial<SwapQuoteExecutionOptsBase>` |
**Returns:** *`Promise<string>`*
___
## getCalldataOrThrowAsync
▸ **getCalldataOrThrowAsync**(`quote`: [SwapQuote](#swapquote), `opts`: `Partial<SwapQuoteGetOutputOptsBase>`): *`Promise<CalldataInfo>`*
*Defined in [types.ts:153](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L153)*
**Parameters:**
Name | Type |
------ | ------ |
`quote` | [SwapQuote](#swapquote) |
`opts` | `Partial<SwapQuoteGetOutputOptsBase>` |
**Returns:** *`Promise<CalldataInfo>`*
___
## getSmartContractParamsOrThrowAsync
▸ **getSmartContractParamsOrThrowAsync**(`quote`: [SwapQuote](#swapquote), `opts`: `Partial<SwapQuoteGetOutputOptsBase>`): *`Promise<SmartContractParamsInfo<T>>`*
*Defined in [types.ts:154](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L154)*
**Parameters:**
Name | Type |
------ | ------ |
`quote` | [SwapQuote](#swapquote) |
`opts` | `Partial<SwapQuoteGetOutputOptsBase>` |
**Returns:** *`Promise<SmartContractParamsInfo<T>>`*
<hr />
# Interface: SwapQuoteConsumerOpts
networkId: The networkId that the desired orders should be for.
### Hierarchy
* **SwapQuoteConsumerOpts**
### Properties
## networkId
• **networkId**: *number*
*Defined in [types.ts:165](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L165)*
<hr />
# Interface: SwapQuoteExecutionOpts
Represents the options for executing a swap quote with SwapQuoteConsumer
### Hierarchy
* [SwapQuoteGetOutputOpts](#interface-swapquotegetoutputopts)
* [ForwarderSwapQuoteExecutionOpts](#interface-forwarderswapquoteexecutionopts)
* **SwapQuoteExecutionOpts**
### Properties
## `Optional` ethAmount
• **ethAmount**? : *`BigNumber`*
*Inherited from [ForwarderSwapQuoteGetOutputOpts](#optional-ethamount)*
*Overrides [ForwarderSwapQuoteGetOutputOpts](#optional-ethamount)*
*Defined in [types.ts:192](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L192)*
___
## feePercentage
• **feePercentage**: *number*
*Inherited from [ForwarderSwapQuoteGetOutputOpts](#feepercentage)*
*Overrides [ForwarderSwapQuoteGetOutputOpts](#feepercentage)*
*Defined in [types.ts:190](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L190)*
___
## feeRecipient
• **feeRecipient**: *string*
*Inherited from [ForwarderSwapQuoteGetOutputOpts](#feerecipient)*
*Overrides [ForwarderSwapQuoteGetOutputOpts](#feerecipient)*
*Defined in [types.ts:191](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L191)*
___
## `Optional` gasLimit
• **gasLimit**? : *undefined | number*
*Inherited from [SwapQuoteExecutionOptsBase](#optional-gaslimit)*
*Defined in [types.ts:180](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L180)*
___
## `Optional` gasPrice
• **gasPrice**? : *`BigNumber`*
*Inherited from [SwapQuoteExecutionOptsBase](#optional-gasprice)*
*Defined in [types.ts:181](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L181)*
___
## `Optional` takerAddress
• **takerAddress**? : *undefined | string*
*Inherited from [SwapQuoteGetOutputOpts](#optional-takeraddress)*
*Overrides [SwapQuoteExecutionOptsBase](#optional-takeraddress)*
*Defined in [types.ts:202](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L202)*
___
## `Optional` useConsumerType
• **useConsumerType**? : *[ConsumerType](#enumeration-consumertype)*
*Inherited from [SwapQuoteGetOutputOpts](#optional-useconsumertype)*
*Defined in [types.ts:203](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L203)*
<hr />
# Interface: SwapQuoteExecutionOptsBase
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
### Hierarchy
* [SwapQuoteGetOutputOptsBase](#interface-swapquotegetoutputoptsbase)
* **SwapQuoteExecutionOptsBase**
* [ForwarderSwapQuoteExecutionOpts](#interface-forwarderswapquoteexecutionopts)
### Properties
## `Optional` gasLimit
• **gasLimit**? : *undefined | number*
*Defined in [types.ts:180](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L180)*
___
## `Optional` gasPrice
• **gasPrice**? : *`BigNumber`*
*Defined in [types.ts:181](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L181)*
___
## `Optional` takerAddress
• **takerAddress**? : *undefined | string*
*Defined in [types.ts:179](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L179)*
<hr />
# Interface: SwapQuoteGetOutputOpts
takerAddress: The address to perform the buy. Defaults to the first available address from the provider.
useConsumerType: If provided, defaults the SwapQuoteConsumer to create output consumed by ConsumerType.
### Hierarchy
* [ForwarderSwapQuoteGetOutputOpts](#interface-forwarderswapquotegetoutputopts)
* **SwapQuoteGetOutputOpts**
* [SwapQuoteExecutionOpts](#interface-swapquoteexecutionopts)
### Properties
## `Optional` ethAmount
• **ethAmount**? : *`BigNumber`*
*Inherited from [ForwarderSwapQuoteGetOutputOpts](#optional-ethamount)*
*Defined in [types.ts:192](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L192)*
___
## feePercentage
• **feePercentage**: *number*
*Inherited from [ForwarderSwapQuoteGetOutputOpts](#feepercentage)*
*Defined in [types.ts:190](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L190)*
___
## feeRecipient
• **feeRecipient**: *string*
*Inherited from [ForwarderSwapQuoteGetOutputOpts](#feerecipient)*
*Defined in [types.ts:191](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L191)*
___
## `Optional` takerAddress
• **takerAddress**? : *undefined | string*
*Defined in [types.ts:202](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L202)*
___
## `Optional` useConsumerType
• **useConsumerType**? : *[ConsumerType](#enumeration-consumertype)*
*Defined in [types.ts:203](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L203)*
<hr />
# Interface: SwapQuoteGetOutputOptsBase
Represents the options provided to a generic SwapQuoteConsumer
### Hierarchy
* **SwapQuoteGetOutputOptsBase**
* [SwapQuoteExecutionOptsBase](#interface-swapquoteexecutionoptsbase)
* [ForwarderSwapQuoteGetOutputOpts](#interface-forwarderswapquotegetoutputopts)
<hr />
# Interface: SwapQuoteInfo
feeTakerTokenAmount: The amount of takerToken required any fee concerned with completing the swap.
takerTokenAmount: The amount of takerToken required to conduct the swap.
totalTakerTokenAmount: The total amount of takerToken required to complete the swap (filling orders, feeOrders, and paying affiliate fee)
makerTokenAmount: The amount of makerToken that will be acquired through the swap.
### Hierarchy
* **SwapQuoteInfo**
### Properties
## feeTakerTokenAmount
• **feeTakerTokenAmount**: *`BigNumber`*
*Defined in [types.ts:265](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L265)*
___
## makerTokenAmount
• **makerTokenAmount**: *`BigNumber`*
*Defined in [types.ts:268](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L268)*
___
## takerTokenAmount
• **takerTokenAmount**: *`BigNumber`*
*Defined in [types.ts:267](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L267)*
___
## totalTakerTokenAmount
• **totalTakerTokenAmount**: *`BigNumber`*
*Defined in [types.ts:266](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L266)*
<hr />
# Interface: SwapQuoteRequestOpts
shouldForceOrderRefresh: If set to true, new orders and state will be fetched instead of waiting for the next orderRefreshIntervalMs. Defaults to false.
shouldDisableRequestingFeeOrders: If set to true, requesting a swapQuote will not perform any computation or requests for fees.
slippagePercentage: The percentage buffer to add to account for slippage. Affects max ETH price estimates. Defaults to 0.2 (20%).
### Hierarchy
* **SwapQuoteRequestOpts**
### Properties
## shouldDisableRequestingFeeOrders
• **shouldDisableRequestingFeeOrders**: *boolean*
*Defined in [types.ts:278](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L278)*
___
## shouldForceOrderRefresh
• **shouldForceOrderRefresh**: *boolean*
*Defined in [types.ts:277](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L277)*
___
## slippagePercentage
• **slippagePercentage**: *number*
*Defined in [types.ts:279](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L279)*
<hr />
# Interface: SwapQuoterOpts
networkId: The ethereum network id. Defaults to 1 (mainnet).
orderRefreshIntervalMs: The interval in ms that getBuyQuoteAsync should trigger an refresh of orders and order states. Defaults to 10000ms (10s).
expiryBufferMs: The number of seconds to add when calculating whether an order is expired or not. Defaults to 300s (5m).
### Hierarchy
* **SwapQuoterOpts**
### Properties
## expiryBufferMs
• **expiryBufferMs**: *number*
*Defined in [types.ts:296](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L296)*
___
## networkId
• **networkId**: *number*
*Defined in [types.ts:294](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L294)*
___
## orderRefreshIntervalMs
• **orderRefreshIntervalMs**: *number*
*Defined in [types.ts:295](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L295)*
<hr />
# Interface: SwapQuoteWithAffiliateFeeBase
### Hierarchy
* **SwapQuoteWithAffiliateFeeBase**
* [MarketSellSwapQuoteWithAffiliateFee](#interface-marketsellswapquotewithaffiliatefee)
* [MarketBuySwapQuoteWithAffiliateFee](#interface-marketbuyswapquotewithaffiliatefee)
### Properties
## feePercentage
• **feePercentage**: *number*
*Defined in [types.ts:249](https://github.com/0xProject/0x-monorepo/blob/a6f43f536/packages/asset-swapper/src/types.ts#L249)*
<hr />