This is a type created by the game itself, in this case you can create a structure of it and use it, first you have to look for its definition, if it is a struct or class you can recreate it as in the following example
C#:
public class BulletSplitConfig // TypeDefIndex: 1118
{
// Fields
public int count; // 0x0
public float angle; // 0x4
public float scaleFactor; // 0x8
public float deviation; // 0xC
public float damageFactor; // 0x10
}
// Token: 0x06001E63 RID: 7779 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x6001E63")]
[Address(RVA = "0x20324D0", Offset = "0x20324D0", VA = "0xC941A4D0")]
private void SetScale(BulletSplitConfig splitConfig)
{
}
in this case the type created by the game is BulletSplitConfig, so I can recreate it using it
C++:
struct BulletSplitConfig // TypeDefIndex: 1118
{
private:
void* type_info; // You need to add these fields, they are hidden fields that every class has related to the type
void* reserved; // You need to add these fields, they are hidden fields that every class has related to the type
public:
int count; // 0x0
float angle; // 0x4
float scaleFactor; // 0x8
float deviation; // 0xC
float damageFactor; // 0x10
};
void SetScale(void* instance, BulletSplitConfig* splitConfig){...} //example of the type being used in the parameter of a function