package storage // GenericStorage describes interface every other storage should embed // and conform to as it contains essential things like context handling. type GenericStorage interface { // Get returns data from storage by key. Get(string) string // GetDoneChan returns a channel which should be used to block execution // until storage's routines are completed. GetDoneChan() chan struct{} // Put puts passed data into storage. Put(map[string]string) // Start starts asynchronous things if needed. Start() }