t2t-tools is type conversion tool of typescript.
npm install t2t-tools -D
Add to a d.ts declaration file
/// <reference types="t2t-tools" />
OR
add t2t-tools
to compilerOptions.types
inside tsconfig.json
{
"compilerOptions": {
"types": ["t2t-tools"]
}
}
import { Merge } from 't2t-tools'
type A = Merge<{ a: number; c: boolean }, { a: string; b: number }>
// A = { a: string; b: number; c: boolean }
方法名 | 解释 |
---|---|
ConstructorParameters | 获取一个构造函数的参数类型,返回一个元组 |
DeepNonNullable | 深度去除null和undefined |
DeepPartial | 深度设置为可选 |
DeepReadonly | 深度设置readonly |
DeepRequired | 全部设置为必选 |
Diff | 找出T类型中,与U类型不相同的属性 |
EnhancedRequired | 增强的必选,可以指定哪些key需要必选 |
Equals | 判断2个类型是否相等 |
Exclude | 从联合类型T中排除与联合类型U相同的部分 |
Extract | 从联合类型T中获取与联合类型U相同的部分 |
GetComplement | 获取联合类型T与其子类型中不同的部分 |
GetDifference | 获取联合类型T与联合类型U不同的类型 |
GetIntersection | 获取联合类型T与联合类型U的交叉类型 |
InstanceType | 获取一个构造函数的实例的类型 |
Intersection | 取出T中的属性,此属性同样存在于U |
Merge | 合并类型T与类型U |
MutableFunctionKeys | 获取一个类型中,属性为可选同时属性值的类型为函数的key |
MutableKeys | 返回非readonly的类型 |
NonFunction | 取出没有包含函数类型的参数组成一个新类型 |
NonFunctionKeys | 取出没有包含函数类型的参数的联合类型 |
NonNullable | 从联合类型T中排除null类型 |
NonNullAndUndefined | 去除联合类型T中的undefined和null类型 |
NonUndefined | 去除联合类型T中的undefined类型 |
Omit | 从类型T中,排除联合类型U中的属性 |
OmitByValue | 通过属性值的类型来排除属性 |
OmitByValueExact | 通过属性值的类型来精确排除属性 |
Optional | 可配置的设置可选属性 |
OptionalKeys | 取出所有可选的key |
OverWrite | 取出所有可选的key |
Parameters | 获取一个函数类型中,参数的元祖类型 |
Partial | 将T中的所有属性变为可选 |
Pick | 从类型T中获取一组,以联合类型K为基础的新类型 |
PickByValue | 通过类型值获取类型 |
Pop | 删除元祖中的最后一个类型 |
Primitive | 原始值 |
PromiseType | 获取Promise的resolve的值类型 |
Readonly | 将T中所有的属性,转变为readonly |
ReadonlyKeys | 获取readonly的类型 |
Record | 返回以联合类型K为属性,以T为属性值类型的新类型 |
Replace | 替换类型中一部分内容 |
Required | 将T中的所有类型变为必选 |
RequiredKeys | 取出所有必须的key |
ReturnType | 获取函数类型中,返回值的类型 |
Shift | 删除元祖中的第一个类型 |
Subtract | 获取子集中的差异 |
SymmetricDifference | 获取T类型中与U类型两者中不同的部分 |
Trim | 去除字符串两边的空格 |
TrimLeft | 去除字符串左边的空格 |
TrimRight | 去除字符串右边的空格 |
Unionize | 将类型T拆解为联合类型 |
UnionToIntersection | 联合类型转交叉类型 |
ValuesType | 获取对象、数组、类数组中的值的类型组成联合类型 |
GetArrayValue | 获取数组元素的类型 |