using System.Threading.Tasks;
using Impostor.Api.Games;
using Impostor.Api.Net.Inner;
using Impostor.Api.Net.Inner.Objects;
namespace Impostor.Api.Net
{
///
/// Represents a player in .
///
public interface IClientPlayer
{
///
/// Gets the client that belongs to the player.
///
IClient Client { get; }
///
/// Gets the game where the belongs to.
///
IGame Game { get; }
///
/// Gets or sets the current limbo state of the player.
///
LimboStates Limbo { get; set; }
IInnerPlayerControl? Character { get; }
public bool IsHost { get; }
///
/// Checks if the specified is owned by .
///
/// The .
/// Returns true if owned by .
bool IsOwner(IInnerNetObject netObject);
ValueTask KickAsync();
ValueTask BanAsync();
}
}