package Ġcom . github . lam ba 9 2 . firebase multi platform . auth Ċ Ċ import Ġfirebase . User Ċ import Ġkotlinx . coroutines . await Ċ Ċ actual Ġclass ĠFirebase User ( val Ġdelegate : ĠUser ) Ġ{ ĊĊĠĠĠ Ġactual Ġval ĠdisplayName : ĠString ? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġdelegate . displayName ĊĊĠĠĠ Ġactual Ġval Ġemail : ĠString ? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġdelegate . email ĊĊĠĠĠ Ġactual Ġval Ġmetadata : ĠFirebase User Metadata ? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġdelegate . metadata . to M pp () ĊĊĠĠĠ Ġactual Ġval ĠphoneNumber : ĠString ? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġdelegate . phoneNumber ĊĊĠĠĠ Ġactual Ġval Ġphoto Url : ĠString ? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġdelegate . photo URL ĊĊĠĠĠ Ġactual Ġval Ġprovider Data : ĠList < Firebase UserInfo > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġdelegate . provider Data . map NotNull Ġ{ Ġit ?. to M pp () Ġ} ĊĊĠĠĠ Ġactual Ġval Ġprovider Id : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġdelegate . provider Id ĊĊĠĠĠ Ġactual Ġval Ġuid : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġdelegate . uid ĊĊĠĠĠ Ġactual Ġval Ġis Anonymous : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġdelegate . is Anonymous ĊĊĠĠĠ Ġactual Ġval Ġis Email Verified : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġdelegate . email Verified ĊĊĊĠĠĠ Ġactual Ġsuspend Ġfun Ġdelete () Ġ= ĊĠĠĠĠĠĠĠ Ġdelegate . delete (). await () ĊĊĠĠĠ Ġactual Ġsuspend Ġfun ĠgetId Token ( force Refresh : ĠBoolean ) Ġ= ĊĠĠĠĠĠĠĠ Ġdelegate . getId Token Result ( force Refresh ). await (). to M pp () ĊĊĠĠĠ Ġactual Ġsuspend Ġfun Ġlink With Credentials ( credential : ĠAuth Credential ) Ġ= ĊĠĠĠĠĠĠĠ Ġdelegate . link With Credential ( credential . delegate ). await (). to M pp () ĊĊĠĠĠ Ġactual Ġsuspend Ġfun Ġre authenticate ( credential : ĠAuth Credential ) Ġ{ ĊĠĠĠĠĠĠĠ Ġdelegate . re authenticate With Credential ( credential . delegate ). await () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġactual Ġsuspend Ġfun Ġre authenticate And Retrieve Data ( credential : ĠAuth Credential ) Ġ= ĊĠĠĠĠĠĠĠ Ġdelegate . re authenticate And Retrieve Data With Credential ( credential . delegate ). await (). to M pp () ĊĊĠĠĠ Ġactual Ġsuspend Ġfun Ġreload () Ġ= ĊĠĠĠĠĠĠĠ Ġdelegate . reload (). await () ĊĊĠĠĠ Ġactual Ġsuspend Ġfun Ġsend Email Verification () Ġ= ĊĠĠĠĠĠĠĠ Ġdelegate . send Email Verification (). await () ĊĊĠĠĠ Ġactual Ġsuspend Ġfun Ġunlink ( provider Id : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġdelegate . unlink ( this . provider Id ). await () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġactual Ġsuspend Ġfun Ġupdate Email ( email : ĠString ) Ġ= ĊĠĠĠĠĠĠĠ Ġdelegate . update Email ( email ). await () ĊĊĠĠĠ Ġactual Ġsuspend Ġfun Ġupdate Password ( password : ĠString ) Ġ= ĊĠĠĠĠĠĠĠ Ġdelegate . update Password ( password ). await () ĊĊĠĠĠ Ġactual Ġsuspend Ġfun Ġupdate PhoneNumber ( phone Auth Credential : ĠPhone Auth Credential ) Ġ= ĊĠĠĠĠĠĠĠ Ġdelegate . update PhoneNumber ( phone Auth Credential . delegate ). await () ĊĊĠĠĠ Ġactual Ġsuspend Ġfun Ġupdate Profile ( user Profile Change Request : ĠUser Profile Change Request ) Ġ= ĊĠĠĠĠĠĠĠ Ġdelegate . update Profile ( user Profile Change Request . delegate ). await () Ċ Ċ }