package commands import ( "context" "github.com/zmb3/spotify/v2" "go.uber.org/fx" ) type CommanderResult struct { fx.Out Commander *Commander } type CommanderParams struct { fx.In Context context.Context Client *spotify.Client } type Commander struct { Context context.Context Client *spotify.Client } func NewCommander(p CommanderParams) CommanderResult { c := &Commander{ Context: p.Context, Client: p.Client, } return CommanderResult{ Commander: c, } }