It’s an abstraction in case we ever want to support other backend storage types, let it be S3 or something else.
There are actually different filesystem implementations inside of syncthing, to combat various edge cases (timestamp inaccuracy, case insensitivity etc), but not something the user needs to control/adjust via that configuration value.