import { ServiceError } from "../Types/index.ts"; import { GitHubUserActivity, GitHubUserAll, GitHubUserIssue, GitHubUserPullRequest, GitHubUserRepository, UserInfo, } from "../user_info.ts"; export abstract class GithubRepository { abstract requestUserInfo(username: string): Promise; abstract requestUserAll( username: string, ): Promise; abstract requestUserActivity( username: string, ): Promise; abstract requestUserIssue( username: string, ): Promise; abstract requestUserPullRequest( username: string, ): Promise; abstract requestUserRepository( username: string, ): Promise; } export class GithubRepositoryService { constructor(public repository: GithubRepository) {} }