persistDelete method
Enqueue a delete event and attempt the live Supabase call. The
payload only needs the row's primary key — replay handlers will
look up additional context from the queued JSON if they need it.
Implementation
Future<void> persistDelete({
required String table,
required String localId,
required Map<String, dynamic> payload,
required Future<void> Function() supabaseCall,
}) => _persist('delete', table, localId, payload, supabaseCall);