0

我目前正在尝试为 esbuild 构建类型保护生成器库/插件,但是我的 typescript 编译器 API 知识不足以解决我的问题。

我的库导出了一个名为的函数isA,该函数接受一个类型参数和一个对象:

import {isA} from 'esbuild-type-guards'

type InputType = {
  str1: string
  str2: string
  num1: number
  bol1: boolean
  obj1: {
   str1: string
   num1: number
  }
}

const test = (data: InputType) => {
  if(!isA<InputType>(data)) throw new Error('Validation failed')
  // ...
}

然后 esbuild 插件应该找到该isA函数的所有引用/调用并将其转换为类型保护。

我的问题是:有没有一种简单的方法可以找到isAAST 中的所有调用并获取(/解析)它们的类型参数和参数?

提前致谢!

4

0 回答 0