Update
I've tried these approaches so far:
// inside ComponentName folder
// index.d.ts
// import {ComponentName} from '/path/to/ComponentName/folder'
import * as React from 'react';
export = ComponentName
export as namespace ComponentName;
declare namespace ComponentName {
interface ComponentProps { }
const ComponentName: React.SFC<ComponentProps> // for stateless functional components
}
Alternative #2
// inside ComponentName folder
// index.d.ts
// import ComponentName from "ComponentName";
declare module "ComponentName" { // play around with this ex: `projectName/ComponentName`
import * as React from 'react';
interface ComponentProps { }
const ComponentName: React.SFC<ComponentProps>; // stateless fn component
export default ComponentName; // play with this to suit your export flavor ex: export {ComponentName}
}
Test it works by creating a .tsx file and importing the components.
Needs more work for intellisense in editors but so far it shows missing props error.
.d.tsfrom your.tsfiles or maintain your own.d.tsfiles?.tsfiles yet, so I think maybe maintain my own for now.