typescript .d.ts generation