Subscribe to realtime changes in your database.
REPLICA IDENTITY to FULL, like this: ALTER TABLE your_table REPLICA IDENTITY FULL;supabase.channel('*').on(
  RealtimeListenTypes.postgresChanges,
  ChannelFilter(event: '*', schema: '*'),
  (payload, [ref]) {
    print('Change received: ${payload.toString()}');
  },
).subscribe();
supabase.channel('public:countries').on(
  RealtimeListenTypes.postgresChanges,
  ChannelFilter(event: '*', schema: 'public', table: 'countries'),
  (payload, [ref]) {
    print('Change received: ${payload.toString()}');
  },
).subscribe();
supabase.channel('public:countries').on(
  RealtimeListenTypes.postgresChanges,
  ChannelFilter(event: 'INSERT', schema: 'public', table: 'countries'),
  (payload, [ref]) {
    print('Change received: ${payload.toString()}');
  },
).subscribe();
supabase.channel('public:countries').on(
  RealtimeListenTypes.postgresChanges,
  ChannelFilter(event: 'UPDATE', schema: 'public', table: 'countries'),
  (payload, [ref]) {
    print('Change received: ${payload.toString()}');
  },
).subscribe();
supabase.channel('public:countries').on(
  RealtimeListenTypes.postgresChanges,
  ChannelFilter(event: 'DELETE', schema: 'public', table: 'countries'),
  (payload, [ref]) {
    print('Change received: ${payload.toString()}');
  },
).subscribe();
supabase.channel('public:countries').on(RealtimeListenTypes.postgresChanges,
    ChannelFilter(event: 'INSERT', schema: 'public', table: 'countries'),
    (payload, [ref]) {
  print('Change received: ${payload.toString()}');
}).on(RealtimeListenTypes.postgresChanges,
    ChannelFilter(event: 'DELETE', schema: 'public', table: 'countries'),
    (payload, [ref]) {
  print('Change received: ${payload.toString()}');
}).subscribe();
supabase.channel('public:countries:id=eq.200').on(
    RealtimeListenTypes.postgresChanges,
    ChannelFilter(
      event: 'UPDATE',
      schema: 'public',
      table: 'countries',
      filter: 'id=eq.200',
    ), (payload, [ref]) {
  print('Change received: ${payload.toString()}');
}).subscribe();