provide class interface provider and references, fix signature type to return any previous types to not clear old ones