Definition of engine output types, which we call Events. They represent everything that can happen in the game.
Summary
Types
@type abort_kind() ::
:nine_terminal_draw
| :four_riichi_draw
| :four_kan_draw
| :four_wind_draw
| :triple_ron
@type t() :: Riichi.Event.GameStart.t() | Riichi.Event.RoundStart.t() | Riichi.Event.Draw.t() | Riichi.Event.Discard.t() | Riichi.Event.Pon.t() | Riichi.Event.Chii.t() | Riichi.Event.Daiminkan.t() | Riichi.Event.Kakan.t() | Riichi.Event.Ankan.t() | Riichi.Event.Dora.t() | Riichi.Event.RiichiPassed.t() | Riichi.Event.RoundEnd.t() | Riichi.Event.GameEnd.t()