Editor and ways recommendation for Python addon development
There are two general approaches:


Use an auto-generate script to make stubs. The best one is probably fake_bpy, but that has shortcomings like missing bpy.context.
Compile as a python module. This gives accurate completion, but the compilation process is not well documented and I haven’t managed to get it to work consistently. Some instructions can be found here.


The general state of tooling support for Python scripting right now is rather poor, so your best bet is to keep the API docs close at hand.