Summary
Types
@type t() :: {:response, a :: String.t(), b :: String.t()} | {:precedence, a :: String.t(), b :: String.t()} | {:non_coexistence, a :: String.t(), b :: String.t()} | {:chain_response, a :: String.t(), b :: String.t()} | {:exactly_once, a :: String.t()} | {:absence, a :: String.t()} | {:and, [t()]} | {:or, [t()]}