import { type ChainId, type NavigationSportData } from '@azuro-org/toolkit';
import { type UseQueryResult } from '@tanstack/react-query';
import { type SportHub, type QueryParameterWithSelect } from '../../global';
export type UseNavigationQueryFnData<ReturnMapValue extends boolean = false> = ReturnMapValue extends true ? Record<'prematch' | 'live' | 'all', NavigationSportData[]> : NavigationSportData[];
export type UseNavigationProps<ReturnMapValue extends boolean = false, TData = UseNavigationQueryFnData<ReturnMapValue>> = {
    filter?: {
        sportHub?: SportHub;
        sportIds?: Array<string | number>;
    };
    isLive?: boolean;
    returnAsPrematchAndLiveMap?: ReturnMapValue;
    chainId?: ChainId;
    query?: QueryParameterWithSelect<UseNavigationQueryFnData<ReturnMapValue>, TData>;
};
export type UseNavigation = typeof useNavigation;
export type GetUseNavigationQueryOptionsProps<ReturnMapValue extends boolean = false, TData = UseNavigationQueryFnData<ReturnMapValue>> = UseNavigationProps<ReturnMapValue, TData> & {
    chainId: ChainId;
};
export declare const getUseNavigationQueryOptions: <ReturnMapValue extends boolean = false, TData = UseNavigationQueryFnData<ReturnMapValue>>(params: GetUseNavigationQueryOptionsProps<ReturnMapValue, TData>) => import("@tanstack/query-core").OmitKeyof<import("@tanstack/react-query").UseQueryOptions<UseNavigationQueryFnData<ReturnMapValue>, Error, TData, readonly unknown[]>, "queryFn"> & {
    queryFn?: import("@tanstack/query-core").QueryFunction<UseNavigationQueryFnData<ReturnMapValue>, readonly unknown[], never> | undefined;
} & {
    queryKey: readonly unknown[] & {
        [dataTagSymbol]: UseNavigationQueryFnData<ReturnMapValue>;
        [dataTagErrorSymbol]: Error;
    };
};
/**
 * Get navigation data for sports, countries, and leagues with active games counts.
 * Can return data as a prematch/live/all map or filtered by `isLive` prop.
 *
 * - Docs: https://gem.azuro.org/hub/apps/sdk/data-hooks/useNavigation
 *
 * @example
 * import { useNavigation } from '@azuro-org/sdk'
 *
 * const { data, isFetching } = useNavigation({ isLive: false })
 * */
export declare const useNavigation: <ReturnMapValue extends boolean = false, TData = UseNavigationQueryFnData<ReturnMapValue>>(props?: UseNavigationProps<ReturnMapValue, TData>) => UseQueryResult<TData>;
