using System; namespace AlicizaX.Timer.Runtime { [UnityEngine.Scripting.Preserve] public interface ITimerService : IService { ulong AddTimer(TimerHandlerNoArgs callback, float time, bool isLoop = false, bool isUnscaled = false); ulong AddTimer(Action callback, T arg, float time, bool isLoop = false, bool isUnscaled = false) where T : class; void Stop(ulong timerHandle); void Resume(ulong timerHandle); bool IsRunning(ulong timerHandle); float GetLeftTime(ulong timerHandle); void Restart(ulong timerHandle); void RemoveTimer(ulong timerHandle); } }