# CitreaFees

Defined in: [atomiq-chain-evm/src/chains/citrea/CitreaFees.ts:7](https://github.com/atomiqlabs/atomiq-chain-evm/blob/98ca6f16fbfb37e521f8c27b4f942642fe00c2ee/src/chains/citrea/CitreaFees.ts#L7)

## Extends

* [`EVMFees`](https://docs.atomiq.exchange/sdk-reference/api/atomiq-chain-evm/src/classes/EVMFees.md)

## Constructors

### Constructor

```
new CitreaFees(

   provider, 

   maxFeeRatePerGas, 

   priorityFee, 

   feeMultiplier): CitreaFees;
```

Defined in: [atomiq-chain-evm/src/evm/chain/modules/EVMFees.ts:59](https://github.com/atomiqlabs/atomiq-chain-evm/blob/98ca6f16fbfb37e521f8c27b4f942642fe00c2ee/src/evm/chain/modules/EVMFees.ts#L59)

#### Parameters

| Parameter          | Type                 | Default value | Description                                                         |
| ------------------ | -------------------- | ------------- | ------------------------------------------------------------------- |
| `provider`         | `JsonRpcApiProvider` | `undefined`   | Underlying RPC provider providing read access to the EVM network    |
| `maxFeeRatePerGas` | `bigint`             | `...`         | Maximum fee rate for a transaction, default to 500 GWei             |
| `priorityFee`      | `bigint`             | `...`         | Priority fee (or tip) to add to the transactions, default to 1 GWei |
| `feeMultiplier`    | `number`             | `1.25`        | Fee multiplier to multiply the RPC-returned fee rate with           |

#### Returns

`CitreaFees`

#### Inherited from

[`EVMFees`](https://docs.atomiq.exchange/sdk-reference/api/atomiq-chain-evm/src/classes/EVMFees.md).[`constructor`](https://docs.atomiq.exchange/sdk-reference/api/atomiq-chain-evm/src/classes/EVMFees.md#constructor)

## Methods

### applyFeeRate()

```
static applyFeeRate(

   tx, 

   gas, 

   feeRate): void;
```

Defined in: [atomiq-chain-evm/src/evm/chain/modules/EVMFees.ts:137](https://github.com/atomiqlabs/atomiq-chain-evm/blob/98ca6f16fbfb37e521f8c27b4f942642fe00c2ee/src/evm/chain/modules/EVMFees.ts#L137)

Applies the gas limit and fee rate to a transaction

#### Parameters

| Parameter | Type                 | Description                                                                         |
| --------- | -------------------- | ----------------------------------------------------------------------------------- |
| `tx`      | `TransactionRequest` | EVM Transaction to apply the fee rate to                                            |
| `gas`     | `number`             | Gas limit to add to the transaction                                                 |
| `feeRate` | `string`             | Serialized fee rate to add to the transaction, in format: `<baseFee>,<priorityFee>` |

#### Returns

`void`

#### Inherited from

[`EVMFees`](https://docs.atomiq.exchange/sdk-reference/api/atomiq-chain-evm/src/classes/EVMFees.md).[`applyFeeRate`](https://docs.atomiq.exchange/sdk-reference/api/atomiq-chain-evm/src/classes/EVMFees.md#applyfeerate)

***

### getFeeRate()

```
getFeeRate(): Promise<string>;
```

Defined in: [atomiq-chain-evm/src/chains/citrea/CitreaFees.ts:38](https://github.com/atomiqlabs/atomiq-chain-evm/blob/98ca6f16fbfb37e521f8c27b4f942642fe00c2ee/src/chains/citrea/CitreaFees.ts#L38)

Gets the gas price with caching, format: \<gas price in Wei>;\<transaction version: v1/v3>

#### Returns

`Promise`<`string`>

#### Overrides

[`EVMFees`](https://docs.atomiq.exchange/sdk-reference/api/atomiq-chain-evm/src/classes/EVMFees.md).[`getFeeRate`](https://docs.atomiq.exchange/sdk-reference/api/atomiq-chain-evm/src/classes/EVMFees.md#getfeerate)

***

### getGasFee()

```
static getGasFee(

   gas, 

   feeRate, 

   stateDiffSize): bigint;
```

Defined in: [atomiq-chain-evm/src/chains/citrea/CitreaFees.ts:68](https://github.com/atomiqlabs/atomiq-chain-evm/blob/98ca6f16fbfb37e521f8c27b4f942642fe00c2ee/src/chains/citrea/CitreaFees.ts#L68)

Calculates the total gas fee paid for a given gas limit and state diff size at a given fee rate

#### Parameters

| Parameter       | Type     | Default value | Description |
| --------------- | -------- | ------------- | ----------- |
| `gas`           | `number` | `undefined`   |             |
| `feeRate`       | `string` | `undefined`   |             |
| `stateDiffSize` | `number` | `0`           |             |

#### Returns

`bigint`

#### Overrides

[`EVMFees`](https://docs.atomiq.exchange/sdk-reference/api/atomiq-chain-evm/src/classes/EVMFees.md).[`getGasFee`](https://docs.atomiq.exchange/sdk-reference/api/atomiq-chain-evm/src/classes/EVMFees.md#getgasfee)
