# permissions
Documentation: [Chrome Permissions API](https://developer.chrome.com/docs/extensions/reference/permissions)
A promise-based wrapper for the Chrome `permissions` API to request and manage extension permissions.
## Methods
- [containsPermissions(permissions)](#containsPermissions)
- [getAllPermissions()](#getAllPermissions)
- [requestPermissions(permissions)](#requestPermissions)
- [removePermissions(permissions)](#removePermissions)
- [addHostAccessRequest(request?)](#addHostAccessRequest)
- [removeHostAccessRequest(request?)](#removeHostAccessRequest)
## Events
- [onPermissionsAdded(callback)](#onPermissionsAdded)
- [onPermissionsRemoved(callback)](#onPermissionsRemoved)
---
### containsPermissions
```
containsPermissions(permissions: chrome.permissions.Permissions): Promise
```
Checks whether the extension has the specified permissions.
### getAllPermissions
```
getAllPermissions(): Promise
```
Retrieves all granted permissions.
### requestPermissions
```
requestPermissions(permissions: chrome.permissions.Permissions): Promise
```
Prompts the user to grant additional permissions.
### removePermissions
```
removePermissions(permissions: chrome.permissions.Permissions): Promise
```
Removes the specified permissions if granted.
### addHostAccessRequest
```
addHostAccessRequest(request?: chrome.permissions.AddHostAccessRequest): Promise
```
Requests additional host access at runtime.
### removeHostAccessRequest
```
removeHostAccessRequest(request?: chrome.permissions.RemoveHostAccessRequest): Promise
```
Clears a previously requested host access.
### onPermissionsAdded
```
onPermissionsAdded(callback: (permissions: chrome.permissions.Permissions) => void): () => void
```
Fires when new permissions are granted.
### onPermissionsRemoved
```
onPermissionsRemoved(callback: (permissions: chrome.permissions.Permissions) => void): () => void
```
Fires when permissions are removed.