* Declare that `CKEDITOR` has event subscription interface for global events like `"instanceCreated"`. Documentation link: https://docs.ckeditor.com/ckeditor4/latest/api/CKEDITOR.html#Events * Declare `CKEDITOR.editor.getSelectedHtml` with overloads. Documentation link: https://docs.ckeditor.com/ckeditor4/docs/#!/api/CKEDITOR.editor-method-getSelectedHtml * Declare some arguments as optional Documentation links: * https://docs.ckeditor.com/ckeditor4/docs/#!/api/CKEDITOR.dom.event-method-preventDefault * https://docs.ckeditor.com/ckeditor4/docs/#!/api/CKEDITOR.dom.range-method-createBookmark2 * https://docs.ckeditor.com/ckeditor4/latest/api/CKEDITOR_dom_node.html#method-getAddress * https://docs.ckeditor.com/ckeditor4/docs/#!/api/CKEDITOR.dom.range-method-getCommonAncestor * Fix typings of `createBookmark[s][2]`: * Properly declare methods `createBookmarks[2]` instead of `createBookmark[2]` on `CKEDITOR.dom.rangeList`. Documentation link: https://docs.ckeditor.com/ckeditor4/latest/api/CKEDITOR_dom_rangeList.html#method-createBookmarks * Use return type of `bookmark[]` for "intrusive bookmarks" everywhere as in `CKEDITOR.dom.range.createBookmark`. * Declare parameters of `CKEDITOR.dom.selection.createBoomarks[2]` as required `Object`'s to follow the documentation. Documentation link: https://docs.ckeditor.com/ckeditor4/latest/api/CKEDITOR_dom_selection.html#method-createBookmarks * Declare method `CKEDITOR.dom.node.remove` mistakenly named `move` in the typings. * Declare `CKEDITOR.dom.range.setEnd{Before,After}` in addition to `setStart{Before,After}`. Documentation links: * https://docs.ckeditor.com/ckeditor4/docs/#!/api/CKEDITOR.dom.range-method-setEndAfter * https://docs.ckeditor.com/ckeditor4/docs/#!/api/CKEDITOR.dom.range-method-setEndBefore * Declare some `CKEDITOR.tools` Documentation links: * https://docs.ckeditor.com/ckeditor4/docs/#!/api/CKEDITOR.tools-method-copy * https://docs.ckeditor.com/ckeditor4/docs/#!/api/CKEDITOR.tools-method-isArray * https://docs.ckeditor.com/ckeditor4/docs/#!/api/CKEDITOR.tools-method-override * https://docs.ckeditor.com/ckeditor4/docs/#!/api/CKEDITOR.tools-method-prototypedCopy * Declare `CKEDITOR.plugins.registered`. Documentation link: https://docs.ckeditor.com/ckeditor4/docs/#!/api/CKEDITOR.resourceManager-property-registered * Declare `CKEDITOR.htmlParser.element.addClass` in addition to `removeClass` and `hasClass`. Documentation link: https://docs.ckeditor.com/ckeditor4/docs/#!/api/CKEDITOR.htmlParser.element-method-addClass * Declare `CKEDITOR.htmlParser.{element,fragment}.forEach`. Documentation links: * https://docs.ckeditor.com/ckeditor4/docs/#!/api/CKEDITOR.htmlParser.element-method-forEach * https://docs.ckeditor.com/ckeditor4/docs/#!/api/CKEDITOR.htmlParser.fragment-method-forEach * Coding style: Convert to single quotes and spaces for indentation. * Make `fileName` parameter of `CKEDITOR.plugins.addExternal` optional. Documentation link: https://docs.ckeditor.com/ckeditor4/latest/api/CKEDITOR_plugins.html#method-addExternal * Make `editable` as a class and declare its constructor. Documentation link: https://docs.ckeditor.com/ckeditor4/latest/api/CKEDITOR_editable.html#method-constructor