/** * The current status of a device permission. * * - `'granted'` – the user has granted the permission. * - `'denied'` – the user has denied the permission. * - `'prompt'` – the user has not yet been asked (or the permission can be requested again). */ export type PermissionStatus = 'granted' | 'denied' | 'prompt'; /** * Hook for querying and requesting camera permission on the device. * * @returns A tuple of `[query, request]`: * - `query` – checks the current camera permission status without prompting the user. * - `request` – triggers the native permission dialog and returns the resulting status. * * @example * ```tsx * import { useCameraPermissions } from "@fishjam-cloud/react-native-client"; * // ---cut--- * const [queryCameraPermission, requestCameraPermission] = useCameraPermissions(); * * const status = await queryCameraPermission(); * if (status !== 'granted') { * await requestCameraPermission(); * } * ``` */ export declare function useCameraPermissions(): [query: () => Promise, request: () => Promise]; /** * Hook for querying and requesting microphone permission on the device. * * @returns A tuple of `[query, request]`: * - `query` – checks the current microphone permission status without prompting the user. * - `request` – triggers the native permission dialog and returns the resulting status. * * @example * ```tsx * import { useMicrophonePermissions } from "@fishjam-cloud/react-native-client"; * // ---cut--- * const [queryMicPermission, requestMicPermission] = useMicrophonePermissions(); * * const status = await queryMicPermission(); * if (status !== 'granted') { * await requestMicPermission(); * } * ``` */ export declare function useMicrophonePermissions(): [query: () => Promise, request: () => Promise]; //# sourceMappingURL=usePermissions.d.ts.map