@type t() :: {Antikythera.Time.t(), Croma.String.t()}
@spec new(any()) :: Croma.Result.t(t())
@spec new!(any()) :: t()
@spec valid?(any()) :: boolean()