import { Ref } from 'vue';
import type { Timestamp } from '../utils/Timestamp';
import { type IntervalProps } from './useInterval';
export declare const useNavigationProps: {
    useNavigation: BooleanConstructor;
};
export interface NavigationProps {
    useNavigation: boolean;
}
interface NavigationContext {
    rootRef: Ref<HTMLElement | null>;
    focusRef: Ref<string>;
    focusValue: Ref<Timestamp>;
    datesRef: Ref<Record<string, HTMLElement>>;
    parsedView: Ref<string>;
    emittedValue: Ref<string>;
    direction: Ref<'next' | 'prev'>;
    times: {
        today: Timestamp;
    };
}
interface UseNavigationReturn {
    startNavigation: () => void;
    endNavigation: () => void;
    tryFocus: () => void;
}
/**
 * Hook for handling keyboard navigation in calendar components.
 * @param props The props related to navigation.
 * @param context Various reactive references used for navigation.
 */
export default function useNavigation(props: NavigationProps & IntervalProps, { rootRef, focusRef, focusValue, datesRef, parsedView, emittedValue, direction, times, }: NavigationContext): UseNavigationReturn;
export {};
