I'm afraid you are out of luck about this one...
LabVIEW has a powerful feature, the type descriptor, that closely follows the data everywhere it goes (unless you flatten it to string).
There are VI methods
Get All Control Values and
Get All Control Values (Variant) that retrieves data and type descriptors of all controls/indicators on a front panel. These will expose your typedefs even if they are hidden on the front panel.
The only way I can see to avoid that is to use the typedefs as constants on the diagram and when you're ready to distribute the code, disconnect the the constants from their type definition controls so it won't be needed for distribution. The LabVIEW 7 Application Builder does that automatically (typede
f disconnection) when building an application so there is a way to avoid to do that manually. If it is sufficient for your requirements, just disconnection from typedef controls before VI distribution would prevent you from distributing the typedef control VIs.
Even then, a determined hacker could look at the VI code (code on file, not the locked diagram) to identify type descriptors but I doubt the non-disclosure agreement covers for that.