Manually created a more accurate TypeScript definition file