TypeScript-作为类型导入和导出接口的作用是什么?

TypeScript-作为类型导入和导出接口的作用是什么?,typescript,types,import,interface,export,Typescript,Types,Import,Interface,Export,TS文档提到了接口和类型别名,但我似乎找不到关于将接口导入或导出为type的详细信息,希望得到一些澄清: 例如,接口可以导出为: //位于./MyInterface.ts中 导出接口MyInterface { foo:string; 条:()=>编号; } 导出类型{MyInterface as MyInterfaceType} 并且可以导入为: 从“/MyInterface”导入{MyInterface} 或 从“/MyInterface”导入类型{MyInterface} 或 从“/MyI

TS文档提到了接口和类型别名,但我似乎找不到关于将接口导入或导出为
type
的详细信息,希望得到一些澄清:

例如,接口可以导出为:

//位于./MyInterface.ts中
导出接口MyInterface
{
foo:string;
条:()=>编号;
}
导出类型{MyInterface as MyInterfaceType}
并且可以导入为:
从“/MyInterface”导入{MyInterface}


从“/MyInterface”导入类型{MyInterface}


从“/MyInterface”导入{MyInterfaceType}


从“/MyInterface”导入类型{MyInterfaceType}



有人能解释每个接口导入之间的行为差异吗?

TypeScript 3.8为

仅导出带有别名的
MyInterface
类型
MyInterfaceType

导出类型
仅提供可用于类型上下文的导出,还可从TypeScript的输出中删除

这是一个名为export的ECMAScript 2015模块

从ECMAScript 2015开始,JavaScript有一个模块的概念。TypeScript也有这个概念

任何声明(如变量、函数、类、类型别名或接口)都可以通过添加export关键字导出


请参见

类型脚本3.8为

仅导出带有别名的
MyInterface
类型
MyInterfaceType

导出类型
仅提供可用于类型上下文的导出,还可从TypeScript的输出中删除

这是一个名为export的ECMAScript 2015模块

从ECMAScript 2015开始,JavaScript有一个模块的概念。TypeScript也有这个概念

任何声明(如变量、函数、类、类型别名或接口)都可以通过添加export关键字导出


请参见

首先,非常感谢您提供了“仅键入导入和导出”的链接。我自己永远也找不到!但接口不是也从TypeScript输出中删除了吗?我认为接口本质上是可以由其他接口扩展和/或由类实现的类型。虽然literal
type
s与接口类似,但它们不能扩展(但可以通过联合进行组合)并绑定到对象或原语?首先,非常感谢您提供了指向“仅类型导入和导出”的链接。我自己永远也找不到!但接口不是也从TypeScript输出中删除了吗?我认为接口本质上是可以由其他接口扩展和/或由类实现的类型。虽然literal
type
s类似于接口,但它们不能扩展(但可以通过联合进行组合)并绑定到对象或原语?
export type { MyInterface as MyInterfaceType }
export interface MyInterface
{
    foo: string;
    bar: () => number;
}