UNPKG

discord-audio-stream

Version:

Node library to make discord audio streaming easier.

71 lines (62 loc) 2.42 kB
import { DiscordGatewayAdapterCreator, VoiceConnection, AudioPlayer, AudioResource } from '@discordjs/voice'; interface VoiceAudioDataModel { /** * The unique identifier for the audio resource. */ ResourceType: "Link" | "File"; /** * The URL or file path of the audio resource. * any is to be assumed to require(filepath) */ Resource: string | any; } interface VoiceConnectionDataModel { /** * The ID of the voice channel to connect to. */ VoiceChannelId: number; /** * The Id of the guild (server) to connect to. */ GuildId: number; /** * The adapter creator for the voice connection. * Can be archived by the guild instance via the voiceAdapterCreator property. */ VoiceAdapter: DiscordGatewayAdapterCreator; } interface IAudioManager { OverrideOptions(connectionData?: VoiceConnectionDataModel | null, audioData?: VoiceAudioDataModel | null): void; CreateConnection(isRenew: boolean): void; PlayAudioOnConnection(): void; PauseAudio(): void; ResumeAudio(): void; StopAudioOnConnection(): void; CreateConnectionAndPlayAudio(): void; DestroyConnection(resetValidationParameters: boolean): void; SetVolume(volumeInPercent: number): void; SetMaxListeners(maxListeners: number): void; } declare class AudioManager implements IAudioManager { VoiceConnection: VoiceConnection | null; AudioPlayer: AudioPlayer | null; AudioResource: AudioResource | null; IsActive: boolean; IsAudioPlaying: boolean; ConnectionData: VoiceConnectionDataModel | null; AudioData: VoiceAudioDataModel | null; constructor(connectionData?: VoiceConnectionDataModel | null, audioData?: VoiceAudioDataModel | null); OverrideOptions(connectionData?: VoiceConnectionDataModel | null, audioData?: VoiceAudioDataModel | null): void; CreateConnection(isRenew?: boolean): void; PlayAudioOnConnection(): void; StopAudioOnConnection(): void; PauseAudio(): void; ResumeAudio(): void; CreateConnectionAndPlayAudio(): void; DestroyConnection(resetValidationParameters?: boolean): void; SetMaxListeners(maxListeners: number): void; SetVolume(volumeInPercent: number): void; private RenewConnectionAndAudio; private CheckIfNull; } export { AudioManager, type VoiceAudioDataModel, type VoiceConnectionDataModel };