add interfaces and impls

Signed-off-by: yuanhuan <yuanhuan@tcl.com>