-record(collection, { directory :: binary(), parse :: fun((binary()) -> {ok, common:page()} | {error, snag:snag()}), index :: gleam@option:option(fun((list(common:page())) -> lustre@internals@vdom:element(nil))), rss :: gleam@option:option(fun((list(common:page())) -> binary())) }).