voicebot-react-native-expo
Version:
This is a voicebot-react-native package of Kipps AI voice bot for React Native Expo
25 lines (23 loc) • 847 B
text/typescript
import { participantPermissionObserver } from '@livekit/components-core';
import type { ParticipantPermission } from '@livekit/protocol';
import * as React from 'react';
import { useRoomContext } from '../context';
import { useObservableState } from './internal';
/**
* The `useLocalParticipantPermissions` hook returns the local participant's permissions.
*
* @example
* ```tsx
* const { canPublish, canPublishData } = useLocalParticipantPermissions();
* ```
* @public
*/
export function useLocalParticipantPermissions(): ParticipantPermission | undefined {
const room = useRoomContext();
const permissionObserver = React.useMemo(
() => participantPermissionObserver(room.localParticipant),
[room],
);
const permissions = useObservableState(permissionObserver, room.localParticipant.permissions);
return permissions;
}