-record(route, { method :: dream@http@request:method(), path :: binary(), controller :: fun((dream@http@request:request(), any(), any()) -> dream@http@response:response()), middleware :: list(dream@router:middleware(any(), any())), streaming :: boolean() }).