0.1.2 • Published 1 year ago

t2t-tools v0.1.2

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

t2t-tools

t2t-tools is type conversion tool of typescript.

Install

npm install t2t-tools -D

Usage

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"]
  }
}

Example

import { Merge } from 't2t-tools'

type A = Merge<{ a: number; c: boolean }, { a: string; b: number }>

// A = { a: string; b: number; c: boolean }

API

方法名解释
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获取数组元素的类型
0.1.2

1 year ago

0.1.1

2 years ago

0.1.0

2 years ago

0.0.1

2 years ago