import { OnInit, FormBuilder, // @angular/forms
AfterViewInit, ChangeDetectorRef, Http } from 'angular-libs';
import { EvanAlertService } from '../../services/ui/alert';
import { EvanTranslationService } from '../../services/ui/translate';
/**************************************************************************************************/
/**
 * Global password component that is used within each Angular DApp. Will be
 * registered in the root.ts in each evan.network featured DApp. Unlocks the
 * current users profile. Should only be used using the modal service!
 *
 * Usage within root component:
 *   await this.bcc.initialize((accountId) => this.bcc.globalPasswordDialog(accountId));
 *
 * Directly usage:
 *   password = await this.modalService.createModal(GlobalPasswordComponent, {
 *     core: this.core,
 *     bcc: this,
 *     accountId: accountId
 *   });
 *
 * @class      Component GlobalPasswordComponent
 */
export declare class EvanTermsOfUseComponent implements OnInit, AfterViewInit {
    private alertService;
    private formBuilder;
    private http;
    private ref;
    private translate;
    /*****************    variables    *****************/
    /**
     * resolvle function that is applied from modal service
     */
    private resolveDialog;
    /**
     * reject function that is applied from modal service
     */
    private rejectDialog;
    /**
     * remove function that is applied from modal service
     */
    private removeDialog;
    /**
     * used to hide the background using smooth transitions
     */
    private showBackground;
    /**
     * current account id
     */
    private accountId;
    /**
     * will be applied from the modal service
     */
    private bcc;
    /**
     * will be applied from the modal service
     */
    private core;
    /**
     * show loading
     */
    private loading;
    /**
     * current terms of use specification
     */
    private termsOfUse;
    /**
     * if the terms of use could not be accepted, show an error message!
     */
    private error;
    /**
     * Url to the faucet agent server.
     */
    private faucetAgentUrl;
    /**
     * base endpoint for identity create
     */
    private faucetEndPoint;
    /***************** initialization  *****************/
    constructor(alertService: EvanAlertService, formBuilder: FormBuilder, http: Http, ref: ChangeDetectorRef, translate: EvanTranslationService);
    ngOnInit(): Promise<void>;
    ngAfterViewInit(): void;
    /*****************    functions    *****************/
    /**
     * Load the terms of for the current chain the current language.
     */
    loadTermsOfUse(): Promise<any>;
    /**
     * Accept the new terms of use.
     *
     * @return     {Promise<void>}  resolved when done
     */
    private acceptTermsOfUse;
    /**
     * Send a rest get request to the faucet agent using the corresponding new build headers.
     *
     * @param      {string}        endPoint  endpoint that should be called
     * @return     {Promise<any>}  json result of the request
     */
    private requestFaucetAgent;
}
