ページ遷移待ちで使用するPageクラスのドキュメントは以下になります。

waitFor

指定の要素が表示されるのを待つような場合や、指定時間待つ場合は、waitForメソッドが使用できます。 タイムアウトのデフォルトは30秒で、短くしたい場合は、第二引数のオプションで指定できます。

page.waitFor(selectorOrFunctionOrTimeout[, options[, ...args]])

例 指定idの要素が表示されるまで待つ場合

page.waitFor('#footer');

例 タイムアウトを 10秒(10,000ミリ秒)にする場合

page.waitFor('#footer', {timeout: 10000});

例 指定されたセレクター、またはセレクターグループが見つかるまで待つ場合

 page.waitFor(() => !!document.querySelector('.foo'));

例 5秒 (5000ミリ秒)だけ待つ場合

page.waitFor(5000);

waitForNavigation

遷移先が開くまで待つ場合は、waitForNavigationメソッドが使用できます。

page.waitForNavigation([options])
ただし、使い方には注意が必要です。詳細は、「ページ遷移・click」の説明や、以下の公式ドキュメントを確認してください。

例 idが"test_link"の要素をクリックして遷移する場合

await Promise.all([
  page.waitForNavigation(),
  page.click('#test_link'),
]);