import { Dict } from 'src/types'; export declare function getFirstItem(array: T[]): T | undefined; export declare function getLastItem(array: T[]): T | undefined; /** * Get the next index based on the current index and step. * * @param currentIndex - The current index. * @param length - The total length or count of items. * @param step - The number of steps to move (positive or negative). * @param loop - Whether to loop around when the index exceeds boundaries. */ export declare function getNextIndex(currentIndex: number, length: number, step?: number, loop?: boolean): number; /** * Gets the previous index based on the current index. * Mostly used for keyboard navigation. * * @param currentIndex - The current index. * @param length - The total length or count of items. * @param loop - Whether to loop around when the index exceeds boundaries. */ export declare function getPrevIndex(currentIndex: number, length: number, loop?: boolean): number; export declare function getNextItem(currentIndex: number, array: T[], loop?: boolean): T | undefined; export declare function getPrevItem(currentIndex: number, array: T[], loop?: boolean): T | undefined; export declare function isArray(value: any): value is Array; export declare function isEmptyArray(value: any): boolean; export declare function isObject(value: any): value is Dict; export declare function isEmptyObject(value: any): boolean; export declare function isEmpty(value: any): boolean; export declare function isUndefined(value: any): value is undefined; export declare function isDefined(value: T): value is Exclude; export declare function pick(object: T, keys: K[]): { [P in K]: T[P]; }; export declare function omit(object: T, keys: K[]): Omit; export declare function isFunction(value: any): value is T; export type MaybeFunction = T | ((...args: Args) => T); export declare function runIfFn(valueOrFn: MaybeFunction, ...args: Args): T; export type ReactRef = React.RefCallback | React.MutableRefObject; export declare function assignRef(ref: ReactRef | null | undefined, value: T): void; export declare function mergeRefs(...refs: (ReactRef | null | undefined)[]): (node: T | null) => void; export declare function useMergeRefs(...refs: (ReactRef | null | undefined)[]): (node: T | null) => void; //# sourceMappingURL=utils.d.ts.map