diff --git a/docs/docs.json b/docs/docs.json index 01eb675ad..aaab02d5c 100644 --- a/docs/docs.json +++ b/docs/docs.json @@ -1 +1 @@ -{"meta":{"version":8},"custom":{"general":{"Getting Started":"# Welcome!\ndiscord.js is an easy-to-use and intuitive JavaScript library that wraps around the Discord API.\n\n## Installation\nTo install discord.js from npm:\n```bash\nnpm i --save discord.js\n```\n\nTo install discord.js from the master branch:\n```bash\nnpm i --save hydrabolt/discord.js\n```\n\nTo install discord.js from the development branch:\n```bash\nnpm i --save hydrabolt/discord.js#indev\n```\n\nTo install discord.js from the rewrite branch:\n```bash\nnpm i --save hydrabolt/discord.js#indev-rewrite\n```\n\n## Tutorials\nLuckyEvie, a helper in the discord.js channel, has put together a great tutorial on getting to grips with discord.js.\nIt's worth a read and you can find it [here.](https://eslachance.gitbooks.io/discord-js-bot-guide/content/samples/selfbots,_the_awesomest_thing_in_the_universe.html)\n"}},"json":{"classes":{"Client":{"meta":{"id":"Client","longname":"Client","name":"Client","scope":"global","kind":"class","description":"Creates a new Discord Client\n```js\nconst Discord = require(\"discord.js\");\nconst client = new Discord.Client();\n```","meta":{"lineno":18,"filename":"Client.js","path":"src/client"},"order":0},"functions":[{"id":"Client#login","longname":"Client#login","name":"login","scope":"instance","kind":"function","description":"Logs the client in. If successful, resolves with the account's token. If you're making a bot, it's\nmuch better to use a bot account rather than a user account.\nBot accounts have higher rate limits and have access to some features user accounts don't have. User bots\nthat are making a lot of API requests can even be banned.","memberof":"Client","params":[{"type":{"names":["String"]},"description":"The email or token used for the account. If it is an email, a password _must_ be\nprovided.","name":"emailOrToken"},{"type":{"names":["String"]},"optional":true,"description":"The password for the account, only needed if an email was provided.","name":"password"}],"examples":["// log the client in using a token\nconst token = 'my token';\nclient.login(token);","// log the client in using email and password\nconst email = 'user@email.com';\nconst password = 'supersecret123';\nclient.login(email, password);"],"returns":[[["Promise",".<"],["String",">"]]],"meta":{"lineno":120,"filename":"Client.js","path":"src/client"},"order":15}],"properties":[{"id":"Client#rest","longname":"Client#rest","name":"rest","scope":"instance","kind":"member","description":"The REST manager of the client","memberof":"Client","type":[[[["RESTManager"],""]]],"access":"private","meta":{"lineno":32,"filename":"Client.js","path":"src/client"},"order":2},{"id":"Client#dataManager","longname":"Client#dataManager","name":"dataManager","scope":"instance","kind":"member","description":"The data manager of the Client","memberof":"Client","type":[[[["ClientDataManager"],""]]],"access":"private","meta":{"lineno":38,"filename":"Client.js","path":"src/client"},"order":3},{"id":"Client#manager","longname":"Client#manager","name":"manager","scope":"instance","kind":"member","description":"The manager of the Client","memberof":"Client","type":[[[["ClientManager"],""]]],"access":"private","meta":{"lineno":44,"filename":"Client.js","path":"src/client"},"order":4},{"id":"Client#ws","longname":"Client#ws","name":"ws","scope":"instance","kind":"member","description":"The WebSocket Manager of the Client","memberof":"Client","type":[[[["WebSocketManager"],""]]],"access":"private","meta":{"lineno":50,"filename":"Client.js","path":"src/client"},"order":5},{"id":"Client#resolver","longname":"Client#resolver","name":"resolver","scope":"instance","kind":"member","description":"The Data Resolver of the Client","memberof":"Client","type":[[[["ClientDataResolver"],""]]],"access":"private","meta":{"lineno":56,"filename":"Client.js","path":"src/client"},"order":6},{"id":"Client#actions","longname":"Client#actions","name":"actions","scope":"instance","kind":"member","description":"The Action Manager of the Client","memberof":"Client","type":[[[["ActionsManager"],""]]],"access":"private","meta":{"lineno":62,"filename":"Client.js","path":"src/client"},"order":7},{"id":"Client#users","longname":"Client#users","name":"users","scope":"instance","kind":"member","description":"A map of the Client's stored users","memberof":"Client","type":[[["Map",".<"],["String",", "],["User",">"]]],"meta":{"lineno":68,"filename":"Client.js","path":"src/client"},"order":8},{"id":"Client#guilds","longname":"Client#guilds","name":"guilds","scope":"instance","kind":"member","description":"A map of the Client's stored guilds","memberof":"Client","type":[[["Map",".<"],["String",", "],["Guild",">"]]],"meta":{"lineno":73,"filename":"Client.js","path":"src/client"},"order":9},{"id":"Client#channels","longname":"Client#channels","name":"channels","scope":"instance","kind":"member","description":"A map of the Client's stored channels","memberof":"Client","type":[[["Map",".<"],["String",", "],["Channel",">"]]],"meta":{"lineno":78,"filename":"Client.js","path":"src/client"},"order":10},{"id":"Client#token","longname":"Client#token","name":"token","scope":"instance","kind":"member","description":"The authorization token for the logged in user/bot.","memberof":"Client","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":83,"filename":"Client.js","path":"src/client"},"order":11},{"id":"Client#user","longname":"Client#user","name":"user","scope":"instance","kind":"member","description":"The ClientUser representing the logged in Client","memberof":"Client","type":[[[["ClientUser"],""]]],"nullable":true,"meta":{"lineno":88,"filename":"Client.js","path":"src/client"},"order":12},{"id":"Client#email","longname":"Client#email","name":"email","scope":"instance","kind":"member","description":"The email, if there is one, for the logged in Client","memberof":"Client","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":93,"filename":"Client.js","path":"src/client"},"order":13},{"id":"Client#password","longname":"Client#password","name":"password","scope":"instance","kind":"member","description":"The password, if there is one, for the logged in Client","memberof":"Client","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":98,"filename":"Client.js","path":"src/client"},"order":14}],"events":[{"id":"Client#event:guildCreate","longname":"Client#event:guildCreate","name":"guildCreate","scope":"instance","kind":"event","description":"Emitted whenever the client joins a Guild.","memberof":"Client","params":[{"type":{"names":["Guild"]},"description":"the created guild.","name":"guild"}],"meta":{"lineno":24,"filename":"ClientDataManager.js","path":"src/client"},"order":16},{"id":"Client#event:guildMemberRolesUpdate","longname":"Client#event:guildMemberRolesUpdate","name":"guildMemberRolesUpdate","scope":"instance","kind":"event","description":"Emitted whenever a Guild Member's Roles change - i.e. new role or removed role","memberof":"Client","params":[{"type":{"names":["Guild"]},"description":"the guild that the update affects","name":"guild"},{"type":{"names":["Array."]},"description":"the roles before the update","name":"oldRoles"},{"type":{"names":["Guild"]},"description":"the roles after the update","name":"newRoles"}],"meta":{"lineno":91,"filename":"Guild.js","path":"src/structures"},"order":57},{"id":"Client#event:channelUpdate","longname":"Client#event:channelUpdate","name":"channelUpdate","scope":"instance","kind":"event","description":"Emitted whenever a channel is updated - e.g. name change, topic change.","memberof":"Client","params":[{"type":{"names":["Channel"]},"description":"the channel before the update","name":"oldChannel"},{"type":{"names":["Channel"]},"description":"the channel after the update","name":"newChannel"}],"meta":{"lineno":31,"filename":"ChannelUpdate.js","path":"src/client/actions"},"order":180},{"id":"Client#event:guildUnavailable","longname":"Client#event:guildUnavailable","name":"guildUnavailable","scope":"instance","kind":"event","description":"Emitted whenever a guild becomes unavailable, likely due to a server outage.","memberof":"Client","params":[{"type":{"names":["Guild"]},"description":"the guild that has become unavailable.","name":"guild"}],"meta":{"lineno":49,"filename":"GuildDelete.js","path":"src/client/actions"},"order":181},{"id":"Client#event:guildMemberRemove","longname":"Client#event:guildMemberRemove","name":"guildMemberRemove","scope":"instance","kind":"event","description":"Emitted whenever a member leaves a guild, or is kicked.","memberof":"Client","params":[{"type":{"names":["Guild"]},"description":"the guild that the member has left.","name":"guild"},{"type":{"names":["GuildMember"]},"description":"the member that has left the guild.","name":"member"}],"meta":{"lineno":49,"filename":"GuildMemberRemove.js","path":"src/client/actions"},"order":182},{"id":"Client#event:guildRoleCreate","longname":"Client#event:guildRoleCreate","name":"guildRoleCreate","scope":"instance","kind":"event","description":"Emitted whenever a guild role is created.","memberof":"Client","params":[{"type":{"names":["Guild"]},"description":"the guild that the role was created in.","name":"guild"},{"type":{"names":["Role"]},"description":"the role that was created.","name":"role"}],"meta":{"lineno":32,"filename":"GuildRoleCreate.js","path":"src/client/actions"},"order":183},{"id":"Client#event:guildRoleDelete","longname":"Client#event:guildRoleDelete","name":"guildRoleDelete","scope":"instance","kind":"event","description":"Emitted whenever a guild role is deleted.","memberof":"Client","params":[{"type":{"names":["Guild"]},"description":"the guild that the role was deleted in.","name":"guild"},{"type":{"names":["Role"]},"description":"the role that was deleted.","name":"role"}],"meta":{"lineno":47,"filename":"GuildRoleDelete.js","path":"src/client/actions"},"order":184},{"id":"Client#event:guildRoleUpdated","longname":"Client#event:guildRoleUpdated","name":"guildRoleUpdated","scope":"instance","kind":"event","description":"Emitted whenever a guild role is updated.","memberof":"Client","params":[{"type":{"names":["Guild"]},"description":"the guild that the role was updated in.","name":"guild"},{"type":{"names":["Role"]},"description":"the role before the update.","name":"oldRole"},{"type":{"names":["Role"]},"description":"the role after the update.","name":"newRole"}],"meta":{"lineno":36,"filename":"GuildRoleUpdate.js","path":"src/client/actions"},"order":185},{"id":"Client#event:guildUpdate","longname":"Client#event:guildUpdate","name":"guildUpdate","scope":"instance","kind":"event","description":"Emitted whenever a guild is updated - e.g. name change.","memberof":"Client","params":[{"type":{"names":["Guild"]},"description":"the guild before the update.","name":"oldGuild"},{"type":{"names":["Guild"]},"description":"the guild after the update.","name":"newGuild"}],"meta":{"lineno":38,"filename":"GuildUpdate.js","path":"src/client/actions"},"order":186},{"id":"Client#event:messageUpdate","longname":"Client#event:messageUpdate","name":"messageUpdate","scope":"instance","kind":"event","description":"Emitted whenever a message is updated - e.g. embed or content change.","memberof":"Client","params":[{"type":{"names":["Message"]},"description":"the message before the update.","name":"oldMessage"},{"type":{"names":["Message"]},"description":"the message after the update.","name":"newMessage"}],"meta":{"lineno":36,"filename":"MessageUpdate.js","path":"src/client/actions"},"order":187},{"id":"Client#event:userUpdate","longname":"Client#event:userUpdate","name":"userUpdate","scope":"instance","kind":"event","description":"Emitted whenever a detail of the logged in User changes - e.g. username.","memberof":"Client","params":[{"type":{"names":["ClientUser"]},"description":"the client user before the update.","name":"oldClientUser"},{"type":{"names":["ClientUser"]},"description":"the client user after the update.","name":"newClientUser"}],"meta":{"lineno":36,"filename":"UserUpdate.js","path":"src/client/actions"},"order":188},{"id":"Client#event:channelCreate","longname":"Client#event:channelCreate","name":"channelCreate","scope":"instance","kind":"event","description":"Emitted whenever a Channel is created.","memberof":"Client","params":[{"type":{"names":["Channel"]},"description":"The channel that was created","name":"channel"}],"meta":{"lineno":20,"filename":"ChannelCreate.js","path":"src/client/websocket/packets/handlers"},"order":199},{"id":"Client#event:channelDelete","longname":"Client#event:channelDelete","name":"channelDelete","scope":"instance","kind":"event","description":"Emitted whenever a Channel is deleted.","memberof":"Client","params":[{"type":{"names":["Channel"]},"description":"The channel that was deleted","name":"channel"}],"meta":{"lineno":20,"filename":"ChannelDelete.js","path":"src/client/websocket/packets/handlers"},"order":200},{"id":"Client#event:guildBanAdd","longname":"Client#event:guildBanAdd","name":"guildBanAdd","scope":"instance","kind":"event","description":"Emitted whenever a member is banned from a guild.","memberof":"Client","params":[{"type":{"names":["Guild"]},"description":"The guild that the ban occurred in","name":"guild"},{"type":{"names":["User"]},"description":"The user that was banned","name":"user"}],"meta":{"lineno":22,"filename":"GuildBanAdd.js","path":"src/client/websocket/packets/handlers"},"order":201},{"id":"Client#event:guildBanRemove","longname":"Client#event:guildBanRemove","name":"guildBanRemove","scope":"instance","kind":"event","description":"Emitted whenever a member is unbanned from a guild.","memberof":"Client","params":[{"type":{"names":["Guild"]},"description":"The guild that the unban occurred in","name":"guild"},{"type":{"names":["User"]},"description":"The user that was unbanned","name":"user"}],"meta":{"lineno":23,"filename":"GuildBanRemove.js","path":"src/client/websocket/packets/handlers"},"order":202},{"id":"Client#event:guildDelete","longname":"Client#event:guildDelete","name":"guildDelete","scope":"instance","kind":"event","description":"Emitted whenever a Guild is deleted/left.","memberof":"Client","params":[{"type":{"names":["Guild"]},"description":"The guild that was deleted","name":"guild"}],"meta":{"lineno":19,"filename":"GuildDelete.js","path":"src/client/websocket/packets/handlers"},"order":203},{"id":"Client#event:guildMembersChunk","longname":"Client#event:guildMembersChunk","name":"guildMembersChunk","scope":"instance","kind":"event","description":"Emitted whenever a chunk of Guild members is received","memberof":"Client","params":[{"type":{"names":["Guild"]},"description":"The guild that the chunks relate to","name":"guild"},{"type":{"names":["Array."]},"description":"The members in the chunk","name":"members"}],"meta":{"lineno":25,"filename":"GuildMembersChunk.js","path":"src/client/websocket/packets/handlers"},"order":204},{"id":"Client#event:message","longname":"Client#event:message","name":"message","scope":"instance","kind":"event","description":"Emitted whenever a message is created","memberof":"Client","params":[{"type":{"names":["Message"]},"description":"The created message","name":"message"}],"meta":{"lineno":19,"filename":"MessageCreate.js","path":"src/client/websocket/packets/handlers"},"order":205},{"id":"Client#event:messageDelete","longname":"Client#event:messageDelete","name":"messageDelete","scope":"instance","kind":"event","description":"Emitted whenever a message is deleted","memberof":"Client","params":[{"type":{"names":["Message"]},"description":"The deleted message","name":"message"}],"meta":{"lineno":19,"filename":"MessageDelete.js","path":"src/client/websocket/packets/handlers"},"order":206},{"id":"Client#event:presenceUpdate","longname":"Client#event:presenceUpdate","name":"presenceUpdate","scope":"instance","kind":"event","description":"Emitted whenever a user changes one of their details or starts/stop playing a game","memberof":"Client","params":[{"type":{"names":["User"]},"description":"the user before the presence update","name":"oldUser"},{"type":{"names":["User"]},"description":"the user after the presence update","name":"newUser"}],"meta":{"lineno":66,"filename":"PresenceUpdate.js","path":"src/client/websocket/packets/handlers"},"order":207},{"id":"Client#event:guildMemberAvailable","longname":"Client#event:guildMemberAvailable","name":"guildMemberAvailable","scope":"instance","kind":"event","description":"Emitted whenever a member becomes available in a large Guild","memberof":"Client","params":[{"type":{"names":["Guild"]},"description":"The guild that the member became available in","name":"guild"},{"type":{"names":["GuildMember"]},"description":"the member that became available","name":"member"}],"meta":{"lineno":74,"filename":"PresenceUpdate.js","path":"src/client/websocket/packets/handlers"},"order":208},{"id":"Client#event:typingStart","longname":"Client#event:typingStart","name":"typingStart","scope":"instance","kind":"event","description":"Emitted whenever a user starts typing in a channel","memberof":"Client","params":[{"type":{"names":["Channel"]},"description":"the channel the user started typing in","name":"channel"},{"type":{"names":["User"]},"description":"the user that started typing","name":"user"}],"meta":{"lineno":52,"filename":"TypingStart.js","path":"src/client/websocket/packets/handlers"},"order":209},{"id":"Client#event:typingStop","longname":"Client#event:typingStop","name":"typingStop","scope":"instance","kind":"event","description":"Emitted whenever a user stops typing in a channel","memberof":"Client","params":[{"type":{"names":["Channel"]},"description":"the channel the user stopped typing in","name":"channel"},{"type":{"names":["User"]},"description":"the user that stopped typing","name":"user"}],"meta":{"lineno":60,"filename":"TypingStart.js","path":"src/client/websocket/packets/handlers"},"order":210},{"id":"Client#event:voiceStateUpdate","longname":"Client#event:voiceStateUpdate","name":"voiceStateUpdate","scope":"instance","kind":"event","description":"Emitted whenever a user changes voice state - e.g. joins/leaves a channel, mutes/unmutes.","memberof":"Client","params":[{"type":{"names":["GuildMember"]},"description":"the member before the voice state update","name":"oldMember"},{"type":{"names":["GuildMember"]},"description":"the member before the voice state update","name":"newMember"}],"meta":{"lineno":34,"filename":"VoiceStateUpdate.js","path":"src/client/websocket/packets/handlers"},"order":211},{"id":"Client#event:ready","longname":"Client#event:ready","name":"ready","scope":"instance","kind":"event","description":"Emitted when the Client becomes ready to start working","memberof":"Client","meta":{"lineno":185,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":230},{"id":"Client#event:reconnecting","longname":"Client#event:reconnecting","name":"reconnecting","scope":"instance","kind":"event","description":"Emitted when the Client tries to reconnect after being disconnected","memberof":"Client","meta":{"lineno":204,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":232}],"constructor":{"id":"Client()","longname":"Client","name":"Client","kind":"constructor","description":"Creates an instance of Client.","memberof":"Client","params":[{"type":{"names":["Object"]},"optional":true,"description":"options to pass to the client","name":"options"}],"order":1}},"ClientDataResolver":{"meta":{"id":"ClientDataResolver","longname":"ClientDataResolver","name":"ClientDataResolver","scope":"global","kind":"class","description":"The DataResolver identifies different objects and tries to resolve a specific piece of information from them, e.g.\nextracting a User from a Message object.","access":"private","meta":{"lineno":18,"filename":"ClientDataResolver.js","path":"src/client"},"order":17},"functions":[{"id":"ClientDataResolver#resolveUser","longname":"ClientDataResolver#resolveUser","name":"resolveUser","scope":"instance","kind":"function","description":"Resolves a UserResolvable to a User object","memberof":"ClientDataResolver","params":[{"type":{"names":["UserResolvable"]},"description":"the UserResolvable to identify","name":"user"}],"returns":[[[["User"],""]]],"meta":{"lineno":37,"filename":"ClientDataResolver.js","path":"src/client"},"order":19},{"id":"ClientDataResolver#resolveGuild","longname":"ClientDataResolver#resolveGuild","name":"resolveGuild","scope":"instance","kind":"function","description":"Resolves a GuildResolvable to a Guild object","memberof":"ClientDataResolver","params":[{"type":{"names":["GuildResolvable"]},"description":"the GuildResolvable to identify","name":"guild"}],"returns":[[[["Guild"],""]]],"meta":{"lineno":62,"filename":"ClientDataResolver.js","path":"src/client"},"order":21},{"id":"ClientDataResolver#resolveGuildMember","longname":"ClientDataResolver#resolveGuildMember","name":"resolveGuildMember","scope":"instance","kind":"function","description":"Resolves a GuildMemberResolvable to a GuildMember object","memberof":"ClientDataResolver","params":[{"type":{"names":["GuildResolvable"]},"description":"the guild that the member is part of","name":"guild"},{"type":{"names":["UserResolvable"]},"description":"the user that is part of the guild","name":"user"}],"returns":[[[["GuildMember"],""]]],"meta":{"lineno":81,"filename":"ClientDataResolver.js","path":"src/client"},"order":23},{"id":"ClientDataResolver#resolveBase64","longname":"ClientDataResolver#resolveBase64","name":"resolveBase64","scope":"instance","kind":"function","description":"Resolves a Base64Resolvable to a Base 64 image","memberof":"ClientDataResolver","params":[{"type":{"names":["Base64Resolvable"]},"description":"the base 64 resolvable you want to resolve","name":"dataResolvable"}],"returns":[[[["String"],""]]],"meta":{"lineno":110,"filename":"ClientDataResolver.js","path":"src/client"},"order":25},{"id":"ClientDataResolver#resolveChannel","longname":"ClientDataResolver#resolveChannel","name":"resolveChannel","scope":"instance","kind":"function","description":"Resolves a ChannelResolvable to a Channel object","memberof":"ClientDataResolver","params":[{"type":{"names":["ChannelResolvable"]},"description":"the channel resolvable to resolve","name":"channelResolvable"}],"returns":[[[["Channel"],""]]],"meta":{"lineno":130,"filename":"ClientDataResolver.js","path":"src/client"},"order":27},{"id":"ClientDataResolver#resolveString","longname":"ClientDataResolver#resolveString","name":"resolveString","scope":"instance","kind":"function","description":"Resolves a StringResolvable to a String","memberof":"ClientDataResolver","params":[{"type":{"names":["StringResolvable"]},"description":"the string resolvable to resolve","name":"stringResolvable"}],"returns":[[[["String"],""]]],"meta":{"lineno":155,"filename":"ClientDataResolver.js","path":"src/client"},"order":29}],"properties":[],"events":[]},"ClientManager":{"meta":{"id":"ClientManager","longname":"ClientManager","name":"ClientManager","scope":"global","kind":"class","description":"Manages the State and Background Tasks of the Client","access":"private","meta":{"lineno":7,"filename":"ClientManager.js","path":"src/client"},"order":30},"functions":[{"id":"ClientManager#connectToWebSocket","longname":"ClientManager#connectToWebSocket","name":"connectToWebSocket","scope":"instance","kind":"function","description":"Connects the Client to the WebSocket","memberof":"ClientManager","params":[{"type":{"names":["String"]},"description":"the authorization token","name":"token"},{"type":{"names":["function"]},"description":"function to run when connection is successful","name":"resolve"},{"type":{"names":["function"]},"description":"function to run when connection fails","name":"reject"}],"returns":[[[["null"],""]]],"meta":{"lineno":29,"filename":"ClientManager.js","path":"src/client"},"order":33},{"id":"ClientManager#setupKeepAlive","longname":"ClientManager#setupKeepAlive","name":"setupKeepAlive","scope":"instance","kind":"function","description":"Sets up a keep-alive interval to keep the Client's connection valid","memberof":"ClientManager","params":[{"type":{"names":["Number"]},"description":"the interval in milliseconds at which heartbeat packets should be sent","name":"time"}],"returns":[[[["null"],""]]],"meta":{"lineno":46,"filename":"ClientManager.js","path":"src/client"},"order":34}],"properties":[{"id":"ClientManager#client","longname":"ClientManager#client","name":"client","scope":"instance","kind":"member","description":"The Client that instantiated this Manager","memberof":"ClientManager","type":[[[["Client"],""]]],"meta":{"lineno":14,"filename":"ClientManager.js","path":"src/client"},"order":31},{"id":"ClientManager#heartbeatInterval","longname":"ClientManager#heartbeatInterval","name":"heartbeatInterval","scope":"instance","kind":"member","description":"The heartbeat interval, null if not yet set","memberof":"ClientManager","type":[[[["Number"],""]]],"nullable":true,"meta":{"lineno":19,"filename":"ClientManager.js","path":"src/client"},"order":32}],"events":[]},"Channel":{"meta":{"id":"Channel","longname":"Channel","name":"Channel","scope":"global","kind":"class","description":"Represents any Channel on Discord","meta":{"lineno":4,"filename":"Channel.js","path":"src/structures"},"order":35},"functions":[{"id":"Channel#delete","longname":"Channel#delete","name":"delete","scope":"instance","kind":"function","description":"Deletes the channel","memberof":"Channel","params":[],"examples":["// delete the channel\nchannel.delete()\n .then() // success\n .catch(console.log); // log error"],"returns":[[["Promise",".<"],["Channel",">"]]],"meta":{"lineno":39,"filename":"Channel.js","path":"src/structures"},"order":38}],"properties":[{"id":"Channel#client","longname":"Channel#client","name":"client","scope":"instance","kind":"member","description":"The client that instantiated the Channel","memberof":"Channel","type":[[[["Client"],""]]],"meta":{"lineno":10,"filename":"Channel.js","path":"src/structures"},"order":36},{"id":"Channel#id","longname":"Channel#id","name":"id","scope":"instance","kind":"member","description":"The unique ID of the channel","memberof":"Channel","type":[[[["String"],""]]],"meta":{"lineno":27,"filename":"Channel.js","path":"src/structures"},"order":37}],"events":[]},"ClientUser":{"meta":{"id":"ClientUser","longname":"ClientUser","name":"ClientUser","scope":"global","kind":"class","augments":["User"],"description":"Represents the logged in client's Discord User","meta":{"lineno":7,"filename":"ClientUser.js","path":"src/structures"},"order":39},"functions":[{"id":"ClientUser#setUsername","longname":"ClientUser#setUsername","name":"setUsername","scope":"instance","kind":"function","description":"Set the username of the logged in Client.\nChanging usernames in Discord is heavily rate limited, with only 2 requests\nevery hour. Use this sparingly!","memberof":"ClientUser","params":[{"type":{"names":["String"]},"description":"the new username","name":"username"}],"examples":["// set username\nclient.user.setUsername('discordjs')\n .then(user => console.log(`My new username is ${user.username}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["ClientUser",">"]]],"meta":{"lineno":34,"filename":"ClientUser.js","path":"src/structures"},"order":42},{"id":"ClientUser#setEmail","longname":"ClientUser#setEmail","name":"setEmail","scope":"instance","kind":"function","description":"If this user is a \"self bot\" or logged in using a normal user's details (which should be avoided), you can set the\nemail here.","memberof":"ClientUser","params":[{"type":{"names":["String"]},"description":"the new email","name":"email"}],"examples":["// set email\nclient.user.setEmail('bob@gmail.com')\n .then(user => console.log(`My new email is ${user.email}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["ClientUser",">"]]],"meta":{"lineno":49,"filename":"ClientUser.js","path":"src/structures"},"order":43},{"id":"ClientUser#setPassword","longname":"ClientUser#setPassword","name":"setPassword","scope":"instance","kind":"function","description":"If this user is a \"self bot\" or logged in using a normal user's details (which should be avoided), you can set the\npassword here.","memberof":"ClientUser","params":[{"type":{"names":["String"]},"description":"the new password","name":"password"}],"examples":["// set password\nclient.user.setPassword('password')\n .then(user => console.log('New password set!'))\n .catch(console.log);"],"returns":[[["Promise",".<"],["ClientUser",">"]]],"meta":{"lineno":64,"filename":"ClientUser.js","path":"src/structures"},"order":44},{"id":"ClientUser#setAvatar","longname":"ClientUser#setAvatar","name":"setAvatar","scope":"instance","kind":"function","description":"Set the avatar of the logged in Client.","memberof":"ClientUser","params":[{"type":{"names":["Base64Resolvable"]},"description":"the new avatar","name":"avatar"}],"examples":["// set avatar\nclient.user.setAvatar(fs.readFileSync('./avatar.png'))\n .then(user => console.log(`New avatar set!`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["ClientUser",">"]]],"meta":{"lineno":77,"filename":"ClientUser.js","path":"src/structures"},"order":45},{"id":"ClientUser#toString","longname":"ClientUser#toString","name":"toString","scope":"instance","kind":"function","inherits":"User#toString","inherited":true,"description":"When concatenated with a String, this automatically concatenates the User's mention instead of the User object.","memberof":"ClientUser","params":[],"examples":["// logs: Hello from <@123456789>!\nconsole.log(`Hello from ${user}!`);"],"returns":[[[["String"],""]]],"meta":{"lineno":64,"filename":"User.js","path":"src/structures"},"order":284},{"id":"ClientUser#deleteDM","longname":"ClientUser#deleteDM","name":"deleteDM","scope":"instance","kind":"function","inherits":"User#deleteDM","inherited":true,"description":"Deletes a DM Channel (if one exists) between the Client and the User. Resolves with the Channel if successful.","memberof":"ClientUser","params":[],"returns":[[["Promise",".<"],["DMChannel",">"]]],"meta":{"lineno":72,"filename":"User.js","path":"src/structures"},"order":285},{"id":"ClientUser#equals","longname":"ClientUser#equals","name":"equals","scope":"instance","kind":"function","inherits":"User#equals","inherited":true,"description":"Checks if the user is equal to another. It compares username, ID, discriminator, status and the game being played.\nIt is recommended to compare equality by using `user.id === user2.id` unless you want to compare all properties.","memberof":"ClientUser","params":[{"type":{"names":["User"]},"description":"the user to compare","name":"user"}],"returns":[[[["Boolean"],""]]],"meta":{"lineno":82,"filename":"User.js","path":"src/structures"},"order":286},{"id":"ClientUser#sendMessage","longname":"ClientUser#sendMessage","name":"sendMessage","scope":"instance","kind":"function","inherits":"User#sendMessage","inherited":true,"implements":["TextBasedChannel#sendMessage"],"description":"Send a message to this channel","memberof":"ClientUser","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"},{"type":{"names":["MessageOptions"]},"optional":true,"defaultvalue":"{}","description":"the options to provide","name":"options"}],"examples":["// send a message\nchannel.sendMessage('hello!')\n .then(message => console.log(`Sent message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":25,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":287},{"id":"ClientUser#sendTTSMessage","longname":"ClientUser#sendTTSMessage","name":"sendTTSMessage","scope":"instance","kind":"function","inherits":"User#sendTTSMessage","inherited":true,"implements":["TextBasedChannel#sendTTSMessage"],"description":"Send a text-to-speech message to this channel","memberof":"ClientUser","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"}],"examples":["// send a TTS message\nchannel.sendTTSMessage('hello!')\n .then(message => console.log(`Sent tts message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":38,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":288}],"properties":[{"id":"ClientUser#verified","longname":"ClientUser#verified","name":"verified","scope":"instance","kind":"member","description":"Whether or not this account has been verified","memberof":"ClientUser","type":[[[["Boolean"],""]]],"meta":{"lineno":14,"filename":"ClientUser.js","path":"src/structures"},"order":40},{"id":"ClientUser#email","longname":"ClientUser#email","name":"email","scope":"instance","kind":"member","description":"The email of this account","memberof":"ClientUser","type":[[[["String"],""]]],"meta":{"lineno":19,"filename":"ClientUser.js","path":"src/structures"},"order":41},{"id":"ClientUser#username","longname":"ClientUser#username","name":"username","scope":"instance","kind":"member","inherits":"User#username","inherited":true,"description":"The username of the User","memberof":"ClientUser","type":[[[["String"],""]]],"meta":{"lineno":20,"filename":"User.js","path":"src/structures"},"order":277},{"id":"ClientUser#id","longname":"ClientUser#id","name":"id","scope":"instance","kind":"member","inherits":"User#id","inherited":true,"description":"The ID of the User","memberof":"ClientUser","type":[[[["String"],""]]],"meta":{"lineno":25,"filename":"User.js","path":"src/structures"},"order":278},{"id":"ClientUser#discriminator","longname":"ClientUser#discriminator","name":"discriminator","scope":"instance","kind":"member","inherits":"User#discriminator","inherited":true,"description":"A discriminator based on username for the User","memberof":"ClientUser","type":[[[["String"],""]]],"meta":{"lineno":30,"filename":"User.js","path":"src/structures"},"order":279},{"id":"ClientUser#avatar","longname":"ClientUser#avatar","name":"avatar","scope":"instance","kind":"member","inherits":"User#avatar","inherited":true,"description":"The ID of the user's avatar","memberof":"ClientUser","type":[[[["String"],""]]],"meta":{"lineno":35,"filename":"User.js","path":"src/structures"},"order":280},{"id":"ClientUser#bot","longname":"ClientUser#bot","name":"bot","scope":"instance","kind":"member","inherits":"User#bot","inherited":true,"description":"Whether or not the User is a Bot.","memberof":"ClientUser","type":[[[["Boolean"],""]]],"meta":{"lineno":40,"filename":"User.js","path":"src/structures"},"order":281},{"id":"ClientUser#status","longname":"ClientUser#status","name":"status","scope":"instance","kind":"member","inherits":"User#status","inherited":true,"description":"The status of the user:\n\n* **`online`** - user is online\n* **`offline`** - user is offline\n* **`idle`** - user is AFK","memberof":"ClientUser","type":[[[["String"],""]]],"meta":{"lineno":49,"filename":"User.js","path":"src/structures"},"order":282},{"id":"ClientUser#game","longname":"ClientUser#game","name":"game","scope":"instance","kind":"member","inherits":"User#game","inherited":true,"description":"The game that the user is playing, `null` if they aren't playing a game.","memberof":"ClientUser","type":[[[["String"],""]]],"meta":{"lineno":54,"filename":"User.js","path":"src/structures"},"order":283}],"events":[]},"DMChannel":{"meta":{"id":"DMChannel","longname":"DMChannel","name":"DMChannel","scope":"global","kind":"class","augments":["Channel"],"implements":["TextBasedChannel"],"description":"Represents a Direct Message Channel between two users.","meta":{"lineno":10,"filename":"DMChannel.js","path":"src/structures"},"order":46},"functions":[{"id":"DMChannel#toString","longname":"DMChannel#toString","name":"toString","scope":"instance","kind":"function","description":"When concatenated with a String, this automatically concatenates the recipient's mention instead of the\nDM channel object.","memberof":"DMChannel","params":[],"returns":[[[["String"],""]]],"meta":{"lineno":36,"filename":"DMChannel.js","path":"src/structures"},"order":49},{"id":"DMChannel#sendMessage","longname":"DMChannel#sendMessage","name":"sendMessage","scope":"instance","kind":"function","implements":["TextBasedChannel#sendMessage"],"description":"Send a message to this channel","memberof":"DMChannel","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"},{"type":{"names":["MessageOptions"]},"optional":true,"defaultvalue":"{}","description":"the options to provide","name":"options"}],"examples":["// send a message\nchannel.sendMessage('hello!')\n .then(message => console.log(`Sent message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":25,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":240},{"id":"DMChannel#sendTTSMessage","longname":"DMChannel#sendTTSMessage","name":"sendTTSMessage","scope":"instance","kind":"function","implements":["TextBasedChannel#sendTTSMessage"],"description":"Send a text-to-speech message to this channel","memberof":"DMChannel","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"}],"examples":["// send a TTS message\nchannel.sendTTSMessage('hello!')\n .then(message => console.log(`Sent tts message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":38,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":241},{"id":"DMChannel#delete","longname":"DMChannel#delete","name":"delete","scope":"instance","kind":"function","inherits":"Channel#delete","inherited":true,"description":"Deletes the channel","memberof":"DMChannel","params":[],"examples":["// delete the channel\nchannel.delete()\n .then() // success\n .catch(console.log); // log error"],"returns":[[["Promise",".<"],["Channel",">"]]],"meta":{"lineno":39,"filename":"Channel.js","path":"src/structures"},"order":249}],"properties":[{"id":"DMChannel#recipient","longname":"DMChannel#recipient","name":"recipient","scope":"instance","kind":"member","description":"The recipient on the other end of the DM","memberof":"DMChannel","type":[[[["User"],""]]],"meta":{"lineno":23,"filename":"DMChannel.js","path":"src/structures"},"order":47},{"id":"DMChannel#lastMessageID","longname":"DMChannel#lastMessageID","name":"lastMessageID","scope":"instance","kind":"member","description":"The ID of the last sent message, if available","memberof":"DMChannel","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":28,"filename":"DMChannel.js","path":"src/structures"},"order":48},{"id":"DMChannel#messages","longname":"DMChannel#messages","name":"messages","scope":"instance","kind":"member","implements":["TextBasedChannel#messages"],"description":"A Map containing the messages sent to this channel.","memberof":"DMChannel","type":[[["Map",".<"],["String",", "],["Message",">"]]],"meta":{"lineno":12,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":239},{"id":"DMChannel#client","longname":"DMChannel#client","name":"client","scope":"instance","kind":"member","inherits":"Channel#client","inherited":true,"description":"The client that instantiated the Channel","memberof":"DMChannel","type":[[[["Client"],""]]],"meta":{"lineno":10,"filename":"Channel.js","path":"src/structures"},"order":247},{"id":"DMChannel#id","longname":"DMChannel#id","name":"id","scope":"instance","kind":"member","inherits":"Channel#id","inherited":true,"description":"The unique ID of the channel","memberof":"DMChannel","type":[[[["String"],""]]],"meta":{"lineno":27,"filename":"Channel.js","path":"src/structures"},"order":248}],"events":[]},"Guild":{"meta":{"id":"Guild","longname":"Guild","name":"Guild","scope":"global","kind":"class","description":"Represents a Guild (or a Server) on Discord.","meta":{"lineno":24,"filename":"Guild.js","path":"src/structures"},"order":50},"functions":[{"id":"Guild#toString","longname":"Guild#toString","name":"toString","scope":"instance","kind":"function","description":"When concatenated with a String, this automatically concatenates the Guild's name instead of the Guild object.","memberof":"Guild","params":[],"examples":["// logs: Hello from My Guild!\nconsole.log(`Hello from ${guild}!`);","// logs: Hello from My Guild!\nconsole.log(`Hello from ' + guild + '!');"],"returns":[[[["String"],""]]],"meta":{"lineno":117,"filename":"Guild.js","path":"src/structures"},"order":58},{"id":"Guild#kick","longname":"Guild#kick","name":"kick","scope":"instance","kind":"function","description":"Tries to kick a member from the guild.","memberof":"Guild","params":[{"type":{"names":["GuildMemberResolvable"]},"description":"the member to kick","name":"member"}],"examples":["// kicks a member from a guild:\nguild.kick(message.author)\n .then(member => console.log(`Kicked ${member}`))\n .catch(error => console.log(error));"],"returns":[[["Promise",".<"],["GuildMember",", "],["Error",">"]]],"meta":{"lineno":131,"filename":"Guild.js","path":"src/structures"},"order":59},{"id":"Guild#member","longname":"Guild#member","name":"member","scope":"instance","kind":"function","description":"Returns the GuildMember form of a User object, if the User is present in the guild.","memberof":"Guild","params":[{"type":{"names":["UserResolvable"]},"description":"the user that you want to obtain the GuildMember of.","name":"user"}],"examples":["// get the guild member of a user\nconst member = guild.member(message.author);"],"returns":[[[["GuildMember"],""]],[[["null"],""]]],"meta":{"lineno":143,"filename":"Guild.js","path":"src/structures"},"order":60},{"id":"Guild#equals","longname":"Guild#equals","name":"equals","scope":"instance","kind":"function","description":"Whether this Guild equals another Guild. It compares all properties, so for most operations\nit is advisable to just compare `guild.id === guild2.id` as it is much faster and is often\nwhat most users need.","memberof":"Guild","params":[{"type":{"names":["Guild"]},"description":"the guild to compare","name":"guild"}],"returns":[[[["Boolean"],""]]],"meta":{"lineno":154,"filename":"Guild.js","path":"src/structures"},"order":61},{"id":"Guild#setup","longname":"Guild#setup","name":"setup","scope":"instance","kind":"function","description":"Sets up the Guild","memberof":"Guild","params":[{"type":{"names":["any"]},"name":"data"}],"returns":[[[["null"],""]]],"access":"private","meta":{"lineno":188,"filename":"Guild.js","path":"src/structures"},"order":62},{"id":"Guild#createChannel","longname":"Guild#createChannel","name":"createChannel","scope":"instance","kind":"function","description":"Creates a new Channel in the Guild.","memberof":"Guild","params":[{"type":{"names":["String"]},"description":"the name of the new channel.","name":"name"},{"type":{"names":["String"]},"description":"the type of the new channel, either `text` or `voice`.","name":"type"}],"examples":["// create a new text channel\nguild.createChannel('new general', 'text')\n .then(channel => console.log(`Created new channel ${channel}`))\n .catch(console.log);"],"returns":[[["Promise",".<("],["TextChannel","|"],["VoiceChannel","), "],["Error",">"]]],"meta":{"lineno":328,"filename":"Guild.js","path":"src/structures"},"order":78},{"id":"Guild#createRole","longname":"Guild#createRole","name":"createRole","scope":"instance","kind":"function","description":"Creates a new role in the guild, as of now this is just a blank role.","memberof":"Guild","params":[],"examples":["// create a new role\nguild.createRole()\n .then(role => console.log(`Created role ${role}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Role",", "],["Error",">"]]],"meta":{"lineno":341,"filename":"Guild.js","path":"src/structures"},"order":79},{"id":"Guild#leave","longname":"Guild#leave","name":"leave","scope":"instance","kind":"function","description":"Causes the Client to leave the guild.","memberof":"Guild","params":[],"examples":["// leave a guild\nguild.leave()\n .then(g => console.log(`Left the guild ${g}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":354,"filename":"Guild.js","path":"src/structures"},"order":80},{"id":"Guild#delete","longname":"Guild#delete","name":"delete","scope":"instance","kind":"function","description":"Causes the Client to delete the guild.","memberof":"Guild","params":[],"examples":["// delete a guild\nguild.delete()\n .then(g => console.log(`Deleted the guild ${g}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":367,"filename":"Guild.js","path":"src/structures"},"order":81},{"id":"Guild#edit","longname":"Guild#edit","name":"edit","scope":"instance","kind":"function","description":"Updates the Guild with new information - e.g. a new name.","memberof":"Guild","params":[{"type":{"names":["GuildEditData"]},"description":"the data to update the guild with.","name":"data"}],"examples":["// set the guild name and region\nguild.edit({\n name: 'Discord Guild',\n region: 'london',\n})\n.then(updated => console.log(`New guild name ${updated.name} in region ${updated.region}`))\n.catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":384,"filename":"Guild.js","path":"src/structures"},"order":82},{"id":"Guild#setName","longname":"Guild#setName","name":"setName","scope":"instance","kind":"function","description":"Edit the name of the Guild.","memberof":"Guild","params":[{"type":{"names":["String"]},"description":"the new name of the Guild.","name":"name"}],"examples":["// edit the guild name\nguild.setName('Discord Guild')\n .then(updated => console.log(`Updated guild name to ${guild.name}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":398,"filename":"Guild.js","path":"src/structures"},"order":83},{"id":"Guild#setRegion","longname":"Guild#setRegion","name":"setRegion","scope":"instance","kind":"function","description":"Edit the region of the Guild.","memberof":"Guild","params":[{"type":{"names":["Region"]},"description":"the new region of the guild.","name":"region"}],"examples":["// edit the guild region\nguild.setRegion('london')\n .then(updated => console.log(`Updated guild region to ${guild.region}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":412,"filename":"Guild.js","path":"src/structures"},"order":84},{"id":"Guild#setVerificationLevel","longname":"Guild#setVerificationLevel","name":"setVerificationLevel","scope":"instance","kind":"function","description":"Edit the verification level of the Guild.","memberof":"Guild","params":[{"type":{"names":["VerificationLevel"]},"description":"the new verification level of the guild.","name":"verificationLevel"}],"examples":["// edit the guild verification level\nguild.setVerificationLevel(1)\n .then(updated => console.log(`Updated guild verification level to ${guild.verificationLevel}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":426,"filename":"Guild.js","path":"src/structures"},"order":85},{"id":"Guild#setAFKChannel","longname":"Guild#setAFKChannel","name":"setAFKChannel","scope":"instance","kind":"function","description":"Edit the AFK channel of the Guild.","memberof":"Guild","params":[{"type":{"names":["GuildChannelResolvable"]},"description":"the new AFK channel.","name":"afkChannel"}],"examples":["// edit the guild AFK channel\nguild.setAFKChannel(channel)\n .then(updated => console.log(`Updated guild AFK channel to ${guild.afkChannel}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":440,"filename":"Guild.js","path":"src/structures"},"order":86},{"id":"Guild#setAFKTimeout","longname":"Guild#setAFKTimeout","name":"setAFKTimeout","scope":"instance","kind":"function","description":"Edit the AFK timeout of the Guild.","memberof":"Guild","params":[{"type":{"names":["Number"]},"description":"the time in seconds that a user must be idle to be considered AFK.","name":"afkTimeout"}],"examples":["// edit the guild AFK channel\nguild.setAFKTimeout(60)\n .then(updated => console.log(`Updated guild AFK timeout to ${guild.afkTimeout}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":454,"filename":"Guild.js","path":"src/structures"},"order":87},{"id":"Guild#setIcon","longname":"Guild#setIcon","name":"setIcon","scope":"instance","kind":"function","description":"Set a new Guild Icon.","memberof":"Guild","params":[{"type":{"names":["Base64Resolvable"]},"description":"the new icon of the guild.","name":"icon"}],"examples":["// edit the guild icon\nguild.setIcon(fs.readFileSync('./icon.png'))\n .then(updated => console.log('Updated the guild icon'))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":468,"filename":"Guild.js","path":"src/structures"},"order":88},{"id":"Guild#setOwner","longname":"Guild#setOwner","name":"setOwner","scope":"instance","kind":"function","description":"Sets a new owner of the Guild.","memberof":"Guild","params":[{"type":{"names":["GuildMemberResolvable"]},"description":"the new owner of the Guild.","name":"owner"}],"examples":["// edit the guild owner\nguild.setOwner(guilds.members[0])\n .then(updated => console.log(`Updated the guild owner to ${updated.owner.username}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":482,"filename":"Guild.js","path":"src/structures"},"order":89},{"id":"Guild#setSplash","longname":"Guild#setSplash","name":"setSplash","scope":"instance","kind":"function","description":"Set a new Guild Splash Logo.","memberof":"Guild","params":[{"type":{"names":["Base64Resolvable"]},"description":"the new splash screen of the guild.","name":"splash"}],"examples":["// edit the guild splash\nguild.setIcon(fs.readFileSync('./splash.png'))\n .then(updated => console.log('Updated the guild splash'))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":496,"filename":"Guild.js","path":"src/structures"},"order":90}],"properties":[{"id":"Guild#client","longname":"Guild#client","name":"client","scope":"instance","kind":"member","description":"The Client that created the instance of the the Guild.","memberof":"Guild","type":[[[["Client"],""]]],"meta":{"lineno":30,"filename":"Guild.js","path":"src/structures"},"order":51},{"id":"Guild#members","longname":"Guild#members","name":"members","scope":"instance","kind":"member","description":"A Map of members that are in this Guild. The key is the member's ID, the value is the member.","memberof":"Guild","type":[[["Map",".<"],["String",", "],["GuildMember",">"]]],"meta":{"lineno":36,"filename":"Guild.js","path":"src/structures"},"order":52},{"id":"Guild#channels","longname":"Guild#channels","name":"channels","scope":"instance","kind":"member","description":"A Map of channels that are in this Guild. The key is the channel's ID, the value is the channel.","memberof":"Guild","type":[[["Map",".<"],["String",", "],["GuildChannel",">"]]],"meta":{"lineno":42,"filename":"Guild.js","path":"src/structures"},"order":53},{"id":"Guild#roles","longname":"Guild#roles","name":"roles","scope":"instance","kind":"member","description":"A Map of roles that are in this Guild. The key is the role's ID, the value is the role.","memberof":"Guild","type":[[["Map",".<"],["String",", "],["Role",">"]]],"meta":{"lineno":48,"filename":"Guild.js","path":"src/structures"},"order":54},{"id":"Guild#available","longname":"Guild#available","name":"available","scope":"instance","kind":"member","description":"Whether the Guild is available to access. If it is not available, it indicates a server outage.","memberof":"Guild","type":[[[["Boolean"],""]]],"meta":{"lineno":59,"filename":"Guild.js","path":"src/structures"},"order":55},{"id":"Guild#id","longname":"Guild#id","name":"id","scope":"instance","kind":"member","description":"The Unique ID of the Guild, useful for comparisons.","memberof":"Guild","type":[[[["String"],""]]],"meta":{"lineno":64,"filename":"Guild.js","path":"src/structures"},"order":56},{"id":"Guild#splash","longname":"Guild#splash","name":"splash","scope":"instance","kind":"member","description":"The hash of the guild splash image, or null if no splash (VIP only)","memberof":"Guild","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":195,"filename":"Guild.js","path":"src/structures"},"order":63},{"id":"Guild#region","longname":"Guild#region","name":"region","scope":"instance","kind":"member","description":"The region the guild is located in","memberof":"Guild","type":[[[["String"],""]]],"meta":{"lineno":200,"filename":"Guild.js","path":"src/structures"},"order":64},{"id":"Guild#name","longname":"Guild#name","name":"name","scope":"instance","kind":"member","description":"The name of the guild","memberof":"Guild","type":[[[["String"],""]]],"meta":{"lineno":205,"filename":"Guild.js","path":"src/structures"},"order":65},{"id":"Guild#memberCount","longname":"Guild#memberCount","name":"memberCount","scope":"instance","kind":"member","description":"The amount of initial members in the guild.","memberof":"Guild","type":[[[["Number"],""]]],"meta":{"lineno":210,"filename":"Guild.js","path":"src/structures"},"order":66},{"id":"Guild#large","longname":"Guild#large","name":"large","scope":"instance","kind":"member","description":"Whether the guild is \"large\" (has more than 250 members)","memberof":"Guild","type":[[[["Boolean"],""]]],"meta":{"lineno":215,"filename":"Guild.js","path":"src/structures"},"order":67},{"id":"Guild#joinDate","longname":"Guild#joinDate","name":"joinDate","scope":"instance","kind":"member","description":"The date at which the logged-in client joined the guild.","memberof":"Guild","type":[[[["Date"],""]]],"meta":{"lineno":220,"filename":"Guild.js","path":"src/structures"},"order":68},{"id":"Guild#icon","longname":"Guild#icon","name":"icon","scope":"instance","kind":"member","description":"The hash of the guild icon, or null if there is no icon.","memberof":"Guild","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":225,"filename":"Guild.js","path":"src/structures"},"order":69},{"id":"Guild#features","longname":"Guild#features","name":"features","scope":"instance","kind":"member","description":"An array of guild features.","memberof":"Guild","type":[[["Array",".<"],["Object",">"]]],"meta":{"lineno":230,"filename":"Guild.js","path":"src/structures"},"order":70},{"id":"Guild#emojis","longname":"Guild#emojis","name":"emojis","scope":"instance","kind":"member","description":"An array of guild emojis.","memberof":"Guild","type":[[["Array",".<"],["Object",">"]]],"meta":{"lineno":235,"filename":"Guild.js","path":"src/structures"},"order":71},{"id":"Guild#afkTimeout","longname":"Guild#afkTimeout","name":"afkTimeout","scope":"instance","kind":"member","description":"The time in seconds before a user is counted as \"away from keyboard\".","memberof":"Guild","type":[[[["Number"],""]]],"nullable":true,"meta":{"lineno":240,"filename":"Guild.js","path":"src/structures"},"order":72},{"id":"Guild#afkChannelID","longname":"Guild#afkChannelID","name":"afkChannelID","scope":"instance","kind":"member","description":"The ID of the voice channel where AFK members are moved.","memberof":"Guild","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":245,"filename":"Guild.js","path":"src/structures"},"order":73},{"id":"Guild#embedEnabled","longname":"Guild#embedEnabled","name":"embedEnabled","scope":"instance","kind":"member","description":"Whether embedded images are enabled on this guild.","memberof":"Guild","type":[[[["Boolean"],""]]],"meta":{"lineno":250,"filename":"Guild.js","path":"src/structures"},"order":74},{"id":"Guild#verificationLevel","longname":"Guild#verificationLevel","name":"verificationLevel","scope":"instance","kind":"member","description":"The verification level of the guild.","memberof":"Guild","type":[[[["Number"],""]]],"meta":{"lineno":255,"filename":"Guild.js","path":"src/structures"},"order":75},{"id":"Guild#owner","longname":"Guild#owner","name":"owner","scope":"instance","kind":"member","description":"The owner of the guild","memberof":"Guild","type":[[[["User"],""]]],"meta":{"lineno":269,"filename":"Guild.js","path":"src/structures"},"order":76},{"id":"Guild#embedChannel","longname":"Guild#embedChannel","name":"embedChannel","scope":"instance","kind":"member","description":"The embed channel of the Guild.","memberof":"Guild","type":[[[["GuildChannel"],""]]],"meta":{"lineno":282,"filename":"Guild.js","path":"src/structures"},"order":77}],"events":[]},"GuildChannel":{"meta":{"id":"GuildChannel","longname":"GuildChannel","name":"GuildChannel","scope":"global","kind":"class","augments":["Channel"],"description":"Represents a Guild Channel (i.e. Text Channels and Voice Channels)","meta":{"lineno":25,"filename":"GuildChannel.js","path":"src/structures"},"order":91},"functions":[{"id":"GuildChannel#equals","longname":"GuildChannel#equals","name":"equals","scope":"instance","kind":"function","description":"Checks if this channel has the same type, topic, position, name, overwrites and ID as another channel.\nIn most cases, a simple `channel.id === channel2.id` will do, and is much faster too.","memberof":"GuildChannel","params":[{"type":{"names":["GuildChannel"]},"description":"the channel to compare this channel to","name":"channel"}],"returns":[[[["Boolean"],""]]],"meta":{"lineno":76,"filename":"GuildChannel.js","path":"src/structures"},"order":98},{"id":"GuildChannel#permissionsFor","longname":"GuildChannel#permissionsFor","name":"permissionsFor","scope":"instance","kind":"function","description":"Gets the overall set of permissions for a user in this channel, taking into account roles and permission\noverwrites.","memberof":"GuildChannel","params":[{"type":{"names":["GuildMemberResolvable"]},"description":"the user that you want to obtain the overall permissions for","name":"member"}],"returns":[[[["EvaluatedPermissions"],""]]],"meta":{"lineno":108,"filename":"GuildChannel.js","path":"src/structures"},"order":99},{"id":"GuildChannel#setName","longname":"GuildChannel#setName","name":"setName","scope":"instance","kind":"function","description":"Set a new name for the Guild Channel","memberof":"GuildChannel","params":[{"type":{"names":["String"]},"description":"the new name for the guild channel","name":"name"}],"examples":["// set a new channel name\nchannel.setName('not general')\n .then(newChannel => console.log(`Channel's new name is ${newChannel.name}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":178,"filename":"GuildChannel.js","path":"src/structures"},"order":100},{"id":"GuildChannel#setPosition","longname":"GuildChannel#setPosition","name":"setPosition","scope":"instance","kind":"function","description":"Set a new position for the Guild Channel","memberof":"GuildChannel","params":[{"type":{"names":["Number"]},"description":"the new position for the guild channel","name":"position"}],"examples":["// set a new channel position\nchannel.setPosition(2)\n .then(newChannel => console.log(`Channel's new position is ${newChannel.position}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":192,"filename":"GuildChannel.js","path":"src/structures"},"order":101},{"id":"GuildChannel#setTopic","longname":"GuildChannel#setTopic","name":"setTopic","scope":"instance","kind":"function","description":"Set a new topic for the Guild Channel","memberof":"GuildChannel","params":[{"type":{"names":["String"]},"description":"the new topic for the guild channel","name":"topic"}],"examples":["// set a new channel topic\nchannel.setTopic('needs more rate limiting')\n .then(newChannel => console.log(`Channel's new topic is ${newChannel.topic}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":206,"filename":"GuildChannel.js","path":"src/structures"},"order":102},{"id":"GuildChannel#toString","longname":"GuildChannel#toString","name":"toString","scope":"instance","kind":"function","description":"When concatenated with a String, this automatically concatenates the Channel's name instead of the Channel object.","memberof":"GuildChannel","params":[],"examples":["// Outputs: Hello from general\nconsole.log(`Hello from ${channel}`);","// Outputs: Hello from general\nconsole.log('Hello from ' + ${channel});"],"returns":[[[["String"],""]]],"meta":{"lineno":220,"filename":"GuildChannel.js","path":"src/structures"},"order":103},{"id":"GuildChannel#delete","longname":"GuildChannel#delete","name":"delete","scope":"instance","kind":"function","inherits":"Channel#delete","inherited":true,"description":"Deletes the channel","memberof":"GuildChannel","params":[],"examples":["// delete the channel\nchannel.delete()\n .then() // success\n .catch(console.log); // log error"],"returns":[[["Promise",".<"],["Channel",">"]]],"meta":{"lineno":39,"filename":"Channel.js","path":"src/structures"},"order":276}],"properties":[{"id":"GuildChannel#type","longname":"GuildChannel#type","name":"type","scope":"instance","kind":"member","description":"The type of the Guild Channel","memberof":"GuildChannel","type":[[[["Number"],""]]],"meta":{"lineno":36,"filename":"GuildChannel.js","path":"src/structures"},"order":92},{"id":"GuildChannel#topic","longname":"GuildChannel#topic","name":"topic","scope":"instance","kind":"member","description":"The topic of the Guild Channel, if there is one.","memberof":"GuildChannel","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":41,"filename":"GuildChannel.js","path":"src/structures"},"order":93},{"id":"GuildChannel#position","longname":"GuildChannel#position","name":"position","scope":"instance","kind":"member","description":"The position of the channel in the list.","memberof":"GuildChannel","type":[[[["Number"],""]]],"meta":{"lineno":46,"filename":"GuildChannel.js","path":"src/structures"},"order":94},{"id":"GuildChannel#name","longname":"GuildChannel#name","name":"name","scope":"instance","kind":"member","description":"The name of the Guild Channel","memberof":"GuildChannel","type":[[[["String"],""]]],"meta":{"lineno":51,"filename":"GuildChannel.js","path":"src/structures"},"order":95},{"id":"GuildChannel#lastMessageID","longname":"GuildChannel#lastMessageID","name":"lastMessageID","scope":"instance","kind":"member","description":"The ID of the last message in the channel, if one was sent.","memberof":"GuildChannel","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":56,"filename":"GuildChannel.js","path":"src/structures"},"order":96},{"id":"GuildChannel#permissionOverwrites","longname":"GuildChannel#permissionOverwrites","name":"permissionOverwrites","scope":"instance","kind":"member","description":"A list of permission overwrites in this channel for roles and users.","memberof":"GuildChannel","type":[[["Array",".<"],["PermissionOverwrites",">"]]],"meta":{"lineno":62,"filename":"GuildChannel.js","path":"src/structures"},"order":97},{"id":"GuildChannel#client","longname":"GuildChannel#client","name":"client","scope":"instance","kind":"member","inherits":"Channel#client","inherited":true,"description":"The client that instantiated the Channel","memberof":"GuildChannel","type":[[[["Client"],""]]],"meta":{"lineno":10,"filename":"Channel.js","path":"src/structures"},"order":274},{"id":"GuildChannel#id","longname":"GuildChannel#id","name":"id","scope":"instance","kind":"member","inherits":"Channel#id","inherited":true,"description":"The unique ID of the channel","memberof":"GuildChannel","type":[[[["String"],""]]],"meta":{"lineno":27,"filename":"Channel.js","path":"src/structures"},"order":275}],"events":[]},"GuildMember":{"meta":{"id":"GuildMember","longname":"GuildMember","name":"GuildMember","scope":"global","kind":"class","implements":["TextBasedChannel"],"description":"Represents a Member of a Guild on Discord","meta":{"lineno":7,"filename":"GuildMember.js","path":"src/structures"},"order":104},"functions":[{"id":"GuildMember#deleteDM","longname":"GuildMember#deleteDM","name":"deleteDM","scope":"instance","kind":"function","description":"Deletes any DM's with this Guild Member","memberof":"GuildMember","params":[],"returns":[[["Promise",".<"],["DMChannel",">"]]],"meta":{"lineno":133,"filename":"GuildMember.js","path":"src/structures"},"order":120},{"id":"GuildMember#kick","longname":"GuildMember#kick","name":"kick","scope":"instance","kind":"function","description":"Kick this member from the Guild","memberof":"GuildMember","params":[],"returns":[[["Promise",".<"],["GuildMember",">"]]],"meta":{"lineno":141,"filename":"GuildMember.js","path":"src/structures"},"order":121},{"id":"GuildMember#sendMessage","longname":"GuildMember#sendMessage","name":"sendMessage","scope":"instance","kind":"function","implements":["TextBasedChannel#sendMessage"],"description":"Send a message to this channel","memberof":"GuildMember","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"},{"type":{"names":["MessageOptions"]},"optional":true,"defaultvalue":"{}","description":"the options to provide","name":"options"}],"examples":["// send a message\nchannel.sendMessage('hello!')\n .then(message => console.log(`Sent message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":25,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":245},{"id":"GuildMember#sendTTSMessage","longname":"GuildMember#sendTTSMessage","name":"sendTTSMessage","scope":"instance","kind":"function","implements":["TextBasedChannel#sendTTSMessage"],"description":"Send a text-to-speech message to this channel","memberof":"GuildMember","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"}],"examples":["// send a TTS message\nchannel.sendTTSMessage('hello!')\n .then(message => console.log(`Sent tts message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":38,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":246}],"properties":[{"id":"GuildMember#client","longname":"GuildMember#client","name":"client","scope":"instance","kind":"member","description":"The client that instantiated this GuildMember","memberof":"GuildMember","type":[[[["Client"],""]]],"meta":{"lineno":13,"filename":"GuildMember.js","path":"src/structures"},"order":105},{"id":"GuildMember#guild","longname":"GuildMember#guild","name":"guild","scope":"instance","kind":"member","description":"The guild that this member is part of","memberof":"GuildMember","type":[[[["Guild"],""]]],"meta":{"lineno":18,"filename":"GuildMember.js","path":"src/structures"},"order":106},{"id":"GuildMember#user","longname":"GuildMember#user","name":"user","scope":"instance","kind":"member","description":"The user that this guild member instance Represents","memberof":"GuildMember","type":[[[["User"],""]]],"meta":{"lineno":23,"filename":"GuildMember.js","path":"src/structures"},"order":107},{"id":"GuildMember#serverDeaf","longname":"GuildMember#serverDeaf","name":"serverDeaf","scope":"instance","kind":"member","description":"Whether this member is deafened server-wide","memberof":"GuildMember","type":[[[["Boolean"],""]]],"meta":{"lineno":36,"filename":"GuildMember.js","path":"src/structures"},"order":108},{"id":"GuildMember#serverMute","longname":"GuildMember#serverMute","name":"serverMute","scope":"instance","kind":"member","description":"Whether this member is muted server-wide","memberof":"GuildMember","type":[[[["Boolean"],""]]],"meta":{"lineno":41,"filename":"GuildMember.js","path":"src/structures"},"order":109},{"id":"GuildMember#selfMute","longname":"GuildMember#selfMute","name":"selfMute","scope":"instance","kind":"member","description":"Whether this member is self-muted","memberof":"GuildMember","type":[[[["Boolean"],""]]],"meta":{"lineno":46,"filename":"GuildMember.js","path":"src/structures"},"order":110},{"id":"GuildMember#selfDeaf","longname":"GuildMember#selfDeaf","name":"selfDeaf","scope":"instance","kind":"member","description":"Whether this member is self-deafened","memberof":"GuildMember","type":[[[["Boolean"],""]]],"meta":{"lineno":51,"filename":"GuildMember.js","path":"src/structures"},"order":111},{"id":"GuildMember#voiceSessionID","longname":"GuildMember#voiceSessionID","name":"voiceSessionID","scope":"instance","kind":"member","description":"The voice session ID of this member, if any","memberof":"GuildMember","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":56,"filename":"GuildMember.js","path":"src/structures"},"order":112},{"id":"GuildMember#voiceChannelID","longname":"GuildMember#voiceChannelID","name":"voiceChannelID","scope":"instance","kind":"member","description":"The voice channel ID of this member, if any","memberof":"GuildMember","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":61,"filename":"GuildMember.js","path":"src/structures"},"order":113},{"id":"GuildMember#joinDate","longname":"GuildMember#joinDate","name":"joinDate","scope":"instance","kind":"member","description":"The date this member joined the guild","memberof":"GuildMember","type":[[[["Date"],""]]],"meta":{"lineno":66,"filename":"GuildMember.js","path":"src/structures"},"order":114},{"id":"GuildMember#roles","longname":"GuildMember#roles","name":"roles","scope":"instance","kind":"member","description":"A list of roles that are applied to this GuildMember","memberof":"GuildMember","params":[],"type":[[["Array",".<"],["Role",">"]]],"readonly":true,"meta":{"lineno":75,"filename":"GuildMember.js","path":"src/structures"},"order":115},{"id":"GuildMember#mute","longname":"GuildMember#mute","name":"mute","scope":"instance","kind":"member","description":"Whether this member is muted in any way","memberof":"GuildMember","params":[],"type":[[[["Boolean"],""]]],"readonly":true,"meta":{"lineno":98,"filename":"GuildMember.js","path":"src/structures"},"order":116},{"id":"GuildMember#deaf","longname":"GuildMember#deaf","name":"deaf","scope":"instance","kind":"member","description":"Whether this member is deafened in any way","memberof":"GuildMember","params":[],"type":[[[["Boolean"],""]]],"readonly":true,"meta":{"lineno":107,"filename":"GuildMember.js","path":"src/structures"},"order":117},{"id":"GuildMember#voiceChannel","longname":"GuildMember#voiceChannel","name":"voiceChannel","scope":"instance","kind":"member","description":"The voice channel this member is in, if any","memberof":"GuildMember","params":[],"type":[[[["VoiceChannel"],""]]],"readonly":true,"nullable":true,"meta":{"lineno":116,"filename":"GuildMember.js","path":"src/structures"},"order":118},{"id":"GuildMember#id","longname":"GuildMember#id","name":"id","scope":"instance","kind":"member","description":"The ID of this User","memberof":"GuildMember","params":[],"type":[[[["String"],""]]],"readonly":true,"meta":{"lineno":125,"filename":"GuildMember.js","path":"src/structures"},"order":119}],"events":[]},"Message":{"meta":{"id":"Message","longname":"Message","name":"Message","scope":"global","kind":"class","description":"Represents a Message on Discord","meta":{"lineno":4,"filename":"Message.js","path":"src/structures"},"order":122},"functions":[{"id":"Message#equals","longname":"Message#equals","name":"equals","scope":"instance","kind":"function","description":"Used mainly internally. Whether two messages are identical in properties. If you want to compare messages\nwithout checking all the properties, use `message.id === message2.id`, which is much more efficient. This\nmethod allows you to see if there are differences in content, embeds, attachments, nonce and tts properties.","memberof":"Message","params":[{"type":{"names":["Message"]},"description":"The message to compare it to","name":"message"},{"type":{"names":["Object"]},"description":"Raw data passed through the WebSocket about this message","name":"rawData"}],"returns":[[[["Boolean"],""]]],"meta":{"lineno":150,"filename":"Message.js","path":"src/structures"},"order":137},{"id":"Message#delete","longname":"Message#delete","name":"delete","scope":"instance","kind":"function","description":"Deletes the message","memberof":"Message","params":[],"examples":["// delete a message\nmessage.delete()\n .then(msg => console.log(`Deleted message from ${msg.author}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",", "],["Error",">"]]],"meta":{"lineno":184,"filename":"Message.js","path":"src/structures"},"order":138},{"id":"Message#edit","longname":"Message#edit","name":"edit","scope":"instance","kind":"function","description":"Edit the content of a message","memberof":"Message","params":[{"type":{"names":["String"]},"description":"the new content of a message","name":"content"}],"examples":["// update the content of a message\nmessage.edit('This is my new content!')\n .then(msg => console.log(`Updated the content of a message from ${msg.author}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",", "],["Error",">"]]],"meta":{"lineno":198,"filename":"Message.js","path":"src/structures"},"order":139}],"properties":[{"id":"Message#channel","longname":"Message#channel","name":"channel","scope":"instance","kind":"member","description":"The channel that the message was sent in","memberof":"Message","type":[[[["Channel"],""]]],"meta":{"lineno":10,"filename":"Message.js","path":"src/structures"},"order":123},{"id":"Message#guild","longname":"Message#guild","name":"guild","scope":"instance","kind":"member","description":"If the message was sent in a guild, this will be the guild the message was sent in","memberof":"Message","type":[[[["Guild"],""]]],"nullable":true,"meta":{"lineno":17,"filename":"Message.js","path":"src/structures"},"order":124},{"id":"Message#client","longname":"Message#client","name":"client","scope":"instance","kind":"member","description":"The client that instantiated the Message","memberof":"Message","type":[[[["Client"],""]]],"meta":{"lineno":24,"filename":"Message.js","path":"src/structures"},"order":125},{"id":"Message#author","longname":"Message#author","name":"author","scope":"instance","kind":"member","description":"The author of the message","memberof":"Message","type":[[[["User"],""]]],"meta":{"lineno":35,"filename":"Message.js","path":"src/structures"},"order":126},{"id":"Message#content","longname":"Message#content","name":"content","scope":"instance","kind":"member","description":"The content of the message","memberof":"Message","type":[[[["String"],""]]],"meta":{"lineno":40,"filename":"Message.js","path":"src/structures"},"order":127},{"id":"Message#timestamp","longname":"Message#timestamp","name":"timestamp","scope":"instance","kind":"member","description":"When the message was sent","memberof":"Message","type":[[[["Date"],""]]],"meta":{"lineno":45,"filename":"Message.js","path":"src/structures"},"order":128},{"id":"Message#editedTimestamp","longname":"Message#editedTimestamp","name":"editedTimestamp","scope":"instance","kind":"member","description":"If the message was edited, the timestamp at which it was last edited","memberof":"Message","type":[[[["Date"],""]]],"nullable":true,"meta":{"lineno":50,"filename":"Message.js","path":"src/structures"},"order":129},{"id":"Message#tts","longname":"Message#tts","name":"tts","scope":"instance","kind":"member","description":"Whether or not the message was Text-To-Speech","memberof":"Message","type":[[[["Boolean"],""]]],"meta":{"lineno":55,"filename":"Message.js","path":"src/structures"},"order":130},{"id":"Message#mentionEveryone","longname":"Message#mentionEveryone","name":"mentionEveryone","scope":"instance","kind":"member","description":"Whether the message mentioned @everyone or not","memberof":"Message","type":[[[["Boolean"],""]]],"meta":{"lineno":60,"filename":"Message.js","path":"src/structures"},"order":131},{"id":"Message#nonce","longname":"Message#nonce","name":"nonce","scope":"instance","kind":"member","description":"A random number used for checking message delivery","memberof":"Message","type":[[[["String"],""]]],"meta":{"lineno":65,"filename":"Message.js","path":"src/structures"},"order":132},{"id":"Message#embeds","longname":"Message#embeds","name":"embeds","scope":"instance","kind":"member","description":"A list of embeds in the message - e.g. YouTube Player","memberof":"Message","type":[[["Array",".<"],["Object",">"]]],"meta":{"lineno":70,"filename":"Message.js","path":"src/structures"},"order":133},{"id":"Message#attachments","longname":"Message#attachments","name":"attachments","scope":"instance","kind":"member","description":"A list of attachments in the message - e.g. Pictures","memberof":"Message","type":[[["Array",".<"],["Object",">"]]],"meta":{"lineno":75,"filename":"Message.js","path":"src/structures"},"order":134},{"id":"Message#mentions","longname":"Message#mentions","name":"mentions","scope":"instance","kind":"member","description":"A list of users mentioned in the message","memberof":"Message","type":[[["Array",".<"],["User",">"]]],"meta":{"lineno":80,"filename":"Message.js","path":"src/structures"},"order":135},{"id":"Message#id","longname":"Message#id","name":"id","scope":"instance","kind":"member","description":"The ID of the message (unique in the channel it was sent)","memberof":"Message","type":[[[["String"],""]]],"meta":{"lineno":85,"filename":"Message.js","path":"src/structures"},"order":136}],"events":[]},"PermissionOverwrites":{"meta":{"id":"PermissionOverwrites","longname":"PermissionOverwrites","name":"PermissionOverwrites","scope":"global","kind":"class","description":"Represents a permission overwrite for a Role or Member in a Guild Channel.","meta":{"lineno":4,"filename":"PermissionOverwrites.js","path":"src/structures"},"order":140},"functions":[],"properties":[{"id":"PermissionOverwrites#channel","longname":"PermissionOverwrites#channel","name":"channel","scope":"instance","kind":"member","description":"The GuildChannel this overwrite is for","memberof":"PermissionOverwrites","type":[[[["GuildChannel"],""]]],"meta":{"lineno":10,"filename":"PermissionOverwrites.js","path":"src/structures"},"order":141},{"id":"PermissionOverwrites#type","longname":"PermissionOverwrites#type","name":"type","scope":"instance","kind":"member","description":"The type of this overwrite","memberof":"PermissionOverwrites","type":[[[["String"],""]]],"meta":{"lineno":21,"filename":"PermissionOverwrites.js","path":"src/structures"},"order":142},{"id":"PermissionOverwrites#id","longname":"PermissionOverwrites#id","name":"id","scope":"instance","kind":"member","description":"The ID of this overwrite, either a User ID or a Role ID","memberof":"PermissionOverwrites","type":[[[["String"],""]]],"meta":{"lineno":26,"filename":"PermissionOverwrites.js","path":"src/structures"},"order":143}],"events":[]},"Role":{"meta":{"id":"Role","longname":"Role","name":"Role","scope":"global","kind":"class","description":"Represents a Role on Discord","meta":{"lineno":6,"filename":"Role.js","path":"src/structures"},"order":144},"functions":[{"id":"Role#delete","longname":"Role#delete","name":"delete","scope":"instance","kind":"function","description":"Deletes the role","memberof":"Role","params":[],"examples":["// delete a role\nrole.delete()\n .then(r => console.log(`Deleted role ${r}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Role",", "],["Error",">"]]],"meta":{"lineno":82,"filename":"Role.js","path":"src/structures"},"order":154},{"id":"Role#edit","longname":"Role#edit","name":"edit","scope":"instance","kind":"function","description":"Edits the role","memberof":"Role","params":[{"type":{"names":["RoleData"]},"description":"the new data for the role","name":"data"}],"examples":["// edit a role\nrole.edit({name: 'new role'})\n .then(r => console.log(`Edited role ${r}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Role",", "],["Error",">"]]],"meta":{"lineno":96,"filename":"Role.js","path":"src/structures"},"order":155},{"id":"Role#setName","longname":"Role#setName","name":"setName","scope":"instance","kind":"function","description":"Set a new name for the role","memberof":"Role","params":[{"type":{"names":["String"]},"description":"the new name of the role","name":"name"}],"examples":["// set the name of the role\nrole.setName('new role')\n .then(r => console.log(`Edited name of role ${r}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Role",", "],["Error",">"]]],"meta":{"lineno":110,"filename":"Role.js","path":"src/structures"},"order":156},{"id":"Role#setColor","longname":"Role#setColor","name":"setColor","scope":"instance","kind":"function","description":"Set a new color for the role","memberof":"Role","params":[{"type":{"names":["Number"]},"description":"the new color for the role","name":"color"}],"examples":["// set the color of a role\nrole.setColor(parseInt('FF0000', 16))\n .then(r => console.log(`Set color of role ${r}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Role",", "],["Error",">"]]],"meta":{"lineno":124,"filename":"Role.js","path":"src/structures"},"order":157},{"id":"Role#setHoist","longname":"Role#setHoist","name":"setHoist","scope":"instance","kind":"function","description":"Set whether or not the role should be hoisted","memberof":"Role","params":[{"type":{"names":["Boolean"]},"description":"whether or not to hoist the role","name":"hoist"}],"examples":["// set the hoist of the role\nrole.setHoist(true)\n .then(r => console.log(`Role hoisted: ${r.hoist}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Role",", "],["Error",">"]]],"meta":{"lineno":138,"filename":"Role.js","path":"src/structures"},"order":158},{"id":"Role#setPosition","longname":"Role#setPosition","name":"setPosition","scope":"instance","kind":"function","description":"Set the position of the role","memberof":"Role","params":[{"type":{"names":["Number"]},"description":"the position of the role","name":"position"}],"examples":["// set the position of the role\nrole.setPosition(1)\n .then(r => console.log(`Role position: ${r.position}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Role",", "],["Error",">"]]],"meta":{"lineno":152,"filename":"Role.js","path":"src/structures"},"order":159},{"id":"Role#setPermissions","longname":"Role#setPermissions","name":"setPermissions","scope":"instance","kind":"function","description":"Set the permissions of the role","memberof":"Role","params":[{"type":{"names":["Array."]},"description":"the permissions of the role","name":"permissions"}],"examples":["// set the permissions of the role\nrole.setPermissions(['KICK_MEMBERS', 'BAN_MEMBERS'])\n .then(r => console.log(`Role updated ${r}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Role",", "],["Error",">"]]],"meta":{"lineno":166,"filename":"Role.js","path":"src/structures"},"order":160},{"id":"Role#serialize","longname":"Role#serialize","name":"serialize","scope":"instance","kind":"function","description":"Get an object mapping permission names to whether or not the role enables that permission","memberof":"Role","params":[],"examples":["// print the serialized role\nconsole.log(role.serialize());"],"returns":[[["Object",".<"],["String",", "],["Boolean",">"]]],"meta":{"lineno":177,"filename":"Role.js","path":"src/structures"},"order":161},{"id":"Role#hasPermission","longname":"Role#hasPermission","name":"hasPermission","scope":"instance","kind":"function","description":"Whether or not the role includes the given permission","memberof":"Role","params":[{"type":{"names":["String"]},"description":"the name of the permission to test","name":"permission"},{"type":{"names":["Boolean"]},"optional":true,"defaultvalue":false,"description":"whether or not the inclusion of the permission is explicit","name":"explicit"}],"examples":["// see if a role can ban a member\nif (role.hasPermission('BAN_MEMBERS')) {\n console.log('This role can ban members');\n} else {\n console.log('This role can\\'t ban members');\n}"],"returns":[[[["Boolean"],""]]],"meta":{"lineno":199,"filename":"Role.js","path":"src/structures"},"order":162}],"properties":[{"id":"Role#guild","longname":"Role#guild","name":"guild","scope":"instance","kind":"member","description":"The guild that the role belongs to","memberof":"Role","type":[[[["Guild"],""]]],"meta":{"lineno":12,"filename":"Role.js","path":"src/structures"},"order":145},{"id":"Role#client","longname":"Role#client","name":"client","scope":"instance","kind":"member","description":"The client that instantiated the role","memberof":"Role","type":[[[["Client"],""]]],"meta":{"lineno":17,"filename":"Role.js","path":"src/structures"},"order":146},{"id":"Role#id","longname":"Role#id","name":"id","scope":"instance","kind":"member","description":"The ID of the role (unique to the guild it is part of)","memberof":"Role","type":[[[["String"],""]]],"meta":{"lineno":40,"filename":"Role.js","path":"src/structures"},"order":147},{"id":"Role#name","longname":"Role#name","name":"name","scope":"instance","kind":"member","description":"The name of the role","memberof":"Role","type":[[[["String"],""]]],"meta":{"lineno":45,"filename":"Role.js","path":"src/structures"},"order":148},{"id":"Role#color","longname":"Role#color","name":"color","scope":"instance","kind":"member","description":"The base 10 color of the role","memberof":"Role","type":[[[["Number"],""]]],"meta":{"lineno":50,"filename":"Role.js","path":"src/structures"},"order":149},{"id":"Role#hoist","longname":"Role#hoist","name":"hoist","scope":"instance","kind":"member","description":"If true, users that are part of this role will appear in a separate category in the users list","memberof":"Role","type":[[[["Boolean"],""]]],"meta":{"lineno":55,"filename":"Role.js","path":"src/structures"},"order":150},{"id":"Role#position","longname":"Role#position","name":"position","scope":"instance","kind":"member","description":"The position of the role in the role manager","memberof":"Role","type":[[[["Number"],""]]],"meta":{"lineno":60,"filename":"Role.js","path":"src/structures"},"order":151},{"id":"Role#permissions","longname":"Role#permissions","name":"permissions","scope":"instance","kind":"member","description":"The evaluated permissions number","memberof":"Role","type":[[[["Number"],""]]],"meta":{"lineno":65,"filename":"Role.js","path":"src/structures"},"order":152},{"id":"Role#managed","longname":"Role#managed","name":"managed","scope":"instance","kind":"member","description":"Whether or not the role is managed by an external service","memberof":"Role","type":[[[["Boolean"],""]]],"meta":{"lineno":70,"filename":"Role.js","path":"src/structures"},"order":153}],"events":[]},"TextChannel":{"meta":{"id":"TextChannel","longname":"TextChannel","name":"TextChannel","scope":"global","kind":"class","augments":["GuildChannel"],"implements":["TextBasedChannel"],"description":"Represents a Server Text Channel on Discord.","meta":{"lineno":9,"filename":"TextChannel.js","path":"src/structures"},"order":163},"functions":[{"id":"TextChannel#sendMessage","longname":"TextChannel#sendMessage","name":"sendMessage","scope":"instance","kind":"function","implements":["TextBasedChannel#sendMessage"],"description":"Send a message to this channel","memberof":"TextChannel","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"},{"type":{"names":["MessageOptions"]},"optional":true,"defaultvalue":"{}","description":"the options to provide","name":"options"}],"examples":["// send a message\nchannel.sendMessage('hello!')\n .then(message => console.log(`Sent message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":25,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":243},{"id":"TextChannel#sendTTSMessage","longname":"TextChannel#sendTTSMessage","name":"sendTTSMessage","scope":"instance","kind":"function","implements":["TextBasedChannel#sendTTSMessage"],"description":"Send a text-to-speech message to this channel","memberof":"TextChannel","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"}],"examples":["// send a TTS message\nchannel.sendTTSMessage('hello!')\n .then(message => console.log(`Sent tts message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":38,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":244},{"id":"TextChannel#equals","longname":"TextChannel#equals","name":"equals","scope":"instance","kind":"function","inherits":"GuildChannel#equals","inherited":true,"description":"Checks if this channel has the same type, topic, position, name, overwrites and ID as another channel.\nIn most cases, a simple `channel.id === channel2.id` will do, and is much faster too.","memberof":"TextChannel","params":[{"type":{"names":["GuildChannel"]},"description":"the channel to compare this channel to","name":"channel"}],"returns":[[[["Boolean"],""]]],"meta":{"lineno":76,"filename":"GuildChannel.js","path":"src/structures"},"order":256},{"id":"TextChannel#permissionsFor","longname":"TextChannel#permissionsFor","name":"permissionsFor","scope":"instance","kind":"function","inherits":"GuildChannel#permissionsFor","inherited":true,"description":"Gets the overall set of permissions for a user in this channel, taking into account roles and permission\noverwrites.","memberof":"TextChannel","params":[{"type":{"names":["GuildMemberResolvable"]},"description":"the user that you want to obtain the overall permissions for","name":"member"}],"returns":[[[["EvaluatedPermissions"],""]]],"meta":{"lineno":108,"filename":"GuildChannel.js","path":"src/structures"},"order":257},{"id":"TextChannel#setName","longname":"TextChannel#setName","name":"setName","scope":"instance","kind":"function","inherits":"GuildChannel#setName","inherited":true,"description":"Set a new name for the Guild Channel","memberof":"TextChannel","params":[{"type":{"names":["String"]},"description":"the new name for the guild channel","name":"name"}],"examples":["// set a new channel name\nchannel.setName('not general')\n .then(newChannel => console.log(`Channel's new name is ${newChannel.name}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":178,"filename":"GuildChannel.js","path":"src/structures"},"order":258},{"id":"TextChannel#setPosition","longname":"TextChannel#setPosition","name":"setPosition","scope":"instance","kind":"function","inherits":"GuildChannel#setPosition","inherited":true,"description":"Set a new position for the Guild Channel","memberof":"TextChannel","params":[{"type":{"names":["Number"]},"description":"the new position for the guild channel","name":"position"}],"examples":["// set a new channel position\nchannel.setPosition(2)\n .then(newChannel => console.log(`Channel's new position is ${newChannel.position}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":192,"filename":"GuildChannel.js","path":"src/structures"},"order":259},{"id":"TextChannel#setTopic","longname":"TextChannel#setTopic","name":"setTopic","scope":"instance","kind":"function","inherits":"GuildChannel#setTopic","inherited":true,"description":"Set a new topic for the Guild Channel","memberof":"TextChannel","params":[{"type":{"names":["String"]},"description":"the new topic for the guild channel","name":"topic"}],"examples":["// set a new channel topic\nchannel.setTopic('needs more rate limiting')\n .then(newChannel => console.log(`Channel's new topic is ${newChannel.topic}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":206,"filename":"GuildChannel.js","path":"src/structures"},"order":260},{"id":"TextChannel#toString","longname":"TextChannel#toString","name":"toString","scope":"instance","kind":"function","inherits":"GuildChannel#toString","inherited":true,"description":"When concatenated with a String, this automatically concatenates the Channel's name instead of the Channel object.","memberof":"TextChannel","params":[],"examples":["// Outputs: Hello from general\nconsole.log(`Hello from ${channel}`);","// Outputs: Hello from general\nconsole.log('Hello from ' + ${channel});"],"returns":[[[["String"],""]]],"meta":{"lineno":220,"filename":"GuildChannel.js","path":"src/structures"},"order":261}],"properties":[{"id":"TextChannel#messages","longname":"TextChannel#messages","name":"messages","scope":"instance","kind":"member","implements":["TextBasedChannel#messages"],"description":"A Map containing the messages sent to this channel.","memberof":"TextChannel","type":[[["Map",".<"],["String",", "],["Message",">"]]],"meta":{"lineno":12,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":242},{"id":"TextChannel#type","longname":"TextChannel#type","name":"type","scope":"instance","kind":"member","inherits":"GuildChannel#type","inherited":true,"description":"The type of the Guild Channel","memberof":"TextChannel","type":[[[["Number"],""]]],"meta":{"lineno":36,"filename":"GuildChannel.js","path":"src/structures"},"order":250},{"id":"TextChannel#topic","longname":"TextChannel#topic","name":"topic","scope":"instance","kind":"member","inherits":"GuildChannel#topic","inherited":true,"description":"The topic of the Guild Channel, if there is one.","memberof":"TextChannel","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":41,"filename":"GuildChannel.js","path":"src/structures"},"order":251},{"id":"TextChannel#position","longname":"TextChannel#position","name":"position","scope":"instance","kind":"member","inherits":"GuildChannel#position","inherited":true,"description":"The position of the channel in the list.","memberof":"TextChannel","type":[[[["Number"],""]]],"meta":{"lineno":46,"filename":"GuildChannel.js","path":"src/structures"},"order":252},{"id":"TextChannel#name","longname":"TextChannel#name","name":"name","scope":"instance","kind":"member","inherits":"GuildChannel#name","inherited":true,"description":"The name of the Guild Channel","memberof":"TextChannel","type":[[[["String"],""]]],"meta":{"lineno":51,"filename":"GuildChannel.js","path":"src/structures"},"order":253},{"id":"TextChannel#lastMessageID","longname":"TextChannel#lastMessageID","name":"lastMessageID","scope":"instance","kind":"member","inherits":"GuildChannel#lastMessageID","inherited":true,"description":"The ID of the last message in the channel, if one was sent.","memberof":"TextChannel","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":56,"filename":"GuildChannel.js","path":"src/structures"},"order":254},{"id":"TextChannel#permissionOverwrites","longname":"TextChannel#permissionOverwrites","name":"permissionOverwrites","scope":"instance","kind":"member","inherits":"GuildChannel#permissionOverwrites","inherited":true,"description":"A list of permission overwrites in this channel for roles and users.","memberof":"TextChannel","type":[[["Array",".<"],["PermissionOverwrites",">"]]],"meta":{"lineno":62,"filename":"GuildChannel.js","path":"src/structures"},"order":255}],"events":[]},"User":{"meta":{"id":"User","longname":"User","name":"User","scope":"global","kind":"class","implements":["TextBasedChannel"],"description":"Represents a User on Discord.","meta":{"lineno":7,"filename":"User.js","path":"src/structures"},"order":164},"functions":[{"id":"User#toString","longname":"User#toString","name":"toString","scope":"instance","kind":"function","description":"When concatenated with a String, this automatically concatenates the User's mention instead of the User object.","memberof":"User","params":[],"examples":["// logs: Hello from <@123456789>!\nconsole.log(`Hello from ${user}!`);"],"returns":[[[["String"],""]]],"meta":{"lineno":64,"filename":"User.js","path":"src/structures"},"order":172},{"id":"User#deleteDM","longname":"User#deleteDM","name":"deleteDM","scope":"instance","kind":"function","description":"Deletes a DM Channel (if one exists) between the Client and the User. Resolves with the Channel if successful.","memberof":"User","params":[],"returns":[[["Promise",".<"],["DMChannel",">"]]],"meta":{"lineno":72,"filename":"User.js","path":"src/structures"},"order":173},{"id":"User#equals","longname":"User#equals","name":"equals","scope":"instance","kind":"function","description":"Checks if the user is equal to another. It compares username, ID, discriminator, status and the game being played.\nIt is recommended to compare equality by using `user.id === user2.id` unless you want to compare all properties.","memberof":"User","params":[{"type":{"names":["User"]},"description":"the user to compare","name":"user"}],"returns":[[[["Boolean"],""]]],"meta":{"lineno":82,"filename":"User.js","path":"src/structures"},"order":174},{"id":"User#sendMessage","longname":"User#sendMessage","name":"sendMessage","scope":"instance","kind":"function","implements":["TextBasedChannel#sendMessage"],"description":"Send a message to this channel","memberof":"User","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"},{"type":{"names":["MessageOptions"]},"optional":true,"defaultvalue":"{}","description":"the options to provide","name":"options"}],"examples":["// send a message\nchannel.sendMessage('hello!')\n .then(message => console.log(`Sent message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":25,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":237},{"id":"User#sendTTSMessage","longname":"User#sendTTSMessage","name":"sendTTSMessage","scope":"instance","kind":"function","implements":["TextBasedChannel#sendTTSMessage"],"description":"Send a text-to-speech message to this channel","memberof":"User","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"}],"examples":["// send a TTS message\nchannel.sendTTSMessage('hello!')\n .then(message => console.log(`Sent tts message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":38,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":238}],"properties":[{"id":"User#username","longname":"User#username","name":"username","scope":"instance","kind":"member","description":"The username of the User","memberof":"User","type":[[[["String"],""]]],"meta":{"lineno":20,"filename":"User.js","path":"src/structures"},"order":165},{"id":"User#id","longname":"User#id","name":"id","scope":"instance","kind":"member","description":"The ID of the User","memberof":"User","type":[[[["String"],""]]],"meta":{"lineno":25,"filename":"User.js","path":"src/structures"},"order":166},{"id":"User#discriminator","longname":"User#discriminator","name":"discriminator","scope":"instance","kind":"member","description":"A discriminator based on username for the User","memberof":"User","type":[[[["String"],""]]],"meta":{"lineno":30,"filename":"User.js","path":"src/structures"},"order":167},{"id":"User#avatar","longname":"User#avatar","name":"avatar","scope":"instance","kind":"member","description":"The ID of the user's avatar","memberof":"User","type":[[[["String"],""]]],"meta":{"lineno":35,"filename":"User.js","path":"src/structures"},"order":168},{"id":"User#bot","longname":"User#bot","name":"bot","scope":"instance","kind":"member","description":"Whether or not the User is a Bot.","memberof":"User","type":[[[["Boolean"],""]]],"meta":{"lineno":40,"filename":"User.js","path":"src/structures"},"order":169},{"id":"User#status","longname":"User#status","name":"status","scope":"instance","kind":"member","description":"The status of the user:\n\n* **`online`** - user is online\n* **`offline`** - user is offline\n* **`idle`** - user is AFK","memberof":"User","type":[[[["String"],""]]],"meta":{"lineno":49,"filename":"User.js","path":"src/structures"},"order":170},{"id":"User#game","longname":"User#game","name":"game","scope":"instance","kind":"member","description":"The game that the user is playing, `null` if they aren't playing a game.","memberof":"User","type":[[[["String"],""]]],"meta":{"lineno":54,"filename":"User.js","path":"src/structures"},"order":171}],"events":[]},"VoiceChannel":{"meta":{"id":"VoiceChannel","longname":"VoiceChannel","name":"VoiceChannel","scope":"global","kind":"class","augments":["GuildChannel"],"description":"Represents a Server Voice Channel on Discord.","meta":{"lineno":7,"filename":"VoiceChannel.js","path":"src/structures"},"order":175},"functions":[{"id":"VoiceChannel#setBitrate","longname":"VoiceChannel#setBitrate","name":"setBitrate","scope":"instance","kind":"function","description":"Sets the bitrate of the channel","memberof":"VoiceChannel","params":[{"type":{"names":["Number"]},"description":"the new bitrate","name":"bitrate"}],"examples":["// set the bitrate of a voice channel\nvoiceChannel.setBitrate(48000)\n .then(vc => console.log(`Set bitrate to ${vc.bitrate} for ${vc.name}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["VoiceChannel",">"]]],"meta":{"lineno":41,"filename":"VoiceChannel.js","path":"src/structures"},"order":179},{"id":"VoiceChannel#equals","longname":"VoiceChannel#equals","name":"equals","scope":"instance","kind":"function","inherits":"GuildChannel#equals","inherited":true,"description":"Checks if this channel has the same type, topic, position, name, overwrites and ID as another channel.\nIn most cases, a simple `channel.id === channel2.id` will do, and is much faster too.","memberof":"VoiceChannel","params":[{"type":{"names":["GuildChannel"]},"description":"the channel to compare this channel to","name":"channel"}],"returns":[[[["Boolean"],""]]],"meta":{"lineno":76,"filename":"GuildChannel.js","path":"src/structures"},"order":268},{"id":"VoiceChannel#permissionsFor","longname":"VoiceChannel#permissionsFor","name":"permissionsFor","scope":"instance","kind":"function","inherits":"GuildChannel#permissionsFor","inherited":true,"description":"Gets the overall set of permissions for a user in this channel, taking into account roles and permission\noverwrites.","memberof":"VoiceChannel","params":[{"type":{"names":["GuildMemberResolvable"]},"description":"the user that you want to obtain the overall permissions for","name":"member"}],"returns":[[[["EvaluatedPermissions"],""]]],"meta":{"lineno":108,"filename":"GuildChannel.js","path":"src/structures"},"order":269},{"id":"VoiceChannel#setName","longname":"VoiceChannel#setName","name":"setName","scope":"instance","kind":"function","inherits":"GuildChannel#setName","inherited":true,"description":"Set a new name for the Guild Channel","memberof":"VoiceChannel","params":[{"type":{"names":["String"]},"description":"the new name for the guild channel","name":"name"}],"examples":["// set a new channel name\nchannel.setName('not general')\n .then(newChannel => console.log(`Channel's new name is ${newChannel.name}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":178,"filename":"GuildChannel.js","path":"src/structures"},"order":270},{"id":"VoiceChannel#setPosition","longname":"VoiceChannel#setPosition","name":"setPosition","scope":"instance","kind":"function","inherits":"GuildChannel#setPosition","inherited":true,"description":"Set a new position for the Guild Channel","memberof":"VoiceChannel","params":[{"type":{"names":["Number"]},"description":"the new position for the guild channel","name":"position"}],"examples":["// set a new channel position\nchannel.setPosition(2)\n .then(newChannel => console.log(`Channel's new position is ${newChannel.position}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":192,"filename":"GuildChannel.js","path":"src/structures"},"order":271},{"id":"VoiceChannel#setTopic","longname":"VoiceChannel#setTopic","name":"setTopic","scope":"instance","kind":"function","inherits":"GuildChannel#setTopic","inherited":true,"description":"Set a new topic for the Guild Channel","memberof":"VoiceChannel","params":[{"type":{"names":["String"]},"description":"the new topic for the guild channel","name":"topic"}],"examples":["// set a new channel topic\nchannel.setTopic('needs more rate limiting')\n .then(newChannel => console.log(`Channel's new topic is ${newChannel.topic}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":206,"filename":"GuildChannel.js","path":"src/structures"},"order":272},{"id":"VoiceChannel#toString","longname":"VoiceChannel#toString","name":"toString","scope":"instance","kind":"function","inherits":"GuildChannel#toString","inherited":true,"description":"When concatenated with a String, this automatically concatenates the Channel's name instead of the Channel object.","memberof":"VoiceChannel","params":[],"examples":["// Outputs: Hello from general\nconsole.log(`Hello from ${channel}`);","// Outputs: Hello from general\nconsole.log('Hello from ' + ${channel});"],"returns":[[[["String"],""]]],"meta":{"lineno":220,"filename":"GuildChannel.js","path":"src/structures"},"order":273}],"properties":[{"id":"VoiceChannel#members","longname":"VoiceChannel#members","name":"members","scope":"instance","kind":"member","description":"The members in this Voice Channel.","memberof":"VoiceChannel","type":[[["Map",".<"],["String",", "],["GuildMember",">"]]],"meta":{"lineno":14,"filename":"VoiceChannel.js","path":"src/structures"},"order":176},{"id":"VoiceChannel#bitrate","longname":"VoiceChannel#bitrate","name":"bitrate","scope":"instance","kind":"member","description":"The bitrate of this voice channel","memberof":"VoiceChannel","type":[[[["Number"],""]]],"meta":{"lineno":23,"filename":"VoiceChannel.js","path":"src/structures"},"order":177},{"id":"VoiceChannel#userLimit","longname":"VoiceChannel#userLimit","name":"userLimit","scope":"instance","kind":"member","description":"The maximum amount of users allowed in this channel - 0 means unlimited.","memberof":"VoiceChannel","type":[[[["Number"],""]]],"meta":{"lineno":28,"filename":"VoiceChannel.js","path":"src/structures"},"order":178},{"id":"VoiceChannel#type","longname":"VoiceChannel#type","name":"type","scope":"instance","kind":"member","inherits":"GuildChannel#type","inherited":true,"description":"The type of the Guild Channel","memberof":"VoiceChannel","type":[[[["Number"],""]]],"meta":{"lineno":36,"filename":"GuildChannel.js","path":"src/structures"},"order":262},{"id":"VoiceChannel#topic","longname":"VoiceChannel#topic","name":"topic","scope":"instance","kind":"member","inherits":"GuildChannel#topic","inherited":true,"description":"The topic of the Guild Channel, if there is one.","memberof":"VoiceChannel","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":41,"filename":"GuildChannel.js","path":"src/structures"},"order":263},{"id":"VoiceChannel#position","longname":"VoiceChannel#position","name":"position","scope":"instance","kind":"member","inherits":"GuildChannel#position","inherited":true,"description":"The position of the channel in the list.","memberof":"VoiceChannel","type":[[[["Number"],""]]],"meta":{"lineno":46,"filename":"GuildChannel.js","path":"src/structures"},"order":264},{"id":"VoiceChannel#name","longname":"VoiceChannel#name","name":"name","scope":"instance","kind":"member","inherits":"GuildChannel#name","inherited":true,"description":"The name of the Guild Channel","memberof":"VoiceChannel","type":[[[["String"],""]]],"meta":{"lineno":51,"filename":"GuildChannel.js","path":"src/structures"},"order":265},{"id":"VoiceChannel#lastMessageID","longname":"VoiceChannel#lastMessageID","name":"lastMessageID","scope":"instance","kind":"member","inherits":"GuildChannel#lastMessageID","inherited":true,"description":"The ID of the last message in the channel, if one was sent.","memberof":"VoiceChannel","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":56,"filename":"GuildChannel.js","path":"src/structures"},"order":266},{"id":"VoiceChannel#permissionOverwrites","longname":"VoiceChannel#permissionOverwrites","name":"permissionOverwrites","scope":"instance","kind":"member","inherits":"GuildChannel#permissionOverwrites","inherited":true,"description":"A list of permission overwrites in this channel for roles and users.","memberof":"VoiceChannel","type":[[["Array",".<"],["PermissionOverwrites",">"]]],"meta":{"lineno":62,"filename":"GuildChannel.js","path":"src/structures"},"order":267}],"events":[]},"RequestHandler":{"meta":{"id":"RequestHandler","longname":"RequestHandler","name":"RequestHandler","scope":"global","kind":"class","description":"A base class for different types of rate limiting handlers for the REST API.","access":"private","meta":{"lineno":5,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":189},"functions":[{"id":"RequestHandler#push","longname":"RequestHandler#push","name":"push","scope":"instance","kind":"function","description":"Push a new API request into this bucket","memberof":"RequestHandler","params":[{"type":{"names":["APIRequest"]},"description":"the new request to push into the queue","name":"request"}],"meta":{"lineno":36,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":193,"returns":[[[["null"],""]]]},{"id":"RequestHandler#handle","longname":"RequestHandler#handle","name":"handle","scope":"instance","kind":"function","description":"Attempts to get this RequestHandler to process its current queue","memberof":"RequestHandler","params":[],"meta":{"lineno":43,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":194,"returns":[[[["null"],""]]]}],"properties":[{"id":"RequestHandler#restManager","longname":"RequestHandler#restManager","name":"restManager","scope":"instance","kind":"member","description":"The RESTManager that instantiated this RequestHandler","memberof":"RequestHandler","type":[[[["RESTManager"],""]]],"meta":{"lineno":11,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":190},{"id":"RequestHandler#queue","longname":"RequestHandler#queue","name":"queue","scope":"instance","kind":"member","description":"A list of requests that have yet to be processed.","memberof":"RequestHandler","type":[[["Array",".<"],["APIRequest",">"]]],"meta":{"lineno":17,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":191},{"id":"RequestHandler#globalLimit","longname":"RequestHandler#globalLimit","name":"globalLimit","scope":"instance","kind":"member","description":"Whether or not the client is being rate limited on every endpoint.","memberof":"RequestHandler","params":[],"type":[[[["Boolean"],""]]],"meta":{"lineno":24,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":192}],"events":[]},"SequentialRequestHandler":{"meta":{"id":"SequentialRequestHandler","longname":"SequentialRequestHandler","name":"SequentialRequestHandler","scope":"global","kind":"class","augments":["RequestHandler"],"description":"Handles API Requests sequentially, i.e. we wait until the current request is finished before moving onto\nthe next. This plays a _lot_ nicer in terms of avoiding 429's when there is more than one session of the account,\nbut it can be slower.","access":"private","meta":{"lineno":10,"filename":"Sequential.js","path":"src/client/rest/RequestHandlers"},"order":195},"functions":[{"id":"SequentialRequestHandler#execute","longname":"SequentialRequestHandler#execute","name":"execute","scope":"instance","kind":"function","description":"Performs a request then resolves a promise to indicate its readiness for a new request","memberof":"SequentialRequestHandler","params":[{"type":{"names":["APIRequest"]},"description":"the item to execute","name":"item"}],"returns":[[["Promise",".<"],["Object",", "],["Error",">"]]],"meta":{"lineno":39,"filename":"Sequential.js","path":"src/client/rest/RequestHandlers"},"order":198},{"id":"SequentialRequestHandler#push","longname":"SequentialRequestHandler#push","name":"push","scope":"instance","kind":"function","inherits":"RequestHandler#push","inherited":true,"overrides":"RequestHandler#push","description":"Push a new API request into this bucket","memberof":"SequentialRequestHandler","params":[{"type":{"names":["APIRequest"]},"description":"the new request to push into the queue","name":"request"}],"meta":{"lineno":36,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":292,"returns":[[[["null"],""]]]},{"id":"SequentialRequestHandler#handle","longname":"SequentialRequestHandler#handle","name":"handle","scope":"instance","kind":"function","inherits":"RequestHandler#handle","inherited":true,"overrides":"RequestHandler#handle","description":"Attempts to get this RequestHandler to process its current queue","memberof":"SequentialRequestHandler","params":[],"meta":{"lineno":43,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":293,"returns":[[[["null"],""]]]}],"properties":[{"id":"SequentialRequestHandler#waiting","longname":"SequentialRequestHandler#waiting","name":"waiting","scope":"instance","kind":"member","description":"Whether this rate limiter is waiting for a response from a request","memberof":"SequentialRequestHandler","type":[[[["Boolean"],""]]],"meta":{"lineno":19,"filename":"Sequential.js","path":"src/client/rest/RequestHandlers"},"order":196},{"id":"SequentialRequestHandler#timeDifference","longname":"SequentialRequestHandler#timeDifference","name":"timeDifference","scope":"instance","kind":"member","description":"The time difference between Discord's Dates and the local computer's Dates. A positive number means the local\ncomputer's time is ahead of Discord's.","memberof":"SequentialRequestHandler","type":[[[["Number"],""]]],"meta":{"lineno":26,"filename":"Sequential.js","path":"src/client/rest/RequestHandlers"},"order":197},{"id":"SequentialRequestHandler#restManager","longname":"SequentialRequestHandler#restManager","name":"restManager","scope":"instance","kind":"member","inherits":"RequestHandler#restManager","inherited":true,"description":"The RESTManager that instantiated this RequestHandler","memberof":"SequentialRequestHandler","type":[[[["RESTManager"],""]]],"meta":{"lineno":11,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":289},{"id":"SequentialRequestHandler#queue","longname":"SequentialRequestHandler#queue","name":"queue","scope":"instance","kind":"member","inherits":"RequestHandler#queue","inherited":true,"description":"A list of requests that have yet to be processed.","memberof":"SequentialRequestHandler","type":[[["Array",".<"],["APIRequest",">"]]],"meta":{"lineno":17,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":290},{"id":"SequentialRequestHandler#globalLimit","longname":"SequentialRequestHandler#globalLimit","name":"globalLimit","scope":"instance","kind":"member","inherits":"RequestHandler#globalLimit","inherited":true,"overrides":"RequestHandler#globalLimit","description":"Whether or not the client is being rate limited on every endpoint.","memberof":"SequentialRequestHandler","params":[],"type":[[[["Boolean"],""]]],"meta":{"lineno":24,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":291}],"events":[]},"WebSocketManager":{"meta":{"id":"WebSocketManager","longname":"WebSocketManager","name":"WebSocketManager","scope":"global","kind":"class","description":"The WebSocket Manager of the Client","access":"private","meta":{"lineno":10,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":212},"functions":[{"id":"WebSocketManager#connect","longname":"WebSocketManager#connect","name":"connect","scope":"instance","kind":"function","description":"Connects the client to a given gateway","memberof":"WebSocketManager","params":[{"type":{"names":["String"]},"description":"the gateway to connect to","name":"gateway"}],"returns":[[[["null"],""]]],"meta":{"lineno":54,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":219},{"id":"WebSocketManager#send","longname":"WebSocketManager#send","name":"send","scope":"instance","kind":"function","description":"Sends a packet to the gateway","memberof":"WebSocketManager","params":[{"type":{"names":["Object"]},"description":"An object that can be JSON stringified","name":"packet"}],"returns":[[[["null"],""]]],"meta":{"lineno":76,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":222},{"id":"WebSocketManager#eventOpen","longname":"WebSocketManager#eventOpen","name":"eventOpen","scope":"instance","kind":"function","description":"Run whenever the gateway connections opens up","memberof":"WebSocketManager","params":[],"returns":[[[["null"],""]]],"meta":{"lineno":86,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":223},{"id":"WebSocketManager#_sendResume","longname":"WebSocketManager#_sendResume","name":"_sendResume","scope":"instance","kind":"function","description":"Sends a gatway resume packet, in cases of unexpected disconnections.","memberof":"WebSocketManager","params":[],"returns":[[[["null"],""]]],"meta":{"lineno":98,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":224},{"id":"WebSocketManager#_sendNewIdentify","longname":"WebSocketManager#_sendNewIdentify","name":"_sendNewIdentify","scope":"instance","kind":"function","description":"Sends a new identification packet, in cases of new connections or failed reconnections.","memberof":"WebSocketManager","params":[],"returns":[[[["null"],""]]],"meta":{"lineno":115,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":225},{"id":"WebSocketManager#eventClose","longname":"WebSocketManager#eventClose","name":"eventClose","scope":"instance","kind":"function","description":"Run whenever the connection to the gateway is closed, it will try to reconnect the client.","memberof":"WebSocketManager","params":[],"returns":[[[["null"],""]]],"meta":{"lineno":130,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":226},{"id":"WebSocketManager#eventMessage","longname":"WebSocketManager#eventMessage","name":"eventMessage","scope":"instance","kind":"function","description":"Run whenever a message is received from the WebSocket. Returns `true` if the message\nwas handled properly.","memberof":"WebSocketManager","params":[{"type":{"names":["Object"]},"description":"the received websocket data","name":"data"}],"returns":[[[["Boolean"],""]]],"meta":{"lineno":142,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":227},{"id":"WebSocketManager#eventError","longname":"WebSocketManager#eventError","name":"eventError","scope":"instance","kind":"function","description":"Run whenever an error occurs with the WebSocket connection. Tries to reconnect","memberof":"WebSocketManager","params":[],"returns":[[[["null"],""]]],"meta":{"lineno":166,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":228},{"id":"WebSocketManager#checkIfReady","longname":"WebSocketManager#checkIfReady","name":"checkIfReady","scope":"instance","kind":"function","description":"Runs on new packets before `READY` to see if the Client is ready yet, if it is prepares\nthe `READY` event.","memberof":"WebSocketManager","params":[],"returns":[[[["null"],""]]],"meta":{"lineno":176,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":229},{"id":"WebSocketManager#tryReconnect","longname":"WebSocketManager#tryReconnect","name":"tryReconnect","scope":"instance","kind":"function","description":"Tries to reconnect the client, changing the status to Constants.Status.RECONNECTING.","memberof":"WebSocketManager","params":[],"returns":[[[["null"],""]]],"meta":{"lineno":200,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":231}],"properties":[{"id":"WebSocketManager#client","longname":"WebSocketManager#client","name":"client","scope":"instance","kind":"member","description":"The Client that instantiated this WebSocketManager","memberof":"WebSocketManager","type":[[[["Client"],""]]],"meta":{"lineno":17,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":213},{"id":"WebSocketManager#packetManager","longname":"WebSocketManager#packetManager","name":"packetManager","scope":"instance","kind":"member","description":"A WebSocket Packet manager, it handles all the messages","memberof":"WebSocketManager","type":[[[["PacketManager"],""]]],"meta":{"lineno":23,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":214},{"id":"WebSocketManager#status","longname":"WebSocketManager#status","name":"status","scope":"instance","kind":"member","description":"The status of the WebSocketManager, a type of Constants.Status. It defaults to IDLE.","memberof":"WebSocketManager","type":[[[["Number"],""]]],"meta":{"lineno":28,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":215},{"id":"WebSocketManager#sessionID","longname":"WebSocketManager#sessionID","name":"sessionID","scope":"instance","kind":"member","description":"The session ID of the connection, null if not yet available.","memberof":"WebSocketManager","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":34,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":216},{"id":"WebSocketManager#sequence","longname":"WebSocketManager#sequence","name":"sequence","scope":"instance","kind":"member","description":"The packet count of the client, null if not yet available.","memberof":"WebSocketManager","type":[[[["Number"],""]]],"nullable":true,"meta":{"lineno":40,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":217},{"id":"WebSocketManager#gateway","longname":"WebSocketManager#gateway","name":"gateway","scope":"instance","kind":"member","description":"The gateway address for this WebSocket connection, null if not yet available.","memberof":"WebSocketManager","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":46,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":218},{"id":"WebSocketManager#status","longname":"WebSocketManager#status","name":"status","scope":"instance","kind":"member","description":"The status of the Client's connection, a type of Constants.Status","memberof":"WebSocketManager","type":[[[["Number"],""]]],"meta":{"lineno":59,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":220},{"id":"WebSocketManager#ws","longname":"WebSocketManager#ws","name":"ws","scope":"instance","kind":"member","description":"The WebSocket connection to the gateway","memberof":"WebSocketManager","type":[[[["WebSocket"],""]]],"nullable":true,"meta":{"lineno":64,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":221}],"events":[]}},"interfaces":{"TextBasedChannel":{"meta":{"id":"TextBasedChannel","longname":"TextBasedChannel","name":"TextBasedChannel","scope":"global","kind":"interface","classdesc":"Interface for classes that have text-channel-like features","params":[],"meta":{"lineno":5,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":233},"functions":[{"id":"TextBasedChannel#sendMessage","longname":"TextBasedChannel#sendMessage","name":"sendMessage","scope":"instance","kind":"function","description":"Send a message to this channel","memberof":"TextBasedChannel","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"},{"type":{"names":["MessageOptions"]},"optional":true,"defaultvalue":"{}","description":"the options to provide","name":"options"}],"examples":["// send a message\nchannel.sendMessage('hello!')\n .then(message => console.log(`Sent message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":25,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":235},{"id":"TextBasedChannel#sendTTSMessage","longname":"TextBasedChannel#sendTTSMessage","name":"sendTTSMessage","scope":"instance","kind":"function","description":"Send a text-to-speech message to this channel","memberof":"TextBasedChannel","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"}],"examples":["// send a TTS message\nchannel.sendTTSMessage('hello!')\n .then(message => console.log(`Sent tts message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":38,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":236}],"properties":[{"id":"TextBasedChannel#messages","longname":"TextBasedChannel#messages","name":"messages","scope":"instance","kind":"member","description":"A Map containing the messages sent to this channel.","memberof":"TextBasedChannel","type":[[["Map",".<"],["String",", "],["Message",">"]]],"meta":{"lineno":12,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":234}],"events":[]}},"typedefs":{"UserResolvable":{"id":"UserResolvable","longname":"UserResolvable","name":"UserResolvable","scope":"global","kind":"typedef","description":"Data that resolves to give a User object. This can be:\n* A User object\n* A User ID\n* A Message (resolves to the message author)\n* A Guild (owner of the guild)","type":{"names":["User","String","Message","Guild"]},"meta":{"lineno":23,"filename":"ClientDataResolver.js","path":"src/client"},"order":18},"GuildResolvable":{"id":"GuildResolvable","longname":"GuildResolvable","name":"GuildResolvable","scope":"global","kind":"typedef","description":"Data that resolves to give a Guild object. This can be:\n* A Guild object","type":{"names":["Guild"]},"meta":{"lineno":51,"filename":"ClientDataResolver.js","path":"src/client"},"order":20},"GuildMemberResolvable":{"id":"GuildMemberResolvable","longname":"GuildMemberResolvable","name":"GuildMemberResolvable","scope":"global","kind":"typedef","description":"Data that resolves to give a GuildMember object. This can be:\n* A GuildMember object\n* A User object","type":{"names":["Guild"]},"meta":{"lineno":69,"filename":"ClientDataResolver.js","path":"src/client"},"order":22},"Base64Resolvable":{"id":"Base64Resolvable","longname":"Base64Resolvable","name":"Base64Resolvable","scope":"global","kind":"typedef","description":"Data that resolves to give a Base64 string, typically for image uploading. This can be:\n* A Buffer\n* A Base64 String","type":{"names":["Buffer","String"]},"meta":{"lineno":98,"filename":"ClientDataResolver.js","path":"src/client"},"order":24},"ChannelResolvable":{"id":"ChannelResolvable","longname":"ChannelResolvable","name":"ChannelResolvable","scope":"global","kind":"typedef","description":"Data that can be resolved to give a Channel. This can be:\n* An instance of a Channel\n* An ID of a Channel","type":{"names":["Channel","String"]},"meta":{"lineno":118,"filename":"ClientDataResolver.js","path":"src/client"},"order":26},"StringResolvable":{"id":"StringResolvable","longname":"StringResolvable","name":"StringResolvable","scope":"global","kind":"typedef","description":"Data that can be resolved to give a String. This can be:\n* A String\n* An Array (joined with a new line delimiter to give a string)\n* Any object","type":{"names":["String","Array","Object"]},"meta":{"lineno":142,"filename":"ClientDataResolver.js","path":"src/client"},"order":28}}}} \ No newline at end of file +{"meta":{"version":9},"custom":{"general":{"Getting Started":"# Welcome!\ndiscord.js is an easy-to-use and intuitive JavaScript library that wraps around the Discord API.\n\n## Installation\nTo install discord.js from npm:\n```bash\nnpm i --save discord.js\n```\n\nTo install discord.js from the master branch:\n```bash\nnpm i --save hydrabolt/discord.js\n```\n\nTo install discord.js from the development branch:\n```bash\nnpm i --save hydrabolt/discord.js#indev\n```\n\nTo install discord.js from the rewrite branch:\n```bash\nnpm i --save hydrabolt/discord.js#indev-rewrite\n```\n\n## Tutorials\nLuckyEvie, a helper in the discord.js channel, has put together a great tutorial on getting to grips with discord.js.\nIt's worth a read and you can find it [here.](https://eslachance.gitbooks.io/discord-js-bot-guide/content/samples/selfbots,_the_awesomest_thing_in_the_universe.html)\n"}},"json":{"classes":{"Client":{"meta":{"id":"Client","longname":"Client","name":"Client","scope":"global","kind":"class","description":"Creates a new Discord Client\n```js\nconst Discord = require(\"discord.js\");\nconst client = new Discord.Client();\n```","meta":{"lineno":18,"filename":"Client.js","path":"src/client"},"order":0},"functions":[{"id":"Client#login","longname":"Client#login","name":"login","scope":"instance","kind":"function","description":"Logs the client in. If successful, resolves with the account's token. If you're making a bot, it's\nmuch better to use a bot account rather than a user account.\nBot accounts have higher rate limits and have access to some features user accounts don't have. User bots\nthat are making a lot of API requests can even be banned.","memberof":"Client","params":[{"type":{"names":["String"]},"description":"The email or token used for the account. If it is an email, a password _must_ be\nprovided.","name":"emailOrToken"},{"type":{"names":["String"]},"optional":true,"description":"The password for the account, only needed if an email was provided.","name":"password"}],"examples":["// log the client in using a token\nconst token = 'my token';\nclient.login(token);","// log the client in using email and password\nconst email = 'user@email.com';\nconst password = 'supersecret123';\nclient.login(email, password);"],"returns":[[["Promise",".<"],["String",">"]]],"meta":{"lineno":120,"filename":"Client.js","path":"src/client"},"order":15}],"properties":[{"id":"Client#rest","longname":"Client#rest","name":"rest","scope":"instance","kind":"member","description":"The REST manager of the client","memberof":"Client","type":[[[["RESTManager"],""]]],"access":"private","meta":{"lineno":32,"filename":"Client.js","path":"src/client"},"order":2},{"id":"Client#dataManager","longname":"Client#dataManager","name":"dataManager","scope":"instance","kind":"member","description":"The data manager of the Client","memberof":"Client","type":[[[["ClientDataManager"],""]]],"access":"private","meta":{"lineno":38,"filename":"Client.js","path":"src/client"},"order":3},{"id":"Client#manager","longname":"Client#manager","name":"manager","scope":"instance","kind":"member","description":"The manager of the Client","memberof":"Client","type":[[[["ClientManager"],""]]],"access":"private","meta":{"lineno":44,"filename":"Client.js","path":"src/client"},"order":4},{"id":"Client#ws","longname":"Client#ws","name":"ws","scope":"instance","kind":"member","description":"The WebSocket Manager of the Client","memberof":"Client","type":[[[["WebSocketManager"],""]]],"access":"private","meta":{"lineno":50,"filename":"Client.js","path":"src/client"},"order":5},{"id":"Client#resolver","longname":"Client#resolver","name":"resolver","scope":"instance","kind":"member","description":"The Data Resolver of the Client","memberof":"Client","type":[[[["ClientDataResolver"],""]]],"access":"private","meta":{"lineno":56,"filename":"Client.js","path":"src/client"},"order":6},{"id":"Client#actions","longname":"Client#actions","name":"actions","scope":"instance","kind":"member","description":"The Action Manager of the Client","memberof":"Client","type":[[[["ActionsManager"],""]]],"access":"private","meta":{"lineno":62,"filename":"Client.js","path":"src/client"},"order":7},{"id":"Client#users","longname":"Client#users","name":"users","scope":"instance","kind":"member","description":"A map of the Client's stored users","memberof":"Client","type":[[["Map",".<"],["String",", "],["User",">"]]],"meta":{"lineno":68,"filename":"Client.js","path":"src/client"},"order":8},{"id":"Client#guilds","longname":"Client#guilds","name":"guilds","scope":"instance","kind":"member","description":"A map of the Client's stored guilds","memberof":"Client","type":[[["Map",".<"],["String",", "],["Guild",">"]]],"meta":{"lineno":73,"filename":"Client.js","path":"src/client"},"order":9},{"id":"Client#channels","longname":"Client#channels","name":"channels","scope":"instance","kind":"member","description":"A map of the Client's stored channels","memberof":"Client","type":[[["Map",".<"],["String",", "],["Channel",">"]]],"meta":{"lineno":78,"filename":"Client.js","path":"src/client"},"order":10},{"id":"Client#token","longname":"Client#token","name":"token","scope":"instance","kind":"member","description":"The authorization token for the logged in user/bot.","memberof":"Client","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":83,"filename":"Client.js","path":"src/client"},"order":11},{"id":"Client#user","longname":"Client#user","name":"user","scope":"instance","kind":"member","description":"The ClientUser representing the logged in Client","memberof":"Client","type":[[[["ClientUser"],""]]],"nullable":true,"meta":{"lineno":88,"filename":"Client.js","path":"src/client"},"order":12},{"id":"Client#email","longname":"Client#email","name":"email","scope":"instance","kind":"member","description":"The email, if there is one, for the logged in Client","memberof":"Client","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":93,"filename":"Client.js","path":"src/client"},"order":13},{"id":"Client#password","longname":"Client#password","name":"password","scope":"instance","kind":"member","description":"The password, if there is one, for the logged in Client","memberof":"Client","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":98,"filename":"Client.js","path":"src/client"},"order":14}],"events":[{"id":"Client#event:guildCreate","longname":"Client#event:guildCreate","name":"guildCreate","scope":"instance","kind":"event","description":"Emitted whenever the client joins a Guild.","memberof":"Client","params":[{"type":[[[["Guild"],""]]],"description":"the created guild.","name":"guild"}],"meta":{"lineno":24,"filename":"ClientDataManager.js","path":"src/client"},"order":16},{"id":"Client#event:guildMemberRolesUpdate","longname":"Client#event:guildMemberRolesUpdate","name":"guildMemberRolesUpdate","scope":"instance","kind":"event","description":"Emitted whenever a Guild Member's Roles change - i.e. new role or removed role","memberof":"Client","params":[{"type":[[[["Guild"],""]]],"description":"the guild that the update affects","name":"guild"},{"type":[[["Array",".<"],["Role",">"]]],"description":"the roles before the update","name":"oldRoles"},{"type":[[[["Guild"],""]]],"description":"the roles after the update","name":"newRoles"}],"meta":{"lineno":91,"filename":"Guild.js","path":"src/structures"},"order":57},{"id":"Client#event:channelUpdate","longname":"Client#event:channelUpdate","name":"channelUpdate","scope":"instance","kind":"event","description":"Emitted whenever a channel is updated - e.g. name change, topic change.","memberof":"Client","params":[{"type":[[[["Channel"],""]]],"description":"the channel before the update","name":"oldChannel"},{"type":[[[["Channel"],""]]],"description":"the channel after the update","name":"newChannel"}],"meta":{"lineno":31,"filename":"ChannelUpdate.js","path":"src/client/actions"},"order":180},{"id":"Client#event:guildUnavailable","longname":"Client#event:guildUnavailable","name":"guildUnavailable","scope":"instance","kind":"event","description":"Emitted whenever a guild becomes unavailable, likely due to a server outage.","memberof":"Client","params":[{"type":[[[["Guild"],""]]],"description":"the guild that has become unavailable.","name":"guild"}],"meta":{"lineno":49,"filename":"GuildDelete.js","path":"src/client/actions"},"order":181},{"id":"Client#event:guildMemberRemove","longname":"Client#event:guildMemberRemove","name":"guildMemberRemove","scope":"instance","kind":"event","description":"Emitted whenever a member leaves a guild, or is kicked.","memberof":"Client","params":[{"type":[[[["Guild"],""]]],"description":"the guild that the member has left.","name":"guild"},{"type":[[[["GuildMember"],""]]],"description":"the member that has left the guild.","name":"member"}],"meta":{"lineno":49,"filename":"GuildMemberRemove.js","path":"src/client/actions"},"order":182},{"id":"Client#event:guildRoleCreate","longname":"Client#event:guildRoleCreate","name":"guildRoleCreate","scope":"instance","kind":"event","description":"Emitted whenever a guild role is created.","memberof":"Client","params":[{"type":[[[["Guild"],""]]],"description":"the guild that the role was created in.","name":"guild"},{"type":[[[["Role"],""]]],"description":"the role that was created.","name":"role"}],"meta":{"lineno":32,"filename":"GuildRoleCreate.js","path":"src/client/actions"},"order":183},{"id":"Client#event:guildRoleDelete","longname":"Client#event:guildRoleDelete","name":"guildRoleDelete","scope":"instance","kind":"event","description":"Emitted whenever a guild role is deleted.","memberof":"Client","params":[{"type":[[[["Guild"],""]]],"description":"the guild that the role was deleted in.","name":"guild"},{"type":[[[["Role"],""]]],"description":"the role that was deleted.","name":"role"}],"meta":{"lineno":47,"filename":"GuildRoleDelete.js","path":"src/client/actions"},"order":184},{"id":"Client#event:guildRoleUpdated","longname":"Client#event:guildRoleUpdated","name":"guildRoleUpdated","scope":"instance","kind":"event","description":"Emitted whenever a guild role is updated.","memberof":"Client","params":[{"type":[[[["Guild"],""]]],"description":"the guild that the role was updated in.","name":"guild"},{"type":[[[["Role"],""]]],"description":"the role before the update.","name":"oldRole"},{"type":[[[["Role"],""]]],"description":"the role after the update.","name":"newRole"}],"meta":{"lineno":36,"filename":"GuildRoleUpdate.js","path":"src/client/actions"},"order":185},{"id":"Client#event:guildUpdate","longname":"Client#event:guildUpdate","name":"guildUpdate","scope":"instance","kind":"event","description":"Emitted whenever a guild is updated - e.g. name change.","memberof":"Client","params":[{"type":[[[["Guild"],""]]],"description":"the guild before the update.","name":"oldGuild"},{"type":[[[["Guild"],""]]],"description":"the guild after the update.","name":"newGuild"}],"meta":{"lineno":38,"filename":"GuildUpdate.js","path":"src/client/actions"},"order":186},{"id":"Client#event:messageUpdate","longname":"Client#event:messageUpdate","name":"messageUpdate","scope":"instance","kind":"event","description":"Emitted whenever a message is updated - e.g. embed or content change.","memberof":"Client","params":[{"type":[[[["Message"],""]]],"description":"the message before the update.","name":"oldMessage"},{"type":[[[["Message"],""]]],"description":"the message after the update.","name":"newMessage"}],"meta":{"lineno":36,"filename":"MessageUpdate.js","path":"src/client/actions"},"order":187},{"id":"Client#event:userUpdate","longname":"Client#event:userUpdate","name":"userUpdate","scope":"instance","kind":"event","description":"Emitted whenever a detail of the logged in User changes - e.g. username.","memberof":"Client","params":[{"type":[[[["ClientUser"],""]]],"description":"the client user before the update.","name":"oldClientUser"},{"type":[[[["ClientUser"],""]]],"description":"the client user after the update.","name":"newClientUser"}],"meta":{"lineno":36,"filename":"UserUpdate.js","path":"src/client/actions"},"order":188},{"id":"Client#event:channelCreate","longname":"Client#event:channelCreate","name":"channelCreate","scope":"instance","kind":"event","description":"Emitted whenever a Channel is created.","memberof":"Client","params":[{"type":[[[["Channel"],""]]],"description":"The channel that was created","name":"channel"}],"meta":{"lineno":20,"filename":"ChannelCreate.js","path":"src/client/websocket/packets/handlers"},"order":199},{"id":"Client#event:channelDelete","longname":"Client#event:channelDelete","name":"channelDelete","scope":"instance","kind":"event","description":"Emitted whenever a Channel is deleted.","memberof":"Client","params":[{"type":[[[["Channel"],""]]],"description":"The channel that was deleted","name":"channel"}],"meta":{"lineno":20,"filename":"ChannelDelete.js","path":"src/client/websocket/packets/handlers"},"order":200},{"id":"Client#event:guildBanAdd","longname":"Client#event:guildBanAdd","name":"guildBanAdd","scope":"instance","kind":"event","description":"Emitted whenever a member is banned from a guild.","memberof":"Client","params":[{"type":[[[["Guild"],""]]],"description":"The guild that the ban occurred in","name":"guild"},{"type":[[[["User"],""]]],"description":"The user that was banned","name":"user"}],"meta":{"lineno":22,"filename":"GuildBanAdd.js","path":"src/client/websocket/packets/handlers"},"order":201},{"id":"Client#event:guildBanRemove","longname":"Client#event:guildBanRemove","name":"guildBanRemove","scope":"instance","kind":"event","description":"Emitted whenever a member is unbanned from a guild.","memberof":"Client","params":[{"type":[[[["Guild"],""]]],"description":"The guild that the unban occurred in","name":"guild"},{"type":[[[["User"],""]]],"description":"The user that was unbanned","name":"user"}],"meta":{"lineno":23,"filename":"GuildBanRemove.js","path":"src/client/websocket/packets/handlers"},"order":202},{"id":"Client#event:guildDelete","longname":"Client#event:guildDelete","name":"guildDelete","scope":"instance","kind":"event","description":"Emitted whenever a Guild is deleted/left.","memberof":"Client","params":[{"type":[[[["Guild"],""]]],"description":"The guild that was deleted","name":"guild"}],"meta":{"lineno":19,"filename":"GuildDelete.js","path":"src/client/websocket/packets/handlers"},"order":203},{"id":"Client#event:guildMembersChunk","longname":"Client#event:guildMembersChunk","name":"guildMembersChunk","scope":"instance","kind":"event","description":"Emitted whenever a chunk of Guild members is received","memberof":"Client","params":[{"type":[[[["Guild"],""]]],"description":"The guild that the chunks relate to","name":"guild"},{"type":[[["Array",".<"],["GuildMember",">"]]],"description":"The members in the chunk","name":"members"}],"meta":{"lineno":25,"filename":"GuildMembersChunk.js","path":"src/client/websocket/packets/handlers"},"order":204},{"id":"Client#event:message","longname":"Client#event:message","name":"message","scope":"instance","kind":"event","description":"Emitted whenever a message is created","memberof":"Client","params":[{"type":[[[["Message"],""]]],"description":"The created message","name":"message"}],"meta":{"lineno":19,"filename":"MessageCreate.js","path":"src/client/websocket/packets/handlers"},"order":205},{"id":"Client#event:messageDelete","longname":"Client#event:messageDelete","name":"messageDelete","scope":"instance","kind":"event","description":"Emitted whenever a message is deleted","memberof":"Client","params":[{"type":[[[["Message"],""]]],"description":"The deleted message","name":"message"}],"meta":{"lineno":19,"filename":"MessageDelete.js","path":"src/client/websocket/packets/handlers"},"order":206},{"id":"Client#event:presenceUpdate","longname":"Client#event:presenceUpdate","name":"presenceUpdate","scope":"instance","kind":"event","description":"Emitted whenever a user changes one of their details or starts/stop playing a game","memberof":"Client","params":[{"type":[[[["User"],""]]],"description":"the user before the presence update","name":"oldUser"},{"type":[[[["User"],""]]],"description":"the user after the presence update","name":"newUser"}],"meta":{"lineno":66,"filename":"PresenceUpdate.js","path":"src/client/websocket/packets/handlers"},"order":207},{"id":"Client#event:guildMemberAvailable","longname":"Client#event:guildMemberAvailable","name":"guildMemberAvailable","scope":"instance","kind":"event","description":"Emitted whenever a member becomes available in a large Guild","memberof":"Client","params":[{"type":[[[["Guild"],""]]],"description":"The guild that the member became available in","name":"guild"},{"type":[[[["GuildMember"],""]]],"description":"the member that became available","name":"member"}],"meta":{"lineno":74,"filename":"PresenceUpdate.js","path":"src/client/websocket/packets/handlers"},"order":208},{"id":"Client#event:typingStart","longname":"Client#event:typingStart","name":"typingStart","scope":"instance","kind":"event","description":"Emitted whenever a user starts typing in a channel","memberof":"Client","params":[{"type":[[[["Channel"],""]]],"description":"the channel the user started typing in","name":"channel"},{"type":[[[["User"],""]]],"description":"the user that started typing","name":"user"}],"meta":{"lineno":52,"filename":"TypingStart.js","path":"src/client/websocket/packets/handlers"},"order":209},{"id":"Client#event:typingStop","longname":"Client#event:typingStop","name":"typingStop","scope":"instance","kind":"event","description":"Emitted whenever a user stops typing in a channel","memberof":"Client","params":[{"type":[[[["Channel"],""]]],"description":"the channel the user stopped typing in","name":"channel"},{"type":[[[["User"],""]]],"description":"the user that stopped typing","name":"user"}],"meta":{"lineno":60,"filename":"TypingStart.js","path":"src/client/websocket/packets/handlers"},"order":210},{"id":"Client#event:voiceStateUpdate","longname":"Client#event:voiceStateUpdate","name":"voiceStateUpdate","scope":"instance","kind":"event","description":"Emitted whenever a user changes voice state - e.g. joins/leaves a channel, mutes/unmutes.","memberof":"Client","params":[{"type":[[[["GuildMember"],""]]],"description":"the member before the voice state update","name":"oldMember"},{"type":[[[["GuildMember"],""]]],"description":"the member before the voice state update","name":"newMember"}],"meta":{"lineno":34,"filename":"VoiceStateUpdate.js","path":"src/client/websocket/packets/handlers"},"order":211},{"id":"Client#event:ready","longname":"Client#event:ready","name":"ready","scope":"instance","kind":"event","description":"Emitted when the Client becomes ready to start working","memberof":"Client","meta":{"lineno":185,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":230},{"id":"Client#event:reconnecting","longname":"Client#event:reconnecting","name":"reconnecting","scope":"instance","kind":"event","description":"Emitted when the Client tries to reconnect after being disconnected","memberof":"Client","meta":{"lineno":204,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":232}],"constructor":{"id":"Client()","longname":"Client","name":"Client","kind":"constructor","description":"Creates an instance of Client.","memberof":"Client","params":[{"type":{"names":["Object"]},"optional":true,"description":"options to pass to the client","name":"options"}],"order":1}},"ClientDataResolver":{"meta":{"id":"ClientDataResolver","longname":"ClientDataResolver","name":"ClientDataResolver","scope":"global","kind":"class","description":"The DataResolver identifies different objects and tries to resolve a specific piece of information from them, e.g.\nextracting a User from a Message object.","access":"private","meta":{"lineno":18,"filename":"ClientDataResolver.js","path":"src/client"},"order":17},"functions":[{"id":"ClientDataResolver#resolveUser","longname":"ClientDataResolver#resolveUser","name":"resolveUser","scope":"instance","kind":"function","description":"Resolves a UserResolvable to a User object","memberof":"ClientDataResolver","params":[{"type":{"names":["UserResolvable"]},"description":"the UserResolvable to identify","name":"user"}],"returns":[[[["User"],""]]],"meta":{"lineno":37,"filename":"ClientDataResolver.js","path":"src/client"},"order":19},{"id":"ClientDataResolver#resolveGuild","longname":"ClientDataResolver#resolveGuild","name":"resolveGuild","scope":"instance","kind":"function","description":"Resolves a GuildResolvable to a Guild object","memberof":"ClientDataResolver","params":[{"type":{"names":["GuildResolvable"]},"description":"the GuildResolvable to identify","name":"guild"}],"returns":[[[["Guild"],""]]],"meta":{"lineno":62,"filename":"ClientDataResolver.js","path":"src/client"},"order":21},{"id":"ClientDataResolver#resolveGuildMember","longname":"ClientDataResolver#resolveGuildMember","name":"resolveGuildMember","scope":"instance","kind":"function","description":"Resolves a GuildMemberResolvable to a GuildMember object","memberof":"ClientDataResolver","params":[{"type":{"names":["GuildResolvable"]},"description":"the guild that the member is part of","name":"guild"},{"type":{"names":["UserResolvable"]},"description":"the user that is part of the guild","name":"user"}],"returns":[[[["GuildMember"],""]]],"meta":{"lineno":81,"filename":"ClientDataResolver.js","path":"src/client"},"order":23},{"id":"ClientDataResolver#resolveBase64","longname":"ClientDataResolver#resolveBase64","name":"resolveBase64","scope":"instance","kind":"function","description":"Resolves a Base64Resolvable to a Base 64 image","memberof":"ClientDataResolver","params":[{"type":{"names":["Base64Resolvable"]},"description":"the base 64 resolvable you want to resolve","name":"dataResolvable"}],"returns":[[[["String"],""]]],"meta":{"lineno":110,"filename":"ClientDataResolver.js","path":"src/client"},"order":25},{"id":"ClientDataResolver#resolveChannel","longname":"ClientDataResolver#resolveChannel","name":"resolveChannel","scope":"instance","kind":"function","description":"Resolves a ChannelResolvable to a Channel object","memberof":"ClientDataResolver","params":[{"type":{"names":["ChannelResolvable"]},"description":"the channel resolvable to resolve","name":"channelResolvable"}],"returns":[[[["Channel"],""]]],"meta":{"lineno":130,"filename":"ClientDataResolver.js","path":"src/client"},"order":27},{"id":"ClientDataResolver#resolveString","longname":"ClientDataResolver#resolveString","name":"resolveString","scope":"instance","kind":"function","description":"Resolves a StringResolvable to a String","memberof":"ClientDataResolver","params":[{"type":{"names":["StringResolvable"]},"description":"the string resolvable to resolve","name":"stringResolvable"}],"returns":[[[["String"],""]]],"meta":{"lineno":155,"filename":"ClientDataResolver.js","path":"src/client"},"order":29}],"properties":[],"events":[]},"ClientManager":{"meta":{"id":"ClientManager","longname":"ClientManager","name":"ClientManager","scope":"global","kind":"class","description":"Manages the State and Background Tasks of the Client","access":"private","meta":{"lineno":7,"filename":"ClientManager.js","path":"src/client"},"order":30},"functions":[{"id":"ClientManager#connectToWebSocket","longname":"ClientManager#connectToWebSocket","name":"connectToWebSocket","scope":"instance","kind":"function","description":"Connects the Client to the WebSocket","memberof":"ClientManager","params":[{"type":{"names":["String"]},"description":"the authorization token","name":"token"},{"type":{"names":["function"]},"description":"function to run when connection is successful","name":"resolve"},{"type":{"names":["function"]},"description":"function to run when connection fails","name":"reject"}],"returns":[[[["null"],""]]],"meta":{"lineno":29,"filename":"ClientManager.js","path":"src/client"},"order":33},{"id":"ClientManager#setupKeepAlive","longname":"ClientManager#setupKeepAlive","name":"setupKeepAlive","scope":"instance","kind":"function","description":"Sets up a keep-alive interval to keep the Client's connection valid","memberof":"ClientManager","params":[{"type":{"names":["Number"]},"description":"the interval in milliseconds at which heartbeat packets should be sent","name":"time"}],"returns":[[[["null"],""]]],"meta":{"lineno":46,"filename":"ClientManager.js","path":"src/client"},"order":34}],"properties":[{"id":"ClientManager#client","longname":"ClientManager#client","name":"client","scope":"instance","kind":"member","description":"The Client that instantiated this Manager","memberof":"ClientManager","type":[[[["Client"],""]]],"meta":{"lineno":14,"filename":"ClientManager.js","path":"src/client"},"order":31},{"id":"ClientManager#heartbeatInterval","longname":"ClientManager#heartbeatInterval","name":"heartbeatInterval","scope":"instance","kind":"member","description":"The heartbeat interval, null if not yet set","memberof":"ClientManager","type":[[[["Number"],""]]],"nullable":true,"meta":{"lineno":19,"filename":"ClientManager.js","path":"src/client"},"order":32}],"events":[]},"Channel":{"meta":{"id":"Channel","longname":"Channel","name":"Channel","scope":"global","kind":"class","description":"Represents any Channel on Discord","meta":{"lineno":4,"filename":"Channel.js","path":"src/structures"},"order":35},"functions":[{"id":"Channel#delete","longname":"Channel#delete","name":"delete","scope":"instance","kind":"function","description":"Deletes the channel","memberof":"Channel","params":[],"examples":["// delete the channel\nchannel.delete()\n .then() // success\n .catch(console.log); // log error"],"returns":[[["Promise",".<"],["Channel",">"]]],"meta":{"lineno":39,"filename":"Channel.js","path":"src/structures"},"order":38}],"properties":[{"id":"Channel#client","longname":"Channel#client","name":"client","scope":"instance","kind":"member","description":"The client that instantiated the Channel","memberof":"Channel","type":[[[["Client"],""]]],"meta":{"lineno":10,"filename":"Channel.js","path":"src/structures"},"order":36},{"id":"Channel#id","longname":"Channel#id","name":"id","scope":"instance","kind":"member","description":"The unique ID of the channel","memberof":"Channel","type":[[[["String"],""]]],"meta":{"lineno":27,"filename":"Channel.js","path":"src/structures"},"order":37}],"events":[]},"ClientUser":{"meta":{"id":"ClientUser","longname":"ClientUser","name":"ClientUser","scope":"global","kind":"class","augments":["User"],"description":"Represents the logged in client's Discord User","meta":{"lineno":7,"filename":"ClientUser.js","path":"src/structures"},"order":39},"functions":[{"id":"ClientUser#setUsername","longname":"ClientUser#setUsername","name":"setUsername","scope":"instance","kind":"function","description":"Set the username of the logged in Client.\nChanging usernames in Discord is heavily rate limited, with only 2 requests\nevery hour. Use this sparingly!","memberof":"ClientUser","params":[{"type":{"names":["String"]},"description":"the new username","name":"username"}],"examples":["// set username\nclient.user.setUsername('discordjs')\n .then(user => console.log(`My new username is ${user.username}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["ClientUser",">"]]],"meta":{"lineno":34,"filename":"ClientUser.js","path":"src/structures"},"order":42},{"id":"ClientUser#setEmail","longname":"ClientUser#setEmail","name":"setEmail","scope":"instance","kind":"function","description":"If this user is a \"self bot\" or logged in using a normal user's details (which should be avoided), you can set the\nemail here.","memberof":"ClientUser","params":[{"type":{"names":["String"]},"description":"the new email","name":"email"}],"examples":["// set email\nclient.user.setEmail('bob@gmail.com')\n .then(user => console.log(`My new email is ${user.email}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["ClientUser",">"]]],"meta":{"lineno":49,"filename":"ClientUser.js","path":"src/structures"},"order":43},{"id":"ClientUser#setPassword","longname":"ClientUser#setPassword","name":"setPassword","scope":"instance","kind":"function","description":"If this user is a \"self bot\" or logged in using a normal user's details (which should be avoided), you can set the\npassword here.","memberof":"ClientUser","params":[{"type":{"names":["String"]},"description":"the new password","name":"password"}],"examples":["// set password\nclient.user.setPassword('password')\n .then(user => console.log('New password set!'))\n .catch(console.log);"],"returns":[[["Promise",".<"],["ClientUser",">"]]],"meta":{"lineno":64,"filename":"ClientUser.js","path":"src/structures"},"order":44},{"id":"ClientUser#setAvatar","longname":"ClientUser#setAvatar","name":"setAvatar","scope":"instance","kind":"function","description":"Set the avatar of the logged in Client.","memberof":"ClientUser","params":[{"type":{"names":["Base64Resolvable"]},"description":"the new avatar","name":"avatar"}],"examples":["// set avatar\nclient.user.setAvatar(fs.readFileSync('./avatar.png'))\n .then(user => console.log(`New avatar set!`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["ClientUser",">"]]],"meta":{"lineno":77,"filename":"ClientUser.js","path":"src/structures"},"order":45},{"id":"ClientUser#toString","longname":"ClientUser#toString","name":"toString","scope":"instance","kind":"function","inherits":"User#toString","inherited":true,"description":"When concatenated with a String, this automatically concatenates the User's mention instead of the User object.","memberof":"ClientUser","params":[],"examples":["// logs: Hello from <@123456789>!\nconsole.log(`Hello from ${user}!`);"],"returns":[[[["String"],""]]],"meta":{"lineno":64,"filename":"User.js","path":"src/structures"},"order":284},{"id":"ClientUser#deleteDM","longname":"ClientUser#deleteDM","name":"deleteDM","scope":"instance","kind":"function","inherits":"User#deleteDM","inherited":true,"description":"Deletes a DM Channel (if one exists) between the Client and the User. Resolves with the Channel if successful.","memberof":"ClientUser","params":[],"returns":[[["Promise",".<"],["DMChannel",">"]]],"meta":{"lineno":72,"filename":"User.js","path":"src/structures"},"order":285},{"id":"ClientUser#equals","longname":"ClientUser#equals","name":"equals","scope":"instance","kind":"function","inherits":"User#equals","inherited":true,"description":"Checks if the user is equal to another. It compares username, ID, discriminator, status and the game being played.\nIt is recommended to compare equality by using `user.id === user2.id` unless you want to compare all properties.","memberof":"ClientUser","params":[{"type":{"names":["User"]},"description":"the user to compare","name":"user"}],"returns":[[[["Boolean"],""]]],"meta":{"lineno":82,"filename":"User.js","path":"src/structures"},"order":286},{"id":"ClientUser#sendMessage","longname":"ClientUser#sendMessage","name":"sendMessage","scope":"instance","kind":"function","inherits":"User#sendMessage","inherited":true,"implements":["TextBasedChannel#sendMessage"],"description":"Send a message to this channel","memberof":"ClientUser","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"},{"type":{"names":["MessageOptions"]},"optional":true,"defaultvalue":"{}","description":"the options to provide","name":"options"}],"examples":["// send a message\nchannel.sendMessage('hello!')\n .then(message => console.log(`Sent message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":25,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":287},{"id":"ClientUser#sendTTSMessage","longname":"ClientUser#sendTTSMessage","name":"sendTTSMessage","scope":"instance","kind":"function","inherits":"User#sendTTSMessage","inherited":true,"implements":["TextBasedChannel#sendTTSMessage"],"description":"Send a text-to-speech message to this channel","memberof":"ClientUser","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"}],"examples":["// send a TTS message\nchannel.sendTTSMessage('hello!')\n .then(message => console.log(`Sent tts message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":38,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":288}],"properties":[{"id":"ClientUser#verified","longname":"ClientUser#verified","name":"verified","scope":"instance","kind":"member","description":"Whether or not this account has been verified","memberof":"ClientUser","type":[[[["Boolean"],""]]],"meta":{"lineno":14,"filename":"ClientUser.js","path":"src/structures"},"order":40},{"id":"ClientUser#email","longname":"ClientUser#email","name":"email","scope":"instance","kind":"member","description":"The email of this account","memberof":"ClientUser","type":[[[["String"],""]]],"meta":{"lineno":19,"filename":"ClientUser.js","path":"src/structures"},"order":41},{"id":"ClientUser#username","longname":"ClientUser#username","name":"username","scope":"instance","kind":"member","inherits":"User#username","inherited":true,"description":"The username of the User","memberof":"ClientUser","type":[[[["String"],""]]],"meta":{"lineno":20,"filename":"User.js","path":"src/structures"},"order":277},{"id":"ClientUser#id","longname":"ClientUser#id","name":"id","scope":"instance","kind":"member","inherits":"User#id","inherited":true,"description":"The ID of the User","memberof":"ClientUser","type":[[[["String"],""]]],"meta":{"lineno":25,"filename":"User.js","path":"src/structures"},"order":278},{"id":"ClientUser#discriminator","longname":"ClientUser#discriminator","name":"discriminator","scope":"instance","kind":"member","inherits":"User#discriminator","inherited":true,"description":"A discriminator based on username for the User","memberof":"ClientUser","type":[[[["String"],""]]],"meta":{"lineno":30,"filename":"User.js","path":"src/structures"},"order":279},{"id":"ClientUser#avatar","longname":"ClientUser#avatar","name":"avatar","scope":"instance","kind":"member","inherits":"User#avatar","inherited":true,"description":"The ID of the user's avatar","memberof":"ClientUser","type":[[[["String"],""]]],"meta":{"lineno":35,"filename":"User.js","path":"src/structures"},"order":280},{"id":"ClientUser#bot","longname":"ClientUser#bot","name":"bot","scope":"instance","kind":"member","inherits":"User#bot","inherited":true,"description":"Whether or not the User is a Bot.","memberof":"ClientUser","type":[[[["Boolean"],""]]],"meta":{"lineno":40,"filename":"User.js","path":"src/structures"},"order":281},{"id":"ClientUser#status","longname":"ClientUser#status","name":"status","scope":"instance","kind":"member","inherits":"User#status","inherited":true,"description":"The status of the user:\n\n* **`online`** - user is online\n* **`offline`** - user is offline\n* **`idle`** - user is AFK","memberof":"ClientUser","type":[[[["String"],""]]],"meta":{"lineno":49,"filename":"User.js","path":"src/structures"},"order":282},{"id":"ClientUser#game","longname":"ClientUser#game","name":"game","scope":"instance","kind":"member","inherits":"User#game","inherited":true,"description":"The game that the user is playing, `null` if they aren't playing a game.","memberof":"ClientUser","type":[[[["String"],""]]],"meta":{"lineno":54,"filename":"User.js","path":"src/structures"},"order":283}],"events":[]},"DMChannel":{"meta":{"id":"DMChannel","longname":"DMChannel","name":"DMChannel","scope":"global","kind":"class","augments":["Channel"],"implements":["TextBasedChannel"],"description":"Represents a Direct Message Channel between two users.","meta":{"lineno":10,"filename":"DMChannel.js","path":"src/structures"},"order":46},"functions":[{"id":"DMChannel#toString","longname":"DMChannel#toString","name":"toString","scope":"instance","kind":"function","description":"When concatenated with a String, this automatically concatenates the recipient's mention instead of the\nDM channel object.","memberof":"DMChannel","params":[],"returns":[[[["String"],""]]],"meta":{"lineno":36,"filename":"DMChannel.js","path":"src/structures"},"order":49},{"id":"DMChannel#sendMessage","longname":"DMChannel#sendMessage","name":"sendMessage","scope":"instance","kind":"function","implements":["TextBasedChannel#sendMessage"],"description":"Send a message to this channel","memberof":"DMChannel","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"},{"type":{"names":["MessageOptions"]},"optional":true,"defaultvalue":"{}","description":"the options to provide","name":"options"}],"examples":["// send a message\nchannel.sendMessage('hello!')\n .then(message => console.log(`Sent message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":25,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":240},{"id":"DMChannel#sendTTSMessage","longname":"DMChannel#sendTTSMessage","name":"sendTTSMessage","scope":"instance","kind":"function","implements":["TextBasedChannel#sendTTSMessage"],"description":"Send a text-to-speech message to this channel","memberof":"DMChannel","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"}],"examples":["// send a TTS message\nchannel.sendTTSMessage('hello!')\n .then(message => console.log(`Sent tts message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":38,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":241},{"id":"DMChannel#delete","longname":"DMChannel#delete","name":"delete","scope":"instance","kind":"function","inherits":"Channel#delete","inherited":true,"description":"Deletes the channel","memberof":"DMChannel","params":[],"examples":["// delete the channel\nchannel.delete()\n .then() // success\n .catch(console.log); // log error"],"returns":[[["Promise",".<"],["Channel",">"]]],"meta":{"lineno":39,"filename":"Channel.js","path":"src/structures"},"order":249}],"properties":[{"id":"DMChannel#recipient","longname":"DMChannel#recipient","name":"recipient","scope":"instance","kind":"member","description":"The recipient on the other end of the DM","memberof":"DMChannel","type":[[[["User"],""]]],"meta":{"lineno":23,"filename":"DMChannel.js","path":"src/structures"},"order":47},{"id":"DMChannel#lastMessageID","longname":"DMChannel#lastMessageID","name":"lastMessageID","scope":"instance","kind":"member","description":"The ID of the last sent message, if available","memberof":"DMChannel","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":28,"filename":"DMChannel.js","path":"src/structures"},"order":48},{"id":"DMChannel#messages","longname":"DMChannel#messages","name":"messages","scope":"instance","kind":"member","implements":["TextBasedChannel#messages"],"description":"A Map containing the messages sent to this channel.","memberof":"DMChannel","type":[[["Map",".<"],["String",", "],["Message",">"]]],"meta":{"lineno":12,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":239},{"id":"DMChannel#client","longname":"DMChannel#client","name":"client","scope":"instance","kind":"member","inherits":"Channel#client","inherited":true,"description":"The client that instantiated the Channel","memberof":"DMChannel","type":[[[["Client"],""]]],"meta":{"lineno":10,"filename":"Channel.js","path":"src/structures"},"order":247},{"id":"DMChannel#id","longname":"DMChannel#id","name":"id","scope":"instance","kind":"member","inherits":"Channel#id","inherited":true,"description":"The unique ID of the channel","memberof":"DMChannel","type":[[[["String"],""]]],"meta":{"lineno":27,"filename":"Channel.js","path":"src/structures"},"order":248}],"events":[]},"Guild":{"meta":{"id":"Guild","longname":"Guild","name":"Guild","scope":"global","kind":"class","description":"Represents a Guild (or a Server) on Discord.","meta":{"lineno":24,"filename":"Guild.js","path":"src/structures"},"order":50},"functions":[{"id":"Guild#toString","longname":"Guild#toString","name":"toString","scope":"instance","kind":"function","description":"When concatenated with a String, this automatically concatenates the Guild's name instead of the Guild object.","memberof":"Guild","params":[],"examples":["// logs: Hello from My Guild!\nconsole.log(`Hello from ${guild}!`);","// logs: Hello from My Guild!\nconsole.log(`Hello from ' + guild + '!');"],"returns":[[[["String"],""]]],"meta":{"lineno":117,"filename":"Guild.js","path":"src/structures"},"order":58},{"id":"Guild#kick","longname":"Guild#kick","name":"kick","scope":"instance","kind":"function","description":"Tries to kick a member from the guild.","memberof":"Guild","params":[{"type":{"names":["GuildMemberResolvable"]},"description":"the member to kick","name":"member"}],"examples":["// kicks a member from a guild:\nguild.kick(message.author)\n .then(member => console.log(`Kicked ${member}`))\n .catch(error => console.log(error));"],"returns":[[["Promise",".<"],["GuildMember",", "],["Error",">"]]],"meta":{"lineno":131,"filename":"Guild.js","path":"src/structures"},"order":59},{"id":"Guild#member","longname":"Guild#member","name":"member","scope":"instance","kind":"function","description":"Returns the GuildMember form of a User object, if the User is present in the guild.","memberof":"Guild","params":[{"type":{"names":["UserResolvable"]},"description":"the user that you want to obtain the GuildMember of.","name":"user"}],"examples":["// get the guild member of a user\nconst member = guild.member(message.author);"],"returns":[[[["GuildMember"],""]],[[["null"],""]]],"meta":{"lineno":143,"filename":"Guild.js","path":"src/structures"},"order":60},{"id":"Guild#equals","longname":"Guild#equals","name":"equals","scope":"instance","kind":"function","description":"Whether this Guild equals another Guild. It compares all properties, so for most operations\nit is advisable to just compare `guild.id === guild2.id` as it is much faster and is often\nwhat most users need.","memberof":"Guild","params":[{"type":{"names":["Guild"]},"description":"the guild to compare","name":"guild"}],"returns":[[[["Boolean"],""]]],"meta":{"lineno":154,"filename":"Guild.js","path":"src/structures"},"order":61},{"id":"Guild#setup","longname":"Guild#setup","name":"setup","scope":"instance","kind":"function","description":"Sets up the Guild","memberof":"Guild","params":[{"type":{"names":["any"]},"name":"data"}],"returns":[[[["null"],""]]],"access":"private","meta":{"lineno":188,"filename":"Guild.js","path":"src/structures"},"order":62},{"id":"Guild#createChannel","longname":"Guild#createChannel","name":"createChannel","scope":"instance","kind":"function","description":"Creates a new Channel in the Guild.","memberof":"Guild","params":[{"type":{"names":["String"]},"description":"the name of the new channel.","name":"name"},{"type":{"names":["String"]},"description":"the type of the new channel, either `text` or `voice`.","name":"type"}],"examples":["// create a new text channel\nguild.createChannel('new general', 'text')\n .then(channel => console.log(`Created new channel ${channel}`))\n .catch(console.log);"],"returns":[[["Promise",".<("],["TextChannel","|"],["VoiceChannel","), "],["Error",">"]]],"meta":{"lineno":328,"filename":"Guild.js","path":"src/structures"},"order":78},{"id":"Guild#createRole","longname":"Guild#createRole","name":"createRole","scope":"instance","kind":"function","description":"Creates a new role in the guild, as of now this is just a blank role.","memberof":"Guild","params":[],"examples":["// create a new role\nguild.createRole()\n .then(role => console.log(`Created role ${role}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Role",", "],["Error",">"]]],"meta":{"lineno":341,"filename":"Guild.js","path":"src/structures"},"order":79},{"id":"Guild#leave","longname":"Guild#leave","name":"leave","scope":"instance","kind":"function","description":"Causes the Client to leave the guild.","memberof":"Guild","params":[],"examples":["// leave a guild\nguild.leave()\n .then(g => console.log(`Left the guild ${g}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":354,"filename":"Guild.js","path":"src/structures"},"order":80},{"id":"Guild#delete","longname":"Guild#delete","name":"delete","scope":"instance","kind":"function","description":"Causes the Client to delete the guild.","memberof":"Guild","params":[],"examples":["// delete a guild\nguild.delete()\n .then(g => console.log(`Deleted the guild ${g}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":367,"filename":"Guild.js","path":"src/structures"},"order":81},{"id":"Guild#edit","longname":"Guild#edit","name":"edit","scope":"instance","kind":"function","description":"Updates the Guild with new information - e.g. a new name.","memberof":"Guild","params":[{"type":{"names":["GuildEditData"]},"description":"the data to update the guild with.","name":"data"}],"examples":["// set the guild name and region\nguild.edit({\n name: 'Discord Guild',\n region: 'london',\n})\n.then(updated => console.log(`New guild name ${updated.name} in region ${updated.region}`))\n.catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":384,"filename":"Guild.js","path":"src/structures"},"order":82},{"id":"Guild#setName","longname":"Guild#setName","name":"setName","scope":"instance","kind":"function","description":"Edit the name of the Guild.","memberof":"Guild","params":[{"type":{"names":["String"]},"description":"the new name of the Guild.","name":"name"}],"examples":["// edit the guild name\nguild.setName('Discord Guild')\n .then(updated => console.log(`Updated guild name to ${guild.name}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":398,"filename":"Guild.js","path":"src/structures"},"order":83},{"id":"Guild#setRegion","longname":"Guild#setRegion","name":"setRegion","scope":"instance","kind":"function","description":"Edit the region of the Guild.","memberof":"Guild","params":[{"type":{"names":["Region"]},"description":"the new region of the guild.","name":"region"}],"examples":["// edit the guild region\nguild.setRegion('london')\n .then(updated => console.log(`Updated guild region to ${guild.region}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":412,"filename":"Guild.js","path":"src/structures"},"order":84},{"id":"Guild#setVerificationLevel","longname":"Guild#setVerificationLevel","name":"setVerificationLevel","scope":"instance","kind":"function","description":"Edit the verification level of the Guild.","memberof":"Guild","params":[{"type":{"names":["VerificationLevel"]},"description":"the new verification level of the guild.","name":"verificationLevel"}],"examples":["// edit the guild verification level\nguild.setVerificationLevel(1)\n .then(updated => console.log(`Updated guild verification level to ${guild.verificationLevel}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":426,"filename":"Guild.js","path":"src/structures"},"order":85},{"id":"Guild#setAFKChannel","longname":"Guild#setAFKChannel","name":"setAFKChannel","scope":"instance","kind":"function","description":"Edit the AFK channel of the Guild.","memberof":"Guild","params":[{"type":{"names":["GuildChannelResolvable"]},"description":"the new AFK channel.","name":"afkChannel"}],"examples":["// edit the guild AFK channel\nguild.setAFKChannel(channel)\n .then(updated => console.log(`Updated guild AFK channel to ${guild.afkChannel}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":440,"filename":"Guild.js","path":"src/structures"},"order":86},{"id":"Guild#setAFKTimeout","longname":"Guild#setAFKTimeout","name":"setAFKTimeout","scope":"instance","kind":"function","description":"Edit the AFK timeout of the Guild.","memberof":"Guild","params":[{"type":{"names":["Number"]},"description":"the time in seconds that a user must be idle to be considered AFK.","name":"afkTimeout"}],"examples":["// edit the guild AFK channel\nguild.setAFKTimeout(60)\n .then(updated => console.log(`Updated guild AFK timeout to ${guild.afkTimeout}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":454,"filename":"Guild.js","path":"src/structures"},"order":87},{"id":"Guild#setIcon","longname":"Guild#setIcon","name":"setIcon","scope":"instance","kind":"function","description":"Set a new Guild Icon.","memberof":"Guild","params":[{"type":{"names":["Base64Resolvable"]},"description":"the new icon of the guild.","name":"icon"}],"examples":["// edit the guild icon\nguild.setIcon(fs.readFileSync('./icon.png'))\n .then(updated => console.log('Updated the guild icon'))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":468,"filename":"Guild.js","path":"src/structures"},"order":88},{"id":"Guild#setOwner","longname":"Guild#setOwner","name":"setOwner","scope":"instance","kind":"function","description":"Sets a new owner of the Guild.","memberof":"Guild","params":[{"type":{"names":["GuildMemberResolvable"]},"description":"the new owner of the Guild.","name":"owner"}],"examples":["// edit the guild owner\nguild.setOwner(guilds.members[0])\n .then(updated => console.log(`Updated the guild owner to ${updated.owner.username}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":482,"filename":"Guild.js","path":"src/structures"},"order":89},{"id":"Guild#setSplash","longname":"Guild#setSplash","name":"setSplash","scope":"instance","kind":"function","description":"Set a new Guild Splash Logo.","memberof":"Guild","params":[{"type":{"names":["Base64Resolvable"]},"description":"the new splash screen of the guild.","name":"splash"}],"examples":["// edit the guild splash\nguild.setIcon(fs.readFileSync('./splash.png'))\n .then(updated => console.log('Updated the guild splash'))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Guild",", "],["Error",">"]]],"meta":{"lineno":496,"filename":"Guild.js","path":"src/structures"},"order":90}],"properties":[{"id":"Guild#client","longname":"Guild#client","name":"client","scope":"instance","kind":"member","description":"The Client that created the instance of the the Guild.","memberof":"Guild","type":[[[["Client"],""]]],"meta":{"lineno":30,"filename":"Guild.js","path":"src/structures"},"order":51},{"id":"Guild#members","longname":"Guild#members","name":"members","scope":"instance","kind":"member","description":"A Map of members that are in this Guild. The key is the member's ID, the value is the member.","memberof":"Guild","type":[[["Map",".<"],["String",", "],["GuildMember",">"]]],"meta":{"lineno":36,"filename":"Guild.js","path":"src/structures"},"order":52},{"id":"Guild#channels","longname":"Guild#channels","name":"channels","scope":"instance","kind":"member","description":"A Map of channels that are in this Guild. The key is the channel's ID, the value is the channel.","memberof":"Guild","type":[[["Map",".<"],["String",", "],["GuildChannel",">"]]],"meta":{"lineno":42,"filename":"Guild.js","path":"src/structures"},"order":53},{"id":"Guild#roles","longname":"Guild#roles","name":"roles","scope":"instance","kind":"member","description":"A Map of roles that are in this Guild. The key is the role's ID, the value is the role.","memberof":"Guild","type":[[["Map",".<"],["String",", "],["Role",">"]]],"meta":{"lineno":48,"filename":"Guild.js","path":"src/structures"},"order":54},{"id":"Guild#available","longname":"Guild#available","name":"available","scope":"instance","kind":"member","description":"Whether the Guild is available to access. If it is not available, it indicates a server outage.","memberof":"Guild","type":[[[["Boolean"],""]]],"meta":{"lineno":59,"filename":"Guild.js","path":"src/structures"},"order":55},{"id":"Guild#id","longname":"Guild#id","name":"id","scope":"instance","kind":"member","description":"The Unique ID of the Guild, useful for comparisons.","memberof":"Guild","type":[[[["String"],""]]],"meta":{"lineno":64,"filename":"Guild.js","path":"src/structures"},"order":56},{"id":"Guild#splash","longname":"Guild#splash","name":"splash","scope":"instance","kind":"member","description":"The hash of the guild splash image, or null if no splash (VIP only)","memberof":"Guild","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":195,"filename":"Guild.js","path":"src/structures"},"order":63},{"id":"Guild#region","longname":"Guild#region","name":"region","scope":"instance","kind":"member","description":"The region the guild is located in","memberof":"Guild","type":[[[["String"],""]]],"meta":{"lineno":200,"filename":"Guild.js","path":"src/structures"},"order":64},{"id":"Guild#name","longname":"Guild#name","name":"name","scope":"instance","kind":"member","description":"The name of the guild","memberof":"Guild","type":[[[["String"],""]]],"meta":{"lineno":205,"filename":"Guild.js","path":"src/structures"},"order":65},{"id":"Guild#memberCount","longname":"Guild#memberCount","name":"memberCount","scope":"instance","kind":"member","description":"The amount of initial members in the guild.","memberof":"Guild","type":[[[["Number"],""]]],"meta":{"lineno":210,"filename":"Guild.js","path":"src/structures"},"order":66},{"id":"Guild#large","longname":"Guild#large","name":"large","scope":"instance","kind":"member","description":"Whether the guild is \"large\" (has more than 250 members)","memberof":"Guild","type":[[[["Boolean"],""]]],"meta":{"lineno":215,"filename":"Guild.js","path":"src/structures"},"order":67},{"id":"Guild#joinDate","longname":"Guild#joinDate","name":"joinDate","scope":"instance","kind":"member","description":"The date at which the logged-in client joined the guild.","memberof":"Guild","type":[[[["Date"],""]]],"meta":{"lineno":220,"filename":"Guild.js","path":"src/structures"},"order":68},{"id":"Guild#icon","longname":"Guild#icon","name":"icon","scope":"instance","kind":"member","description":"The hash of the guild icon, or null if there is no icon.","memberof":"Guild","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":225,"filename":"Guild.js","path":"src/structures"},"order":69},{"id":"Guild#features","longname":"Guild#features","name":"features","scope":"instance","kind":"member","description":"An array of guild features.","memberof":"Guild","type":[[["Array",".<"],["Object",">"]]],"meta":{"lineno":230,"filename":"Guild.js","path":"src/structures"},"order":70},{"id":"Guild#emojis","longname":"Guild#emojis","name":"emojis","scope":"instance","kind":"member","description":"An array of guild emojis.","memberof":"Guild","type":[[["Array",".<"],["Object",">"]]],"meta":{"lineno":235,"filename":"Guild.js","path":"src/structures"},"order":71},{"id":"Guild#afkTimeout","longname":"Guild#afkTimeout","name":"afkTimeout","scope":"instance","kind":"member","description":"The time in seconds before a user is counted as \"away from keyboard\".","memberof":"Guild","type":[[[["Number"],""]]],"nullable":true,"meta":{"lineno":240,"filename":"Guild.js","path":"src/structures"},"order":72},{"id":"Guild#afkChannelID","longname":"Guild#afkChannelID","name":"afkChannelID","scope":"instance","kind":"member","description":"The ID of the voice channel where AFK members are moved.","memberof":"Guild","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":245,"filename":"Guild.js","path":"src/structures"},"order":73},{"id":"Guild#embedEnabled","longname":"Guild#embedEnabled","name":"embedEnabled","scope":"instance","kind":"member","description":"Whether embedded images are enabled on this guild.","memberof":"Guild","type":[[[["Boolean"],""]]],"meta":{"lineno":250,"filename":"Guild.js","path":"src/structures"},"order":74},{"id":"Guild#verificationLevel","longname":"Guild#verificationLevel","name":"verificationLevel","scope":"instance","kind":"member","description":"The verification level of the guild.","memberof":"Guild","type":[[[["Number"],""]]],"meta":{"lineno":255,"filename":"Guild.js","path":"src/structures"},"order":75},{"id":"Guild#owner","longname":"Guild#owner","name":"owner","scope":"instance","kind":"member","description":"The owner of the guild","memberof":"Guild","type":[[[["User"],""]]],"meta":{"lineno":269,"filename":"Guild.js","path":"src/structures"},"order":76},{"id":"Guild#embedChannel","longname":"Guild#embedChannel","name":"embedChannel","scope":"instance","kind":"member","description":"The embed channel of the Guild.","memberof":"Guild","type":[[[["GuildChannel"],""]]],"meta":{"lineno":282,"filename":"Guild.js","path":"src/structures"},"order":77}],"events":[]},"GuildChannel":{"meta":{"id":"GuildChannel","longname":"GuildChannel","name":"GuildChannel","scope":"global","kind":"class","augments":["Channel"],"description":"Represents a Guild Channel (i.e. Text Channels and Voice Channels)","meta":{"lineno":25,"filename":"GuildChannel.js","path":"src/structures"},"order":91},"functions":[{"id":"GuildChannel#equals","longname":"GuildChannel#equals","name":"equals","scope":"instance","kind":"function","description":"Checks if this channel has the same type, topic, position, name, overwrites and ID as another channel.\nIn most cases, a simple `channel.id === channel2.id` will do, and is much faster too.","memberof":"GuildChannel","params":[{"type":{"names":["GuildChannel"]},"description":"the channel to compare this channel to","name":"channel"}],"returns":[[[["Boolean"],""]]],"meta":{"lineno":76,"filename":"GuildChannel.js","path":"src/structures"},"order":98},{"id":"GuildChannel#permissionsFor","longname":"GuildChannel#permissionsFor","name":"permissionsFor","scope":"instance","kind":"function","description":"Gets the overall set of permissions for a user in this channel, taking into account roles and permission\noverwrites.","memberof":"GuildChannel","params":[{"type":{"names":["GuildMemberResolvable"]},"description":"the user that you want to obtain the overall permissions for","name":"member"}],"returns":[[[["EvaluatedPermissions"],""]]],"meta":{"lineno":108,"filename":"GuildChannel.js","path":"src/structures"},"order":99},{"id":"GuildChannel#setName","longname":"GuildChannel#setName","name":"setName","scope":"instance","kind":"function","description":"Set a new name for the Guild Channel","memberof":"GuildChannel","params":[{"type":{"names":["String"]},"description":"the new name for the guild channel","name":"name"}],"examples":["// set a new channel name\nchannel.setName('not general')\n .then(newChannel => console.log(`Channel's new name is ${newChannel.name}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":178,"filename":"GuildChannel.js","path":"src/structures"},"order":100},{"id":"GuildChannel#setPosition","longname":"GuildChannel#setPosition","name":"setPosition","scope":"instance","kind":"function","description":"Set a new position for the Guild Channel","memberof":"GuildChannel","params":[{"type":{"names":["Number"]},"description":"the new position for the guild channel","name":"position"}],"examples":["// set a new channel position\nchannel.setPosition(2)\n .then(newChannel => console.log(`Channel's new position is ${newChannel.position}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":192,"filename":"GuildChannel.js","path":"src/structures"},"order":101},{"id":"GuildChannel#setTopic","longname":"GuildChannel#setTopic","name":"setTopic","scope":"instance","kind":"function","description":"Set a new topic for the Guild Channel","memberof":"GuildChannel","params":[{"type":{"names":["String"]},"description":"the new topic for the guild channel","name":"topic"}],"examples":["// set a new channel topic\nchannel.setTopic('needs more rate limiting')\n .then(newChannel => console.log(`Channel's new topic is ${newChannel.topic}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":206,"filename":"GuildChannel.js","path":"src/structures"},"order":102},{"id":"GuildChannel#toString","longname":"GuildChannel#toString","name":"toString","scope":"instance","kind":"function","description":"When concatenated with a String, this automatically concatenates the Channel's name instead of the Channel object.","memberof":"GuildChannel","params":[],"examples":["// Outputs: Hello from general\nconsole.log(`Hello from ${channel}`);","// Outputs: Hello from general\nconsole.log('Hello from ' + ${channel});"],"returns":[[[["String"],""]]],"meta":{"lineno":220,"filename":"GuildChannel.js","path":"src/structures"},"order":103},{"id":"GuildChannel#delete","longname":"GuildChannel#delete","name":"delete","scope":"instance","kind":"function","inherits":"Channel#delete","inherited":true,"description":"Deletes the channel","memberof":"GuildChannel","params":[],"examples":["// delete the channel\nchannel.delete()\n .then() // success\n .catch(console.log); // log error"],"returns":[[["Promise",".<"],["Channel",">"]]],"meta":{"lineno":39,"filename":"Channel.js","path":"src/structures"},"order":276}],"properties":[{"id":"GuildChannel#type","longname":"GuildChannel#type","name":"type","scope":"instance","kind":"member","description":"The type of the Guild Channel","memberof":"GuildChannel","type":[[[["Number"],""]]],"meta":{"lineno":36,"filename":"GuildChannel.js","path":"src/structures"},"order":92},{"id":"GuildChannel#topic","longname":"GuildChannel#topic","name":"topic","scope":"instance","kind":"member","description":"The topic of the Guild Channel, if there is one.","memberof":"GuildChannel","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":41,"filename":"GuildChannel.js","path":"src/structures"},"order":93},{"id":"GuildChannel#position","longname":"GuildChannel#position","name":"position","scope":"instance","kind":"member","description":"The position of the channel in the list.","memberof":"GuildChannel","type":[[[["Number"],""]]],"meta":{"lineno":46,"filename":"GuildChannel.js","path":"src/structures"},"order":94},{"id":"GuildChannel#name","longname":"GuildChannel#name","name":"name","scope":"instance","kind":"member","description":"The name of the Guild Channel","memberof":"GuildChannel","type":[[[["String"],""]]],"meta":{"lineno":51,"filename":"GuildChannel.js","path":"src/structures"},"order":95},{"id":"GuildChannel#lastMessageID","longname":"GuildChannel#lastMessageID","name":"lastMessageID","scope":"instance","kind":"member","description":"The ID of the last message in the channel, if one was sent.","memberof":"GuildChannel","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":56,"filename":"GuildChannel.js","path":"src/structures"},"order":96},{"id":"GuildChannel#permissionOverwrites","longname":"GuildChannel#permissionOverwrites","name":"permissionOverwrites","scope":"instance","kind":"member","description":"A list of permission overwrites in this channel for roles and users.","memberof":"GuildChannel","type":[[["Array",".<"],["PermissionOverwrites",">"]]],"meta":{"lineno":62,"filename":"GuildChannel.js","path":"src/structures"},"order":97},{"id":"GuildChannel#client","longname":"GuildChannel#client","name":"client","scope":"instance","kind":"member","inherits":"Channel#client","inherited":true,"description":"The client that instantiated the Channel","memberof":"GuildChannel","type":[[[["Client"],""]]],"meta":{"lineno":10,"filename":"Channel.js","path":"src/structures"},"order":274},{"id":"GuildChannel#id","longname":"GuildChannel#id","name":"id","scope":"instance","kind":"member","inherits":"Channel#id","inherited":true,"description":"The unique ID of the channel","memberof":"GuildChannel","type":[[[["String"],""]]],"meta":{"lineno":27,"filename":"Channel.js","path":"src/structures"},"order":275}],"events":[]},"GuildMember":{"meta":{"id":"GuildMember","longname":"GuildMember","name":"GuildMember","scope":"global","kind":"class","implements":["TextBasedChannel"],"description":"Represents a Member of a Guild on Discord","meta":{"lineno":7,"filename":"GuildMember.js","path":"src/structures"},"order":104},"functions":[{"id":"GuildMember#deleteDM","longname":"GuildMember#deleteDM","name":"deleteDM","scope":"instance","kind":"function","description":"Deletes any DM's with this Guild Member","memberof":"GuildMember","params":[],"returns":[[["Promise",".<"],["DMChannel",">"]]],"meta":{"lineno":133,"filename":"GuildMember.js","path":"src/structures"},"order":120},{"id":"GuildMember#kick","longname":"GuildMember#kick","name":"kick","scope":"instance","kind":"function","description":"Kick this member from the Guild","memberof":"GuildMember","params":[],"returns":[[["Promise",".<"],["GuildMember",">"]]],"meta":{"lineno":141,"filename":"GuildMember.js","path":"src/structures"},"order":121},{"id":"GuildMember#sendMessage","longname":"GuildMember#sendMessage","name":"sendMessage","scope":"instance","kind":"function","implements":["TextBasedChannel#sendMessage"],"description":"Send a message to this channel","memberof":"GuildMember","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"},{"type":{"names":["MessageOptions"]},"optional":true,"defaultvalue":"{}","description":"the options to provide","name":"options"}],"examples":["// send a message\nchannel.sendMessage('hello!')\n .then(message => console.log(`Sent message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":25,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":245},{"id":"GuildMember#sendTTSMessage","longname":"GuildMember#sendTTSMessage","name":"sendTTSMessage","scope":"instance","kind":"function","implements":["TextBasedChannel#sendTTSMessage"],"description":"Send a text-to-speech message to this channel","memberof":"GuildMember","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"}],"examples":["// send a TTS message\nchannel.sendTTSMessage('hello!')\n .then(message => console.log(`Sent tts message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":38,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":246}],"properties":[{"id":"GuildMember#client","longname":"GuildMember#client","name":"client","scope":"instance","kind":"member","description":"The client that instantiated this GuildMember","memberof":"GuildMember","type":[[[["Client"],""]]],"meta":{"lineno":13,"filename":"GuildMember.js","path":"src/structures"},"order":105},{"id":"GuildMember#guild","longname":"GuildMember#guild","name":"guild","scope":"instance","kind":"member","description":"The guild that this member is part of","memberof":"GuildMember","type":[[[["Guild"],""]]],"meta":{"lineno":18,"filename":"GuildMember.js","path":"src/structures"},"order":106},{"id":"GuildMember#user","longname":"GuildMember#user","name":"user","scope":"instance","kind":"member","description":"The user that this guild member instance Represents","memberof":"GuildMember","type":[[[["User"],""]]],"meta":{"lineno":23,"filename":"GuildMember.js","path":"src/structures"},"order":107},{"id":"GuildMember#serverDeaf","longname":"GuildMember#serverDeaf","name":"serverDeaf","scope":"instance","kind":"member","description":"Whether this member is deafened server-wide","memberof":"GuildMember","type":[[[["Boolean"],""]]],"meta":{"lineno":36,"filename":"GuildMember.js","path":"src/structures"},"order":108},{"id":"GuildMember#serverMute","longname":"GuildMember#serverMute","name":"serverMute","scope":"instance","kind":"member","description":"Whether this member is muted server-wide","memberof":"GuildMember","type":[[[["Boolean"],""]]],"meta":{"lineno":41,"filename":"GuildMember.js","path":"src/structures"},"order":109},{"id":"GuildMember#selfMute","longname":"GuildMember#selfMute","name":"selfMute","scope":"instance","kind":"member","description":"Whether this member is self-muted","memberof":"GuildMember","type":[[[["Boolean"],""]]],"meta":{"lineno":46,"filename":"GuildMember.js","path":"src/structures"},"order":110},{"id":"GuildMember#selfDeaf","longname":"GuildMember#selfDeaf","name":"selfDeaf","scope":"instance","kind":"member","description":"Whether this member is self-deafened","memberof":"GuildMember","type":[[[["Boolean"],""]]],"meta":{"lineno":51,"filename":"GuildMember.js","path":"src/structures"},"order":111},{"id":"GuildMember#voiceSessionID","longname":"GuildMember#voiceSessionID","name":"voiceSessionID","scope":"instance","kind":"member","description":"The voice session ID of this member, if any","memberof":"GuildMember","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":56,"filename":"GuildMember.js","path":"src/structures"},"order":112},{"id":"GuildMember#voiceChannelID","longname":"GuildMember#voiceChannelID","name":"voiceChannelID","scope":"instance","kind":"member","description":"The voice channel ID of this member, if any","memberof":"GuildMember","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":61,"filename":"GuildMember.js","path":"src/structures"},"order":113},{"id":"GuildMember#joinDate","longname":"GuildMember#joinDate","name":"joinDate","scope":"instance","kind":"member","description":"The date this member joined the guild","memberof":"GuildMember","type":[[[["Date"],""]]],"meta":{"lineno":66,"filename":"GuildMember.js","path":"src/structures"},"order":114},{"id":"GuildMember#roles","longname":"GuildMember#roles","name":"roles","scope":"instance","kind":"member","description":"A list of roles that are applied to this GuildMember","memberof":"GuildMember","params":[],"type":[[["Array",".<"],["Role",">"]]],"readonly":true,"meta":{"lineno":75,"filename":"GuildMember.js","path":"src/structures"},"order":115},{"id":"GuildMember#mute","longname":"GuildMember#mute","name":"mute","scope":"instance","kind":"member","description":"Whether this member is muted in any way","memberof":"GuildMember","params":[],"type":[[[["Boolean"],""]]],"readonly":true,"meta":{"lineno":98,"filename":"GuildMember.js","path":"src/structures"},"order":116},{"id":"GuildMember#deaf","longname":"GuildMember#deaf","name":"deaf","scope":"instance","kind":"member","description":"Whether this member is deafened in any way","memberof":"GuildMember","params":[],"type":[[[["Boolean"],""]]],"readonly":true,"meta":{"lineno":107,"filename":"GuildMember.js","path":"src/structures"},"order":117},{"id":"GuildMember#voiceChannel","longname":"GuildMember#voiceChannel","name":"voiceChannel","scope":"instance","kind":"member","description":"The voice channel this member is in, if any","memberof":"GuildMember","params":[],"type":[[[["VoiceChannel"],""]]],"readonly":true,"nullable":true,"meta":{"lineno":116,"filename":"GuildMember.js","path":"src/structures"},"order":118},{"id":"GuildMember#id","longname":"GuildMember#id","name":"id","scope":"instance","kind":"member","description":"The ID of this User","memberof":"GuildMember","params":[],"type":[[[["String"],""]]],"readonly":true,"meta":{"lineno":125,"filename":"GuildMember.js","path":"src/structures"},"order":119}],"events":[]},"Message":{"meta":{"id":"Message","longname":"Message","name":"Message","scope":"global","kind":"class","description":"Represents a Message on Discord","meta":{"lineno":4,"filename":"Message.js","path":"src/structures"},"order":122},"functions":[{"id":"Message#equals","longname":"Message#equals","name":"equals","scope":"instance","kind":"function","description":"Used mainly internally. Whether two messages are identical in properties. If you want to compare messages\nwithout checking all the properties, use `message.id === message2.id`, which is much more efficient. This\nmethod allows you to see if there are differences in content, embeds, attachments, nonce and tts properties.","memberof":"Message","params":[{"type":{"names":["Message"]},"description":"The message to compare it to","name":"message"},{"type":{"names":["Object"]},"description":"Raw data passed through the WebSocket about this message","name":"rawData"}],"returns":[[[["Boolean"],""]]],"meta":{"lineno":150,"filename":"Message.js","path":"src/structures"},"order":137},{"id":"Message#delete","longname":"Message#delete","name":"delete","scope":"instance","kind":"function","description":"Deletes the message","memberof":"Message","params":[],"examples":["// delete a message\nmessage.delete()\n .then(msg => console.log(`Deleted message from ${msg.author}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",", "],["Error",">"]]],"meta":{"lineno":184,"filename":"Message.js","path":"src/structures"},"order":138},{"id":"Message#edit","longname":"Message#edit","name":"edit","scope":"instance","kind":"function","description":"Edit the content of a message","memberof":"Message","params":[{"type":{"names":["String"]},"description":"the new content of a message","name":"content"}],"examples":["// update the content of a message\nmessage.edit('This is my new content!')\n .then(msg => console.log(`Updated the content of a message from ${msg.author}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",", "],["Error",">"]]],"meta":{"lineno":198,"filename":"Message.js","path":"src/structures"},"order":139}],"properties":[{"id":"Message#channel","longname":"Message#channel","name":"channel","scope":"instance","kind":"member","description":"The channel that the message was sent in","memberof":"Message","type":[[[["Channel"],""]]],"meta":{"lineno":10,"filename":"Message.js","path":"src/structures"},"order":123},{"id":"Message#guild","longname":"Message#guild","name":"guild","scope":"instance","kind":"member","description":"If the message was sent in a guild, this will be the guild the message was sent in","memberof":"Message","type":[[[["Guild"],""]]],"nullable":true,"meta":{"lineno":17,"filename":"Message.js","path":"src/structures"},"order":124},{"id":"Message#client","longname":"Message#client","name":"client","scope":"instance","kind":"member","description":"The client that instantiated the Message","memberof":"Message","type":[[[["Client"],""]]],"meta":{"lineno":24,"filename":"Message.js","path":"src/structures"},"order":125},{"id":"Message#author","longname":"Message#author","name":"author","scope":"instance","kind":"member","description":"The author of the message","memberof":"Message","type":[[[["User"],""]]],"meta":{"lineno":35,"filename":"Message.js","path":"src/structures"},"order":126},{"id":"Message#content","longname":"Message#content","name":"content","scope":"instance","kind":"member","description":"The content of the message","memberof":"Message","type":[[[["String"],""]]],"meta":{"lineno":40,"filename":"Message.js","path":"src/structures"},"order":127},{"id":"Message#timestamp","longname":"Message#timestamp","name":"timestamp","scope":"instance","kind":"member","description":"When the message was sent","memberof":"Message","type":[[[["Date"],""]]],"meta":{"lineno":45,"filename":"Message.js","path":"src/structures"},"order":128},{"id":"Message#editedTimestamp","longname":"Message#editedTimestamp","name":"editedTimestamp","scope":"instance","kind":"member","description":"If the message was edited, the timestamp at which it was last edited","memberof":"Message","type":[[[["Date"],""]]],"nullable":true,"meta":{"lineno":50,"filename":"Message.js","path":"src/structures"},"order":129},{"id":"Message#tts","longname":"Message#tts","name":"tts","scope":"instance","kind":"member","description":"Whether or not the message was Text-To-Speech","memberof":"Message","type":[[[["Boolean"],""]]],"meta":{"lineno":55,"filename":"Message.js","path":"src/structures"},"order":130},{"id":"Message#mentionEveryone","longname":"Message#mentionEveryone","name":"mentionEveryone","scope":"instance","kind":"member","description":"Whether the message mentioned @everyone or not","memberof":"Message","type":[[[["Boolean"],""]]],"meta":{"lineno":60,"filename":"Message.js","path":"src/structures"},"order":131},{"id":"Message#nonce","longname":"Message#nonce","name":"nonce","scope":"instance","kind":"member","description":"A random number used for checking message delivery","memberof":"Message","type":[[[["String"],""]]],"meta":{"lineno":65,"filename":"Message.js","path":"src/structures"},"order":132},{"id":"Message#embeds","longname":"Message#embeds","name":"embeds","scope":"instance","kind":"member","description":"A list of embeds in the message - e.g. YouTube Player","memberof":"Message","type":[[["Array",".<"],["Object",">"]]],"meta":{"lineno":70,"filename":"Message.js","path":"src/structures"},"order":133},{"id":"Message#attachments","longname":"Message#attachments","name":"attachments","scope":"instance","kind":"member","description":"A list of attachments in the message - e.g. Pictures","memberof":"Message","type":[[["Array",".<"],["Object",">"]]],"meta":{"lineno":75,"filename":"Message.js","path":"src/structures"},"order":134},{"id":"Message#mentions","longname":"Message#mentions","name":"mentions","scope":"instance","kind":"member","description":"A list of users mentioned in the message","memberof":"Message","type":[[["Array",".<"],["User",">"]]],"meta":{"lineno":80,"filename":"Message.js","path":"src/structures"},"order":135},{"id":"Message#id","longname":"Message#id","name":"id","scope":"instance","kind":"member","description":"The ID of the message (unique in the channel it was sent)","memberof":"Message","type":[[[["String"],""]]],"meta":{"lineno":85,"filename":"Message.js","path":"src/structures"},"order":136}],"events":[]},"PermissionOverwrites":{"meta":{"id":"PermissionOverwrites","longname":"PermissionOverwrites","name":"PermissionOverwrites","scope":"global","kind":"class","description":"Represents a permission overwrite for a Role or Member in a Guild Channel.","meta":{"lineno":4,"filename":"PermissionOverwrites.js","path":"src/structures"},"order":140},"functions":[],"properties":[{"id":"PermissionOverwrites#channel","longname":"PermissionOverwrites#channel","name":"channel","scope":"instance","kind":"member","description":"The GuildChannel this overwrite is for","memberof":"PermissionOverwrites","type":[[[["GuildChannel"],""]]],"meta":{"lineno":10,"filename":"PermissionOverwrites.js","path":"src/structures"},"order":141},{"id":"PermissionOverwrites#type","longname":"PermissionOverwrites#type","name":"type","scope":"instance","kind":"member","description":"The type of this overwrite","memberof":"PermissionOverwrites","type":[[[["String"],""]]],"meta":{"lineno":21,"filename":"PermissionOverwrites.js","path":"src/structures"},"order":142},{"id":"PermissionOverwrites#id","longname":"PermissionOverwrites#id","name":"id","scope":"instance","kind":"member","description":"The ID of this overwrite, either a User ID or a Role ID","memberof":"PermissionOverwrites","type":[[[["String"],""]]],"meta":{"lineno":26,"filename":"PermissionOverwrites.js","path":"src/structures"},"order":143}],"events":[]},"Role":{"meta":{"id":"Role","longname":"Role","name":"Role","scope":"global","kind":"class","description":"Represents a Role on Discord","meta":{"lineno":6,"filename":"Role.js","path":"src/structures"},"order":144},"functions":[{"id":"Role#delete","longname":"Role#delete","name":"delete","scope":"instance","kind":"function","description":"Deletes the role","memberof":"Role","params":[],"examples":["// delete a role\nrole.delete()\n .then(r => console.log(`Deleted role ${r}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Role",", "],["Error",">"]]],"meta":{"lineno":82,"filename":"Role.js","path":"src/structures"},"order":154},{"id":"Role#edit","longname":"Role#edit","name":"edit","scope":"instance","kind":"function","description":"Edits the role","memberof":"Role","params":[{"type":{"names":["RoleData"]},"description":"the new data for the role","name":"data"}],"examples":["// edit a role\nrole.edit({name: 'new role'})\n .then(r => console.log(`Edited role ${r}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Role",", "],["Error",">"]]],"meta":{"lineno":96,"filename":"Role.js","path":"src/structures"},"order":155},{"id":"Role#setName","longname":"Role#setName","name":"setName","scope":"instance","kind":"function","description":"Set a new name for the role","memberof":"Role","params":[{"type":{"names":["String"]},"description":"the new name of the role","name":"name"}],"examples":["// set the name of the role\nrole.setName('new role')\n .then(r => console.log(`Edited name of role ${r}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Role",", "],["Error",">"]]],"meta":{"lineno":110,"filename":"Role.js","path":"src/structures"},"order":156},{"id":"Role#setColor","longname":"Role#setColor","name":"setColor","scope":"instance","kind":"function","description":"Set a new color for the role","memberof":"Role","params":[{"type":{"names":["Number"]},"description":"the new color for the role","name":"color"}],"examples":["// set the color of a role\nrole.setColor(parseInt('FF0000', 16))\n .then(r => console.log(`Set color of role ${r}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Role",", "],["Error",">"]]],"meta":{"lineno":124,"filename":"Role.js","path":"src/structures"},"order":157},{"id":"Role#setHoist","longname":"Role#setHoist","name":"setHoist","scope":"instance","kind":"function","description":"Set whether or not the role should be hoisted","memberof":"Role","params":[{"type":{"names":["Boolean"]},"description":"whether or not to hoist the role","name":"hoist"}],"examples":["// set the hoist of the role\nrole.setHoist(true)\n .then(r => console.log(`Role hoisted: ${r.hoist}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Role",", "],["Error",">"]]],"meta":{"lineno":138,"filename":"Role.js","path":"src/structures"},"order":158},{"id":"Role#setPosition","longname":"Role#setPosition","name":"setPosition","scope":"instance","kind":"function","description":"Set the position of the role","memberof":"Role","params":[{"type":{"names":["Number"]},"description":"the position of the role","name":"position"}],"examples":["// set the position of the role\nrole.setPosition(1)\n .then(r => console.log(`Role position: ${r.position}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Role",", "],["Error",">"]]],"meta":{"lineno":152,"filename":"Role.js","path":"src/structures"},"order":159},{"id":"Role#setPermissions","longname":"Role#setPermissions","name":"setPermissions","scope":"instance","kind":"function","description":"Set the permissions of the role","memberof":"Role","params":[{"type":{"names":["Array."]},"description":"the permissions of the role","name":"permissions"}],"examples":["// set the permissions of the role\nrole.setPermissions(['KICK_MEMBERS', 'BAN_MEMBERS'])\n .then(r => console.log(`Role updated ${r}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Role",", "],["Error",">"]]],"meta":{"lineno":166,"filename":"Role.js","path":"src/structures"},"order":160},{"id":"Role#serialize","longname":"Role#serialize","name":"serialize","scope":"instance","kind":"function","description":"Get an object mapping permission names to whether or not the role enables that permission","memberof":"Role","params":[],"examples":["// print the serialized role\nconsole.log(role.serialize());"],"returns":[[["Object",".<"],["String",", "],["Boolean",">"]]],"meta":{"lineno":177,"filename":"Role.js","path":"src/structures"},"order":161},{"id":"Role#hasPermission","longname":"Role#hasPermission","name":"hasPermission","scope":"instance","kind":"function","description":"Whether or not the role includes the given permission","memberof":"Role","params":[{"type":{"names":["String"]},"description":"the name of the permission to test","name":"permission"},{"type":{"names":["Boolean"]},"optional":true,"defaultvalue":false,"description":"whether or not the inclusion of the permission is explicit","name":"explicit"}],"examples":["// see if a role can ban a member\nif (role.hasPermission('BAN_MEMBERS')) {\n console.log('This role can ban members');\n} else {\n console.log('This role can\\'t ban members');\n}"],"returns":[[[["Boolean"],""]]],"meta":{"lineno":199,"filename":"Role.js","path":"src/structures"},"order":162}],"properties":[{"id":"Role#guild","longname":"Role#guild","name":"guild","scope":"instance","kind":"member","description":"The guild that the role belongs to","memberof":"Role","type":[[[["Guild"],""]]],"meta":{"lineno":12,"filename":"Role.js","path":"src/structures"},"order":145},{"id":"Role#client","longname":"Role#client","name":"client","scope":"instance","kind":"member","description":"The client that instantiated the role","memberof":"Role","type":[[[["Client"],""]]],"meta":{"lineno":17,"filename":"Role.js","path":"src/structures"},"order":146},{"id":"Role#id","longname":"Role#id","name":"id","scope":"instance","kind":"member","description":"The ID of the role (unique to the guild it is part of)","memberof":"Role","type":[[[["String"],""]]],"meta":{"lineno":40,"filename":"Role.js","path":"src/structures"},"order":147},{"id":"Role#name","longname":"Role#name","name":"name","scope":"instance","kind":"member","description":"The name of the role","memberof":"Role","type":[[[["String"],""]]],"meta":{"lineno":45,"filename":"Role.js","path":"src/structures"},"order":148},{"id":"Role#color","longname":"Role#color","name":"color","scope":"instance","kind":"member","description":"The base 10 color of the role","memberof":"Role","type":[[[["Number"],""]]],"meta":{"lineno":50,"filename":"Role.js","path":"src/structures"},"order":149},{"id":"Role#hoist","longname":"Role#hoist","name":"hoist","scope":"instance","kind":"member","description":"If true, users that are part of this role will appear in a separate category in the users list","memberof":"Role","type":[[[["Boolean"],""]]],"meta":{"lineno":55,"filename":"Role.js","path":"src/structures"},"order":150},{"id":"Role#position","longname":"Role#position","name":"position","scope":"instance","kind":"member","description":"The position of the role in the role manager","memberof":"Role","type":[[[["Number"],""]]],"meta":{"lineno":60,"filename":"Role.js","path":"src/structures"},"order":151},{"id":"Role#permissions","longname":"Role#permissions","name":"permissions","scope":"instance","kind":"member","description":"The evaluated permissions number","memberof":"Role","type":[[[["Number"],""]]],"meta":{"lineno":65,"filename":"Role.js","path":"src/structures"},"order":152},{"id":"Role#managed","longname":"Role#managed","name":"managed","scope":"instance","kind":"member","description":"Whether or not the role is managed by an external service","memberof":"Role","type":[[[["Boolean"],""]]],"meta":{"lineno":70,"filename":"Role.js","path":"src/structures"},"order":153}],"events":[]},"TextChannel":{"meta":{"id":"TextChannel","longname":"TextChannel","name":"TextChannel","scope":"global","kind":"class","augments":["GuildChannel"],"implements":["TextBasedChannel"],"description":"Represents a Server Text Channel on Discord.","meta":{"lineno":9,"filename":"TextChannel.js","path":"src/structures"},"order":163},"functions":[{"id":"TextChannel#sendMessage","longname":"TextChannel#sendMessage","name":"sendMessage","scope":"instance","kind":"function","implements":["TextBasedChannel#sendMessage"],"description":"Send a message to this channel","memberof":"TextChannel","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"},{"type":{"names":["MessageOptions"]},"optional":true,"defaultvalue":"{}","description":"the options to provide","name":"options"}],"examples":["// send a message\nchannel.sendMessage('hello!')\n .then(message => console.log(`Sent message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":25,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":243},{"id":"TextChannel#sendTTSMessage","longname":"TextChannel#sendTTSMessage","name":"sendTTSMessage","scope":"instance","kind":"function","implements":["TextBasedChannel#sendTTSMessage"],"description":"Send a text-to-speech message to this channel","memberof":"TextChannel","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"}],"examples":["// send a TTS message\nchannel.sendTTSMessage('hello!')\n .then(message => console.log(`Sent tts message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":38,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":244},{"id":"TextChannel#equals","longname":"TextChannel#equals","name":"equals","scope":"instance","kind":"function","inherits":"GuildChannel#equals","inherited":true,"description":"Checks if this channel has the same type, topic, position, name, overwrites and ID as another channel.\nIn most cases, a simple `channel.id === channel2.id` will do, and is much faster too.","memberof":"TextChannel","params":[{"type":{"names":["GuildChannel"]},"description":"the channel to compare this channel to","name":"channel"}],"returns":[[[["Boolean"],""]]],"meta":{"lineno":76,"filename":"GuildChannel.js","path":"src/structures"},"order":256},{"id":"TextChannel#permissionsFor","longname":"TextChannel#permissionsFor","name":"permissionsFor","scope":"instance","kind":"function","inherits":"GuildChannel#permissionsFor","inherited":true,"description":"Gets the overall set of permissions for a user in this channel, taking into account roles and permission\noverwrites.","memberof":"TextChannel","params":[{"type":{"names":["GuildMemberResolvable"]},"description":"the user that you want to obtain the overall permissions for","name":"member"}],"returns":[[[["EvaluatedPermissions"],""]]],"meta":{"lineno":108,"filename":"GuildChannel.js","path":"src/structures"},"order":257},{"id":"TextChannel#setName","longname":"TextChannel#setName","name":"setName","scope":"instance","kind":"function","inherits":"GuildChannel#setName","inherited":true,"description":"Set a new name for the Guild Channel","memberof":"TextChannel","params":[{"type":{"names":["String"]},"description":"the new name for the guild channel","name":"name"}],"examples":["// set a new channel name\nchannel.setName('not general')\n .then(newChannel => console.log(`Channel's new name is ${newChannel.name}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":178,"filename":"GuildChannel.js","path":"src/structures"},"order":258},{"id":"TextChannel#setPosition","longname":"TextChannel#setPosition","name":"setPosition","scope":"instance","kind":"function","inherits":"GuildChannel#setPosition","inherited":true,"description":"Set a new position for the Guild Channel","memberof":"TextChannel","params":[{"type":{"names":["Number"]},"description":"the new position for the guild channel","name":"position"}],"examples":["// set a new channel position\nchannel.setPosition(2)\n .then(newChannel => console.log(`Channel's new position is ${newChannel.position}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":192,"filename":"GuildChannel.js","path":"src/structures"},"order":259},{"id":"TextChannel#setTopic","longname":"TextChannel#setTopic","name":"setTopic","scope":"instance","kind":"function","inherits":"GuildChannel#setTopic","inherited":true,"description":"Set a new topic for the Guild Channel","memberof":"TextChannel","params":[{"type":{"names":["String"]},"description":"the new topic for the guild channel","name":"topic"}],"examples":["// set a new channel topic\nchannel.setTopic('needs more rate limiting')\n .then(newChannel => console.log(`Channel's new topic is ${newChannel.topic}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":206,"filename":"GuildChannel.js","path":"src/structures"},"order":260},{"id":"TextChannel#toString","longname":"TextChannel#toString","name":"toString","scope":"instance","kind":"function","inherits":"GuildChannel#toString","inherited":true,"description":"When concatenated with a String, this automatically concatenates the Channel's name instead of the Channel object.","memberof":"TextChannel","params":[],"examples":["// Outputs: Hello from general\nconsole.log(`Hello from ${channel}`);","// Outputs: Hello from general\nconsole.log('Hello from ' + ${channel});"],"returns":[[[["String"],""]]],"meta":{"lineno":220,"filename":"GuildChannel.js","path":"src/structures"},"order":261}],"properties":[{"id":"TextChannel#messages","longname":"TextChannel#messages","name":"messages","scope":"instance","kind":"member","implements":["TextBasedChannel#messages"],"description":"A Map containing the messages sent to this channel.","memberof":"TextChannel","type":[[["Map",".<"],["String",", "],["Message",">"]]],"meta":{"lineno":12,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":242},{"id":"TextChannel#type","longname":"TextChannel#type","name":"type","scope":"instance","kind":"member","inherits":"GuildChannel#type","inherited":true,"description":"The type of the Guild Channel","memberof":"TextChannel","type":[[[["Number"],""]]],"meta":{"lineno":36,"filename":"GuildChannel.js","path":"src/structures"},"order":250},{"id":"TextChannel#topic","longname":"TextChannel#topic","name":"topic","scope":"instance","kind":"member","inherits":"GuildChannel#topic","inherited":true,"description":"The topic of the Guild Channel, if there is one.","memberof":"TextChannel","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":41,"filename":"GuildChannel.js","path":"src/structures"},"order":251},{"id":"TextChannel#position","longname":"TextChannel#position","name":"position","scope":"instance","kind":"member","inherits":"GuildChannel#position","inherited":true,"description":"The position of the channel in the list.","memberof":"TextChannel","type":[[[["Number"],""]]],"meta":{"lineno":46,"filename":"GuildChannel.js","path":"src/structures"},"order":252},{"id":"TextChannel#name","longname":"TextChannel#name","name":"name","scope":"instance","kind":"member","inherits":"GuildChannel#name","inherited":true,"description":"The name of the Guild Channel","memberof":"TextChannel","type":[[[["String"],""]]],"meta":{"lineno":51,"filename":"GuildChannel.js","path":"src/structures"},"order":253},{"id":"TextChannel#lastMessageID","longname":"TextChannel#lastMessageID","name":"lastMessageID","scope":"instance","kind":"member","inherits":"GuildChannel#lastMessageID","inherited":true,"description":"The ID of the last message in the channel, if one was sent.","memberof":"TextChannel","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":56,"filename":"GuildChannel.js","path":"src/structures"},"order":254},{"id":"TextChannel#permissionOverwrites","longname":"TextChannel#permissionOverwrites","name":"permissionOverwrites","scope":"instance","kind":"member","inherits":"GuildChannel#permissionOverwrites","inherited":true,"description":"A list of permission overwrites in this channel for roles and users.","memberof":"TextChannel","type":[[["Array",".<"],["PermissionOverwrites",">"]]],"meta":{"lineno":62,"filename":"GuildChannel.js","path":"src/structures"},"order":255}],"events":[]},"User":{"meta":{"id":"User","longname":"User","name":"User","scope":"global","kind":"class","implements":["TextBasedChannel"],"description":"Represents a User on Discord.","meta":{"lineno":7,"filename":"User.js","path":"src/structures"},"order":164},"functions":[{"id":"User#toString","longname":"User#toString","name":"toString","scope":"instance","kind":"function","description":"When concatenated with a String, this automatically concatenates the User's mention instead of the User object.","memberof":"User","params":[],"examples":["// logs: Hello from <@123456789>!\nconsole.log(`Hello from ${user}!`);"],"returns":[[[["String"],""]]],"meta":{"lineno":64,"filename":"User.js","path":"src/structures"},"order":172},{"id":"User#deleteDM","longname":"User#deleteDM","name":"deleteDM","scope":"instance","kind":"function","description":"Deletes a DM Channel (if one exists) between the Client and the User. Resolves with the Channel if successful.","memberof":"User","params":[],"returns":[[["Promise",".<"],["DMChannel",">"]]],"meta":{"lineno":72,"filename":"User.js","path":"src/structures"},"order":173},{"id":"User#equals","longname":"User#equals","name":"equals","scope":"instance","kind":"function","description":"Checks if the user is equal to another. It compares username, ID, discriminator, status and the game being played.\nIt is recommended to compare equality by using `user.id === user2.id` unless you want to compare all properties.","memberof":"User","params":[{"type":{"names":["User"]},"description":"the user to compare","name":"user"}],"returns":[[[["Boolean"],""]]],"meta":{"lineno":82,"filename":"User.js","path":"src/structures"},"order":174},{"id":"User#sendMessage","longname":"User#sendMessage","name":"sendMessage","scope":"instance","kind":"function","implements":["TextBasedChannel#sendMessage"],"description":"Send a message to this channel","memberof":"User","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"},{"type":{"names":["MessageOptions"]},"optional":true,"defaultvalue":"{}","description":"the options to provide","name":"options"}],"examples":["// send a message\nchannel.sendMessage('hello!')\n .then(message => console.log(`Sent message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":25,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":237},{"id":"User#sendTTSMessage","longname":"User#sendTTSMessage","name":"sendTTSMessage","scope":"instance","kind":"function","implements":["TextBasedChannel#sendTTSMessage"],"description":"Send a text-to-speech message to this channel","memberof":"User","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"}],"examples":["// send a TTS message\nchannel.sendTTSMessage('hello!')\n .then(message => console.log(`Sent tts message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":38,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":238}],"properties":[{"id":"User#username","longname":"User#username","name":"username","scope":"instance","kind":"member","description":"The username of the User","memberof":"User","type":[[[["String"],""]]],"meta":{"lineno":20,"filename":"User.js","path":"src/structures"},"order":165},{"id":"User#id","longname":"User#id","name":"id","scope":"instance","kind":"member","description":"The ID of the User","memberof":"User","type":[[[["String"],""]]],"meta":{"lineno":25,"filename":"User.js","path":"src/structures"},"order":166},{"id":"User#discriminator","longname":"User#discriminator","name":"discriminator","scope":"instance","kind":"member","description":"A discriminator based on username for the User","memberof":"User","type":[[[["String"],""]]],"meta":{"lineno":30,"filename":"User.js","path":"src/structures"},"order":167},{"id":"User#avatar","longname":"User#avatar","name":"avatar","scope":"instance","kind":"member","description":"The ID of the user's avatar","memberof":"User","type":[[[["String"],""]]],"meta":{"lineno":35,"filename":"User.js","path":"src/structures"},"order":168},{"id":"User#bot","longname":"User#bot","name":"bot","scope":"instance","kind":"member","description":"Whether or not the User is a Bot.","memberof":"User","type":[[[["Boolean"],""]]],"meta":{"lineno":40,"filename":"User.js","path":"src/structures"},"order":169},{"id":"User#status","longname":"User#status","name":"status","scope":"instance","kind":"member","description":"The status of the user:\n\n* **`online`** - user is online\n* **`offline`** - user is offline\n* **`idle`** - user is AFK","memberof":"User","type":[[[["String"],""]]],"meta":{"lineno":49,"filename":"User.js","path":"src/structures"},"order":170},{"id":"User#game","longname":"User#game","name":"game","scope":"instance","kind":"member","description":"The game that the user is playing, `null` if they aren't playing a game.","memberof":"User","type":[[[["String"],""]]],"meta":{"lineno":54,"filename":"User.js","path":"src/structures"},"order":171}],"events":[]},"VoiceChannel":{"meta":{"id":"VoiceChannel","longname":"VoiceChannel","name":"VoiceChannel","scope":"global","kind":"class","augments":["GuildChannel"],"description":"Represents a Server Voice Channel on Discord.","meta":{"lineno":7,"filename":"VoiceChannel.js","path":"src/structures"},"order":175},"functions":[{"id":"VoiceChannel#setBitrate","longname":"VoiceChannel#setBitrate","name":"setBitrate","scope":"instance","kind":"function","description":"Sets the bitrate of the channel","memberof":"VoiceChannel","params":[{"type":{"names":["Number"]},"description":"the new bitrate","name":"bitrate"}],"examples":["// set the bitrate of a voice channel\nvoiceChannel.setBitrate(48000)\n .then(vc => console.log(`Set bitrate to ${vc.bitrate} for ${vc.name}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["VoiceChannel",">"]]],"meta":{"lineno":41,"filename":"VoiceChannel.js","path":"src/structures"},"order":179},{"id":"VoiceChannel#equals","longname":"VoiceChannel#equals","name":"equals","scope":"instance","kind":"function","inherits":"GuildChannel#equals","inherited":true,"description":"Checks if this channel has the same type, topic, position, name, overwrites and ID as another channel.\nIn most cases, a simple `channel.id === channel2.id` will do, and is much faster too.","memberof":"VoiceChannel","params":[{"type":{"names":["GuildChannel"]},"description":"the channel to compare this channel to","name":"channel"}],"returns":[[[["Boolean"],""]]],"meta":{"lineno":76,"filename":"GuildChannel.js","path":"src/structures"},"order":268},{"id":"VoiceChannel#permissionsFor","longname":"VoiceChannel#permissionsFor","name":"permissionsFor","scope":"instance","kind":"function","inherits":"GuildChannel#permissionsFor","inherited":true,"description":"Gets the overall set of permissions for a user in this channel, taking into account roles and permission\noverwrites.","memberof":"VoiceChannel","params":[{"type":{"names":["GuildMemberResolvable"]},"description":"the user that you want to obtain the overall permissions for","name":"member"}],"returns":[[[["EvaluatedPermissions"],""]]],"meta":{"lineno":108,"filename":"GuildChannel.js","path":"src/structures"},"order":269},{"id":"VoiceChannel#setName","longname":"VoiceChannel#setName","name":"setName","scope":"instance","kind":"function","inherits":"GuildChannel#setName","inherited":true,"description":"Set a new name for the Guild Channel","memberof":"VoiceChannel","params":[{"type":{"names":["String"]},"description":"the new name for the guild channel","name":"name"}],"examples":["// set a new channel name\nchannel.setName('not general')\n .then(newChannel => console.log(`Channel's new name is ${newChannel.name}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":178,"filename":"GuildChannel.js","path":"src/structures"},"order":270},{"id":"VoiceChannel#setPosition","longname":"VoiceChannel#setPosition","name":"setPosition","scope":"instance","kind":"function","inherits":"GuildChannel#setPosition","inherited":true,"description":"Set a new position for the Guild Channel","memberof":"VoiceChannel","params":[{"type":{"names":["Number"]},"description":"the new position for the guild channel","name":"position"}],"examples":["// set a new channel position\nchannel.setPosition(2)\n .then(newChannel => console.log(`Channel's new position is ${newChannel.position}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":192,"filename":"GuildChannel.js","path":"src/structures"},"order":271},{"id":"VoiceChannel#setTopic","longname":"VoiceChannel#setTopic","name":"setTopic","scope":"instance","kind":"function","inherits":"GuildChannel#setTopic","inherited":true,"description":"Set a new topic for the Guild Channel","memberof":"VoiceChannel","params":[{"type":{"names":["String"]},"description":"the new topic for the guild channel","name":"topic"}],"examples":["// set a new channel topic\nchannel.setTopic('needs more rate limiting')\n .then(newChannel => console.log(`Channel's new topic is ${newChannel.topic}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["GuildChannel",">"]]],"meta":{"lineno":206,"filename":"GuildChannel.js","path":"src/structures"},"order":272},{"id":"VoiceChannel#toString","longname":"VoiceChannel#toString","name":"toString","scope":"instance","kind":"function","inherits":"GuildChannel#toString","inherited":true,"description":"When concatenated with a String, this automatically concatenates the Channel's name instead of the Channel object.","memberof":"VoiceChannel","params":[],"examples":["// Outputs: Hello from general\nconsole.log(`Hello from ${channel}`);","// Outputs: Hello from general\nconsole.log('Hello from ' + ${channel});"],"returns":[[[["String"],""]]],"meta":{"lineno":220,"filename":"GuildChannel.js","path":"src/structures"},"order":273}],"properties":[{"id":"VoiceChannel#members","longname":"VoiceChannel#members","name":"members","scope":"instance","kind":"member","description":"The members in this Voice Channel.","memberof":"VoiceChannel","type":[[["Map",".<"],["String",", "],["GuildMember",">"]]],"meta":{"lineno":14,"filename":"VoiceChannel.js","path":"src/structures"},"order":176},{"id":"VoiceChannel#bitrate","longname":"VoiceChannel#bitrate","name":"bitrate","scope":"instance","kind":"member","description":"The bitrate of this voice channel","memberof":"VoiceChannel","type":[[[["Number"],""]]],"meta":{"lineno":23,"filename":"VoiceChannel.js","path":"src/structures"},"order":177},{"id":"VoiceChannel#userLimit","longname":"VoiceChannel#userLimit","name":"userLimit","scope":"instance","kind":"member","description":"The maximum amount of users allowed in this channel - 0 means unlimited.","memberof":"VoiceChannel","type":[[[["Number"],""]]],"meta":{"lineno":28,"filename":"VoiceChannel.js","path":"src/structures"},"order":178},{"id":"VoiceChannel#type","longname":"VoiceChannel#type","name":"type","scope":"instance","kind":"member","inherits":"GuildChannel#type","inherited":true,"description":"The type of the Guild Channel","memberof":"VoiceChannel","type":[[[["Number"],""]]],"meta":{"lineno":36,"filename":"GuildChannel.js","path":"src/structures"},"order":262},{"id":"VoiceChannel#topic","longname":"VoiceChannel#topic","name":"topic","scope":"instance","kind":"member","inherits":"GuildChannel#topic","inherited":true,"description":"The topic of the Guild Channel, if there is one.","memberof":"VoiceChannel","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":41,"filename":"GuildChannel.js","path":"src/structures"},"order":263},{"id":"VoiceChannel#position","longname":"VoiceChannel#position","name":"position","scope":"instance","kind":"member","inherits":"GuildChannel#position","inherited":true,"description":"The position of the channel in the list.","memberof":"VoiceChannel","type":[[[["Number"],""]]],"meta":{"lineno":46,"filename":"GuildChannel.js","path":"src/structures"},"order":264},{"id":"VoiceChannel#name","longname":"VoiceChannel#name","name":"name","scope":"instance","kind":"member","inherits":"GuildChannel#name","inherited":true,"description":"The name of the Guild Channel","memberof":"VoiceChannel","type":[[[["String"],""]]],"meta":{"lineno":51,"filename":"GuildChannel.js","path":"src/structures"},"order":265},{"id":"VoiceChannel#lastMessageID","longname":"VoiceChannel#lastMessageID","name":"lastMessageID","scope":"instance","kind":"member","inherits":"GuildChannel#lastMessageID","inherited":true,"description":"The ID of the last message in the channel, if one was sent.","memberof":"VoiceChannel","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":56,"filename":"GuildChannel.js","path":"src/structures"},"order":266},{"id":"VoiceChannel#permissionOverwrites","longname":"VoiceChannel#permissionOverwrites","name":"permissionOverwrites","scope":"instance","kind":"member","inherits":"GuildChannel#permissionOverwrites","inherited":true,"description":"A list of permission overwrites in this channel for roles and users.","memberof":"VoiceChannel","type":[[["Array",".<"],["PermissionOverwrites",">"]]],"meta":{"lineno":62,"filename":"GuildChannel.js","path":"src/structures"},"order":267}],"events":[]},"RequestHandler":{"meta":{"id":"RequestHandler","longname":"RequestHandler","name":"RequestHandler","scope":"global","kind":"class","description":"A base class for different types of rate limiting handlers for the REST API.","access":"private","meta":{"lineno":5,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":189},"functions":[{"id":"RequestHandler#push","longname":"RequestHandler#push","name":"push","scope":"instance","kind":"function","description":"Push a new API request into this bucket","memberof":"RequestHandler","params":[{"type":{"names":["APIRequest"]},"description":"the new request to push into the queue","name":"request"}],"meta":{"lineno":36,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":193,"returns":[[[["null"],""]]]},{"id":"RequestHandler#handle","longname":"RequestHandler#handle","name":"handle","scope":"instance","kind":"function","description":"Attempts to get this RequestHandler to process its current queue","memberof":"RequestHandler","params":[],"meta":{"lineno":43,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":194,"returns":[[[["null"],""]]]}],"properties":[{"id":"RequestHandler#restManager","longname":"RequestHandler#restManager","name":"restManager","scope":"instance","kind":"member","description":"The RESTManager that instantiated this RequestHandler","memberof":"RequestHandler","type":[[[["RESTManager"],""]]],"meta":{"lineno":11,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":190},{"id":"RequestHandler#queue","longname":"RequestHandler#queue","name":"queue","scope":"instance","kind":"member","description":"A list of requests that have yet to be processed.","memberof":"RequestHandler","type":[[["Array",".<"],["APIRequest",">"]]],"meta":{"lineno":17,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":191},{"id":"RequestHandler#globalLimit","longname":"RequestHandler#globalLimit","name":"globalLimit","scope":"instance","kind":"member","description":"Whether or not the client is being rate limited on every endpoint.","memberof":"RequestHandler","params":[],"type":[[[["Boolean"],""]]],"meta":{"lineno":24,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":192}],"events":[]},"SequentialRequestHandler":{"meta":{"id":"SequentialRequestHandler","longname":"SequentialRequestHandler","name":"SequentialRequestHandler","scope":"global","kind":"class","augments":["RequestHandler"],"description":"Handles API Requests sequentially, i.e. we wait until the current request is finished before moving onto\nthe next. This plays a _lot_ nicer in terms of avoiding 429's when there is more than one session of the account,\nbut it can be slower.","access":"private","meta":{"lineno":10,"filename":"Sequential.js","path":"src/client/rest/RequestHandlers"},"order":195},"functions":[{"id":"SequentialRequestHandler#execute","longname":"SequentialRequestHandler#execute","name":"execute","scope":"instance","kind":"function","description":"Performs a request then resolves a promise to indicate its readiness for a new request","memberof":"SequentialRequestHandler","params":[{"type":{"names":["APIRequest"]},"description":"the item to execute","name":"item"}],"returns":[[["Promise",".<"],["Object",", "],["Error",">"]]],"meta":{"lineno":39,"filename":"Sequential.js","path":"src/client/rest/RequestHandlers"},"order":198},{"id":"SequentialRequestHandler#push","longname":"SequentialRequestHandler#push","name":"push","scope":"instance","kind":"function","inherits":"RequestHandler#push","inherited":true,"overrides":"RequestHandler#push","description":"Push a new API request into this bucket","memberof":"SequentialRequestHandler","params":[{"type":{"names":["APIRequest"]},"description":"the new request to push into the queue","name":"request"}],"meta":{"lineno":36,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":292,"returns":[[[["null"],""]]]},{"id":"SequentialRequestHandler#handle","longname":"SequentialRequestHandler#handle","name":"handle","scope":"instance","kind":"function","inherits":"RequestHandler#handle","inherited":true,"overrides":"RequestHandler#handle","description":"Attempts to get this RequestHandler to process its current queue","memberof":"SequentialRequestHandler","params":[],"meta":{"lineno":43,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":293,"returns":[[[["null"],""]]]}],"properties":[{"id":"SequentialRequestHandler#waiting","longname":"SequentialRequestHandler#waiting","name":"waiting","scope":"instance","kind":"member","description":"Whether this rate limiter is waiting for a response from a request","memberof":"SequentialRequestHandler","type":[[[["Boolean"],""]]],"meta":{"lineno":19,"filename":"Sequential.js","path":"src/client/rest/RequestHandlers"},"order":196},{"id":"SequentialRequestHandler#timeDifference","longname":"SequentialRequestHandler#timeDifference","name":"timeDifference","scope":"instance","kind":"member","description":"The time difference between Discord's Dates and the local computer's Dates. A positive number means the local\ncomputer's time is ahead of Discord's.","memberof":"SequentialRequestHandler","type":[[[["Number"],""]]],"meta":{"lineno":26,"filename":"Sequential.js","path":"src/client/rest/RequestHandlers"},"order":197},{"id":"SequentialRequestHandler#restManager","longname":"SequentialRequestHandler#restManager","name":"restManager","scope":"instance","kind":"member","inherits":"RequestHandler#restManager","inherited":true,"description":"The RESTManager that instantiated this RequestHandler","memberof":"SequentialRequestHandler","type":[[[["RESTManager"],""]]],"meta":{"lineno":11,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":289},{"id":"SequentialRequestHandler#queue","longname":"SequentialRequestHandler#queue","name":"queue","scope":"instance","kind":"member","inherits":"RequestHandler#queue","inherited":true,"description":"A list of requests that have yet to be processed.","memberof":"SequentialRequestHandler","type":[[["Array",".<"],["APIRequest",">"]]],"meta":{"lineno":17,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":290},{"id":"SequentialRequestHandler#globalLimit","longname":"SequentialRequestHandler#globalLimit","name":"globalLimit","scope":"instance","kind":"member","inherits":"RequestHandler#globalLimit","inherited":true,"overrides":"RequestHandler#globalLimit","description":"Whether or not the client is being rate limited on every endpoint.","memberof":"SequentialRequestHandler","params":[],"type":[[[["Boolean"],""]]],"meta":{"lineno":24,"filename":"RequestHandler.js","path":"src/client/rest/RequestHandlers"},"order":291}],"events":[]},"WebSocketManager":{"meta":{"id":"WebSocketManager","longname":"WebSocketManager","name":"WebSocketManager","scope":"global","kind":"class","description":"The WebSocket Manager of the Client","access":"private","meta":{"lineno":10,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":212},"functions":[{"id":"WebSocketManager#connect","longname":"WebSocketManager#connect","name":"connect","scope":"instance","kind":"function","description":"Connects the client to a given gateway","memberof":"WebSocketManager","params":[{"type":{"names":["String"]},"description":"the gateway to connect to","name":"gateway"}],"returns":[[[["null"],""]]],"meta":{"lineno":54,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":219},{"id":"WebSocketManager#send","longname":"WebSocketManager#send","name":"send","scope":"instance","kind":"function","description":"Sends a packet to the gateway","memberof":"WebSocketManager","params":[{"type":{"names":["Object"]},"description":"An object that can be JSON stringified","name":"packet"}],"returns":[[[["null"],""]]],"meta":{"lineno":76,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":222},{"id":"WebSocketManager#eventOpen","longname":"WebSocketManager#eventOpen","name":"eventOpen","scope":"instance","kind":"function","description":"Run whenever the gateway connections opens up","memberof":"WebSocketManager","params":[],"returns":[[[["null"],""]]],"meta":{"lineno":86,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":223},{"id":"WebSocketManager#_sendResume","longname":"WebSocketManager#_sendResume","name":"_sendResume","scope":"instance","kind":"function","description":"Sends a gatway resume packet, in cases of unexpected disconnections.","memberof":"WebSocketManager","params":[],"returns":[[[["null"],""]]],"meta":{"lineno":98,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":224},{"id":"WebSocketManager#_sendNewIdentify","longname":"WebSocketManager#_sendNewIdentify","name":"_sendNewIdentify","scope":"instance","kind":"function","description":"Sends a new identification packet, in cases of new connections or failed reconnections.","memberof":"WebSocketManager","params":[],"returns":[[[["null"],""]]],"meta":{"lineno":115,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":225},{"id":"WebSocketManager#eventClose","longname":"WebSocketManager#eventClose","name":"eventClose","scope":"instance","kind":"function","description":"Run whenever the connection to the gateway is closed, it will try to reconnect the client.","memberof":"WebSocketManager","params":[],"returns":[[[["null"],""]]],"meta":{"lineno":130,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":226},{"id":"WebSocketManager#eventMessage","longname":"WebSocketManager#eventMessage","name":"eventMessage","scope":"instance","kind":"function","description":"Run whenever a message is received from the WebSocket. Returns `true` if the message\nwas handled properly.","memberof":"WebSocketManager","params":[{"type":{"names":["Object"]},"description":"the received websocket data","name":"data"}],"returns":[[[["Boolean"],""]]],"meta":{"lineno":142,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":227},{"id":"WebSocketManager#eventError","longname":"WebSocketManager#eventError","name":"eventError","scope":"instance","kind":"function","description":"Run whenever an error occurs with the WebSocket connection. Tries to reconnect","memberof":"WebSocketManager","params":[],"returns":[[[["null"],""]]],"meta":{"lineno":166,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":228},{"id":"WebSocketManager#checkIfReady","longname":"WebSocketManager#checkIfReady","name":"checkIfReady","scope":"instance","kind":"function","description":"Runs on new packets before `READY` to see if the Client is ready yet, if it is prepares\nthe `READY` event.","memberof":"WebSocketManager","params":[],"returns":[[[["null"],""]]],"meta":{"lineno":176,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":229},{"id":"WebSocketManager#tryReconnect","longname":"WebSocketManager#tryReconnect","name":"tryReconnect","scope":"instance","kind":"function","description":"Tries to reconnect the client, changing the status to Constants.Status.RECONNECTING.","memberof":"WebSocketManager","params":[],"returns":[[[["null"],""]]],"meta":{"lineno":200,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":231}],"properties":[{"id":"WebSocketManager#client","longname":"WebSocketManager#client","name":"client","scope":"instance","kind":"member","description":"The Client that instantiated this WebSocketManager","memberof":"WebSocketManager","type":[[[["Client"],""]]],"meta":{"lineno":17,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":213},{"id":"WebSocketManager#packetManager","longname":"WebSocketManager#packetManager","name":"packetManager","scope":"instance","kind":"member","description":"A WebSocket Packet manager, it handles all the messages","memberof":"WebSocketManager","type":[[[["PacketManager"],""]]],"meta":{"lineno":23,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":214},{"id":"WebSocketManager#status","longname":"WebSocketManager#status","name":"status","scope":"instance","kind":"member","description":"The status of the WebSocketManager, a type of Constants.Status. It defaults to IDLE.","memberof":"WebSocketManager","type":[[[["Number"],""]]],"meta":{"lineno":28,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":215},{"id":"WebSocketManager#sessionID","longname":"WebSocketManager#sessionID","name":"sessionID","scope":"instance","kind":"member","description":"The session ID of the connection, null if not yet available.","memberof":"WebSocketManager","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":34,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":216},{"id":"WebSocketManager#sequence","longname":"WebSocketManager#sequence","name":"sequence","scope":"instance","kind":"member","description":"The packet count of the client, null if not yet available.","memberof":"WebSocketManager","type":[[[["Number"],""]]],"nullable":true,"meta":{"lineno":40,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":217},{"id":"WebSocketManager#gateway","longname":"WebSocketManager#gateway","name":"gateway","scope":"instance","kind":"member","description":"The gateway address for this WebSocket connection, null if not yet available.","memberof":"WebSocketManager","type":[[[["String"],""]]],"nullable":true,"meta":{"lineno":46,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":218},{"id":"WebSocketManager#status","longname":"WebSocketManager#status","name":"status","scope":"instance","kind":"member","description":"The status of the Client's connection, a type of Constants.Status","memberof":"WebSocketManager","type":[[[["Number"],""]]],"meta":{"lineno":59,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":220},{"id":"WebSocketManager#ws","longname":"WebSocketManager#ws","name":"ws","scope":"instance","kind":"member","description":"The WebSocket connection to the gateway","memberof":"WebSocketManager","type":[[[["WebSocket"],""]]],"nullable":true,"meta":{"lineno":64,"filename":"WebSocketManager.js","path":"src/client/websocket"},"order":221}],"events":[]}},"interfaces":{"TextBasedChannel":{"meta":{"id":"TextBasedChannel","longname":"TextBasedChannel","name":"TextBasedChannel","scope":"global","kind":"interface","classdesc":"Interface for classes that have text-channel-like features","params":[],"meta":{"lineno":5,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":233},"functions":[{"id":"TextBasedChannel#sendMessage","longname":"TextBasedChannel#sendMessage","name":"sendMessage","scope":"instance","kind":"function","description":"Send a message to this channel","memberof":"TextBasedChannel","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"},{"type":{"names":["MessageOptions"]},"optional":true,"defaultvalue":"{}","description":"the options to provide","name":"options"}],"examples":["// send a message\nchannel.sendMessage('hello!')\n .then(message => console.log(`Sent message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":25,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":235},{"id":"TextBasedChannel#sendTTSMessage","longname":"TextBasedChannel#sendTTSMessage","name":"sendTTSMessage","scope":"instance","kind":"function","description":"Send a text-to-speech message to this channel","memberof":"TextBasedChannel","params":[{"type":{"names":["String"]},"description":"the content to send","name":"content"}],"examples":["// send a TTS message\nchannel.sendTTSMessage('hello!')\n .then(message => console.log(`Sent tts message: ${message.content}`))\n .catch(console.log);"],"returns":[[["Promise",".<"],["Message",">"]]],"meta":{"lineno":38,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":236}],"properties":[{"id":"TextBasedChannel#messages","longname":"TextBasedChannel#messages","name":"messages","scope":"instance","kind":"member","description":"A Map containing the messages sent to this channel.","memberof":"TextBasedChannel","type":[[["Map",".<"],["String",", "],["Message",">"]]],"meta":{"lineno":12,"filename":"TextBasedChannel.js","path":"src/structures/interface"},"order":234}],"events":[]}},"typedefs":{"UserResolvable":{"id":"UserResolvable","longname":"UserResolvable","name":"UserResolvable","scope":"global","kind":"typedef","description":"Data that resolves to give a User object. This can be:\n* A User object\n* A User ID\n* A Message (resolves to the message author)\n* A Guild (owner of the guild)","type":{"names":["User","String","Message","Guild"]},"meta":{"lineno":23,"filename":"ClientDataResolver.js","path":"src/client"},"order":18},"GuildResolvable":{"id":"GuildResolvable","longname":"GuildResolvable","name":"GuildResolvable","scope":"global","kind":"typedef","description":"Data that resolves to give a Guild object. This can be:\n* A Guild object","type":{"names":["Guild"]},"meta":{"lineno":51,"filename":"ClientDataResolver.js","path":"src/client"},"order":20},"GuildMemberResolvable":{"id":"GuildMemberResolvable","longname":"GuildMemberResolvable","name":"GuildMemberResolvable","scope":"global","kind":"typedef","description":"Data that resolves to give a GuildMember object. This can be:\n* A GuildMember object\n* A User object","type":{"names":["Guild"]},"meta":{"lineno":69,"filename":"ClientDataResolver.js","path":"src/client"},"order":22},"Base64Resolvable":{"id":"Base64Resolvable","longname":"Base64Resolvable","name":"Base64Resolvable","scope":"global","kind":"typedef","description":"Data that resolves to give a Base64 string, typically for image uploading. This can be:\n* A Buffer\n* A Base64 String","type":{"names":["Buffer","String"]},"meta":{"lineno":98,"filename":"ClientDataResolver.js","path":"src/client"},"order":24},"ChannelResolvable":{"id":"ChannelResolvable","longname":"ChannelResolvable","name":"ChannelResolvable","scope":"global","kind":"typedef","description":"Data that can be resolved to give a Channel. This can be:\n* An instance of a Channel\n* An ID of a Channel","type":{"names":["Channel","String"]},"meta":{"lineno":118,"filename":"ClientDataResolver.js","path":"src/client"},"order":26},"StringResolvable":{"id":"StringResolvable","longname":"StringResolvable","name":"StringResolvable","scope":"global","kind":"typedef","description":"Data that can be resolved to give a String. This can be:\n* A String\n* An Array (joined with a new line delimiter to give a string)\n* Any object","type":{"names":["String","Array","Object"]},"meta":{"lineno":142,"filename":"ClientDataResolver.js","path":"src/client"},"order":28}}}} \ No newline at end of file diff --git a/docs/gen/index.js b/docs/gen/index.js index 76872f605..341afa20e 100644 --- a/docs/gen/index.js +++ b/docs/gen/index.js @@ -122,11 +122,15 @@ function clean() { } seenEvents[item.name] = true; const obj = cleaned.classes[item.memberof] || cleaned.interfaces[item.memberof]; - const newTypes = []; - for (const name of item.type.names) { - newTypes.push(matchReturnName(name)); + if (item.params) { + for (const param of item.params) { + const newTypes = []; + for (const name of param.type.names) { + newTypes.push(matchReturnName(name)); + } + param.type = newTypes; + } } - item.type = newTypes; obj.events.push(item); } }