# Update editor-client type definitions

**URL:** <https://discourse.nodered.org/t/update-editor-client-type-definitions/101754>\
**Category:** Developing Nodes\
**Created:** [8 September 2026 20:03 UTC](https://discourse.nodered.org/t/update-editor-client-type-definitions/101754 "2026-09-08T20:03:48Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![GogoVega](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/gogovega/32/71313_2.png) [@GogoVega](https://discourse.nodered.org/u/GogoVega)\
**Post date:** [8 September 2026 20:03 UTC](https://discourse.nodered.org/t/update-editor-client-type-definitions/101754/1 "2026-09-08T20:03:48Z")

</div>

I am currently updating the editor's types (`@types/node-red__editor-client`).  
This is a very huge update, and I hope this [PR](https://github.com/DefinitelyTyped/DefinitelyTyped/pull/75531) can be merged quickly 🤞

Two important points:

- The types are based on v5, but I cannot guarantee their accuracy or completeness. Let's not ask me for miracles just yet 😅
- The internal types have also been documented.This is intentional. While these types are not intended for use by third-party developers, there may be specific use cases where using them is justified.

I hope this update will be useful to as many people as possible. Please feel free to comment if you spot any inconsistencies or missing types!

PS: It would be good if the NR documentation encouraged developers to use types to help them to code.

Enjoy!

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [8 September 2026 21:42 UTC](https://discourse.nodered.org/t/update-editor-client-type-definitions/101754/2 "2026-09-08T21:42:08Z")

</div>

Not sure I fully understand @types - is `@types/node-red__editor-client` an integral part of `@types/node-red`?

I use that in uibuilder but I've always found that its definitions are not complete by quite a long way. So much so that I've created my own manual `typedefs.js` file with JSDoc definitions for key Node-RED core types.

 ![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/c/0/c01140c79f74037f83161e05df5db04e8fc0a5af.png)

And used like this (example from the uibuilder node runtime)

 ![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/a/0/a09f2cd382061425480876cf8014071bc8cd6045.png)

It certainly would be great to have complete and official, maintained types.

---

<div class="post-metadata">

**Author:** ![GogoVega](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/gogovega/32/71313_2.png) [@GogoVega](https://discourse.nodered.org/u/GogoVega)\
**Post date:** [9 September 2026 08:13 UTC](https://discourse.nodered.org/t/update-editor-client-type-definitions/101754/3 "2026-09-09T08:13:03Z")

</div>

> [@TotallyInformation](#):
>
> is `@types/node-red__editor-client` an integral part of `@types/node-red`?

Yes, it's one dependency of `@types/node-red`.

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [9 September 2026 18:15 UTC](https://discourse.nodered.org/t/update-editor-client-type-definitions/101754/4 "2026-09-09T18:15:26Z")

</div>

Cool. Thanks for working on this.
