using Ghost.Core; namespace Ghost.Editor.Core.AppState; internal interface IAppState { /// /// Called when exiting the state. /// public Task OnExitingAsync(); /// /// Called when entering the state, right after OnEnteringAsync. /// can be used to pass data into the state, such as a project to load. /// public Task OnEnteringAsync(object? parameter); /// /// Called when exiting the state, specifically for pose transitions. /// public Task OnExitedAsync(); /// /// Called when entered the state, specifically after the state has been fully initialized and is ready for interaction. /// /// can be used to pass data into the state, such as a project to load. public Task OnEnteredAsync(object? parameter); }