import isEqual from 'fast-deep-equal';
import type { FieldDescriptor } from './types';
export { isEqual };
export declare function mapObject(input: Input, mapper: (value: any, key: string & keyof Input) => any): Output;
export declare function push(array: T[], ...values: T[]): T[];
export declare function remove(array: T[], targetIndex: number): T[];
export declare function replace(array: T[], targetIndex: number, newValue: T): T[];
export declare function set(rootObject: InputType, path: string[], value: any): any;
export declare function flatMap(array: any[], mapper: (item: any, index?: number) => T | T[]): T[];
/**
* Transforms a boolean FieldDescriptor object to work with checkboxes and radios.
* @param field
*/
export declare function asChoiceField({ value: checked, ...fieldData }: FieldDescriptor): {
onChange(newValue: boolean | import("./types").ValueMapper): void;
onBlur(): void;
name: string;
initialValue: boolean;
dirty: boolean;
changed: boolean;
error?: any;
checked: boolean;
};
export type ChoiceFieldDescriptor = ReturnType;
//# sourceMappingURL=utilities.d.ts.map