class RemoteAccountInformationService implements AccountInformationService {

    @Override
    public Response<SelectPsuAuthenticationMethodResponse> updateConsentsPsuData(String consentId,
                                                                                 String authorisationId,
                                                                                 RequestHeaders requestHeaders,
                                                                                 RequestParams requestParams,
                                                                                 SelectPsuAuthenticationMethod selectPsuAuthenticationMethod) {
        ResponseEntity<Object> responseEntity = client.updateConsentsPsuData(
            consentId,
            authorisationId,
            requestParams.toMap(),
            requestHeaders.toMap(),
            objectMapper.valueToTree(selectPsuAuthenticationMethod)
        );
        SelectPsuAuthenticationMethodResponse selectPsuAuthenticationMethodResponse =
            objectMapper.convertValue(
                responseEntity.getBody(),
                SelectPsuAuthenticationMethodResponse.class
            );
        return new Response<>(
            responseEntity.getStatusCodeValue(),
            selectPsuAuthenticationMethodResponse,
            responseHeadersMapper.getHeaders(responseEntity.getHeaders())
        );
    }

    public  RemoteAccountInformationService(
        AccountInformationClient client, ObjectMapper objectMapper
    );
    public  RemoteAccountInformationService(AccountInformationClient client);

}