using Godot; namespace Cirno.Scripts.Components.FSM; public interface IState where TKey : notnull where TType : Node { public TKey StateId { get; } public IStateMachine StateMachine { get; } public void Init(IStateMachine machine); public void EnterState(); public void ExitState(); public void ProcessState(double delta); public void PhysicsProcessState(double delta); }