internal static extern heif_error heif_context_encode_thumbnail(SafeHeifContext context, SafeHeifImage thumbnail, SafeHeifImageHandle parentImageHandle, SafeHeifEncoder encoder, IntPtr options_MustBeZero, int boundingBoxSize, IntPtr outImageHandle_MustBeZero);
internal static extern unsafe heif_error heif_image_get_raw_color_profile(SafeHeifImage image, byte *data);
internal static extern UIntPtr heif_image_get_raw_color_profile_size(SafeHeifImage handle);
internal static extern heif_color_profile_type heif_image_get_color_profile_type(SafeHeifImage handle);
internal static extern bool heif_image_has_channel(SafeHeifImage handle, HeifChannel channel);
internal static extern heif_error heif_context_encode_image(SafeHeifContext context, SafeHeifImage image, SafeHeifEncoder encoder, SafeHeifEncodingOptions options, out SafeHeifImageHandle imageHandle);
internal static extern heif_error heif_decode_image(SafeHeifImageHandle inHandle, out SafeHeifImage outImage, HeifColorspace colorspace, HeifChroma chroma, SafeHeifDecodingOptions options);
internal static extern heif_error heif_image_set_nclx_color_profile(SafeHeifImage handle, SafeHeifNclxColorProfile nclxColorProfile);
internal static extern HeifChroma heif_image_get_chroma_format(SafeHeifImage handle);
internal static extern HeifColorspace heif_image_get_colorspace(SafeHeifImage handle);
internal static extern heif_error heif_image_create(int width, int height, HeifColorspace colorspace, HeifChroma chroma, out SafeHeifImage image);
internal static extern heif_error heif_image_add_plane(SafeHeifImage image, HeifChannel channel, int width, int height, int bitDepth);
internal static extern void heif_image_set_premultiplied_alpha(SafeHeifImage handle, [MarshalAs(UnmanagedType.Bool)] bool value);
internal static extern bool heif_image_is_premultiplied_alpha(SafeHeifImage handle);
internal static extern heif_error heif_context_encode_image(SafeHeifContext context, SafeHeifImage image, SafeHeifEncoder encoder, IntPtr options_MustBeZero, IntPtr outImageHandle_MustBeZero);
internal static extern heif_error heif_image_get_nclx_color_profile(SafeHeifImage image, out SafeHeifNclxColorProfile profile);
internal static extern unsafe heif_error heif_image_set_raw_color_profile(SafeHeifImage handle, [MarshalAs(UnmanagedType.LPStr)] string profileFourCC, byte *profileData, UIntPtr profileSize);
internal static extern int heif_image_get_height(SafeHeifImage handle, HeifChannel channel);
internal static extern heif_error heif_image_scale_image(SafeHeifImage handle, out SafeHeifImage scaledImage, int newWidth, int newHeight, IntPtr options_MustBeZero);
internal static extern IntPtr heif_image_get_plane(SafeHeifImage handle, HeifChannel channel, out int planeStride);
internal static extern heif_error heif_decode_image(SafeHeifImageHandle inHandle, out SafeHeifImage outImage, HeifColorspace colorspace, HeifChroma chroma, IntPtr options_MustBeZero);
internal static extern int heif_image_get_primary_height(SafeHeifImage handle);