# BinancePriceProvider\<T>

Defined in: [atomiq-sdk/src/prices/providers/BinancePriceProvider.ts:16](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/providers/BinancePriceProvider.ts#L16)

Price provider using Binance exchange API

## Extends

* `ExchangePriceProvider`<`T`>

## Type Parameters

| Type Parameter             |
| -------------------------- |
| `T` *extends* `MultiChain` |

## Constructors

### Constructor

```
new BinancePriceProvider<T>(

   coinsMap, 

   url, 

httpRequestTimeout?): BinancePriceProvider<T>;
```

Defined in: [atomiq-sdk/src/prices/providers/BinancePriceProvider.ts:18](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/providers/BinancePriceProvider.ts#L18)

#### Parameters

| Parameter             | Type                 | Default value                      |
| --------------------- | -------------------- | ---------------------------------- |
| `coinsMap`            | `CtorCoinTypes`<`T`> | `undefined`                        |
| `url`                 | `string`             | `"https://api.binance.com/api/v3"` |
| `httpRequestTimeout?` | `number`             | `undefined`                        |

#### Returns

`BinancePriceProvider`<`T`>

#### Overrides

```
ExchangePriceProvider<T>.constructor
```

## Properties

### coinsMap

```
coinsMap: CoinTypes<T> = {};
```

Defined in: [atomiq-sdk/src/prices/abstract/IPriceProvider.ts:42](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/abstract/IPriceProvider.ts#L42)

#### Inherited from

```
ExchangePriceProvider.coinsMap
```

***

### httpRequestTimeout?

```
optional httpRequestTimeout: number;
```

Defined in: [atomiq-sdk/src/prices/providers/abstract/HttpPriceProvider.ts:7](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/providers/abstract/HttpPriceProvider.ts#L7)

#### Inherited from

[`CoinGeckoPriceProvider`](https://docs.atomiq.exchange/sdk-reference/api/atomiq-sdk/src/classes/CoinGeckoPriceProvider.md).[`httpRequestTimeout`](https://docs.atomiq.exchange/sdk-reference/api/atomiq-sdk/src/classes/CoinGeckoPriceProvider.md#httprequesttimeout)

***

### url

```
url: string;
```

Defined in: [atomiq-sdk/src/prices/providers/abstract/HttpPriceProvider.ts:6](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/providers/abstract/HttpPriceProvider.ts#L6)

#### Inherited from

[`CoinGeckoPriceProvider`](https://docs.atomiq.exchange/sdk-reference/api/atomiq-sdk/src/classes/CoinGeckoPriceProvider.md).[`url`](https://docs.atomiq.exchange/sdk-reference/api/atomiq-sdk/src/classes/CoinGeckoPriceProvider.md#url)

## Methods

### getPrice()

```
getPrice<C>(

   chainIdentifier, 

   token, 

abortSignal?): Promise<bigint>;
```

Defined in: [atomiq-sdk/src/prices/abstract/IPriceProvider.ts:84](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/abstract/IPriceProvider.ts#L84)

Returns coin price in uSat (microSat)

#### Type Parameters

| Type Parameter         |
| ---------------------- |
| `C` *extends* `string` |

#### Parameters

| Parameter         | Type          | Description |
| ----------------- | ------------- | ----------- |
| `chainIdentifier` | `C`           |             |
| `token`           | `string`      |             |
| `abortSignal?`    | `AbortSignal` |             |

#### Returns

`Promise`<`bigint`>

#### Throws

if token is not found

#### Inherited from

```
ExchangePriceProvider.getPrice
```

***

### getUsdPrice()

```
getUsdPrice(abortSignal?): Promise<number>;
```

Defined in: [atomiq-sdk/src/prices/abstract/IPriceProvider.ts:106](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/abstract/IPriceProvider.ts#L106)

Returns coin price in uSat (microSat)

#### Parameters

| Parameter      | Type          | Description |
| -------------- | ------------- | ----------- |
| `abortSignal?` | `AbortSignal` |             |

#### Returns

`Promise`<`number`>

#### Throws

if token is not found

#### Inherited from

```
ExchangePriceProvider.getUsdPrice
```

***

### fetchPair()

```
protected fetchPair(pair, abortSignal?): Promise<number>;
```

Defined in: [atomiq-sdk/src/prices/providers/BinancePriceProvider.ts:25](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/providers/BinancePriceProvider.ts#L25)

#### Parameters

| Parameter      | Type          |
| -------------- | ------------- |
| `pair`         | `string`      |
| `abortSignal?` | `AbortSignal` |

#### Returns

`Promise`<`number`>

#### Inherit Doc

#### Overrides

```
ExchangePriceProvider.fetchPair
```

***

### fetchPrice()

```
protected fetchPrice(token, abortSignal?): Promise<bigint>;
```

Defined in: [atomiq-sdk/src/prices/providers/abstract/ExchangePriceProvider.ts:19](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/providers/abstract/ExchangePriceProvider.ts#L19)

#### Parameters

| Parameter      | Type          |
| -------------- | ------------- |
| `token`        | `CoinType`    |
| `abortSignal?` | `AbortSignal` |

#### Returns

`Promise`<`bigint`>

#### Inherit Doc

#### Inherited from

```
ExchangePriceProvider.fetchPrice
```

***

### fetchUsdPrice()

```
protected fetchUsdPrice(abortSignal?): Promise<number>;
```

Defined in: [atomiq-sdk/src/prices/providers/BinancePriceProvider.ts:38](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/providers/BinancePriceProvider.ts#L38)

#### Parameters

| Parameter      | Type          |
| -------------- | ------------- |
| `abortSignal?` | `AbortSignal` |

#### Returns

`Promise`<`number`>

#### Inherit Doc

#### Overrides

```
ExchangePriceProvider.fetchUsdPrice
```

***

### getDecimals()

```
protected getDecimals<C>(chainIdentifier, token): number;
```

Defined in: [atomiq-sdk/src/prices/abstract/IPriceProvider.ts:119](https://github.com/atomiqlabs/atomiq-sdk/blob/786509324f7f09c427e9ccfe527d82e496f06af5/src/prices/abstract/IPriceProvider.ts#L119)

Returns the decimal places of the specified token, or -1 if token should be ignored, returns null if token is not found

#### Type Parameters

| Type Parameter         |
| ---------------------- |
| `C` *extends* `string` |

#### Parameters

| Parameter         | Type     | Description |
| ----------------- | -------- | ----------- |
| `chainIdentifier` | `C`      |             |
| `token`           | `string` |             |

#### Returns

`number`

#### Throws

If token is not found

#### Inherited from

```
ExchangePriceProvider.getDecimals
```
