Метод .json () возвращает вам обещание, потому что ответ, который вы получаете на вызов api, находится в стадии, в этом случае заголовки возвращаются в ответе, следовательно, response.json () запускается, и вы получаете обещание получить тело, пока вы не получили тело, а только заголовки.
Для получения тела вам нужно выполнить обещание, как показано ниже
response.json().then(data => ({
data: data,
})