UNPKG

oceanic.js

Version:

A NodeJS library for interfacing with Discord.

73 lines 5.08 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); /** @module Soundboard */ const Base_1 = tslib_1.__importDefault(require("./Base")); const User_1 = tslib_1.__importDefault(require("./User")); /** Represents a soundboard. */ class Soundboard extends Base_1.default { /** If the soundboard sound can be used. */ available; /** The emoji id of the soundboard sound. */ emojiID; /** The emoji name of the soundboard sound. */ emojiName; /** The guild this soundboard sound is in. */ guildID; /** The name of the soundboard sound. */ name; /** The id of the soundboard sound. */ soundID; /** The user who created the soundboard sound. */ user; /** The volume of the soundboard sound. */ volume; constructor(data, client) { super(data.sound_id, client); this.available = data.available; this.emojiID = data.emoji_id; this.emojiName = data.emoji_name; this.guildID = data.guild_id; this.name = data.name; this.soundID = data.sound_id; this.user = data.user ? new User_1.default(data.user, client) : undefined; this.volume = data.volume; } /** * Delete this soundboard sound. * @param reason The reason for deleting the soundboard sound. */ async delete(reason) { return this.client.rest.guilds.deleteSoundboardSound(this.guildID, this.id, reason); } /** * Edit this soundboard sound. * @param options The options for editing the soundboard sound. */ async edit(options) { return this.client.rest.guilds.editSoundboardSound(this.guildID, this.id, options); } /** * Send this soundboard sound to a voice channel. * @param channelID The ID of the voice channel to send the soundboard sound to. * @param sourceGuildID The ID of the guild the soundboard sound is from. */ async sendSoundboardSound(channelID, sourceGuildID) { return this.client.rest.channels.sendSoundboardSound(channelID, { soundID: this.soundID, sourceGuildID }); } toJSON() { return { ...super.toJSON(), available: this.available, emojiID: this.emojiID, emojiName: this.emojiName, guildID: this.guildID, name: this.name, soundID: this.soundID, user: this.user?.toJSON(), volume: this.volume }; } } exports.default = Soundboard; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU291bmRib2FyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9zdHJ1Y3R1cmVzL1NvdW5kYm9hcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEseUJBQXlCO0FBQ3pCLDBEQUEwQjtBQUMxQiwwREFBMEI7QUFJMUIsK0JBQStCO0FBQy9CLE1BQXFCLFVBQVcsU0FBUSxjQUFJO0lBQ3hDLDJDQUEyQztJQUMzQyxTQUFTLENBQVU7SUFDbkIsNENBQTRDO0lBQzVDLE9BQU8sQ0FBZ0I7SUFDdkIsOENBQThDO0lBQzlDLFNBQVMsQ0FBZ0I7SUFDekIsNkNBQTZDO0lBQzdDLE9BQU8sQ0FBVTtJQUNqQix3Q0FBd0M7SUFDeEMsSUFBSSxDQUFTO0lBQ2Isc0NBQXNDO0lBQ3RDLE9BQU8sQ0FBUztJQUNoQixpREFBaUQ7SUFDakQsSUFBSSxDQUFRO0lBQ1osMENBQTBDO0lBQzFDLE1BQU0sQ0FBUztJQUNmLFlBQVksSUFBbUIsRUFBRSxNQUFjO1FBQzNDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNoQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDN0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUM3QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzdCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxjQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQ2hFLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUM5QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFlO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxPQUFRLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFtQztRQUMxQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsT0FBUSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDeEYsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsbUJBQW1CLENBQUMsU0FBaUIsRUFBRSxhQUFzQjtRQUMvRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDO0lBQzlHLENBQUM7SUFFUSxNQUFNO1FBQ1gsT0FBTztZQUNILEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRTtZQUNqQixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIsT0FBTyxFQUFJLElBQUksQ0FBQyxPQUFPO1lBQ3ZCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixPQUFPLEVBQUksSUFBSSxDQUFDLE9BQU87WUFDdkIsSUFBSSxFQUFPLElBQUksQ0FBQyxJQUFJO1lBQ3BCLE9BQU8sRUFBSSxJQUFJLENBQUMsT0FBTztZQUN2QixJQUFJLEVBQU8sSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUU7WUFDOUIsTUFBTSxFQUFLLElBQUksQ0FBQyxNQUFNO1NBQ3pCLENBQUM7SUFDTixDQUFDO0NBQ0o7QUFuRUQsNkJBbUVDIn0=