The easiest way is to use duck_type instead of a role to test your interface. Duck_type is a looser restriction, basically duck_type is just a list of methods that objects are expected to have. For instance:
package MyMooseClass;
use Moose;
use Moose::Util::TypeConstraints qw/duck_type/;
has 'a' => (
isa => duck_type(qw/method1 method1 some_other_method/),
);
Moose::Util::TypeConstraints , duck_type. .
, , . MooseX::Types.
, Hash Reference , Moose , Moose, , . , :
my $instance = MyClass->new(param1=>'val1', param2=>'val2');
Hash Reference , , , Moose Perl. Moose , , -, , . .
,