import { TransformerFunction, TMap, AnyMap } from '../typings/utils'; /** * Transform an array of strings into an object, optionally * transforming values of keys and values. * * @example * Input: ['VARIABLE', 'VAR'], k => '_' + k * Output: { _VARIABLE: 'VARIABLE', _VAR: 'VAR' } * * @param array Function that returns string. * @param transformKey Function that transforms the object key. * @param transformValue Function that transforms the object value. */ export declare function stringArrayToMapping(array?: string[], transformKey?: TransformerFunction, transformValue?: TransformerFunction): TMap; /** * Trim ends of string from chars given. * Default chars are whitespaces and tabs. * * @param string String to be trimmed. * @param additional Additional character list to trim. * @param chars Defult character list to trim. */ export declare function trimString(string: string, additional?: string, chars?: string): string; /** * Return the same instance of object without * the properties containing null values. * * @param obj Object to be filtered. */ export declare function filterNullValues(obj: AnyMap): AnyMap; /** * Test whether given value is array. * * @param value Value to be tested. */ export declare function isArray(value: any): value is any[]; /** * Test whether given value is string. * * @param value Value to be tested. */ export declare function isString(value: any): value is string; /** * Test whether given value is number. * * @param value Value to be tested. */ export declare function isNumber(value: any): value is number; /** * Test whether given value is function. * * @param value Value to be tested. */ export declare function isFunction(value: any): value is Function; /** * Test whether given value is object. * * @param value Value to be tested. */ export declare function isObject(value: any): value is AnyMap; /** * Test whether given value is defined and not null. * * @param value Value to be tested. */ export declare function isDefined(value: T): value is NonNullable; /** * Set an enumarable, configurable and writable property of given target object. * * @param target Target object to have property set on. * @param key Property key. * @param value Property value. */ export declare function setProperty(target: any, key: string, value: any): void;