// This file is automatically generated.
using System;
using System.Text;
using System.Runtime.InteropServices;

namespace Steam4NET
{

	public enum EGCResults : int
	{
		k_EGCResultOK = 0,
		k_EGCResultNoMessage = 1,
		k_EGCResultBufferTooSmall = 2,
		k_EGCResultNotLoggedOn = 3,
		k_EGCResultInvalidMessage = 4,
	};
	
	public enum EGCMessages : int
	{
		k_EGCMsgGenericReply = 10,
		k_ESOMsg_Create = 21,
		k_ESOMsg_Update = 22,
		k_ESOMsg_Destroy = 23,
		k_ESOMsg_CacheSubscribed = 24,
		k_ESOMsg_CacheUnsubscribed = 25,
		k_ESOMsg_UpdateMultiple = 26,
		k_ESOMsg_CacheSubscriptionCheck = 27,
		k_ESOMsg_CacheSubscriptionRefresh = 28,
		k_EGCMsgAchievementAwarded = 51,
		k_EGCMsgConCommand = 52,
		k_EGCMsgStartPlaying = 53,
		k_EGCMsgStopPlaying = 54,
		k_EGCMsgStartGameserver = 55,
		k_EGCMsgStopGameserver = 56,
		k_EGCMsgWGRequest = 57,
		k_EGCMsgWGResponse = 58,
		k_EGCMsgGetUserGameStatsSchema = 59,
		k_EGCMsgGetUserGameStatsSchemaResponse = 60,
		k_EGCMsgGetUserStatsDEPRECATED = 61,
		k_EGCMsgGetUserStatsResponse = 62,
		k_EGCMsgAppInfoUpdated = 63,
		k_EGCMsgValidateSession = 64,
		k_EGCMsgValidateSessionResponse = 65,
		k_EGCMsgLookupAccountFromInput = 66,
		k_EGCMsgSendHTTPRequest = 67,
		k_EGCMsgSendHTTPRequestResponse = 68,
		k_EGCMsgPreTestSetup = 69,
		k_EGCMsgRecordSupportAction = 70,
		k_EGCMsgGetAccountDetails = 71,
		k_EGCMsgSendInterAppMessage = 72,
		k_EGCMsgReceiveInterAppMessage = 73,
		k_EGCMsgFindAccounts = 74,
		k_EGCMsgPostAlert = 75,
		k_EGCMsgGetLicenses = 76,
		k_EGCMsgGetUserStats = 77,
		k_EGCMsgGetCommands = 78,
		k_EGCMsgGetCommandsResponse = 79,
		k_EGCMsgAddFreeLicense = 80,
		k_EGCMsgAddFreeLicenseResponse = 81,
		k_EGCMsgWebAPIRegisterInterfaces = 101,
		k_EGCMsgWebAPIJobRequest = 102,
		k_EGCMsgWebAPIRegistrationRequested = 103,
		k_EGCMsgMemCachedGet = 200,
		k_EGCMsgMemCachedGetResponse = 201,
		k_EGCMsgMemCachedSet = 202,
		k_EGCMsgMemCachedDelete = 203,
		k_EMsgGCSetItemPosition = 1001,
		k_EMsgGCCraft = 1002,
		k_EMsgGCCraftResponse = 1003,
		k_EMsgGCDelete = 1004,
		k_EMsgGCVerifyCacheSubscription = 1005,
		k_EMsgGCNameItem = 1006,
		k_EMsgGCDecodeItem = 1007,
		k_EMsgGCDecodeItemResponse = 1008,
		k_EMsgGCPaintItem = 1009,
		k_EMsgGCPaintItemResponse = 1010,
		k_EMsgGCGoldenWrenchBroadcast = 1011,
		k_EMsgGCMOTDRequest = 1012,
		k_EMsgGCMOTDRequestResponse = 1013,
		k_EMsgGCAddItemToSocket = 1014,
		k_EMsgGCAddItemToSocketResponse = 1015,
		k_EMsgGCAddSocketToBaseItem = 1016,
		k_EMsgGCAddSocketToItem = 1017,
		k_EMsgGCAddSocketToItemResponse = 1018,
		k_EMsgGCNameBaseItem = 1019,
		k_EMsgGCNameBaseItemResponse = 1020,
		k_EMsgGCRemoveSocketItem = 1021,
		k_EMsgGCRemoveSocketItemResponse = 1022,
		k_EMsgGCCustomizeItemTexture = 1023,
		k_EMsgGCCustomizeItemTextureResponse = 1024,
		k_EMsgGCUseItemRequest = 1025,
		k_EMsgGCUseItemResponse = 1026,
		k_EMsgGCGiftedItems = 1027,
		k_EMsgGCSpawnItem = 1028,
		k_EMsgGCRespawnPostLoadoutChange = 1029,
		k_EMsgGCRemoveItemName = 1030,
		k_EMsgGCRemoveItemPaint = 1031,
		k_EMsgGCGiftWrapItem = 1032,
		k_EMsgGCGiftWrapItemResponse = 1033,
		k_EMsgGCDeliverGift = 1034,
		k_EMsgGCDeliverGiftResponseGiver = 1035,
		k_EMsgGCDeliverGiftResponseReceiver = 1036,
		k_EMsgGCUnwrapGiftRequest = 1037,
		k_EMsgGCUnwrapGiftResponse = 1038,
		k_EMsgGCSetItemStyle = 1039,
		k_EMsgGCUsedClaimCodeItem = 1040,
		k_EMsgGCSortItems = 1041,
		k_EMsgGC_RevolvingLootList = 1042,
		k_EMsgGCLookupAccount = 1043,
		k_EMsgGCLookupAccountResponse = 1044,
		k_EMsgGCLookupAccountName = 1045,
		k_EMsgGCLookupAccountNameResponse = 1046,
		k_EMsgGCUpdateItemSchema = 1049,
		k_EMsgGCRequestInventoryRefresh = 1050,
		k_EMsgGCRemoveCustomTexture = 1051,
		k_EMsgGCRemoveCustomTextureResponse = 1052,
		k_EMsgGCRemoveMakersMark = 1053,
		k_EMsgGCRemoveMakersMarkResponse = 1054,
		k_EMsgGCRemoveUniqueCraftIndex = 1055,
		k_EMsgGCRemoveUniqueCraftIndexResponse = 1056,
		k_EMsgGCSaxxyBroadcast = 1057,
		k_EMsgGCBackpackSortFinished = 1058,
		k_EMsgGCRequestItemSchemaData = 1060,
		k_EMsgGCTrading_InitiateTradeRequest = 1501,
		k_EMsgGCTrading_InitiateTradeResponse = 1502,
		k_EMsgGCTrading_StartSession = 1503,
		k_EMsgGCTrading_SetItem = 1504,
		k_EMsgGCTrading_RemoveItem = 1505,
		k_EMsgGCTrading_UpdateTradeInfo = 1506,
		k_EMsgGCTrading_SetReadiness = 1507,
		k_EMsgGCTrading_ReadinessResponse = 1508,
		k_EMsgGCTrading_SessionClosed = 1509,
		k_EMsgGCTrading_CancelSession = 1510,
		k_EMsgGCTrading_TradeChatMsg = 1511,
		k_EMsgGCTrading_ConfirmOffer = 1512,
		k_EMsgGCTrading_TradeTypingChatMsg = 1513,
		k_EMsgGCServerBrowser_FavoriteServer = 1601,
		k_EMsgGCServerBrowser_BlacklistServer = 1602,
		k_EMsgGCDev_NewItemRequest = 2001,
		k_EMsgGCDev_NewItemRequestResponse = 2002,
		k_EMsgGCStoreGetUserData = 2500,
		k_EMsgGCStoreGetUserDataResponse = 2501,
		k_EMsgGCStorePurchaseInit = 2502,
		k_EMsgGCStorePurchaseInitResponse = 2503,
		k_EMsgGCStorePurchaseFinalize = 2504,
		k_EMsgGCStorePurchaseFinalizeResponse = 2505,
		k_EMsgGCStorePurchaseCancel = 2506,
		k_EMsgGCStorePurchaseCancelResponse = 2507,
		k_EMsgGCStorePurchaseQueryTxn = 2508,
		k_EMsgGCStorePurchaseQueryTxnResponse = 2509,
		k_EMsgGCSystemMessage = 4001,
		k_EMsgGCReplicateConVars = 4002,
		k_EMsgGCConVarUpdated = 4003,
		k_EMsgGCReportWarKill = 5001,
		k_EMsgGCVoteKickBanPlayer = 5018,
		k_EMsgGCVoteKickBanPlayerResult = 5019,
		k_EMsgGCKickPlayer = 5020,
		k_EMsgGCStartedTraining = 5021,
		k_EMsgGCFreeTrial_ChooseMostHelpfulFriend = 5022,
		k_EMsgGCRequestTF2Friends = 5023,
		k_EMsgGCRequestTF2FriendsResponse = 5024,
		k_EMsgGCReplay_UploadedToYouTube = 5025,
		k_EMsgGCReplay_SubmitContestEntry = 5026,
		k_EMsgGCReplay_SubmitContestEntryResponse = 5027,
		k_EMsgGCCoaching_AddToCoaches = 5200,
		k_EMsgGCCoaching_AddToCoachesResponse = 5201,
		k_EMsgGCCoaching_RemoveFromCoaches = 5202,
		k_EMsgGCCoaching_RemoveFromCoachesResponse = 5203,
		k_EMsgGCCoaching_FindCoach = 5204,
		k_EMsgGCCoaching_FindCoachResponse = 5205,
		k_EMsgGCCoaching_AskCoach = 5206,
		k_EMsgGCCoaching_AskCoachResponse = 5207,
		k_EMsgGCCoaching_CoachJoinGame = 5208,
		k_EMsgGCCoaching_CoachJoining = 5209,
		k_EMsgGCCoaching_CoachJoined = 5210,
		k_EMsgGCCoaching_LikeCurrentCoach = 5211,
		k_EMsgGCCoaching_RemoveCurrentCoach = 5212,
		k_EMsgGCCoaching_AlreadyRatedCoach = 5213,
		k_EMsgGC_Duel_Request = 5500,
		k_EMsgGC_Duel_Response = 5501,
		k_EMsgGC_Duel_Results = 5502,
		k_EMsgGC_Duel_Status = 5503,
		k_EMsgGC_Halloween_ReservedItem = 5600,
		k_EMsgGC_Halloween_GrantItem = 5601,
		k_EMsgGC_Halloween_GrantItemResponse = 5604,
		k_EMsgGC_Halloween_Cheat_QueryResponse = 5605,
		k_EMsgGC_Halloween_ItemClaimed = 5606,
		k_EMsgGC_GameServer_LevelInfo = 5700,
		k_EMsgGC_GameServer_AuthChallenge = 5701,
		k_EMsgGC_GameServer_AuthChallengeResponse = 5702,
		k_EMsgGC_GameServer_CreateIdentity = 5703,
		k_EMsgGC_GameServer_CreateIdentityResponse = 5704,
		k_EMsgGC_GameServer_List = 5705,
		k_EMsgGC_GameServer_ListResponse = 5706,
		k_EMsgGC_GameServer_AuthResult = 5707,
		k_EMsgGC_GameServer_ResetIdentity = 5708,
		k_EMsgGC_GameServer_ResetIdentityResponse = 5709,
		k_EMsgGC_QP_ScoreServers = 5800,
		k_EMsgGC_QP_ScoreServersResponse = 5801,
		k_EMsgGC_PickupItemEligibility_Query = 6000,
		k_EMsgGCDev_GrantWarKill = 6001,
		k_EMsgGC_IncrementKillCountAttribute = 6100,
		k_EMsgGC_IncrementKillCountResponse = 6101,
	};
	
