// AUTOMATICALLY GENERATED, DO NOT EDIT
using System;
using System.Runtime.InteropServices;
namespace Pkmnlib.Generated
{
internal static class NatureLibrary
{
/// long unsigned int
/// NatureLibrary *
[DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_NatureLibrary_Construct")]
internal static extern IntPtr Construct(ulong initialCapacity);
/// const NatureLibrary *
/// void
[DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_NatureLibrary_Destruct")]
internal static extern void Destruct(IntPtr p);
/// NatureLibrary *
/// const char *
/// const Nature *
/// unsigned char
[DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_NatureLibrary_LoadNature")]
internal static extern byte LoadNature(IntPtr p, IntPtr name, IntPtr nature);
/// NatureLibrary *
/// const char *
/// const Nature * &
/// unsigned char
[DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_NatureLibrary_GetNatureByName")]
internal static extern byte GetNatureByName(IntPtr p, IntPtr name, ref IntPtr @out);
/// NatureLibrary *
/// Random *
/// const char * &
/// unsigned char
[DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_NatureLibrary_GetRandomNatureName")]
internal static extern byte GetRandomNatureName(IntPtr p, IntPtr rand, ref IntPtr @out);
/// NatureLibrary *
/// const Nature *
/// const char * &
/// unsigned char
[DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_NatureLibrary_GetNatureName")]
internal static extern byte GetNatureName(IntPtr p, IntPtr nature, ref IntPtr @out);
/// const NatureLibrary *
/// long unsigned int
[DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_NatureLibrary_GetNatureCount")]
internal static extern ulong GetNatureCount(IntPtr p);
/// NatureLibrary *
/// long unsigned int
/// const char * &
/// unsigned char
[DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_NatureLibrary_GetNatureByIndex")]
internal static extern byte GetNatureByIndex(IntPtr p, ulong index, ref IntPtr @out);
}
}