lib/fussy/validator.ex
defmodule Fussy.Validator do
alias Fussy.ValidationError
@type t :: module()
@type path :: [any()]
@callback validate(self :: term, path :: path, data :: any) ::
{:ok, any} | {:reason, [ValidationError.t()]}
end