Module parse failed: The keyword 'interface' is reserved 
		
		
		
		Пробовал загрузить собственный пакет в npm но после скачивания выдаёт ошибку "Module parse failed: The keyword 'interface' is reserved". 
	Информация из package.json 
"main": "src/index.tsx",
  "files": [
    "src"
  ],
  "devDependencies": {
    "@typescript-eslint/eslint-plugin": "^7.3.1",
    "@typescript-eslint/parser": "^7.3.1",
    "eslint": "^8.57.0",
    "eslint-plugin-import": "^2.29.1",
    "eslint-plugin-prettier": "^5.1.2",
    "eslint-import-resolver-typescript": "^3.6.1",
    "eslint-plugin-react": "^7.34.1",
    "eslint-plugin-react-hooks": "^4.6.0"
  },
  "dependencies": {
    "react": "^18.0.0",
    "typescript": "^5.5.4"
  }
Долго искал решение этой проблемы но развёрнутого ответа нигде не было. Так же пробовал смотреть как это работает в других пакетах, но там всё тоже что указано сверху. Может кто-то может рассказать как решить эту проблему?  | 
	
		
 Нужно добавить опцию типа transpileDependencies\transpilePackages(или что там у твоего сборщика) и указать там твой пакет. 
	По умолчанию сборщики не компилят ничего в node_modules, подразумевая что там уже скомпиленый код. P.S. В идеале и ты должен свой пакет в npm фигачить в скомпилированном виде, чтоб избежать возможных несовместимостей версий ts в будущих проектах, но тут тебе видней.  | 
	
		
 Цитата: 
	
  | 
	
		
 Raadsert, ответа нет. Так как нет в js никакого однозначного "компилятора". Разве что: "как настроишь - так и будет". 
	Если говорить о сборщиках(webpack, vite, rollup...), то они обычно собирают таки в один файл. Если говорить о транспиляторе тайпскипта(tsc), то он в голом виде транспилирует только указанный файл или все файлы раздельно.  | 
	
		
 Цитата: 
	
 Цитата: 
	
  | 
	
		
 Хз, не пользовался. Запусти да посмотри на результат. 
	Существует множество разных вариантов поставки: как целый однофайловый бандл, так и набор модулей с импортами. Браузер умеет из укоробки работать с модулями раскидными по файлам в формате esm, node умеет работать с esm и common'js. Существует так же множество иных не-нативных систем, типа amd или system.js, и множество способов собирать в один файл.  | 
| Часовой пояс GMT +3, время: 16:40. |