package Ġcom . stripe . android . model Ċ Ċ /** Ċ Ġ* ĠRepresents Ġa Ġgrouping Ġof Ġparameters Ġneeded Ġto Ġcreate Ġa ĠToken Ġfor Ġa ĠConnect Ġaccount Ġon Ġthe Ġserver . Ċ Ġ*/ Ċ data Ġclass ĠAccount Params Ġprivate Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġbusiness Type : ĠBusiness Type ?, ĊĠĠĠ Ġprivate Ġval Ġbusiness Data : ĠMap < String , ĠAny > ?, ĊĠĠĠ Ġprivate Ġval Ġto s Shown And Accepted : ĠBoolean Ċ ) Ġ: ĠStripe Params Model Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCreate Ġa Ġstring - keyed Ġmap Ġrepresenting Ġthis Ġobject Ġthat Ġis Ġready Ġto Ġbe Ġsent Ġover Ġthe Ġnetwork . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ return Ġa ĠString - keyed Ġmap ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġfun Ġto Param Map (): ĠMap < String , ĠAny > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġmap Of (" account " Ġto ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmap Of ( API _ TOS _ SHO WN _ AND _ ACCEPT ED Ġto Ġto s Shown And Accepted ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. plus ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbusiness Type ?. code ?. let Ġ{ Ġcode Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmap Of ( API _ BUS INESS _ TYPE Ġto Ġcode ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. plus ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbusiness Data ?. let Ġ{ Ġmap Of ( code Ġto Ġit ) Ġ}. or Empty () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. or Empty () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠSee Ġ[ Account Ġcreation ĠAPI Ġdocs ]( https :// stripe . com / docs / api / accounts / create # create _ account - business _ type ) ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġenum Ġclass ĠBusiness Type Ġconstructor ( val Ġcode : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ ĠIndividual (" individual "), ĊĠĠĠĠĠĠĠ ĠCompany (" company ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġinternal Ġconst Ġval ĠAPI _ BUS INESS _ TYPE Ġ= Ġ" business _ type " ĊĠĠĠĠĠĠĠ Ġinternal Ġconst Ġval ĠAPI _ TOS _ SHO WN _ AND _ ACCEPT ED Ġ= Ġ" tos _ shown _ and _ accepted " ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠCreate Ġan Ġ[ Account Params ] Ġinstance Ġfor Ġa Ġ[ Business Type . Individual ] Ġor ĊĠĠĠĠĠĠĠĠ Ġ* Ġ[ Business Type . Company ]. ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġto s Shown And Accepted ĠWhether Ġthe Ġuser Ġdescribed Ġby Ġthe Ġdata Ġin Ġthe Ġtoken Ġhas Ġbeen Ġshown ĊĠĠĠĠĠĠĠĠ Ġ* Ġthe Ġ[ Stripe ĠConnected ĠAccount ĠAgreement ]( https :// stripe . com / docs / api / tokens / create _ account # create _ account _ token - account - tos _ shown _ and _ accepted ). ĊĠĠĠĠĠĠĠĠ Ġ* ĠWhen Ġcreating Ġan Ġaccount Ġtoken Ġto Ġcreate Ġa Ġnew ĠConnect Ġaccount , ĊĠĠĠĠĠĠĠĠ Ġ* Ġthis Ġvalue Ġmust Ġbe Ġ` true `. ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġbusiness Type ĠSee Ġ[ Business Type ] ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġbusiness Data ĠA Ġmap Ġof Ġ[ company ]( https :// stripe . com / docs / api / accounts / create # create _ account - company ) ĊĠĠĠĠĠĠĠĠ Ġ* Ġor Ġ[ individual ]( https :// stripe . com / docs / api / accounts / create # create _ account - individual ) Ġparams . ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return Ġ[ Account Params ] ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġcreate Account Params ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġto s Shown And Accepted : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbusiness Type : ĠBusiness Type ?, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbusiness Data : ĠMap < String , ĠAny >? ĊĠĠĠĠĠĠĠ Ġ): ĠAccount Params Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠAccount Params ( business Type , Ġbusiness Data , Ġto s Shown And Accepted ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