• 根据新键值对重命名对象的key,并生成一个新的对象

    Type Parameters

    • T extends object

    • K extends string | number | symbol

    • O extends {
          [k: string]: K;
      }

    • R extends Omit<T, O[keyof O]>

    Parameters

    • originObj: T
    • keyMap: O

    Returns { [ k in keyof O]: T[O[k]] } & R