Typescript 将函数重载添加到现有节点_模块中的现有类型

Typescript 将函数重载添加到现有节点_模块中的现有类型,typescript,typescript-typings,Typescript,Typescript Typings,我想在import{FormGroup}中的FormBuilder.group(..)函数中添加重载声明,从“@angular/forms”: 这似乎有效: declare module '@angular/forms' { interface FormBuilder { group<T extends object>( controlsConfig: { [key in keyof T]: any; }, options?: AbstractCo

我想在
import{FormGroup}中的
FormBuilder.group(..)函数中添加重载声明,从“@angular/forms”

这似乎有效:

declare module '@angular/forms' {
  interface FormBuilder {
    group<T extends object>(
      controlsConfig: { [key in keyof T]: any; },
      options?: AbstractControlOptions | { [key: string]: any; } | null
    ): FormGroup;
  }
}
我遇到类似于找不到名称“Enum”之类的错误。或找不到名称“Public”

我猜通过使用
import
语句,typescript可以将文件识别为ES6模块。如何修复它

import { AbstractControlOptions, FormGroup } from "@angular/forms";

type Public<T> = { [K in keyof T]: T[K] };
type Enum<T extends string> = { [K in T]: K};


declare module '@angular/forms' {
  interface FormBuilder {
    group<T extends object>(
      controlsConfig: { [key in keyof T]: any; },
      options?: AbstractControlOptions | { [key: string]: any; } | null
    ): FormGroup;
  }
}