Я хочу знать, возможно ли получить типизацию модуля в каталоге основного источника электронов из каталога источника рендерера при использовании модуля remote
электрона для IP C.
Моя основная цель чтобы моя среда разработки могла давать мне подсказки по автозаполнению типов экспорта модуля, когда я работаю с файлами исходных каталогов рендерера. Если это имеет значение, я использую и IntelliJ, и vscode.
Например, предположим, что структура папок приложения с электронной реакцией следующая:
/src
|-- index.tsx // Entry point for building the renderer app
/lib
|-- electron.ts // main entry point to initialize electron app
|-- api/ // The module that implements the API contract to the front end
|-- index.ts
Предположим, экспорт api / index.ts одну константу, которую я хочу сделать доступной из приложения React.
export const foo = 1;
Из исходных файлов рендерера (React) я могу получить доступ к foo
следующим образом:
const api = window.require("electron").remote.require("./api")
console.log(api.foo);
Однако предположительно из-за require("./api")
IDE не может помочь мне понять, что доступно из этого модуля. Он также не может определить, что foo
является числом.
Как я могу помочь компилятору / IDE для машинописи определить тип API?
Можно ли даже помочь по изображению компилятора машинописи что ...remote.require("./api")
на самом деле модуль API в /lib/api
?
В этом случае я определяю успех как компилятор, который говорит мне, что api.bar
не определен, и говорит, что api.foo
в порядке.