package Ġcom . wo ow r ale . open library . di . components Ċ Ċ import Ġcom . wo ow r ale . open library . Open Library MV VM Test Ċ import Ġcom . wo ow r ale . open library . data . repository . Open Library Repository Ċ import Ġcom . wo ow r ale . open library . di . factory . UseCase Factory Ċ import Ġcom . wo ow r ale . open library . di . modules . Fake App Module Ċ import Ġcom . wo ow r ale . open library . di . modules . Thread Module Ċ import Ġcom . wo ow r ale . open library . ui . details . Details ViewModel Ċ import Ġcom . wo ow r ale . open library . ui . global . local . Global Local ViewModel Ċ import Ġcom . wo ow r ale . open library . ui . global . remote . Global Remote ViewModel Ċ import Ġdagger . Bind s Instance Ċ import Ġdagger . Component Ċ import Ġjavax . inject . Singleton Ċ Ċ @ Singleton Ċ @ Component ( ĊĠĠĠ Ġmodules Ġ= Ġ[ ĊĠĠĠĠĠĠĠ ĠFake App Module :: class , ĊĠĠĠĠĠĠĠ ĠThread Module :: class ĊĠĠĠ Ġ] Ċ ) Ċ interface ĠFake Component Ġ{ ĊĊĠĠĠ Ġval Ġopen Library Repository : ĠOpen Library Repository ĊĠĠĠ Ġval Ġuse Case Factory : ĠUse Case Factory ĊĠĠĠ Ġval Ġglobal Remote ViewModel : ĠGlobal Remote ViewModel ĊĠĠĠ Ġval Ġglobal Local ViewModel : ĠGlobal Local ViewModel ĊĠĠĠ Ġval Ġdetails ViewModel : ĠDetails ViewModel ĊĊĠĠĠ Ġ@ Component . Builder ĊĠĠĠ Ġinterface ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Bind s Instance ĊĠĠĠĠĠĠĠ Ġfun Ġapp Test ( application : ĠOpen Library MV VM Test ): ĠFake Component . Builder ĊĠĠĠĠĠĠĠ Ġfun Ġbuild (): ĠFake Component ĊĠĠĠ Ġ} Ċ }