DataviewJS, Obsidian API and IDE

Is there a way to create DataviewJS code together with the Obsidian API in an IDE?

I’m struggling to figure out all the functions which are available to create DataviewJS scripts.

For example… dv.pages().xxxxx

I know that there are functions I can use for xxxx but I don’t know which one and need to search all over the place for them.

Similar is the case when I need information from Obsidian directly or even normal JS code.

An IDE could normally help in that case with code completion or showing the type of the object which is returned.

Any idea?