# definePermissionUsage

> 定义隐私权限协议文案

### definePermissionUsage

> 定义相关隐私政策文案，用于网页授权相关权限时提示用户

#### 请求参数

| 参数                     | 类型                          | 必填 | 说明           |
| ------------------------ | ----------------------------- | ---- | -------------- |
| `microphone`             | `object`                      | 否   | 麦克风权限说明 |
| `microphone.description` | `string`                      | 是   | 麦克风权限描述 |
| `camera`                 | `object`                      | 否   | 相机权限说明   |
| `camera.description`     | `string`                      | 是   | 相机权限描述   |
| `location`               | `object`                      | 否   | 位置权限说明   |
| `location.description`   | `string`                      | 是   | 位置权限描述   |
| `success`                | `() => void`                  | 否   | 成功回调       |
| `fail`                   | `(error: BridgeCode) => void` | 否   | 失败回调       |
| `complete`               | `() => void`                  | 否   | 完成回调       |

#### 返回值

```js
Promise<void>
```

#### 示例代码

```js
import { definePermissionUsage } from '@kbapp/js-bridge'

definePermissionUsage({
    microphone: { description: '用于发帖上传音频' },
    location: { description: '获取你选择的位置信息，用于线下导航服务' },
    camera: { description: '收集你选中的照片或视频信息，用于发表评论、分享视频' },
    success() {
        console.log('设置成功')
    },
    fail(error) {
        console.log('设置失败', error)
    },
})
```

> 支持 Promise 风格调用
