diff --git a/app/src/main/java/com/videoapp/tv/engine/SourceHandler.kt b/app/src/main/java/com/videoapp/tv/engine/SourceHandler.kt new file mode 100644 index 0000000..442c2f4 --- /dev/null +++ b/app/src/main/java/com/videoapp/tv/engine/SourceHandler.kt @@ -0,0 +1,19 @@ +package com.videoapp.tv.engine + +import com.videoapp.tv.data.SearchResult + +interface SourceHandler { + val id: String + val displayName: String + val baseUrl: String + + suspend fun search( + keyword: String, + onResult: suspend (List) -> Unit, + onError: suspend (String) -> Unit + ) + + suspend fun extractVideos(detailUrl: String): List + + suspend fun resolvePlayUrl(playUrl: String): Pair +}