/**
 * Clone
 *
 * Recursive function that creates a deep copy of any object
 *
 * @constructor
 * @param {any} source - Source object
 * @param {any} [target] - Target object
 * @param {boolean} [breakCircular] - Replace circular references with string '[Circular]'
 * @param {trace} [trace] - Used internally for tracing circular references
 * @returns {any}
 */
export function clone(source: any, target?: any, breakCircular?: boolean, trace?: any): any;
export class clone {
    /**
     * Clone
     *
     * Recursive function that creates a deep copy of any object
     *
     * @constructor
     * @param {any} source - Source object
     * @param {any} [target] - Target object
     * @param {boolean} [breakCircular] - Replace circular references with string '[Circular]'
     * @param {trace} [trace] - Used internally for tracing circular references
     * @returns {any}
     */
    constructor(source: any, target?: any, breakCircular?: boolean, trace?: any);
}
