package plugins import ( "git.icedream.tech/icedream/uplink/app/authentication" "git.icedream.tech/icedream/uplink/app/channels" "git.icedream.tech/icedream/uplink/app/servers/http" ) type PluginRunner func() PluginInstance type PluginInstance interface { Init() } type AuthenticatorPlugin interface { PluginInstance SetAuthenticator(authentication.Authenticator) } type ServerPlugin interface { PluginInstance SetServer(*httpserver.Server) } type ChannelPlugin interface { PluginInstance SetChannelManager(*channels.ChannelManager) }