( target: T, source: U, )
| 3 | * as well. |
| 4 | */ |
| 5 | export function assignToObject<T, U extends object>( |
| 6 | target: T, |
| 7 | source: U, |
| 8 | ): T & U { |
| 9 | Object.defineProperties( |
| 10 | target, |
| 11 | Object.keys(source).reduce((descriptors, key) => { |
| 12 | descriptors[key] = Object.getOwnPropertyDescriptor(source, key); |
| 13 | return descriptors; |
| 14 | }, Object.create(null)), |
| 15 | ); |
| 16 | return target as T & U; |
| 17 | } |
no test coverage detected