// by Diplomat
#pragma warning disable 0105
using System;
using System.Runtime.InteropServices;
using Devolutions.IronRdp.Diplomat;
#pragma warning restore 0105
namespace Devolutions.IronRdp.Raw;
#nullable enable
///
/// Stringified Picky error along with an error kind.
///
[StructLayout(LayoutKind.Sequential)]
public partial struct IronRdpError
{
private const string NativeLib = "DevolutionsIronRdp";
///
/// Returns the error as a string.
///
[DllImport(NativeLib, CallingConvention = CallingConvention.Cdecl, EntryPoint = "IronRdpError_to_display", ExactSpelling = true)]
public static unsafe extern void ToDisplay(IronRdpError* self, DiplomatWriteable* writeable);
///
/// Returns the error kind.
///
[DllImport(NativeLib, CallingConvention = CallingConvention.Cdecl, EntryPoint = "IronRdpError_get_kind", ExactSpelling = true)]
public static unsafe extern IronRdpErrorKind GetKind(IronRdpError* self);
[DllImport(NativeLib, CallingConvention = CallingConvention.Cdecl, EntryPoint = "IronRdpError_destroy", ExactSpelling = true)]
public static unsafe extern void Destroy(IronRdpError* self);
}