trait Coordinates { abstract public function area(): int; } class Rectangle { use Coordinates; public function area(): int { [...] } } class Circle { use Coordinates; public function area(): string { [...] } }