import 'material-icons/iconfont/outlined.css'; import type { AnyObject, Property, FieldsMetaData, ParametersInternal } from './types'; import type { Field } from './fields/Field/Field'; import type { Data } from './classes/Data'; import { PrimitiveTypes } from './enums'; /** * A function that tells you wether a number is odd or even * * @param {any} number is the number you want to know if its odd or even * @returns {boolean} weather the number is odd or even */ export declare function isOdd(number: number): boolean; /** * A function that returns the type of any value passed to it * These are the list of the supported types by this function: * - "string": for string values * - "number": for numeric values, including integers, decimals, and the special values Infinity and -Infinity * - "boolean": for boolean values (true or false) * - "object": for object values, including arrays and non-null objects * - "array": for arrays * - "null": for the value null * - "undefined": for the value undefined * - "NaN": for the special value NaN * * @param {any} value is the variable or property you want to get it's type * @returns {string} the type */ export declare function getType(value: any): PrimitiveTypes; /** * A function that tells you wether an object is empty or not * * @param {any} obj is the object you want to check if its empty * @returns {boolean} weather the object is empty or not */ export declare function isObjectEmpty(obj: AnyObject): boolean; /** * A function that tells you wether an array is empty or not * * @param {any} arr is the array you want to check if its empty * @returns {boolean} weather the array is empty or not */ export declare function isArrayEmpty(arr: unknown[]): boolean; /** * Merges two objects together, returning a new object that contains all properties from both * objects, with properties from obj2 taking precedence over obj1 in case of conflicts. However, * only properties from obj2 that do not already exist in obj1 will be included in the result. * * @param obj1 The first object to merge. * @param obj2 The second object to merge. * * @returns A new object containing all properties from obj1 and obj2, with properties from obj2 * taking precedence over obj1 in case of conflicts, but only including properties from obj2 that * do not already exist in obj1. */ export declare function mergeObjectsOnlyNewProperties(obj1: AnyObject, obj2: AnyObject): any; /** * This object will have all fields and their important data */ export declare const fieldsMetaData: FieldsMetaData; /** * A function that gets an default value of a fieldType */ export declare function getDefaultValueByFieldType(fieldType: string): Field; /** * A function that gets an instance of the field based on the type * * @param {Property} property is the object you want to check if its empty * @returns {Field} instance of the Field */ export declare function getFieldInstance(property: Property, data: Data, params: ParametersInternal): Field; /** * A function that draws any google font outline Icon by icon name * * @param {string} iconName is the the name of the icon you want to draw * @returns {HTMLElement} instance of the Field */ export declare function drawOutlineIcon(iconName: string): HTMLElement; /** * A function that draws the descriptionSymbol * * @returns {HTMLElement} instance of the Field */ export declare function drawDescriptionSymbol(): HTMLElement; /** * A function that generated the description tool tip */ export declare function drawDescriptionToolTip(field: Field, objectFieldContainer: HTMLElement): void; /** * This function will get you the PrimitiveTypes based on the string stringType * * @param {string} stringType is the stringType that will get the PrimitiveTypes based on * @returns {PrimitiveTypes} the primitive type according to the stringType */ export declare function getPrimitiveEnumByStringType(stringType: string): PrimitiveTypes; /** * this function is used by the Data object to assign default field type to a property * if the field type wasnt specified by the user */ export declare function getFieldTypeByValuetype(valueType: string): string; //# sourceMappingURL=utils.d.ts.map