# MockVerifier v0.3.0 API Reference
Source: https://docs.chain.link/chainlink-local/api-reference/v0.3.0/mock-verifier

> For the complete documentation index, see [llms.txt](/llms.txt).

> **NOTE: Integrate Chainlink Local into your project**
>
> ### npm
>
> If you use [NPM](https://www.npmjs.com/), install the [@chainlink/local NPM
> package](https://www.npmjs.com/package/@chainlink/local):
>
> ```shell
> npm install @chainlink/local@0.3.0
> ```
>
> ### yarn
>
> If you use [Yarn](https://yarnpkg.com/), install the [@chainlink/local NPM
> package](https://www.npmjs.com/package/@chainlink/local):
>
> ```shell
> yarn add @chainlink/local@0.3.0
> ```
>
> ### foundry
>
> If you use [Foundry](https://book.getfoundry.sh/):
>
> ```shell
> forge install smartcontractkit/chainlink-local@v0.3.0
> ```
>
> and then set remappings to: `@chainlink/local/=lib/chainlink-local/` in either `remappings.txt` or `foundry.toml` file
>
> ### RemixIDE
>
> Import the `CCIPLocalSimulator` contract from the `@chainlink/local` package:
>
> ```solidity
> import {CCIPLocalSimulator} from "@chainlink/local@0.3.0/src/ccip/CCIPLocalSimulator.sol";
> ```

## MockVerifier

Mock Data Streams verifier.

[MockVerifier](https://github.com/smartcontractkit/chainlink-local/blob/v0.3.0/src/data-streams/MockVerifier.sol)

## Variables

### i\_verifierProxy

```solidity
address internal immutable i_verifierProxy
```

### MOCK\_DATA\_STREAM\_DON\_ADDRESS

```solidity
address constant MOCK_DATA_STREAM_DON_ADDRESS = 0x143f40b47ab222503b787e98940023c59fc29984
```

### N\_2

```solidity
uint256 constant N_2 = 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0
```

### s\_inactiveDigests

```solidity
mapping(bytes32 => mapping(bytes32 => bool)) internal s_inactiveDigests
```

### s\_inactiveFeeds

```solidity
mapping(bytes32 => bool) internal s_inactiveFeeds
```

### s\_verifiedSignatures

```solidity
mapping(bytes => bool) internal s_verifiedSignatures
```

## Errors

### AccessForbidden

```solidity
error AccessForbidden();
```

### AlreadyUsedSignature

```solidity
error AlreadyUsedSignature();
```

### BadVerification

```solidity
error BadVerification();
```

### DigestInactive

```solidity
error DigestInactive(bytes32 feedId, bytes32 configDigest);
```

### InactiveFeed

```solidity
error InactiveFeed(bytes32 feedId);
```

### InvalidS

```solidity
error InvalidS();
```

### InvalidSignatureLength

```solidity
error InvalidSignatureLength();
```

### InvalidV

```solidity
error InvalidV();
```

## Events

### ReportVerified

```solidity
event ReportVerified(bytes32 indexed feedId, address indexed sender);
```

## Functions

### activateConfig

```solidity
function activateConfig(bytes32 feedId, bytes32 configDigest) external;
```

### activateFeed

```solidity
function activateFeed(bytes32 feedId) external;
```

### constructor

```solidity
constructor(address verifierProxy) ;
```

### deactivateConfig

```solidity
function deactivateConfig(bytes32 feedId, bytes32 configDigest) external;
```

### deactivateFeed

```solidity
function deactivateFeed(bytes32 feedId) external;
```

### supportsInterface

```solidity
function supportsInterface(bytes4 interfaceId) external pure override returns (bool);
```

### verify

```solidity
function verify(bytes calldata signedReport, address sender) external returns (bytes memory verifierResponse);
```