package discord type IGuildService interface { Client() IDiscordClient GetGuild(guildID string) (IGuild, error) } type GuildService struct { client IDiscordClient } func (gs *GuildService) Client() IDiscordClient { return gs.client } func (gs *GuildService) GetGuild(guildID string) (IGuild, error) { // gs.client }