using Luski.net.Sound;
using System;
using System.Threading.Tasks;
using static Luski.net.Exceptions;
namespace Luski.net.Interfaces;
public interface IAudioClient
{
///
/// the event is fired when your has joined the call
///
event Func Connected;
///
/// Tells you if you are muted
///
bool Muted { get; }
///
/// Tells you if you are deafned
///
bool Deafened { get; }
///
/// Toggles if you are speaking to your friends
///
void ToggleMic();
///
/// Toggles if you can hear audio
///
void ToggleAudio();
///
/// Changes what the call gets its data from
///
/// This is the you want to recored from
///
void RecordSoundFrom(RecordingDevice Device);
///
/// Changes what the call gets its data from
///
/// This is the you want to heare outhers
///
void PlaySoundTo(PlaybackDevice Device);
///
/// Joins the Voice call
///
///
void JoinCall();
void LeaveCall();
}