If you're exposing these functions as utilities, it makes more sense to me to expose them at a higher level.

For example it seems unlikely to me that someone using these utils wants an unvalidated targetName. However they may wish a deployTarget.