James Newton James Newton - 19 days ago 5
TypeScript Question

Import interface in Angular 2

In a Meteor app that uses Angular 2, I want to create a custom data type, something like this:

interface MyCustomType {
index: number;
value: string;
}


I then want to use this custom type in multiple files. I've tried creating a separate file named "mycustom.type.ts", with the following content:

export interface MyCustomType {
index: number;
value: string;
}


I then attempt to import this type so that it can be used in another file:

import MyCustomType from "./mycustom.type"


However, Atom reports the following error:

TS Error File '/.../mycustom.type.ts' is not a module ...


How should I be declaring and importing types, so that they can be used in multiple places?

Answer

You should rather import it like that :

import { MyCustomType } from './mycustom.type';

don't forget the { and }.