package dev.photosync.mcapi.screen;

import java.util.Optional;

/** Opens and closes {@link ScreenModel}s. Call on the render thread. */
public interface ScreenHost {

    void open(ScreenModel screen);

    /** Closes whatever is open, returning the player to the game. */
    void close();

    /** The PhotoSync screen currently open, if the open screen is one of ours. */
    Optional<ScreenModel> current();
}
