What is the purpose of this interface?