// Assembly: UnityEngine.CoreModule
// Full name: UnityEngine.Events.UnityEventBase

namespace UnityEngine.Events
{
public class UnityEventBase // TypeDefIndex: 8986
{
	// Fields
	type#21058 m_Calls;
	type#24357 m_PersistentCalls;
	type#15314 m_CallsDirty;

	// Methods
	// RVA: -1
	protected type#28660 .ctor() { }
	// RVA: -1
	private virtual type#28660 UnityEngine.ISerializationCallbackReceiver.OnBeforeSerialize() { }
	// RVA: -1
	private virtual type#28660 UnityEngine.ISerializationCallbackReceiver.OnAfterDeserialize() { }
	// RVA: -1
	protected abstract type#22692 FindMethod_Impl(type#26576 name, type#27705 targetObjType) { }
	// RVA: -1
	internal abstract type#15012 GetDelegate(type#23705 target, type#22692 theFunction) { }
	// RVA: -1
	internal type#22692 FindMethod(type#24355 call) { }
	// RVA: -1
	internal type#22692 FindMethod(type#26576 name, type#27705 listenerType, type#24359 mode, type#27705 argumentType) { }
	// RVA: -1
	public type#20867 GetPersistentEventCount() { }
	// RVA: -1
	private type#28660 DirtyPersistentCalls() { }
	// RVA: -1
	private type#28660 RebuildPersistentCallsIfNeeded() { }
	// RVA: -1
	internal type#28660 AddCall(type#15012 call) { }
	// RVA: -1
	protected type#28660 RemoveListener(type#23705 targetObj, type#22692 method) { }
	// RVA: -1
	public type#28660 RemoveAllListeners() { }
	// RVA: -1
	internal type#8422 PrepareInvoke() { }
	// RVA: -1
	public virtual type#26576 ToString() { }
	// RVA: -1
	public static type#22692 GetValidMethodInfo(type#27705 objectType, type#26576 functionName, type#13534 argumentTypes) { }
}
}
