import { IReversibleJsonPatch, IJsonPatch } from "./core/NodeUtils"; export declare const props: { types: { isDirty: string; isValid: string; isPristine: string; isDefault: string; isEmpty: string; hasError: string; focused: string; changed: string; disabled: string; }; }; export declare const EMPTY_ARRAY: ReadonlyArray; export declare const EMPTY_OBJECT: {}; export declare type IDisposer = () => void; export declare function fail(message?: string): never; export declare function identity(_: T): T; export declare function nothing(): null; export declare function noop(): void; export declare function isArray(val: any): boolean; export declare function asArray(val: undefined | null | T | T[]): T[]; export declare function extend(a: A, b: B): A & B; export declare function extend(a: A, b: B, c: C): A & B & C; export declare function extend(a: A, b: B, c: C, d: D): A & B & C & D; export declare function extend(a: any, ...b: any[]): any; export declare function extendKeepGetter(a: A, b: B): A & B; export declare function extendKeepGetter(a: A, b: B, c: C): A & B & C; export declare function extendKeepGetter(a: A, b: B, c: C, d: D): A & B & C & D; export declare function extendKeepGetter(a: any, ...b: any[]): any; export declare function isGeneratorFunction(value: any): boolean; export declare function isPlainObject(value: any): boolean; export declare function isMutable(value: any): boolean; export declare function isPrimitive(value: any): boolean; export declare function freeze(value: T): T; export declare function hasOwnProperty(object: Object, propName: string): any; export declare function argsToArray(args: IArguments): any[]; export declare function escapeJsonPath(str: string): string; export declare function unescapeJsonPath(str: string): string; export declare function joinJsonPath(path: string[]): string; export declare function splitJsonPath(path: string): string[]; export declare function addHiddenProp(object: any, propName: string, value: any): void; export declare function addHiddenFinalProp(object: any, propName: string, value: any): void; export declare function addReadOnlyProp(object: any, propName: string, value: any): void; export declare const $isBool: ($: any, val: any) => any; export declare const $try: (...args: any[]) => any; export declare const parsePath: (path: any) => any; export declare function stripPatch(patch: IReversibleJsonPatch): IJsonPatch; export declare const checkPropType: ({type, data}: { type: any; data: any; }) => any; export declare function registerEventHandler(handlers: Function[], handler: Function): IDisposer; export declare const isPromise: (obj: any) => boolean;