package tg // The type describes dynamic screen widget // That can have multiple UI components. type Widget interface { Render(Context) UI } // The way to describe custom function based Widgets. type RenderFunc func(c Context) UI func (fn RenderFunc) Render(c Context) UI { return fn(c) } // The type that represents endpoint user interface // via set of components that will work on the same screen // in the same time. type UI []Component // The type describes interfaces // needed to be implemented to be endpoint handlers. type Component interface { // Optionaly component can implement the // Renderable interface to automaticaly be sent to the // user side. Filterer Server }