using CounterStrikeSharp.API.Core; using CounterStrikeSharp.API.Core.Capabilities; using CounterStrikeSharp.API.Modules.Commands; using CounterStrikeSharp.API.Modules.Entities; namespace CS2_SimpleAdminApi; public interface ICS2_SimpleAdminApi { public static readonly PluginCapability PluginCapability = new("simpleadmin:api"); public PlayerInfo GetPlayerInfo(CCSPlayerController player); public string GetConnectionString(); public string GetServerAddress(); public int? GetServerId(); public Dictionary> GetPlayerMuteStatus(CCSPlayerController player); public event Action? OnPlayerPenaltied; public event Action? OnPlayerPenaltiedAdded; public event Action? OnAdminShowActivity; public void IssuePenalty(CCSPlayerController player, CCSPlayerController? admin, PenaltyType penaltyType, string reason, int duration = -1); public void IssuePenalty(SteamID steamid, CCSPlayerController? admin, PenaltyType penaltyType, string reason, int duration = -1); public void LogCommand(CCSPlayerController? caller, string command); public void LogCommand(CCSPlayerController? caller, CommandInfo command); public void ShowAdminActivity(string messageKey, string? callerName = null, bool dontPublish = false, params object[] messageArgs); public bool IsAdminSilent(CCSPlayerController player); }