/**
 * 类型检测
 * @param value 目标值
 * @param type 预期类型
 */
export declare function typeChecking(value: any, type: string): boolean;
/**
 * 检测 value 是否为函数
 */
export declare function isFunction<T extends Function>(value: any): value is T;
/**
 * 检测 value 是否为数组
 */
export declare function isArray<T extends any[]>(value: any): value is T;
/**
 * 检测 value 是否为 object 类型
 *
 * isObject({}) => true
 * isObject([]) => true
 * isObject(Function) => true
 * isObject(null) => false
 */
export declare function isObject<T extends object>(value: any): value is T;
/**
 * 检测 value 是否为纯对象，即 {} 或 new Object() 创建的对象
 * 参见 https://lodash.com/docs/4.17.15#isPlainObject
 */
export declare function isPlainObject<T extends Record<string, any>>(value: any): value is T;
/**
 * 检测 value 是否为字符串
 */
export declare function isString<T extends string>(value: any): value is T;
/**
 * 检测 value 是否为数值
 */
export declare function isNumber<T extends number>(value: any): value is T;
/**
 * 检测 value 是否为布尔值
 */
export declare function isBoolean<T extends boolean>(value: any): value is T;
/**
 * 检测 value 是否为 Undefined
 */
export declare function isUndefined<T extends any>(value: any): value is T;
/**
 * 检测 value 是否为 Null
 */
export declare function isNull<T extends any>(value: any): value is T;
/**
 * 检测 value 是否为 Undefined 或者 Null
 */
export declare function isNil<T extends any>(value: any): value is T;
