1. JS + JSDoc with TS server typing check in VSCode 2. pure TS only for runtime use 3. pure TS library for other people usage as third-party library 4. pure TS for extending third-party library use 參考資料 * https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-9.html#import-types * https://willh.gitbook.io/typescript-tutorial/basics/declaration-files * https://stackoverflow.com/questions/39040108/import-class-in-definition-file-d-ts