using System.Runtime.InteropServices;

namespace Decal.Interop.Filters;

[TypeLibType(TypeLibTypeFlags.FHidden)]
[ClassInterface(ClassInterfaceType.None)]
public sealed class ICharacterStatsEvents_SinkHelper : ICharacterStatsEvents
{
	public ICharacterStatsEvents_LoginEventHandler m_LoginDelegate;

	public ICharacterStatsEvents_Spellbook_AddEventHandler m_Spellbook_AddDelegate;

	public ICharacterStatsEvents_Spellbook_DeleteEventHandler m_Spellbook_DeleteDelegate;

	public ICharacterStatsEvents_LoginCompleteEventHandler m_LoginCompleteDelegate;

	public ICharacterStatsEvents_ActionCompleteEventHandler m_ActionCompleteDelegate;

	public ICharacterStatsEvents_StatusMessageEventHandler m_StatusMessageDelegate;

	public ICharacterStatsEvents_DeathEventHandler m_DeathDelegate;

	public ICharacterStatsEvents_ChangePortalModeEventHandler m_ChangePortalModeDelegate;

	public ICharacterStatsEvents_ChangeEnchantmentsEventHandler m_ChangeEnchantmentsDelegate;

	public ICharacterStatsEvents_ChangePlayerEventHandler m_ChangePlayerDelegate;

	public ICharacterStatsEvents_ChangeVitalEventHandler m_ChangeVitalDelegate;

	public ICharacterStatsEvents_ChangeXPSEventHandler m_ChangeXPSDelegate;

	public ICharacterStatsEvents_ChangeFellowshipEventHandler m_ChangeFellowshipDelegate;

	public ICharacterStatsEvents_LogoffEventHandler m_LogoffDelegate;

	public ICharacterStatsEvents_CastSpellEventHandler m_CastSpellDelegate;

	public ICharacterStatsEvents_ChangeShortcutEventHandler m_ChangeShortcutDelegate;

	public ICharacterStatsEvents_ChangeSpellbarEventHandler m_ChangeSpellbarDelegate;

	public ICharacterStatsEvents_ChangeSettingsEventHandler m_ChangeSettingsDelegate;

	public ICharacterStatsEvents_ChangeSettingFlagsEventHandler m_ChangeSettingFlagsDelegate;

	public ICharacterStatsEvents_ChangeOptionEventHandler m_ChangeOptionDelegate;

	public int m_dwCookie;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

	internal ICharacterStatsEvents_SinkHelper()
	{
		//Error decoding local variables: Signature type sequence must have at least one element.
		m_dwCookie = 0;
		m_LoginDelegate = null;
		m_Spellbook_AddDelegate = null;
		m_Spellbook_DeleteDelegate = null;
		m_LoginCompleteDelegate = null;
		m_ActionCompleteDelegate = null;
		m_StatusMessageDelegate = null;
		m_DeathDelegate = null;
		m_ChangePortalModeDelegate = null;
		m_ChangeEnchantmentsDelegate = null;
		m_ChangePlayerDelegate = null;
		m_ChangeVitalDelegate = null;
		m_ChangeXPSDelegate = null;
		m_ChangeFellowshipDelegate = null;
		m_LogoffDelegate = null;
		m_CastSpellDelegate = null;
		m_ChangeShortcutDelegate = null;
		m_ChangeSpellbarDelegate = null;
		m_ChangeSettingsDelegate = null;
		m_ChangeSettingFlagsDelegate = null;
		m_ChangeOptionDelegate = null;
	}
}
