type Delta = {
    x: number;
    y: number;
};
type NavigationAction = {
    type: "delta";
    delta: Delta;
} | {
    type: "home";
} | {
    type: "end";
} | {
    type: "tableStart";
} | {
    type: "tableEnd";
};
/**
 * Maps keyboard events to navigation actions.
 * Supports arrow keys, Home/End (row navigation), Ctrl/Cmd+Home/End (table navigation).
 */
declare function getNavigationAction(event: KeyboardEvent): NavigationAction | null;
/**
 * Determines if keyboard navigation should be blocked based on the current focus context.
 * Allows for custom blocking logic via an optional callback.
 *
 * Tries to make assumptions of what the user is currently doing inside a table cell
 * Should block navigation if:
 * - Input has selection, caret is not at start/end
 * - Select arrow down/up for opening popup
 * - User is navigating inside multiline textarea
 * - contenteditable attrb is in use
 */
declare function shouldBlockNavigation(event: KeyboardEvent): boolean;
export { getNavigationAction, shouldBlockNavigation };
export type { Delta, NavigationAction };
