import type { BeanCollection } from '../context/context';
import type { TabToNextGridContainerTarget } from '../interfaces/iCallbackParams';
import type { CellPosition } from '../interfaces/iCellPosition';
import type { FocusableContainer } from '../interfaces/iFocusableContainer';
import type { Component } from '../widgets/component';
/** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
export declare function _addFocusableContainerListener(beans: BeanCollection, comp: Component, eGui: HTMLElement): void;
/** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
export declare function _focusGridInnerElement(beans: BeanCollection, fromBottom?: boolean): boolean;
export declare function _isHeaderFocusSuppressed(beans: BeanCollection): boolean;
export declare function _isCellFocusSuppressed(beans: BeanCollection): boolean;
/** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
export declare function _focusNextGridCoreContainer(beans: BeanCollection, backwards: boolean, forceOut?: boolean): boolean;
/** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
export declare function _attemptToRestoreCellFocus(beans: BeanCollection, focusedCell: CellPosition | null): void;
export declare function _getDefaultTabTargetForContainer(container: FocusableContainer, getGridBodyTabTarget: () => TabToNextGridContainerTarget | null): TabToNextGridContainerTarget | null;
export declare function _runWithContainerFocusAllowed<T>(container: FocusableContainer, callback: () => T): T;
/** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
export declare function _skipFocusableContainerListenerForAgGrid(event: Event): void;
