Check out a guide to scripted extensions in the newest version by Luciano Iurino.
A short piece to get you interested:
Scripted Extensions via Blueprint scripting need to be done via Blutility. If you don’t know what it is, Blutility is just a special type of Blueprint that helps create custom Editor-callable functions and events.
In order to use Blutility, you need to enable it in the Editor Preferences:
[Optional] Some of the tools exposed for the Editor scripting will only appear if you enable the Editor Scripting Utilities in the Plugin section:
First we need to create a new Blutility asset:
When asked for the parent class, just select ActorActionUtility if you want to extend the Editor to handle Actors in the scene:
Once created, if you want to open it for editing, don’t just double-click on it: it would just open an empty window. Instead, right-click on it in the Content Browser and click on Edit Blueprint:
Make sure to study the full guide here.