t() :: %{ __struct__: atom(), key: String.t(), source_key: String.t() | atom() | nil, type: struct(), description: String.t() | nil, handler: function() | boolean() | nil, handler_params: any(), allow_null: boolean() }