import { useMutation, useQuery } from "react-query"; import { useHttp } from "@/hooks/useHttp"; import type { CitiesListType, ILocationResponse, } from "./location.services.types"; export const useCitiesMutation = () => { const http = useHttp("wl-booking"); const service = (countriesId: number) => http .get< ILocationResponse >(`/api/destination/cities/${countriesId}`) .then((res) => res.data); return useMutation({ mutationFn: service, mutationKey: "cities", }); }; export const useCitiesQuery = (countryId?: string) => { const http = useHttp("wl-booking"); const service = () => http .get< ILocationResponse >(`/api/destination/cities/${countryId}`) .then((res) => res.data); return useQuery({ queryFn: service, queryKey: [countryId, "cities"], enabled: !!countryId, }); };