Como importo o react-admin em um aplicativo React Typescript?

8

Estou tentando configurar um aplicativo react-admin em texto datilografado e não consigo descobrir como importar o react-admin. Isso me dá o erro (simples) de dizer

"Could not find a declaration file for module 'react-admin'. 
'.../node_modules/react-admin/lib/index.js' implicitly has an 'any' type.
Try `npm install @types/react-admin` if it exists or add a new declaration (.d.ts)
 file containing `declare module 'react-admin';`"

O @ types / react-admin não é um pacote válido, mas não encontrei mais ninguém reclamando sobre isso no github ou stackoverflow. Estou esquecendo de algo? Tanto quanto posso ver, a maioria das coisas já foi migrada para o texto datilografado.

Edit: Encontrou este que realmente faz referência ao problema com ts. No entanto, já faz cinco meses desde que eles disseram "levará meses"

Mike
fonte

Respostas:

6

A versão atual do react-admin não exporta a definição de tipos. Para fazer seu projeto compilar, você precisa criar um index.d.tsarquivo e modificar tsconfig.json.

├── @types
   └── react-admin
       └── index.d.ts
└── tsconfig.json
// tsconfig.json

{
  ...
  "compilerOptions": {
    ...
    "typeRoots": ["./@types"],
    ...
  },
  ...
}
// index.d.ts
declare module 'react-admin';
Maciek Przybylski
fonte
1
Obrigado, esta é a resposta certa. Como regra geral, declarar o módulo em index.d.ts geralmente funciona.
Mike