--- title: IKeymanKeyboard Interface --- ## Introduction The `IKeymanKeyboard` interface describes a keyboard in Keyman Engine for Windows API. It is a base class and describes both installed keyboards and keyboard files. ## Interface Hierarchy `IDispatch` > [`IKeymanObject`](../IKeymanObject) > > > **`IKeymanKeyboard`** > > > > > [`IKeymanKeyboardFile`](../IKeymanKeyboardFile) > > > > > > > [`IKeymanKeyboardFile2`](../IKeymanKeyboardFile2) > > > > > > [`IKeymanKeyboardInstalled`](../IKeymanKeyboardInstalled) ## Properties [`Bitmap`](Bitmap) read only : Returns the [`&bitmap`](/developer/language/reference/bitmap) icon from the keyboard file as an `IPicture`. [`Copyright`](Copyright) read only : Returns the [`©right`](/developer/language/reference/copyright) string from the keyboard file. [`DefaultBCP47Languages`](DefaultBCP47Languages) read only : Returns the set of default language ids for the keyboard as a space-separated list of BCP 47 codes. The first code in the list is the primary language. [`DefaultHotkey`](DefaultHotkey) read only : Returns the default hotkey for the keyboard. [`DefaultPrimaryLanguage`](DefaultPrimaryLanguage) read only : Returns the default primary language id for the keyboard. [`DefaultWindowsLanguages`](DefaultWindowsLanguages) read only : Returns the set of default language ids for the keyboard as a space-separated list of hexadecimal strings. [`Encodings`](Encodings) read only : Returns the set of encodings supported by the keyboard layout. [`Filename`](Filename) read only : Returns the fully-qualified filename of the keyboard file. [`ID`](ID) read only : Returns the identifier for the keyboard, which is the base name of the keyboard file without extension. [`LayoutType`](LayoutType) read only : Returns the layout type of the keyboard as specified by the [`&mnemoniclayout`](/developer/language/reference/mnemoniclayout) store. [`Message`](Message) read only : Returns the [`&message`](/developer/language/reference/message) string from the keyboard file. [`Name`](Name) read only : Returns the [`&name`](/developer/language/reference/name) from the keyboard file. [`Version`](Version) read only : Returns the [`&keyboardversion`](/developer/language/reference/keyboardversion) string from the keyboard file. ## Methods [`GetCharsUsed()`](GetCharsUsed) : Returns a string with every Unicode character used or generated by the keyboard.