# @notabene/verify-proof

This package provides functionality to verify ownership proofs for the Notabene SDK.

## Description

The `@notabene/verify-proof` package is designed to work with the Notabene SDK, offering methods to verify various types of ownership proofs used in blockchain transactions and identity verification.

## Installation

```bash
npm install @notabene/verify-proof
```

or

```bash
yarn add @notabene/verify-proof
```

## Usage

Here's a basic example of how to use the `verifyProof` function:

```typescript
import { verifyProof } from '@notabene/verify-proof';
import { OwnershipProof } from '@notabene/javascript-sdk';

async function checkProof(proof: OwnershipProof) {
  const verifiedProof = await verifyProof(proof);
  console.log(verifiedProof.status);
}
```

## Supported Proof Types

- Checkbox Confirmation (`ProofTypes.CheckboxConfirmation`)
- Screenshot (`ProofTypes.Screenshot`)
- Personal Sign EIP191 (`ProofTypes.EIP191`)
- Personal Sign EIP712 (`ProofTypes.EIP712`)
- Personal Sign BIP137 (`ProofTypes.BIP137`)
- BIP322 Signature (`ProofTypes.BIP322`)
- Personal Sign XPUB (`ProofTypes.XPUB`)
- Micro Transfer (`ProofTypes.MicroTransfer`)

## Development

To set up the development environment:

1. Clone the repository
2. Install dependencies: `yarn install`
3. Run tests: `yarn test`

## Scripts

- `yarn dev`: Start development server
- `yarn build`: Build the project
- `yarn lint`: Run linter
- `yarn test`: Run tests

## Dependencies

- `@notabene/javascript-sdk`: Notabene JavaScript SDK
- `viem`: Ethereum utility library
- `bitcoinjs-message`: Bitcoin message signing and verification

## License

MIT

## Author

Pelle Braendgaard
