As you know you can get a list of drives connected via SATA using wmic:
wmic diskdrive list
This however doesn't seem to work with M.2 SSDs. Is there any equivalent for M.2 SSDs that is not vendor specific?
In Windows 10 (maybe works in 8 already but definitely not in windows 7) you can use
wmic /namespace:\\root\microsoft\windows\storage path msft_disk get Model,BusType
BusType of 17 means NVMe, 11 Sata, 7 USB (full list can be found here)
Win 10 based WinPE does also support this but needs additional packages (The classes are part of Windows PowerShell/WinPE-StorageWMI which has some additional dependencies).