TypeScript custom declaration files for untyped npm modules

后端 未结 3 536
情深已故
情深已故 2021-01-31 14:05

I am consuming a React component called shiitake from npm into my project where I use TypeScript. That library does not have TypeScript declarations so I thought I would write o

3条回答
  •  清酒与你
    2021-01-31 14:40

    The declaration declare module 'shiitake'; should be in a global scope. i.e. a top level declaration in a non module (where a module is a file with at least one top level import or export).

    A declaration of the form declare module '...' { } in a module is an augmentation. For more details see Typescript Module Augmentation.

    So you want this file to look like:

    declare module 'shiitake' {
    
        import * as React from 'react';
    
        export interface ShiitakeProps {
            lines: number;
        }
    
        export default class Shiitake extends React.Component { 
        }
    }
    

提交回复
热议问题