package Ġcom . no or . news app . presentation . di Ċ Ċ import Ġcom . no or . news app . domain . repository . News Repository Ċ import Ġcom . no or . news app . domain . use care .* Ċ import Ġdagger . Module Ċ import Ġdagger . Provides Ċ import Ġdagger . h ilt . Install In Ċ import Ġdagger . h ilt . components . Singleton Component Ċ import Ġjavax . inject . Singleton Ċ Ċ @ Module Ċ @ Install In ( Singleton Component :: class ) Ċ class ĠUse Case Module Ġ{ ĊĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġfun Ġprovide Get News Head Lines UseCase ( ĊĠĠĠĠĠĠĠ Ġnews Repository : ĠNews Repository ĊĠĠĠ Ġ): ĠGet News Head lines UseCase Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠGet News Head lines UseCase ( news Repository ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġfun Ġprovide Get Se ar ched News UseCase ( ĊĠĠĠĠĠĠĠ Ġnews Repository : ĠNews Repository ĊĠĠĠ Ġ): ĠGet Se ar ched News UseCase Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠGet Se ar ched News UseCase ( news Repository ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġfun Ġprovide Save News UseCase ( ĊĠĠĠĠĠĠĠ Ġnews Repository : ĠNews Repository ĊĠĠĠ Ġ): ĠSave News UseCase Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠSave News UseCase ( news Repository ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġfun Ġprovide Get Saved News UseCase ( ĊĠĠĠĠĠĠĠ Ġnews Repository : ĠNews Repository ĊĠĠĠ Ġ): ĠGet Saved News UseCase Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠGet Saved News UseCase ( news Repository ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġfun Ġprovide Delete Saved News UseCase ( ĊĠĠĠĠĠĠĠ Ġnews Repository : ĠNews Repository ĊĠĠĠ Ġ): ĠDelete Saved News UseCase Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠDelete Saved News UseCase ( news Repository ) ĊĠĠĠ Ġ} Ċ Ċ }