keywordSearch로 받아온 장소 순서가 보장되지 않습니다

안녕하세요.
keywordSearch메서드를 1, 2, 3 페이지 각각 15개씩 호출하여 한 번에 45개의 장소를 배열에 담으려고 하는데 장소검색 함수가 콜백 함수다 보니 각 페이지 별 순서가 보장되지 않고 랜덤으로 배열에 담깁니다.
react로 구현중이며 다음과 같이 호출하고 있습니다.

  • 1, 2, 3페이지에 해당하는 장소 검색 호출
ps.keywordSearch(keyword, searchPlaceCallback, { page: 1, bounds: bounds });
ps.keywordSearch(keyword, searchPlaceCallback, { page: 2, bounds: bounds });
ps.keywordSearch(keyword, searchPlaceCallback, { page: 3, bounds: bounds });
  • 호출하는 콜백 함수
const searchPlaceCallback = (data: any, status: any, pagination: any) => {
  if (status === kakao.maps.services.Status.OK) {
    if (pagination.current > pagination.last) {
      return;
    }
    setSearchedPlaces((selectedPlaces) => [...selectedPlaces, ...selectedPlacesSetter(data)]);
  } else if (status === kakao.maps.services.Status.ZERO_RESULT) {
    console.log('검색 결과가 존재하지 않습니다.');
    setIsSearched(false);
    return;
  } else if (status === kakao.maps.services.Status.ERROR) {
    console.log('검색 결과 중 오류가 발생했습니다.');
    return;
  }
};

1, 2, 3 페이지의 검색 결과를 순차적으로 보장받는 방법이 있을까요?

아래 답변 참고해서 keywordSearch를 promise로 감싸고
각 page를 반복문으로 호출해서 페이지 순으로 장소 정보를 가져와주세요.
https://devtalk.kakao.com/t/topic/115312/2?u=lea.ju