import { AbstractProvider, AbstractSigner, Eip1193Provider } from 'ethers';
import { Contact, FetchUserContactsParams, SendTelegramParams, Web3TelegramConfigOptions, Web3SignerProvider, FetchMyContactsParams, SendTelegramResponse, PrepareTelegramCampaignResponse, PrepareTelegramCampaignParams, SendTelegramCampaignParams, SendTelegramCampaignResponse } from './types.js';
type EthersCompatibleProvider = AbstractProvider | AbstractSigner | Eip1193Provider | Web3SignerProvider | string;
export declare class IExecWeb3telegram {
    private dappAddress;
    private dappWhitelistAddress;
    private graphQLClient;
    private ipfsNode;
    private ipfsGateway;
    private defaultWorkerpool;
    private iexec;
    private dataProtector;
    private initPromise;
    private ethProvider;
    private options;
    constructor(ethProvider: EthersCompatibleProvider, options?: Web3TelegramConfigOptions);
    init(): Promise<void>;
    fetchMyContacts(args?: FetchMyContactsParams): Promise<Contact[]>;
    fetchUserContacts(args: FetchUserContactsParams): Promise<Contact[]>;
    sendTelegram(args: SendTelegramParams): Promise<SendTelegramResponse>;
    sendTelegramCampaign(args: SendTelegramCampaignParams): Promise<SendTelegramCampaignResponse>;
    prepareTelegramCampaign(args: PrepareTelegramCampaignParams): Promise<PrepareTelegramCampaignResponse>;
    private resolveConfig;
}
export {};
