- Use path mappings in tsconfig.json to resolve module typings
- Only use ambient mobules for global API's
- Move single-file modules to a subdir with the same name so that
we can provide a hand-written typing next to it (via package.json)
- Delete all mentions of tns-core-modules.d.ts
- Delete reference d.ts assembly build steps. Not needed anymore.
- HACK! Use a <reference> for global typings in application.d.ts
to avoid publishing a separate @types/tns-core-modules package.
- Rename declarations.d.ts to tns-core-modules.d.ts to preserve
JS project mappings in references.d.ts (the only place we use those)
Fixes name clashes and uses Node-compatible typings where possible.
Changes:
- setTimout et al now return NodeJS.Timer instead of number
- No "console" module anymore. Everyone uses it through global.console
anyway.
- We have a typed "global" instance with exposed properties now. Any
"freeform" accesses must go through a `(<any>global).blah` cast.
- remove tns-core-modules.{base,es6,es2015}.d.ts. Those were needed
as workarounds for the ES6/DOM/Node type clashes.