> For the complete documentation index, see [llms.txt](https://gl-docs.gitbook.io/zkpass/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://gl-docs.gitbook.io/zkpass/zkpass-developers-guide/api-reference/typescript/functions/functions-jwthelper.md).

# Functions: jwtHelper

### Table of contents

#### Functions: jwtHelper

* [extractPayload](#extractpayload)
* [extractZkProofPayload](#extractzkproofpayload)
* [decodeJwtPayload](#decodejwtpayload)
* [isZkPassProof](#iszkpassproof)
* [isDvrData](#isdvrdata)

### Functions: jwtHelper

#### extractPayload

▸ `extractPayload`(`token`: `string`): [`DvrDataPayload`](/zkpass/zkpass-developers-guide/api-reference/typescript/interfaces/interfaces.md#dvrdatapayload)

Extracts the payload from a JWT token and validates its type.

**Parameters**

| Name    | Type     | Description                           |
| ------- | -------- | ------------------------------------- |
| `token` | `string` | The JWT token to extract payload from |

**Returns**

[`DvrDataPayload`](/zkpass/zkpass-developers-guide/api-reference/typescript/interfaces/interfaces.md#dvrdatapayload) - The extracted payload

**Throws**

* Error if token is invalid
* Error if payload is not of type DvrData

***

#### extractZkProofPayload

▸ `extractZkProofPayload`(`token`: `string`): [`ZkPassProof`](/zkpass/zkpass-developers-guide/api-reference/typescript/type-aliases/types.md#zkpassproof)

Extracts the ZkPassProof payload from a JWT token.

**Parameters**

| Name    | Type     | Description                           |
| ------- | -------- | ------------------------------------- |
| `token` | `string` | The JWT token containing zkPass proof |

**Returns**

`ZkPassProof` - The extracted zkPass proof object

**Throws**

* Error if token is invalid
* Error if payload is not of type ZkPassProof

***

#### decodeJwtPayload

▸ private `decodeJwtPayload`(`token`: `string`): `any`

**Parameters**

| Name    | Type     | Description             |
| ------- | -------- | ----------------------- |
| `token` | `string` | The JWT token to decode |

**Returns**

`any` - The parsed payload from the JWT token

**Throws**

* Error if token is invalid

***

#### isZkPassProof

▸ private `isZkPassProof`(`data`: `any`): `boolean`

**Parameters**

| Name   | Type  | Description       |
| ------ | ----- | ----------------- |
| `data` | `any` | The data to check |

**Returns**

`boolean` - True if data is a valid ZkPassProof

***

#### isDvrData

▸ private `isDvrData`(`data`: `any`): `boolean`

**Parameters**

| Name   | Type  | Description       |
| ------ | ----- | ----------------- |
| `data` | `any` | The data to check |

**Returns**

`boolean` - True if data is a valid DvrDataPayload
