// Auto-generated by alef — DO NOT EDIT
#nullable enable
namespace {{ namespace }} {
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
/// <summary>
/// Service wrapper for {{ service_name }}.
/// </summary>
public class {{ class_name }} {
private IntPtr _handle;
private static readonly Dictionary<IntPtr, GCHandle> _registeredCallbacks = new();
// A single static delegate instance bridges the native callback. Held in a static field so the
// marshalled function pointer outlives every registration (a transient delegate would be collected).
private static readonly NativeMethods.HandlerCallback _handlerCallback = HandlerTrampoline;