add type interface