UNPKG

@connectycube/use-chat

Version:

A React hook for state management in ConnectyCube-powered chat solutions

32 lines 1.29 kB
import { Users } from "connectycube/types"; export declare const USERS_LOG_TAG = "[useChat][useUsers]"; export declare const LIST_ONLINE_USERS_INTERVAL = 60000; export declare const MAX_REQUEST_LIMIT = 100; export type OnlineUsersLastRequestAt = number; export type UsersArray = Users.User[]; export type UsersObject = { [userId: Users.User["id"]]: Users.User; }; export type UsersLastActivity = { [userId: number]: string; }; export type UsersHookExports = { users: UsersObject; searchUsers: (term: string) => Promise<UsersArray>; listOnlineUsers: (force?: boolean) => Promise<UsersArray>; listOnlineUsersWithParams: (params: Users.ListOnlineParams) => Promise<UsersArray>; onlineUsers: UsersArray; getOnlineUsersCount: () => Promise<number>; onlineUsersCount: number; lastActivity: UsersLastActivity; getLastActivity: (userId: number) => Promise<string>; subscribeToUserLastActivityStatus: (userId: number) => void; unsubscribeFromUserLastActivityStatus: (userId: number) => void; }; export type UsersHook = { exports: UsersHookExports; _retrieveAndStoreUsers: (usersIds: number[]) => Promise<void>; }; declare function useUsers(currentUserId?: number): UsersHook; export default useUsers; //# sourceMappingURL=useUsers.d.ts.map