// ToasterUtilsApi must be abstract. // ignore_for_file: one_member_abstracts import 'package:pigeon/pigeon.dart'; @ConfigurePigeon( PigeonOptions( dartOut: 'lib/src/messages.g.dart', dartPackageName: 'toaster_utils', kotlinOut: 'android/src/main/kotlin/org/mars3142/Messages.g.kt', kotlinOptions: KotlinOptions(), copyrightHeader: 'pigeons/copyright.txt', ), ) @HostApi() abstract class ToasterUtilsApi { @async String? getPlatformName(); @async List getInstalledApps(); @async App? getInstalledApp(String packageName); @async List getToasts(String packageName); @async List getToastFiltered(String packageName, int from); @async bool isServiceRunning(); @async void showSettings(); @async void exampleToast(); } class App { const App(this.packageName, this.appName, this.installedBy, this.icon); final String packageName; final String appName; final String installedBy; final Uint8List icon; } class Toast { const Toast(this.app, this.message, this.timestamp, this.duration); final App app; final String message; final int timestamp; final int duration; }