Defines an interface. An interface is much like a role, but with some heavy restrictions - it can't define any methods (just require implementing classes to define them), and it can only extend other interfaces, not roles. See MooseX::Interface for details.