class GithubClaimResolver {

    public ClaimableResultDto claimableResult(final String owner, final String repo, final String number, final RequestStatus requestStatus) {
        final GithubIssue githubIssue = githubScraper.fetchGithubIssue(owner, repo, number);
        if (isIssueClosed(githubIssue) && githubIssue.getSolver() != null && (requestStatus == FUNDED || requestStatus == CLAIMABLE)) {
            return ClaimableResultDto.builder()
                                     .claimable(true)
                                     .platform(Platform.GITHUB)
                                     .claimableByPlatformUserName(githubIssue.getSolver())
                                     .build();
        }
        return ClaimableResultDto.builder().claimable(false).platform(Platform.GITHUB).build();
    }

    public  GithubClaimResolver(final GithubScraper githubScraper,
                               final AzraelClient azraelClient,
                               final KeycloakRepository keycloakRepository);

}