There are a few things to keep in mind when using visibility flags: You can only use visibility flags for classes and structs, not for variables or functions. The flag can be private, protected, or public. It cannot be any other value. If you want a class or struct to be visible outside of the current module, you need to mark it as public. If you want it to be visible only within the current module, mark it as private. If you want it to be accessible by both the current module and external modules, mark it as protected.