///
import EventEmitter from 'events';
import WebSocket from '../ws/WebSocket';
import RequestHandler from '../Util/RequestHandler';
import User from '../Structures/UserClass';
import Invite from '../Structures/Invite';
import Guild from '../Structures/Guild';
import Emoji from '../Structures/Emoji';
import Channel from '../Structures/ChannelGuild';
import ClientUser from '../Structures/ClientUser';
import ChannelDM from '../Structures/ChannelDM';
export default class Client extends EventEmitter {
ws: WebSocket;
user: ClientUser | undefined;
fetch: RequestHandler;
emojis: Emoji[];
guilds: Guild[];
channels: Channel[];
users: User[];
dmchannels: ChannelDM[];
constructor(token: any, options: any);
setUser(user: any): void;
putEmoji(emoji: any): void;
putGuild(guild: any): void;
/**
* @param {string} id
*/
fetchUser(id: string): Promise;
/**
* @param {string} id
*/
fetchChannel(id: string): Promise;
/**
* @param {string} id
*/
fetchGuild(id: string): Promise;
modifyUser(options: {
username?: string;
avatar?: string;
}): Promise;
getInvite(code: string): Promise;
deleteInvite(code: string): Promise;
}