[](https://codeclimate.com/github/qlaffont/solidstart-protected-auth/maintainability) [  !npm !npm !Snyk Vulnerabilities for npm package !NPM
Add protected routes to SolidStart.
See example folder
Options
| Field Name | Type | Description |
| --------------- | -------------------------------- | ------------------------------------------------------------------- |
| callback | VoidFunction / AsyncVoidFunction | Specify a callback after login (generally redirect to oauth portal) |
| authCallbackURL | string | Specify auth callback url in case of accessToken already exist |
Return: React Component
Options
| Field Name | Type | Description |
| ----------- | -------------------------------- | --------------------------------------------------------------------------------- |
| preCallback | VoidFunction / AsyncVoidFunction | Specify a callback before logout (generally send to api that user want to logout) |
| callback | VoidFunction / AsyncVoidFunction | Specify a callback after logout (generally redirect to home) |
Return: React Component
Options
| Field Name | Type | Description |
| ---------- | -------------------------------- | ------------------------------------------------------------------------------- |
| callback | VoidFunction / AsyncVoidFunction | Specify a callback after auth callback (generally redirect to protected routes) |
Return: React Component
Options
| Field Name | Type | Description |
| --------------- | ----------------------------------- | ------------------------------------------------------------------------ |
| publicURLs | string[] | List of public URLs |
| loginURL | string | Endpoint for login (ex: /auth/login) |
| authCallbackURL | string | Endpoint for auth callback (ex: /auth) |
| renewTokenFct | (oldAccessToken?: string) => string | Function who will run to renew token (ex: refresh token) |
| verifyTokenFct | (accessToken?: string) => string | Function who test accessToken validity (ex: verify JWT token expiration) |
| allowNotFound | boolean? | Allow to consult Not found pages in public |
Return: Hook who need to be use to pages/_app.tsx
Return: {isConnected: boolean; setIsConnected: Dispatch
Options
| Field Name | Type | Description |
| ------------- | ------------------------------------------------------ | ------------------------------------------------------------ |
| renewTokenFct | (oldAccessToken?: string) => string OR Promise
| accessToken | string | access token to save |
Return: boolean (Token is saved)
Return: string (Return access token)
Return: void
This package use TSdx. Please check documentation to update this package.