0.3.2 • Published 5 years ago

@voxylu/babel-plugin-flow-to-typescript v0.3.2

Weekly downloads
-
License
-
Repository
github
Last release
5 years ago

@voxylu/babel-plugin-flow-to-typescript

Babel plugin to convert Flow code into TypeScript

How to use

$ yarn add @babel/cli @babel/core
$ yarn add @voxylu/babel-plugin-flow-to-typescript

# you must use babel@^7.x.x
$ yarn babel --version
7.2.3 (@babel/core 7.2.2)

$ yarn babel --plugins @voxylu/babel-plugin-flow-to-typescript ${SRC_FLOW_FILE} -o ${DEST_TS_FILE}

Implementation status

Supported?SyntaxFlowTypeScript
Maybe typelet a:?numberlet a: number \| null \| undefined
Void typevoidvoid
Mixed typemixed{}
Function type(A, B) => C(x1: A, x2: B) => C
Exact type{\| a: A \|}{ a: A }
Indexers{ [A]: B }{ [a: A]: B }
Existential typeMap<*, *>Map<any, any>
Opaque typesopaque type A = Btype A = B
Varianceinterface A { +b: B, -c: C }interface A { readonly b: B, c: C }
Type parameter boundsfunction f<A: string>(a:A){}function f<A extends string>(a:A){}
Cast(a: A)(a as A)
type/typeof importimport type A from 'module'import A from 'module'
\$Keys$Keys<X>keyof X
\$Values$Values<X>X[keyof X]
\$ReadOnly$Readonly<X>Readonly<X>
\$Exact$Exact<X>X
\$Diff$Diff<X, Y>Pick<X, Exclude<keyof X, keyof Y>>
\$PropertyType$PropertyType<T, k>T[k]
\$ElementType$ElementType<T, k>T[k]
typeof operatortypeof footypeof foo
JSX--
Tuple type[number, string][number, string]
Exact type{|a: T|}{a: T}
Type aliastype A = stringtype A = string