# JsonRpcProviderWithRetries

Defined in: [atomiq-chain-evm/src/evm/providers/JsonRpcProviderWithRetries.ts:15](https://github.com/atomiqlabs/atomiq-chain-evm/blob/98ca6f16fbfb37e521f8c27b4f942642fe00c2ee/src/evm/providers/JsonRpcProviderWithRetries.ts#L15)

JSON-RPC provider with built-in retry functionality for transient RPC failures.

## Extends

* `unknown`

## Constructors

### Constructor

```
new JsonRpcProviderWithRetries(

   url, 

   network?, 

   options?): JsonRpcProviderWithRetries;
```

Defined in: [atomiq-chain-evm/src/evm/providers/JsonRpcProviderWithRetries.ts:28](https://github.com/atomiqlabs/atomiq-chain-evm/blob/98ca6f16fbfb37e521f8c27b4f942642fe00c2ee/src/evm/providers/JsonRpcProviderWithRetries.ts#L28)

Creates a new JSON-RPC provider which retries RPC calls based on the provided policy.

#### Parameters

| Parameter  | Type         | Description |
| ---------- | ------------ | ----------- |
| `url`      | `any`        |             |
| `network?` | `Networkish` |             |
| `options?` | `any`        |             |

#### Returns

`JsonRpcProviderWithRetries`

#### Overrides

```
JsonRpcProvider.constructor
```

## Properties

### retryPolicy?

```
readonly optional retryPolicy: object;
```

Defined in: [atomiq-chain-evm/src/evm/providers/JsonRpcProviderWithRetries.ts:17](https://github.com/atomiqlabs/atomiq-chain-evm/blob/98ca6f16fbfb37e521f8c27b4f942642fe00c2ee/src/evm/providers/JsonRpcProviderWithRetries.ts#L17)

#### delay?

```
optional delay: number;
```

#### exponential?

```
optional exponential: boolean;
```

#### maxRetries?

```
optional maxRetries: number;
```

## Methods

### send()

```
send(method, params): Promise<any>;
```

Defined in: [atomiq-chain-evm/src/evm/providers/JsonRpcProviderWithRetries.ts:37](https://github.com/atomiqlabs/atomiq-chain-evm/blob/98ca6f16fbfb37e521f8c27b4f942642fe00c2ee/src/evm/providers/JsonRpcProviderWithRetries.ts#L37)

#### Parameters

| Parameter | Type                                  |
| --------- | ------------------------------------- |
| `method`  | `string`                              |
| `params`  | `any`\[] \| `Record`<`string`, `any`> |

#### Returns

`Promise`<`any`>
