[major] Introduce a transform interface #7