No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

deepCopy.d.ts 1.4KB

1234567891011121314151617181920212223242526272829303132333435
  1. /**
  2. * @license
  3. * Copyright 2017 Google LLC
  4. *
  5. * Licensed under the Apache License, Version 2.0 (the "License");
  6. * you may not use this file except in compliance with the License.
  7. * You may obtain a copy of the License at
  8. *
  9. * http://www.apache.org/licenses/LICENSE-2.0
  10. *
  11. * Unless required by applicable law or agreed to in writing, software
  12. * distributed under the License is distributed on an "AS IS" BASIS,
  13. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. * See the License for the specific language governing permissions and
  15. * limitations under the License.
  16. */
  17. /**
  18. * Do a deep-copy of basic JavaScript Objects or Arrays.
  19. */
  20. export declare function deepCopy<T>(value: T): T;
  21. /**
  22. * Copy properties from source to target (recursively allows extension
  23. * of Objects and Arrays). Scalar values in the target are over-written.
  24. * If target is undefined, an object of the appropriate type will be created
  25. * (and returned).
  26. *
  27. * We recursively copy all child properties of plain Objects in the source- so
  28. * that namespace- like dictionaries are merged.
  29. *
  30. * Note that the target can be a function, in which case the properties in
  31. * the source Object are copied onto it as static properties of the Function.
  32. *
  33. * Note: we don't merge __proto__ to prevent prototype pollution
  34. */
  35. export declare function deepExtend(target: unknown, source: unknown): unknown;