import { NileGrid } from './nile-grid';
/** listenToEventListeners
 * @param nileGrid Grid element to attach listeners on
 * @param onResize Handler for 'nile-column-resize'
 * @param slotEl Slot element to watch for 'slotchange'
 * @param _attachObserverAndLayout Callback to reattach observer + layout
 * @returns void
 */
export declare const listenToEventListeners: (nileGrid: NileGrid, onResize: any, slotEl: any, _attachObserverAndLayout: any) => void;
/** removeEventListeners
 * @param nileGrid Grid element to detach listeners from
 * @param onResize Handler previously attached to 'nile-column-resize'
 * @param slotEl Slot element to remove 'slotchange' from
 * @param _attachObserverAndLayout Callback reference used during attach
 * @returns void
 */
export declare const removeEventListeners: (nileGrid: NileGrid, onResize: any, slotEl: any, _attachObserverAndLayout: any) => void;
/** getHead
 * @param slotEl Slot element containing assigned nodes
 * @returns <nile-grid-head> element or null
 */
export declare const getHead: (slotEl: any) => HTMLElement;
/** getBody
 * @param slotEl Slot element containing assigned nodes
 * @returns <nile-grid-body> element or null
 */
export declare const getBody: (slotEl: any) => HTMLElement;
export declare const scrollEventHandler: (el: NileGrid) => void;
/** copyArrayValuesInPlace
 * @param target Target array
 * @param source Source array
 * @returns void
 */
export declare function copyArrayValuesInPlace(target: number[], source: number[]): void;
