flag.StringVar,以struct作为目标

I'm attempting to capture flags and the parsed values into a struct. What I have below works, but only on strings. When I encounter a boolean it fails so I'm trying to use an interface type without success.

type Commands struct {
    appDescription string
    flagsets map[string]Command
}

type Command struct {
    Flagset *flag.FlagSet
    parsed map[string]*string
}


command.parsed = make(map[string]string)

func main() {
   var command Command
   command.parsed = make(map[string]string)

   flagName := "appImportFlags"
   command.Flagset = flag.NewFlagSet(flagName, flag.ExitOnError)    


   command.Flagset.StringVar(command.parsed["test"], "arg", "", "description")
}

This works, but when I use a Boolean as in:\

   command.Flagset.Bool(command.parsed["test"], "arg", "", "description")

It fails because parsed is a string. So I change it to an interface:

type Command struct {
        Flagset *flag.FlagSet
        parsed map[string]*interface{}
    }

Then it says I can't use a type *interface{} as a *string