	public enum ETFInitTradeResult : int
	{
		k_ETFInitTradeResultOk = 0,
		k_ETFInitTradeResultDeclined = 1,
		k_ETFInitTradeResultVACBanned = 2,
		k_ETFInitTradeResultOtherVACBanned = 3,
		k_ETFInitTradeResultBusy = 4,
		k_ETFInitTradeResultDisabled = 5,
		k_ETFInitTradeResultNoLoggedIn = 6,
		k_ETFInitTradeResultCanceled = 7,
		k_ETFInitTradeResultTooSoon = 8,
	};
	
	public enum ETFTradeResult : int
	{
		k_ETFTradeResultOk = 0,
		k_ETFTradeResultCanceled = 1,
		k_ETFTradeResultStaleInventory = 2,
		k_ETFTradeResultUntradeable = 3,
		k_ETFTradeResultNoItems = 4,
		k_ETFTradeResultDisabled = 5,
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1701)]
	public struct GCMessageAvailable_t
	{
		public const int k_iCallback = 1701;
		public UInt32 m_nMessageSize;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1702)]
	public struct GCMessageFailed_t
	{
		public const int k_iCallback = 1702;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	public struct GCMsgHeader_t
	{
		public UInt16 headerVersion;
		public UInt64 targetJobID;
		public UInt64 sourceJobID;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(24)]
	public struct SOMsgCacheSubscribed_t
	{
		public const int k_iMessage = 24;
		public GCMsgHeader_t header;
		public SteamID_t steamid;
		public UInt32 numberOfTypes;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	public struct SOMsgCacheSubscribed_Items_t
	{
		public UInt16 idOfType;
		public UInt16 itemcount;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	public struct SOMsgCacheSubscribed_Item_t
	{
		public UInt64 itemid;
		public UInt32 accountid;
		public UInt16 itemdefindex;
		public Byte itemlevel;
		public Byte itemquality;
		public UInt32 position;
		public UInt32 quantity;
		public UInt16 namelength;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	public struct SOMsgCacheSubscribed_Item_Attrib_t
	{
		public UInt16 attribindex;
		public float value;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(25)]
	public struct SOMsgCacheUnsubscribed_t
	{
		public const int k_iMessage = 25;
		public GCMsgHeader_t header;
		public SteamID_t steamid;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(21)]
	public struct SOMsgCreate_t
	{
		public const int k_iMessage = 21;
		public GCMsgHeader_t header;
		public SteamID_t steamid;
		public UInt32 unknown;
		public SOMsgCacheSubscribed_Item_t item;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(22)]
	public struct SOMsgUpdate_t
	{
		public const int k_iMessage = 22;
		public GCMsgHeader_t header;
		public SteamID_t steamid;
		public UInt32 unk1;
		public UInt64 itemID;
		public UInt16 unk2;
		public UInt32 position;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(23)]
	public struct SOMsgDeleted_t
	{
		public const int k_iMessage = 23;
		public GCMsgHeader_t header;
		public SteamID_t steamid;
		public UInt32 unk1;
		public UInt64 itemid;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1001)]
	public struct GCSetItemPosition_t
	{
		public const int k_iMessage = 1001;
		public GCMsgHeader_t header;
		public UInt64 itemID;
		public UInt32 position;
		public UInt32 unk1;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1002)]
	public struct GCCraft_t
	{
		public const int k_iMessage = 1002;
		public GCMsgHeader_t header;
		public UInt16 blueprint;
		public UInt16 itemcount;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1003)]
	public struct GCCraftResponse_t
	{
		public const int k_iMessage = 1003;
		public GCMsgHeader_t header;
		public UInt16 blueprint;
		public UInt64 unk1;
		public UInt64 itemid;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1004)]
	public struct GCDelete_t
	{
		public const int k_iMessage = 1004;
		public GCMsgHeader_t header;
		public UInt64 itemID;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1005)]
	public struct GCVerifyCacheSubscription_t
	{
		public const int k_iMessage = 1005;
		public GCMsgHeader_t header;
		public SteamID_t steamid;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1011)]
	public struct GCGoldenWrenchBroadcast_t
	{
		public const int k_iMessage = 1011;
		public GCMsgHeader_t header;
		public UInt16 WrenchNumber;
		public UInt16 State;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1012)]
	public struct GCMOTDRequest_t
	{
		public const int k_iMessage = 1012;
		public GCMsgHeader_t header;
		public UInt32 timestamp;
		public UInt32 unk1;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1013)]
	public struct GCMOTDRequestResponse_t
	{
		public const int k_iMessage = 1013;
		public GCMsgHeader_t header;
		public UInt16 NumberOfNews;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(5701)]
	public struct GC_GameServer_AuthChallenge_t
	{
		public const int k_iMessage = 5701;
		public GCMsgHeader_t header;
		public Byte unknown;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(5702)]
	public struct GC_GameServer_AuthChallengeResponse_t
	{
		public const int k_iMessage = 5702;
		public GCMsgHeader_t header;
		public UInt32 accountID;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(5700)]
	public struct GC_GameServer_LevelInfo_t
	{
		public const int k_iMessage = 5700;
		public GCMsgHeader_t header;
		public Byte unknown;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1501)]
	public struct GCTrading_InitiateTradeRequest_t
	{
		public const int k_iMessage = 1501;
		public GCMsgHeader_t header;
		public UInt32 challenge;
		public SteamID_t steamID;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1502)]
	public struct GCTrading_InitiateTradeResponse_t
	{
		public const int k_iMessage = 1502;
		public GCMsgHeader_t header;
		public UInt32 result;
		public UInt32 challenge;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1511)]
	public struct GCTrading_TradeChatMsg_t
	{
		public const int k_iMessage = 1511;
		public GCMsgHeader_t header;
		public Byte unknown;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1513)]
	public struct GCTrading_TradeTypingChatMsg_t
	{
		public const int k_iMessage = 1513;
		public GCMsgHeader_t header;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1503)]
	public struct GCTrading_StartSession_t
	{
		public const int k_iMessage = 1503;
		public GCMsgHeader_t header;
		public SteamID_t steamID1;
		public SteamID_t steamID2;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1504)]
	public struct GCTrading_SetItem_t
	{
		public const int k_iMessage = 1504;
		public GCMsgHeader_t header;
		public Byte showcase;
		public UInt64 itemID;
		public Byte slot;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1505)]
	public struct GCTrading_RemoveItem_t
	{
		public const int k_iMessage = 1505;
		public GCMsgHeader_t header;
		public UInt64 itemID;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1506)]
	public struct GCTrading_UpdateTradeInfo_t
	{
		public const int k_iMessage = 1506;
		public GCMsgHeader_t header;
		public UInt32 version;
		public Byte plyr1_numItems;
		public Byte plyr2_numItems;
		public Byte plyr1_numItems_showcase;
		public Byte plyr2_numItems_showcase;
		public UInt64 plyr1_showcase;
		public UInt64 plyr1_slot0;
		public UInt64 plyr1_slot1;
		public UInt64 plyr1_slot2;
		public UInt64 plyr1_slot3;
		public UInt64 plyr1_slot4;
		public UInt64 plyr1_slot5;
		public UInt64 plyr1_slot6;
		public UInt64 plyr1_slot7;
		public UInt64 plyr2_showcase;
		public UInt64 plyr2_slot0;
		public UInt64 plyr2_slot1;
		public UInt64 plyr2_slot2;
		public UInt64 plyr2_slot3;
		public UInt64 plyr2_slot4;
		public UInt64 plyr2_slot5;
		public UInt64 plyr2_slot6;
		public UInt64 plyr2_slot7;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1508)]
	public struct GCTrading_ReadinessResponse_t
	{
		public const int k_iMessage = 1508;
		public GCMsgHeader_t header;
		public UInt32 version;
		public Byte player1ready;
		public Byte player2ready;
		public Byte player1confirmed;
		public Byte player2confirmed;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1507)]
	public struct GCTrading_SetReadiness_t
	{
		public const int k_iMessage = 1507;
		public GCMsgHeader_t header;
		public UInt32 version;
		public Byte response;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1512)]
	public struct GCTrading_ConfirmOffer_t
	{
		public const int k_iMessage = 1512;
		public GCMsgHeader_t header;
		public UInt32 version;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1509)]
	public struct GCTrading_SessionClosed_t
	{
		public const int k_iMessage = 1509;
		public GCMsgHeader_t header;
		public UInt32 result;
	};
	
	[StructLayout(LayoutKind.Sequential,Pack=8)]
	[InteropHelp.CallbackIdentity(1029)]
	public struct GCRespawnPostLoadoutChange_t
	{
		public const int k_iMessage = 1029;
		public GCMsgHeader_t header;
		public SteamID_t steamID;
	};
	
}
