class TypeUtils {

	public static Type[] getResolvedInterfaces(Type type)
	{
		Utils.checkNotNull(type, "type");
		
		Class<?> rawType = getErasedReferenceType(type);
		Type[] interfaces = rawType.getGenericInterfaces();
		Type[] resolvedInterfaces = new Type[interfaces.length];
		
		for (int i = 0; i < interfaces.length; i++)
		{
			resolvedInterfaces[i] = resolveTypeVariables(interfaces[i], type);
		}
		
		return resolvedInterfaces;
	}

	private  TypeUtils();

}