A page of results from a query that pages itself, for example a query over a database.
Return {:ok, %Arc.Page{items: items, total: total}} from a query and Arc reports the
paging block of the result envelope from it instead of paging a list in memory.
Summary
Types
@type t() :: %Arc.Page{ items: [term()], page: non_neg_integer(), size: non_neg_integer(), total: non_neg_integer() }