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 heif_error heif_context_get_encoder_for_format(SafeHeifContext context, HeifCompressionFormat format, out SafeHeifEncoder encoder);
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_context_encode_image(SafeHeifContext context, SafeHeifImage image, SafeHeifEncoder encoder, SafeHeifEncodingOptions options, out SafeHeifImageHandle imageHandle);
internal static extern heif_error heif_context_get_encoder(SafeHeifContext context, heif_encoder_descriptor descriptor, out SafeHeifEncoder encoder);
internal static extern unsafe heif_error heif_encoder_get_parameter_string(SafeHeifEncoder encoder, [MarshalAs(UnmanagedType.LPStr)] string name, byte *ptr, int length);
internal static extern heif_error heif_encoder_get_parameter_boolean(SafeHeifEncoder encoder, [MarshalAs(UnmanagedType.LPStr)] string name, [MarshalAs(UnmanagedType.Bool)] out bool value);
internal static extern heif_error heif_encoder_get_parameter_integer(SafeHeifEncoder encoder, [MarshalAs(UnmanagedType.LPStr)] string name, out int value);
internal static extern heif_error heif_encoder_set_parameter_string(SafeHeifEncoder encoder, [MarshalAs(UnmanagedType.LPStr)] string name, [MarshalAs(UnmanagedType.LPStr)] string value);
internal static extern heif_error heif_encoder_set_lossless(SafeHeifEncoder encoder, [MarshalAs(UnmanagedType.Bool)] bool lossless);
internal static extern heif_error heif_encoder_set_lossy_quality(SafeHeifEncoder encoder, int quality);
internal static extern heif_encoder_parameter_list heif_encoder_list_parameters(SafeHeifEncoder encoder);
internal static extern bool heif_encoder_has_default(SafeHeifEncoder encoder, [MarshalAs(UnmanagedType.LPStr)] string name);