【发布时间】:2021-12-24 20:32:26
【问题描述】:
如何将我的*.ts 文件发布到仅包含类型和接口定义的 NPM?
没有导出的javascript函数、对象等
我应该删除这个吗? "main": "index.js", - 或 - 替换为 "main": "dist/types.ts",
我应该把*.ts编译成*.d.ts吗?
types.js:
export type Optional<T> = T|null|undefined
export type OptionalOrFalse<T> = Optional<T|false>
export type SingleOrArray<T> = T|T[]
export type DeepArray<T> = (T|DeepArray<T>)[] // === T[] | T[][] | T[][][] | ...
export type SingleOrDeepArray<T> = T|DeepArray<T> // === T | T[] | T[][] | T[][][] | ...
export type Factory<T> = () => T
export type ProductOrFactory<T> = T|Factory<T>
export type ProductOrFactoryDeepArray<T> = (ProductOrFactory<T> | ProductOrFactoryDeepArray<T>)[] // === T[]|F[] | T[][]|F[][] | T[][][]|F[][][] | ...
export type ProductOrFactoryOrDeepArray<T> = ProductOrFactory<T> | ProductOrFactoryDeepArray<T> // === T|F | T[]|F[] | T[][]|F[][] | T[][][]|F[][][] | ...
export type Dictionary<TValue> = { [key: string]: TValue }
export type ValueOf<TDictionary> = TDictionary[keyof TDictionary]
export type DictionaryOf<TDictionary> = Dictionary<ValueOf<TDictionary>>
【问题讨论】:
-
我认为您可能需要像命名空间一样导出,据我所知,该文件应称为“.d.ts”以用于类型定义
标签: typescript npm