See here:
PowerStatus Class (System.Windows.Forms)[
^] - that gives you the info you can get.
But some of the items you want aren't that simple: Health for example isn't really a "status" item, it's something that you can only assess over a series of charge / use cycles, and it's really an indicator of battery failure rather than health - and I don;t think windows records that info!
You may be able to get more info by querying WIN32 directly:
Battery info from win32 api · GitHub[
^] but even then, I don;t think you will get everything you want that easily.