Typed representation of a single compiled question (:noul, :choice, or :score)
within a JevDSL.Contract.
Summary
Types
@type criteria_type() :: %{optional(criteria_key()) => term()} | [{criteria_key(), term()}]
@type question_type() :: :noul | :choice | :score
@type t() :: %JevDSL.Question{ criteria: criteria_type(), instructions: term(), name: question_key(), type: question_type() }