The tsc
compiler always happily compiles console.log("foo")
. Where is the variable console
declared? The compiler accepts this program even with all lib
s turned off in my tsconfig.json
. So is console
assumed to be universal? What other variables are always declared? More generally, how can I find out what other declarations exist, and where they are coming from? (The only debugging flag I can find is --extendedDiagnostics
, but it seems almost useless.)
Where does TypeScript find its variable declarations?
301 Views Asked by jameshfisher At
1
There are 1 best solutions below
Related Questions in TYPESCRIPT
- Angular Show All When No Filter Is Supplied
- Using pagination on a table in AngularJS
- State with different subviews
- Getting and passing MVC Model data to AngularJS controller
- Implementing prerender.io middleware in sails.js
- Token based authorization in nodejs/ExpressJs and Angular(Single Page Application)
- AngularJS, Google App Engine and URLrewrite
- send data from table to another page into forms
- How to write tests for classes with inheritance
- angularJS sending OPTIONS instead of POST
Related Questions in DECLARATION
- Angular Show All When No Filter Is Supplied
- Using pagination on a table in AngularJS
- State with different subviews
- Getting and passing MVC Model data to AngularJS controller
- Implementing prerender.io middleware in sails.js
- Token based authorization in nodejs/ExpressJs and Angular(Single Page Application)
- AngularJS, Google App Engine and URLrewrite
- send data from table to another page into forms
- How to write tests for classes with inheritance
- angularJS sending OPTIONS instead of POST
Related Questions in TYPESCRIPT-TYPINGS
- Angular Show All When No Filter Is Supplied
- Using pagination on a table in AngularJS
- State with different subviews
- Getting and passing MVC Model data to AngularJS controller
- Implementing prerender.io middleware in sails.js
- Token based authorization in nodejs/ExpressJs and Angular(Single Page Application)
- AngularJS, Google App Engine and URLrewrite
- send data from table to another page into forms
- How to write tests for classes with inheritance
- angularJS sending OPTIONS instead of POST
Related Questions in DEFINITELYTYPED
- Angular Show All When No Filter Is Supplied
- Using pagination on a table in AngularJS
- State with different subviews
- Getting and passing MVC Model data to AngularJS controller
- Implementing prerender.io middleware in sails.js
- Token based authorization in nodejs/ExpressJs and Angular(Single Page Application)
- AngularJS, Google App Engine and URLrewrite
- send data from table to another page into forms
- How to write tests for classes with inheritance
- angularJS sending OPTIONS instead of POST
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
TypeScript is distributed with a set of
lib.*.d.ts
declaration files which describe the standard library APIs provided by various JavaScript runtimes.console
is described therein.The language determines which of these files are applicable based on the
--target
option, automatically including them in the compilation context.For example
"target": "es5"
will cause the compiler to includelib.es5.d.ts
in the compilation context.You can explicitly configure which of these built-in declaration files should be referenced using the
--lib
option.For example
"lib": ["es2015", "dom", "dom.iterable"]
.If you use the navigation features of your IDE, such "go to definition" in Visual Studio Code, will navigate to the to the decoration for console, allowing you to see where it is.
Additional declaration files, such as those provided by various
@types
packages, may also contribute potentially overlapping declarations describing JavaScript runtime APIs. This is actually good behavior because it allows packages to describe additional capabilities they provide.For example
@types/node
contains such decorations.When declared by 3rd party packages, the inclusion of these additional global declaration files is controlled by the
--types
option as opposed to the--lib
option.For example
"types": ["node"]
.The inclusion of these types is not impacted by the
--target
option.