import { ExcursionSearchParams, ExtendedFlightSearchResponseItem, Filter, FlyInType, SortByType } from '../types';
import {
  BookingPackage,
  BookingPackageItem,
  BookingPriceDetails,
  ClientPortalItinerary,
  PackagingAccommodationResponse,
  PackagingEntry,
  PackagingFlightResponse
} from '@qite/tide-client/build/types';
export interface SearchResultsState {
  results: BookingPackageItem[];
  filteredResults: BookingPackageItem[];
  selectedSearchResult: BookingPackageItem | null;
  packagingAccoResults: PackagingAccommodationResponse[];
  filteredPackagingAccoResults: PackagingAccommodationResponse[];
  packagingAccoSearchDetails: PackagingAccommodationResponse[];
  selectedPackagingAccoResultCode: string | null;
  packagingFlightResults: PackagingFlightResponse[];
  filteredPackagingFlightResults: PackagingFlightResponse[];
  selectedPackagingFlight: PackagingFlightResponse | null;
  selectedOutwardKey: string | null;
  selectedReturnKey: string | null;
  selectedFlight: ExtendedFlightSearchResponseItem | null;
  selectedFlightDetails: ExtendedFlightSearchResponseItem | null;
  bookingPackageDetails: BookingPackage | null;
  priceDetails: BookingPriceDetails | null;
  isLoading: boolean;
  flightsLoading: boolean;
  selectedSortType: SortByType | null;
  selectedFlightSortType: SortByType | null;
  filters: Filter[];
  initialFilters: Filter[];
  flightFilters: Filter[];
  initialFlightFilters: Filter[];
  activeTab: string | null;
  currentPage: number;
  transactionId: string | null;
  flyInIsOpen: boolean;
  flyInType: FlyInType | null;
  itinerary: ClientPortalItinerary | null;
  editablePackagingEntry: PackagingEntry | null;
  excursionSearchParams: ExcursionSearchParams | null;
  selectedExcursionSearchResult: PackagingAccommodationResponse | null;
  confirmedExcursionsByDay: Record<string, PackagingAccommodationResponse[]>;
  bookPackagingEntry: boolean;
  currentStep: number;
  bookingNumber?: string;
}
export declare const setResults: import('@reduxjs/toolkit').ActionCreatorWithPayload<BookingPackageItem[], 'searchResults/setResults'>,
  setFilteredResults: import('@reduxjs/toolkit').ActionCreatorWithPayload<BookingPackageItem[], 'searchResults/setFilteredResults'>,
  setSelectedSearchResult: import('@reduxjs/toolkit').ActionCreatorWithPayload<BookingPackageItem | null, 'searchResults/setSelectedSearchResult'>,
  setPackagingAccoResults: import('@reduxjs/toolkit').ActionCreatorWithPayload<PackagingAccommodationResponse[], 'searchResults/setPackagingAccoResults'>,
  setFilteredPackagingAccoResults: import('@reduxjs/toolkit').ActionCreatorWithPayload<
    PackagingAccommodationResponse[],
    'searchResults/setFilteredPackagingAccoResults'
  >,
  setFilteredPackagingFlightResults: import('@reduxjs/toolkit').ActionCreatorWithPayload<
    PackagingFlightResponse[],
    'searchResults/setFilteredPackagingFlightResults'
  >,
  setPackagingAccoSearchDetails: import('@reduxjs/toolkit').ActionCreatorWithPayload<
    PackagingAccommodationResponse[],
    'searchResults/setPackagingAccoSearchDetails'
  >,
  setSelectedPackagingAccoResult: import('@reduxjs/toolkit').ActionCreatorWithPayload<string | null, 'searchResults/setSelectedPackagingAccoResult'>,
  setPackagingFlightResults: import('@reduxjs/toolkit').ActionCreatorWithPayload<PackagingFlightResponse[], 'searchResults/setPackagingFlightResults'>,
  setSelectedPackagingFlight: import('@reduxjs/toolkit').ActionCreatorWithPayload<PackagingFlightResponse | null, 'searchResults/setSelectedPackagingFlight'>,
  setSelectedFlight: import('@reduxjs/toolkit').ActionCreatorWithPayload<ExtendedFlightSearchResponseItem | null, 'searchResults/setSelectedFlight'>,
  setSelectedFlightDetails: import('@reduxjs/toolkit').ActionCreatorWithPayload<
    ExtendedFlightSearchResponseItem | null,
    'searchResults/setSelectedFlightDetails'
  >,
  setBookingPackageDetails: import('@reduxjs/toolkit').ActionCreatorWithPayload<
    {
      details: BookingPackage;
    },
    'searchResults/setBookingPackageDetails'
  >,
  selectFlight: import('@reduxjs/toolkit').ActionCreatorWithPayload<
    {
      flightOptionId: string;
      isDeparture: boolean;
    },
    'searchResults/selectFlight'
  >,
  setIsLoading: import('@reduxjs/toolkit').ActionCreatorWithPayload<boolean, 'searchResults/setIsLoading'>,
  setFlightsLoading: import('@reduxjs/toolkit').ActionCreatorWithPayload<boolean, 'searchResults/setFlightsLoading'>,
  setInitialFilters: import('@reduxjs/toolkit').ActionCreatorWithPayload<Filter[], 'searchResults/setInitialFilters'>,
  setFilters: import('@reduxjs/toolkit').ActionCreatorWithPayload<Filter[], 'searchResults/setFilters'>,
  resetFilters: import('@reduxjs/toolkit').ActionCreatorWithPayload<Filter[], 'searchResults/resetFilters'>,
  setInitialFlightFilters: import('@reduxjs/toolkit').ActionCreatorWithPayload<Filter[], 'searchResults/setInitialFlightFilters'>,
  setFlightFilters: import('@reduxjs/toolkit').ActionCreatorWithPayload<Filter[], 'searchResults/setFlightFilters'>,
  resetFlightFilters: import('@reduxjs/toolkit').ActionCreatorWithPayload<Filter[], 'searchResults/resetFlightFilters'>,
  setSortType: import('@reduxjs/toolkit').ActionCreatorWithPayload<SortByType | null, 'searchResults/setSortType'>,
  setFlightSortType: import('@reduxjs/toolkit').ActionCreatorWithPayload<SortByType | null, 'searchResults/setFlightSortType'>,
  setActiveTab: import('@reduxjs/toolkit').ActionCreatorWithPayload<string | null, 'searchResults/setActiveTab'>,
  setCurrentPage: import('@reduxjs/toolkit').ActionCreatorWithPayload<number, 'searchResults/setCurrentPage'>,
  resetSearchState: import('@reduxjs/toolkit').ActionCreatorWithoutPayload<'searchResults/resetSearchState'>,
  setFlyInIsOpen: import('@reduxjs/toolkit').ActionCreatorWithPayload<boolean, 'searchResults/setFlyInIsOpen'>,
  setEditablePackagingEntry: import('@reduxjs/toolkit').ActionCreatorWithPayload<PackagingEntry | null, 'searchResults/setEditablePackagingEntry'>,
  setTransactionId: import('@reduxjs/toolkit').ActionCreatorWithPayload<string | null, 'searchResults/setTransactionId'>,
  setFlyInType: import('@reduxjs/toolkit').ActionCreatorWithPayload<FlyInType | null, 'searchResults/setFlyInType'>,
  setPriceDetails: import('@reduxjs/toolkit').ActionCreatorWithPayload<BookingPriceDetails | null, 'searchResults/setPriceDetails'>,
  setItinerary: import('@reduxjs/toolkit').ActionCreatorWithPayload<ClientPortalItinerary | null, 'searchResults/setItinerary'>,
  setSelectedOutwardKey: import('@reduxjs/toolkit').ActionCreatorWithPayload<string | null, 'searchResults/setSelectedOutwardKey'>,
  setSelectedReturnKey: import('@reduxjs/toolkit').ActionCreatorWithPayload<string | null, 'searchResults/setSelectedReturnKey'>,
  resetFlightSelection: import('@reduxjs/toolkit').ActionCreatorWithoutPayload<'searchResults/resetFlightSelection'>,
  setExcursionSearchParams: import('@reduxjs/toolkit').ActionCreatorWithPayload<ExcursionSearchParams, 'searchResults/setExcursionSearchParams'>,
  setSelectedExcursionSearchResult: import('@reduxjs/toolkit').ActionCreatorWithPayload<
    PackagingAccommodationResponse | null,
    'searchResults/setSelectedExcursionSearchResult'
  >,
  confirmExcursionForDay: import('@reduxjs/toolkit').ActionCreatorWithPayload<
    {
      dayKey: string;
      excursion: PackagingAccommodationResponse;
    },
    'searchResults/confirmExcursionForDay'
  >,
  removeConfirmedExcursionForDay: import('@reduxjs/toolkit').ActionCreatorWithPayload<
    {
      dayKey: string;
      excursionCode: string;
    },
    'searchResults/removeConfirmedExcursionForDay'
  >,
  clearConfirmedExcursionsForDay: import('@reduxjs/toolkit').ActionCreatorWithPayload<
    {
      dayKey: string;
    },
    'searchResults/clearConfirmedExcursionsForDay'
  >,
  setBookPackagingEntry: import('@reduxjs/toolkit').ActionCreatorWithPayload<boolean, 'searchResults/setBookPackagingEntry'>,
  setCurrentStep: import('@reduxjs/toolkit').ActionCreatorWithPayload<number, 'searchResults/setCurrentStep'>,
  setBookingNumber: import('@reduxjs/toolkit').ActionCreatorWithPayload<string, 'searchResults/setBookingNumber'>;
declare const _default: import('@reduxjs/toolkit').Reducer<SearchResultsState>;
export default _default;
