Javascript 流中类型和变量之间的名称冲突

Javascript 流中类型和变量之间的名称冲突,javascript,flowtype,Javascript,Flowtype,我正在使用ImmutableJS(4.0.0-rc.12)和流类型检查器。我创建了我的项目 我想定义一个类型,其中工厂和它生产的类型具有相同的名称 // @flow type PointProps = {x: number, y: number} const defaultPoint: PointProps = {x: 0, y: 0} export const Point = Record(defaultPoint) export type Point = RecordOf<PointP

我正在使用ImmutableJS(4.0.0-rc.12)和流类型检查器。我创建了我的项目

我想定义一个类型,其中工厂和它生产的类型具有相同的名称

// @flow
type PointProps = {x: number, y: number}
const defaultPoint: PointProps = {x: 0, y: 0}
export const Point = Record(defaultPoint)
export type Point = RecordOf<PointProps>
/@flow
键入PointProps={x:number,y:number}
const defaultPoint:PointProps={x:0,y:0}
导出常量点=记录(默认点)
导出类型点=记录
我认为类型名和变量名将由编译器分别跟踪。但是,babel说重复声明“点”,flow说重复导出点

这些名字没有被单独追踪有什么原因吗?这是我希望有一天能看到的功能吗