UNPKG

@daveyplate/supabase-swr-entities

Version:

An entity management library for Supabase and SWR

26 lines (25 loc) 1.12 kB
import { DataConnection } from "peerjs"; export interface PeersResult { peers: any[]; sendData: (data: any, connections?: DataConnection[]) => void; connections: import("peerjs").DataConnection[]; isOnline: (userId: string) => boolean; getPeer: (connection: import("peerjs").DataConnection) => any; getConnectionsForUser: (userId: string) => DataConnection[]; } interface UsePeersOptions { enabled?: boolean; onData?: (data: any, connection: DataConnection, peer: any) => void | null; room?: string | null; allowedUsers?: string[]; } /** * Peer Connections hook * @param {UsePeersOptions} options - The hook options * @param {boolean} [options.enabled=true] - Is the hook enabled * @param {(data: any, connection: import("peerjs").DataConnection, peer: Peer) => void} [options.onData=null] - The data handler * @param {string} [options.room=null] - The room to connect to * @param {string[]} [options.allowedUsers=["*"]] - The users allowed to send data to */ export declare function usePeers({ enabled, onData, room, allowedUsers }: UsePeersOptions): PeersResult; export {};