I'm currently using a library that was licensed under the GNU General Public License (particularly GPL v3.0). This library consists mostly of types for software that is also under the GPL (but not written in TypeScript). My code is currently written in the Apache License 2.0, which is only one-way compatible with the GPL license.
As far as I'm aware, TypeScript doesn't actually emit information about types when transpiling to JavaScript. In this case (to my knowledge), the output program never actually carries any of the original library source which is under the GPL. However, I'm still technically using those types whenever transpiling code (and likewise is marked as a dev dependency in my package.json
file).
Does this mean I can keep my code licensed under the Apache License, or is this indirect relation enough to cause a GPL violation (and no longer counts as mere aggregation)? Additionally, will importing the type (through import
) possibly have any difference compared to using types declared by the library in global scope (by placing the library within the tsconfig.json
includes
section)?