import { ConfirmationRequest } from '../models/ConfirmationRequest';
import { BuildTransferRequestDto } from '../models/transaction/build/BuildTransferRequestDto';
import { BuildTokenTransferRequestDto } from '../models/transaction/build/BuildTokenTransferRequestDto';
import { BuildNftTransferRequestDto } from '../models/transaction/build/BuildNftTransferRequestDto';
import { BuildGasTransferRequestDto } from '../models/transaction/build/BuildGasTransferRequestDto';
import { BuildGenericTransferRequestDto } from '../models/transaction/build/BuildGenericTransferRequestDto';
import { BuildContractExecutionRequestDto } from '../models/transaction/build/BuildContractExecutionRequestDto';
import { GenericSignatureRequest } from '../models/transaction/GenericSignatureRequest';
import { TransactionRequest } from '../models/transaction/TransactionRequest';
import { PopupOptions } from '../popup/Popup';
import { Signer, SignerResult } from './Signer';
import { BuildMessageSignRequestDto } from '../models/transaction/build/BuildMessageSignRequestDto';
import { BuildEip712SignRequestDto } from '../models/transaction/build/BuildEip712SignRequestDto';
export declare class PopupSigner implements Signer {
    private popup;
    private bearerTokenProvider;
    constructor(bearerTokenProvider: () => string, options?: PopupOptions);
    closePopup(): void;
    isOpen(): boolean;
    sign(signatureRequest: GenericSignatureRequest): Promise<SignerResult>;
    signMessage(buildDate: BuildMessageSignRequestDto): Promise<SignerResult>;
    signEip712(buildDate: BuildEip712SignRequestDto): Promise<SignerResult>;
    /** Deprecated since 1.1.9. Use sign instead */
    signTransaction(signatureRequest: GenericSignatureRequest): Promise<SignerResult>;
    executeNativeTransaction(transactionRequest: TransactionRequest): Promise<SignerResult>;
    /** Deprecated since 1.4.0. Use transfer functions instead */
    executeTransaction(genericTransactionRequestOrTransactionId: BuildGenericTransferRequestDto | string): Promise<SignerResult>;
    executeTransfer(buildTransactionData: BuildTransferRequestDto): Promise<SignerResult>;
    executeTokenTransfer(buildTransactionData: BuildTokenTransferRequestDto): Promise<SignerResult>;
    executeNftTransfer(buildTransactionData: BuildNftTransferRequestDto): Promise<SignerResult>;
    executeGasTransfer(buildTransactionData: BuildGasTransferRequestDto): Promise<SignerResult>;
    executeContract(buildTransactionData: BuildContractExecutionRequestDto): Promise<SignerResult>;
    executeSavedTransaction(transactionId: string): Promise<SignerResult>;
    resubmitTransaction(transactionId: string): Promise<SignerResult>;
    cancelTransaction(transactionId: string): Promise<SignerResult>;
    confirm(request: ConfirmationRequest): Promise<SignerResult>;
    private execute;
    private signRequest;
    private handleRequest;
}
