using System.Runtime.InteropServices;

namespace Decal.Interop.Controls;

[TypeLibType(TypeLibTypeFlags.FHidden)]
[ClassInterface(ClassInterfaceType.None)]
public sealed class IChoiceEvents_SinkHelper : IChoiceEvents
{
	public IChoiceEvents_DestroyEventHandler m_DestroyDelegate;

	public IChoiceEvents_ChangeEventHandler m_ChangeDelegate;

	public IChoiceEvents_DropDownEventHandler m_DropDownDelegate;

	public int m_dwCookie;

	public void Destroy(int P_0)
	{
		//Error decoding local variables: Signature type sequence must have at least one element.
		if (m_DestroyDelegate != null)
		{
			m_DestroyDelegate(P_0);
		}
	}

	public void Change(int P_0, int P_1)
	{
		//Error decoding local variables: Signature type sequence must have at least one element.
		if (m_ChangeDelegate != null)
		{
			m_ChangeDelegate(P_0, P_1);
		}
	}

	public void DropDown(int P_0)
	{
		//Error decoding local variables: Signature type sequence must have at least one element.
		if (m_DropDownDelegate != null)
		{
			m_DropDownDelegate(P_0);
		}
	}

	internal IChoiceEvents_SinkHelper()
	{
		//Error decoding local variables: Signature type sequence must have at least one element.
		m_dwCookie = 0;
		m_DestroyDelegate = null;
		m_ChangeDelegate = null;
		m_DropDownDelegate = null;
	}
}
