Oi Gabriela, tudo bem?
Sua linha de raciocínio está correta.
A palavra-chave async indica que a função retornará uma Promessa. Quando usamos await dentro de uma função async, estamos dizendo para o JavaScript esperar a resolução da Promessa antes de continuar com a execução do código.
No seu código, a função getBuscarLivrosDaApi é declarada como assíncrona (async), o que significa que ela retornará uma Promessa.
Dentro dessa função, você faz uma requisição para a API usando fetch(endPointDaApi). O fetch também retorna uma Promessa que resolve para a resposta da requisição. Como você quer esperar que essa Promessa seja resolvida antes de continuar, você usa await antes do fetch.
Depois disso, você tem a resposta da requisição (res), mas essa resposta não está no formato JSON ainda. Para converter a resposta para o formato JSON, você usa res.json(), que também retorna uma Promessa. Novamente, você usa await para esperar que essa Promessa seja resolvida.
Finalmente, você atribui o resultado (os livros no formato JSON) à variável livros.
Então, sim, sua leitura do código está correta: a função getBuscarLivrosDaApi retorna uma Promessa que resolve para a lista de livros no formato JSON. Essa Promessa é resolvida apenas depois que as Promessas retornadas pelo fetch e pelo res.json() são resolvidas.
Espero ter ajudado.
Um abraço e bons estudos.