export declare const insertArr: <T>(arr: T[], index: number, newItem: T) => T[];
export declare const changeArr: <T>(arr: T[], index: number, newItem: T) => T[];
export declare const removeArrIndex: <T>(arr: T[], ...index: number[]) => T[];
export declare const toggleArr: <T>(arr: T[], item: T, compare?: (a: T, b: T) => boolean) => T[];
type Arr2KeysCallback<T> = (item: T, index: number, array: T[]) => string | number;
/**
 * 遍历数组，并获取 键值缓存
 * @param arr 数组
 * @param callback 回调函数，用于获取指定键值，默认取 item.key
 */
export declare function arr2Keys<T>(arr: T[], callback?: Arr2KeysCallback<T>): Set<string | number>;
/**
 * 遍历数组，并获取 key-value 缓存
 * @param arr 数组
 * @param callback 回调函数，用于获取指定键值，默认取 item.key
 */
export declare function arr2KeyValues<T>(arr: T[], callback?: Arr2KeysCallback<T>): Map<string | number, T>;
export {};
