What is the main usage of index.d.ts in Typescript?

Typescript

Typescript Problem Overview


I have seen some projects declaring all the types in index.d.ts. So that the programmer do not need to explicitly import the type from other files.

import { TheType } from './somefile.ts'

Is that the correct usage of index.d.ts file? I'm not able to find anything in the official documentation.

Typescript Solutions


Solution 1 - Typescript

*.d.ts files are used to provide typescript type information about a module that's written in JavaScript, for example underscore / lodash / aws-sdk.

This will allow you to use the javascript modules without the need to convert them to ts without getting any type error on you code.

for example if you have a folder myAwesomeLib, with index.js and index.d.ts files

on your code you will be able to import the code with

import { SomeMethod } from './myAwesomeLib';

or

import { SomeMethod } from './myAwesomeLib/index';

your typescript will rely on the .d.ts file to find the correct types for the SomeMethod

Edit: More about Declaration files https://basarat.gitbooks.io/typescript/docs/types/ambient/d.ts.html

Solution 2 - Typescript

It's Similar to .h file in C Or you may imagine an interface subsystem in any other language like java or php

The file contains function prototype (declaration & typing) of an underlying library

for reference on how to generate a .d.ts file from a library.js reefer https://www.typescriptlang.org/docs/handbook/declaration-files/dts-from-js.html

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionYong FeiView Question on Stackoverflow
Solution 1 - TypescriptdegeView Answer on Stackoverflow
Solution 2 - TypescriptSubrat Kumar PalharView Answer on Stackoverflow