Members that extend interface, delegate or enum types must be placed in a module separate to the definition of the type. ...

Members that extend interface, delegate or enum types must be placed in a module separate to the definition of the type. This module must either have the AutoOpen attribute or be opened explicitly by client code to bring the extension members into scope.