I use a reader/listener interface declared in my common code. Then I just provide an object that conforms to that from my app code. On iOS it is written in swift and Android, Kotlin. Both talk to firebase natively using the platform libs.
I know others have gone the cocoapods route for iOS and directly call firebase from expect/actual classes.
I believe there’s a kmp wrapper floating around. I’m not sure how mature it is.