t() :: %Optimal.Schema{ additional_keys?: boolean(), allow_values: Keyword.t(), defaults: Keyword.t(), nested_schemas: Keyword.t(), nesting_path: [atom()], vex: Keyword.t() }
merge(t(), t()) :: t()
new() :: t()
new(Keyword.t() | t()) :: t() | no_return()