package commands type ArgumentType int const ( ArgString ArgumentType = iota ArgFile ) type Argument struct { Name string Type ArgumentType Required bool Variadic bool Description string } func StringArg(name string, required, variadic bool, description string) Argument { return Argument{ Name: name, Type: ArgString, Required: required, Variadic: variadic, Description: description, } } func FileArg(name string, required, variadic bool, description string) Argument { return Argument{ Name: name, Type: ArgFile, Required: required, Variadic: variadic, Description: description, } }