Not exactly and not necessarily. You can await a Promise and not have any functions at all:
await thing()
console.log(‘Thing done’)
Also you could attach multiple callbacks to the same Promise at any point, even long after the promise fulfilled.