I tried to do this recently and I am sure that F # ignores the EditorBrowsable attribute.
The only way to make the declaration disappear from IntelliSense is to use ObsoleteAttribute , but it also means that you will get a warning when you really use this function. This is a bit unsuccessful, but it may be nice if you use this function only from some implementation file, where you can disable the warning:
Single file ad:
module Internal = [<System.ObsoleteAttribute>] let foo = 10
An implementation file that disables warnings and uses foo :
// Disable 'obsolete' warning
The attribute can be applied to modules, functions and types, so it is quite flexible.
source share