angular 2 typescript An implementation cannot be declared in ambient contexts

An implementation cannot be declared in ambient contexts

You most probably have your file named as foo.d.ts instead of foo.ts. That marks it as a declaration file (more on that https://basarat.gitbooks.io/typescript/content/docs/types/ambient/d.ts.html) and you cannot put logic in these as you are declaring what logic exists elsewhere.


I ran across this rather unusual compile-time Typescript error error TS1183: An implementation cannot be declared in ambient contexts.

It started after I had copy/pasted some sourcecode that had export declare class. I noticed when I changed it to export class this error went away.

Change This:

export declare class Foo {
}

To This:

export class Foo {
}

I fixed it by doing: npm install rxjs


I think this happened to me, because I accidentally edited one of the files in node_modules. This fixed it for me:

rm -r node_modules
npm install