Encapsulates the flow for resolving a field for potentially multiple parents.
@type getter() :: (%{required(term()) => term()} -> term())
@type t() :: %Bonfire.API.GraphQL.ResolveFields{ context: term(), default: term(), fetcher: atom(), getter_fn: (context :: term(), default :: term() -> getter()), info: map(), module: atom() }