UNPKG

fnbr

Version:

A library to interact with Epic Games' Fortnite HTTP and XMPP services

79 lines (78 loc) 2.81 kB
import { Collection } from '@discordjs/collection'; import Base from '../Base'; import UserSearchResult from '../structures/user/UserSearchResult'; import User from '../structures/user/User'; import Avatar from '../structures/Avatar'; import GlobalProfile from '../structures/GlobalProfile'; import ClientUser from '../structures/user/ClientUser'; import type BlockedUser from '../structures/user/BlockedUser'; import type { UserSearchPlatform } from '../../resources/structs'; import type Client from '../Client'; declare class UserManager extends Base { /** * The client's blocklist */ blocklist: Collection<string, BlockedUser>; /** * The client's user cache * @private */ cache: Collection<string, User & { cachedAt: number; }>; /** * The client's user */ self?: ClientUser; constructor(client: Client); /** * Resolves a user's ID from the cache or via the API * @param idOrDisplayName The user's ID or display name */ resolveId(idOrDisplayName: string): Promise<string>; fetch(idOrDisplayName: string): Promise<User>; fetchMultiple(idsOrDisplayNames: string[]): Promise<User[]>; fetchSelf(): Promise<void>; search(prefix: string, platform?: UserSearchPlatform): Promise<UserSearchResult[]>; /** * Fetches the avatar of a user * @param user The id or display name of the user * @throws {EpicgamesAPIError} * @throws {UserNotFoundError} The user wasn't found */ fetchAvatar(idOrDisplayName: string): Promise<Avatar>; /** * Fetches the avatar of multiple users * @param user The ids and/or display names of the users * @throws {EpicgamesAPIError} */ fetchAvatarMultiple(idsOrDisplayNames: string[]): Promise<Avatar[]>; /** * Fetches the global profile of a user * @param user The id or display name of the user * @throws {EpicgamesAPIError} * @throws {UserNotFoundError} The user wasn't found */ fetchGlobalProfile(idOrDisplayName: string): Promise<GlobalProfile>; /** * Fetches the global profile for multiple users * @param user The ids and/or display names of the users * @throws {EpicgamesAPIError} */ fetchGlobalProfileMultiple(idsOrDisplayNames: string[]): Promise<GlobalProfile[]>; /** * Blocks a user * @param user The id or display name of the user * @throws {UserNotFoundError} The user wasn't found * @throws {EpicgamesAPIError} */ block(user: string): Promise<void>; /** * Unblocks a user * @param user The id or display name of the user * @throws {UserNotFoundError} The user wasn't found * @throws {EpicgamesAPIError} */ unblock(user: string): Promise<void>; } export default UserManager;