import { Http } from 'angular-libs';
import { EvanBCCService } from './bcc';
import { EvanCoreService } from './core';
import { EvanDescriptionService } from './description';
import { EvanQueue } from './queue';
import { EvanTranslationService } from '../ui/translate';
import { EvanUtilService } from '../utils';
import { SingletonService } from '../singleton-service';
/**************************************************************************************************/
/**
 * Evan payment wrapper
 *
 * @class      Injectable EvanAddressBookService
 */
export declare class EvanPaymentService {
    private bcc;
    private core;
    private description;
    private http;
    private queue;
    private singleton;
    private translate;
    private utils;
    /**
     * account address of the payment agent.
     */
    paymentAgentAccountId: string;
    /**
     * Manager of the payment channel.
     */
    paymentChannelManagerAccountId: string;
    /**
     * Url to the payment agent server.
     */
    paymentAgentUrl: string;
    /**
     * base endpoint of the payment
     */
    paymentEndPoint: string;
    /**
     * create singleton instance and create queue id
     */
    constructor(bcc: EvanBCCService, core: EvanCoreService, description: EvanDescriptionService, http: Http, queue: EvanQueue, singleton: SingletonService, translate: EvanTranslationService, utils: EvanUtilService);
    /**
     * Send a rest get request to the payment agent using the corresponding new build headers.
     *
     * @param      {string}  endPoint  endpoint that should be called using
     *                                 `${ this.paymentAgentUrl }/${ this.paymentEndPoint }`
     * @return     {Promise<any>}  json result of the request
     */
    requestPaymentAgent(endPoint: string): Promise<any>;
}
