added TypeScript definitions for Key and CursorKeys object