> ## Documentation Index
> Fetch the complete documentation index at: https://docs.debridge.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SignatureVerifier

> SignatureVerifier contract details - fields and functions.

Used to verify that a transfer is signed by oracles.

***

## Variables

### confirmationThreshold

```solidity theme={null}
uint8 public confirmationThreshold;
```

Number of required confirmations per block after the extra check is enabled

### submissionsInBlock

```solidity theme={null}
uint40 public submissionsInBlock;
```

Submissions count in current block

### currentBlock

```solidity theme={null}
uint40 public currentBlock;
```

Current block

### debridgeAddress

```solidity theme={null}
address public debridgeAddress;
```

Debridge gate address

***

## Functions

### initialize

```solidity theme={null}
function initialize(
    uint8 _minConfirmations,
    uint8 _confirmationThreshold,
    uint8 _excessConfirmations
) public
```

Constructor that initializes the most important configurations.

#### Parameters:

| Name                    | Type  | Description                                          |
| ----------------------- | ----- | ---------------------------------------------------- |
| \_minConfirmations      | uint8 | Common confirmations count.                          |
| \_confirmationThreshold | uint8 | Confirmations per block after extra check is enabled |
| \_excessConfirmations   | uint8 | Confirmations count in case of excess activity       |

***

### submit

```solidity theme={null}
function submit(
    bytes32 _submissionId,
    bytes _signatures,
    uint8 _excessConfirmations
) external
```

Check confirmation (validate signatures) for the transfer request.

#### Parameters:

| Name                  | Type    | Description                      |
| --------------------- | ------- | -------------------------------- |
| \_submissionId        | bytes32 | Submission identifier.           |
| \_signatures          | bytes   | Array of signatures by oracles.  |
| \_excessConfirmations | uint8   | Override min confirmations count |

***

### setThreshold

```solidity theme={null}
function setThreshold(
    uint8 _confirmationThreshold
) external
```

Sets minimal required confirmations.

#### Parameters:

| Name                    | Type  | Description        |
| ----------------------- | ----- | ------------------ |
| \_confirmationThreshold | uint8 | Confirmation info. |

***

### setDebridgeAddress

```solidity theme={null}
function setDebridgeAddress(
    address _debridgeAddress
) external
```

Sets core debridge contract address.

#### Parameters:

| Name              | Type    | Description       |
| ----------------- | ------- | ----------------- |
| \_debridgeAddress | address | Debridge address. |

***

### isValidSignature

```solidity theme={null}
function isValidSignature(
    bytes32 _submissionId,
    bytes _signature
) external returns (bool)
```

Check is valid signature

#### Parameters:

| Name           | Type    | Description            |
| -------------- | ------- | ---------------------- |
| \_submissionId | bytes32 | Submission identifier. |
| \_signature    | bytes   | Signature by oracle.   |

***

### \_countSignatures

```solidity theme={null}
function _countSignatures(
    bytes _signatures
) internal returns (uint256)
```

***

### version

```solidity theme={null}
function version() external returns (uint256)
```

Get this contract's version
