-record(connection, { host :: binary(), socket :: mug:socket(), buffer :: binary(), requests :: list({gleam@erlang:reference_(), gleam@option:option(fun((gleam@dynamic:dynamic_()) -> {ok, any()} | {error, list(gleam@dynamic:decode_error())}))}), responses :: list({gleam@erlang:reference_(), {ok, gleam@http@response:response(dove:response_body(any()))} | {error, dove@error:error()}}) }).