Написали вы тут конечно жесть. Нужно учить матчасть - async/await синтаксис используют с промисами, вы же пытаетесь его впихнуть непонятно куда и ждете какой то магии.
let user = await firebase.auth().onAuthStateChanged((user) => { return user });
посмотрите, если firebase.auth().onAuthStateChanged возвращает промис, то можно написать вот так
let user = await firebase.auth().onAuthStateChanged();
тут
let User = await firebase.auth().currentUser;
await вообще не нужен.