import { ContactBook } from './contact-book'; import { ContactItem } from './contact-item'; import { ContentItem } from './content-item'; import { Storage } from './storage'; import { UploadItemParameters } from './upload-item-parameters'; import { IWebClient } from './webclient'; export declare class BankClient { private urlBase; private ipfsUrlBase; private storage; private webClient; static parseBankLink(bankLink: string): { host: string | undefined; address: string; topic: string; }; private privateKey; private wsUrlBase; private bootstrapPromise; private bootstrapResult; constructor(urlBase: string, ipfsUrlBase: string, storage: Storage, webClient: IWebClient); getPub(): Promise; bootstrap(): any; getNonce(): Promise; getBalance(): Promise; upload(params: UploadItemParameters): Promise; uploadSlimJSON(item: any): Promise; uploadSlimText(item: string): Promise; appendPrivate(peerAddr: string, topic: string, hash?: string, replaceHash?: string, deleteHash?: string): Promise; retrievePrivate(peerAddr: string, topic: string): Promise; subscribePrivate(peerAddr: string, topic: string, connectCallback: () => void, messageCallback: (data: any) => void): Promise; getOrCreateContact(peerId: string, addressType: string, addressValue: string, contactBook?: ContactBook): Promise; createContact(peerId: string, addressType?: string, addressValue?: string): Promise; getAllContacts(peerId: string): Promise; getContactBook(peerId: string): Promise; updateContact(peerId: string, contactId: string, newProperties: any): Promise; getContentItemByHash(hash: string): Promise; getItemsForCommaList(commaList: string): Promise; parseItemHash(itemHash: string): { type: string; timestamp: string | null; hash: string; }; runAgent(address: string, topic: string, storage: Storage, itemProcessCallback: (item: ContentItem | ContactItem) => Promise): Promise; private connectWebsocket; private getPriv; private makePlaintextPayload; }