fnbr
Version:
A library to interact with Epic Games' Fortnite HTTP and XMPP services
79 lines (78 loc) • 2.81 kB
TypeScript
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;