Just to sum up :Bkey yes NGFF(m.2) On behalf of ,M key yes NVMe On behalf of ,B&Mkey It could be NGFF It could be NVMe

<>M.2 Module bayonet and provided interface

Key Number of bayonet pins provides interface
A8 - 15PCIe×2,USB 2.0,I2C and DP×4
B12 - 19PCIe×2,SATA,USB 2.0,USB

C16 - 23 Reserved for future use
D20 - 27 Reserved for future use
E24 - 31PCIe×2,USB
F28 - 35 Future memory interface (FMI)
G39 - 46 Reserved for custom use ( stay M.2 Not used in specification )
H43 - 50 Reserved for future use
J47 - 54 Reserved for future use
K51 - 58 Reserved for future use
L55 - 62 Reserved for future use
M59 - 66PCIe×4,SATA and SMBus
<>M.2 Module maximum component thickness

Type number front back
S11.20 mm Not applicable
S21.35 mm Not applicable
S31.50 mm Not applicable
D11.20 mm1.35 mm
D21.35 mm1.35 mm
D31.50 mm1.35 mm
D41.50 mm0.70 mm
D51.50 mm1.50 mm
B And M Positional M.2 Locking slot . Each needle is in the M.2 On both sides of the .

SATA Express A high level overview of software architecture , This also applies to M.2. It supports tradition SATA and PCI
Express storage device , include AHCI and NVMe As logical device interface .