A branching choice construct (XOR, OR, or generalized choice graph).
@type choice_type() :: :xor | :or | :deferrable | :choice_graph
@type t() :: %Ex4pmCore.ProcessIR.Choice{ branches: [String.t()], conditions: %{optional(String.t()) => String.t()}, default_branch: String.t() | nil, id: String.t(), metadata: map(), type: choice_type() }