#ifndef _RIVE_TRANSITION_BOOL_CONDITION_BASE_HPP_
#define _RIVE_TRANSITION_BOOL_CONDITION_BASE_HPP_
#include "animation/transition_value_condition.hpp"
namespace rive
{
	class TransitionBoolConditionBase : public TransitionValueCondition
	{
	protected:
		typedef TransitionValueCondition Super;

	public:
		static const uint16_t typeKey = 71;

		/// Helper to quickly determine if a core object extends another without
		/// RTTI at runtime.
		bool isTypeOf(uint16_t typeKey) const override
		{
			switch (typeKey)
			{
				case TransitionBoolConditionBase::typeKey:
				case TransitionValueConditionBase::typeKey:
				case TransitionConditionBase::typeKey:
					return true;
				default:
					return false;
			}
		}

		uint16_t coreType() const override { return typeKey; }

		Core* clone() const override;

	protected:
	};
} // namespace rive

#endif