我有一个仅仅受到index.d.ts
文件(TypeScript定义文件)泄露的回购,我希望在我拥有的一些回购中共享。类型定义文件中唯一的声明是这样的接口:
interface MyInterface {
thisSuperCoolFunction(): void;
}
不幸的是,定义回购和我使用的所有其他回购都是私有的。是否可以向@types
提交一个私人npm打字项目,以便安装它只会有效,但也不会将其公开给其他人?
注意:不是typings回购,只有@types
在npm。
答案 0 :(得分:4)
您无需在任何地方发送您的打字。您可以使用git url as dependency或local path
假设您要创建@types/secret-library
。您的类型位于文件index.d.ts
。
使用package.json
作为包名称
@types/secret-library
// package.json
{
"name": "@types/secret-library",
"private": true,
"types:" "index.d.ts"
}
将index.d.ts
和package.json
同时推送到某些代理商,例如git.acme.com/secret-project.git
。
现在,在您的其他项目中,您可以将此存储库作为依赖项
引用// package.json
{
"name": "doom-machine",
"private": true,
"dependencies":{
"@types/secret-library": "git://git.acme.com/secret-project.git"
}
}
如果index.d.ts
和package.json
都在目录/home/evil-genius/doom-saucer
您可以将此路径引用为依赖项
// package.json
{
"name": "doom-machine",
"private": true,
"dependencies":{
"@types/secret-library": "file:/home/evil-genius/doom-saucer"
}
}