import { Transaction } from 'web3-core'; import { ArianeeConfig } from '../../models/arianeeConfiguration'; import { WatchParameter } from '../../models/watchParameter'; import { ConsolidatedCertificateRequest } from './certificateSummary/certificateSummary'; import { ContractService } from './services/contractService/contractsService'; import { UtilsService } from './services/utilService/utilsService'; import { WalletService } from './services/walletService/walletService'; import { TransactionObject } from '@arianee/arianee-abi/types/types'; import EventEmitter = require('eventemitter3'); export interface ClassicConfiguration { account: any; mnemonic?: string; web3?: any; } export declare class ArianeeWallet { private container; private _account; private _mnemonic; constructor(configuration: ClassicConfiguration, arianeeConfig: ArianeeConfig); private registerSingletons; get globalConfiguration(): any; /** * Function to override the default wallet send method * @param send( transaction:Transaction, data:TransactionObject):Promise * transaction: the transaction to send (encoded) * data: the non encoded transaction */ setCustomSendTransaction(send: (transaction: Transaction, data?: any) => Promise): ArianeeWallet; setCustomCall(call: (transaction: Transaction, data: TransactionObject) => Promise): ArianeeWallet; setCustomSign(sign: (data: string) => Promise<{ message: string; messageHash: string; signature: string; }>): ArianeeWallet; /** * @deprecated use address instead */ get publicKey(): string; get address(): string; get privateKey(): string; get mnemnonic(): string; get web3(): any; get configuration(): ArianeeConfig; get methods(): { requestAria: () => Promise; requestPoa: () => Promise; cancelTransactions: (parameters: { fromNonce: number; toNonce?: number; gas?: number; gasPrice?: number; }) => Promise; reserveCertificateId: (certificateId?: number, receiver?: string) => Promise; createCertificate: (data: import("../../models/transaction-parameters").hydrateTokenParameters) => Promise<{ [key: string]: any; passphrase: string; certificateId: any; deepLink: string; }>; createCertificatesBatch: (datas: import("../../models/transaction-parameters").hydrateTokenParameters[]) => Promise; createAndStoreCertificate: (data: import("../../models/transaction-parameters").hydrateTokenParameters, urlOfRPCServer?: string) => Promise<{ [key: string]: any; passphrase: string; certificateId: any; deepLink: string; }>; getCertificate: (certificateId: any, passphrase?: string, query?: ConsolidatedCertificateRequest) => Promise>; getCertificateFromArianeeAccessToken: (arianeeAccessToken: string, query?: ConsolidatedCertificateRequest) => Promise>; destroyCertificate: (certificateId: any) => Promise; recoverCertificate: (certificateId: any) => Promise; getMyCertificates: (query?: ConsolidatedCertificateRequest, verifyOwnership?: boolean) => Promise[]>; getCertificatesId: (verifyOwnership?: boolean) => Promise; getMyCertificatesGroupByIssuer: (query?: ConsolidatedCertificateRequest) => Promise<{ [key: string]: import("./certificateSummary/certificateSummary").CertificateSummary[]; }>; getIdentity: (address: string, issuerQuery?: import("./certificateSummary/certificateSummary").ConsolidatedIssuerRequest) => Promise>; getIdentityByShortId: (shortId: string) => Promise>; createCertificateRequestOwnershipLink: (certificateId: number, passphrase?: string, customDeeplink?: string) => Promise<{ certificateId: number; passphrase: string; link: string; }>; createCertificateProofLink: (certificateId: number, passphrase?: string, customDeeplink?: string) => Promise<{ certificateId: number; passphrase: string; link: string; }>; createActionProofLink: (url: string, certificateId: number, passphrase?: string) => Promise; getCertificateFromLink: (arianeeLink: string, query?: ConsolidatedCertificateRequest) => Promise>; isCertificateProofValid: (certificateId: number, passphrase?: string, jwt?: string) => Promise>; isCertificateProofValidFromLink: (proofLink: string) => Promise>; isCertificateProofValidFromActionProofLink: (url: string) => Promise; isCertificateOwnershipRequestable: (certificateId: any, passphrase: any) => Promise; requestCertificateOwnership: (certificateId: number, passphrase: string) => Promise; balanceOfAria: (address?: any) => Promise; balanceOfRia: (address?: any) => Promise; balanceOfPoa: (address?: any) => Promise; balanceOfAriaReadable: (address?: any) => Promise; getCreditPrice: (creditType: string) => Promise; approveStore: () => PromiEvent; buyCredits: (creditType: string, quantity: number, receiver?: string) => Promise; balanceOfCredit: (creditType: string, address?: any) => Promise; ownerOf: (certificateId: any) => Promise; transfer: (certificateId: any, toAddress: string) => Promise>; acceptArianeeEvent: (eventId: any) => PromiEvent; refuseArianeeEvent: (eventId: any) => PromiEvent; setMessageAuthorizationFor: (certificateId: any, senderAddress: string, isAuthorized: boolean) => Promise; getMessageSenders: (parameters: { certificateId: any; query: ConsolidatedCertificateRequest; }) => Promise<{ [key: string]: boolean; }>; storeContentInRPCServer: (certificateId: any, content: any, arianeePrivacyGatewayURL?: string) => Promise<{ jsonrpc: number; id: string; result?: any; }>; createArianeeEvent: (data: { uri?: string; contentImprint?: string; certificateId: number; arianeeEventId?: number; content?: { [key: string]: any; $schema: string; }; }) => Promise<{ contentImprint: string; arianeeEventId: number; }>; storeArianeeEvent: (certificateId: any, arianeeEventId: number, content: any, url?: string) => Promise<{ jsonrpc: number; id: string; result?: any; }>; createAndStoreArianeeEvent: (data: { uri?: string; certificateId: number; arianeeEventId?: number; content?: { [key: string]: any; $schema: string; }; }, url?: string) => Promise<{ contentImprint: string; arianeeEventId: number; }>; getMyMessages: (parameters?: { query?: ConsolidatedCertificateRequest; url?: string; }) => Promise; getAllMyMessageIds: () => Promise; getMessage: (parameters: { messageId: number; query?: ConsolidatedCertificateRequest; url?: string; forceRefresh?: boolean; }) => Promise>; isMessageRead: (messageId?: number) => Promise; createMessage: (data: { contentImprint?: string; certificateId: number; content?: { [key: string]: any; $schema: string; }; messageId?: number; }) => Promise<{ contentImprint: string; messageId: number; }>; storeMessage: (messageId: number, content: any, url?: string) => Promise<{ jsonrpc: number; id: string; result?: any; }>; createAndStoreMessage: (data: { uri?: string; certificateId: number; content?: { [key: string]: any; $schema: string; }; messageId?: number; }, url?: string) => Promise<{ contentImprint: string; messageId: number; }>; markAsRead: (messageId: number) => Promise; diagnosis: (diagnosisList: Promise[], rawErrors?: any) => Promise; createActionArianeeAccessTokenLink: (url: string, certificateId: number) => Promise; decodeArianeeAccessToken: (token: any) => { header: any; payload: import("../../models/JWT/certificate-jwt").CertificateJwt; signature: string; }; createCertificateArianeeAccessToken: (certificateId: number) => Promise; isCertificateArianeeAccessTokenValid: (token: any) => Promise; isArianeeAccessTokenValid: (token: any) => Promise; getArianeeAccessTokenJWT: (token: any) => Promise<{ header: any; payload: any; signature: string; }>; createWalletAccessToken: () => Promise; createAuthURL: (data: { type: "arianeeAccessToken" | "proof"; certificateId: any; url: string; }) => Promise; isAuthURL: (url: string) => Promise; updateAndStoreCertificate: (parameters: { certificateId: any; content: any; }, urlOfRPCServer?: string) => Promise; storeUpdateContentInRPCServer: (certificateId: any, content: any, arianeePrivacyGatewayURL?: string) => Promise<{ jsonrpc: number; id: string; result?: any; }>; updateCertificate: (parameters: { certificateId: any; content?: any; imprint?: string; }) => Promise; setMissingStatus: (arianeeId: any) => PromiEvent; unsetMissingStatus: (arianeeId: any) => Promise; setStolenStatus: (arianeeId: any) => Promise; unsetStolenStatus: (arianeeId: any) => Promise; isMissing: (arianeeId: any) => Promise; isStolen: (arianeeId: any) => Promise; fetchGasPrice: () => Promise; }; get arianeeMethods(): { aria: { faucet: () => Promise; balance: (objParams: { address: any; }) => Promise; }; poa: { balance: () => Promise; faucet: (objParams: { address: any; }) => Promise; }; credit: { buy: (objParams: { creditType: string; quantity: number; receiver?: string; }) => Promise; balance: (objParams: { creditType: string; address?: string; }) => Promise; types: () => import("../../models").creditTypeEnum[]; }; identity: { fetch: (objParams: { address: string; query?: import("./certificateSummary/certificateSummary").ConsolidatedIssuerRequest; }) => Promise>; getByShortId: (objParams: { shortId: string; }) => Promise>; }; certificate: { fetch: { one: (objParams: { certificateId: string; passphrase?: string; query?: ConsolidatedCertificateRequest; }) => Promise>; oneFromLink: (objParams: { link: string; query: ConsolidatedCertificateRequest; }) => Promise>; oneFromArianeeAccessToken: (objParams: { arianeeAccessToken: string; query: ConsolidatedCertificateRequest; }) => Promise>; mine: { all: (objParams: { verifyOwnership?: boolean; query?: ConsolidatedCertificateRequest; }) => Promise[]>; groupByIssuer: (objParams: { query?: ConsolidatedCertificateRequest; }) => Promise<{ [key: string]: import("./certificateSummary/certificateSummary").CertificateSummary[]; }>; }; }; creation: { create: (data: import("../../models/transaction-parameters").hydrateTokenParameters) => Promise<{ [key: string]: any; passphrase: string; certificateId: any; deepLink: string; }>; reserveId: (objParams: { certificateId: number; }) => Promise; createAndStore: (objParams: { data: import("../../models/transaction-parameters").hydrateTokenParameters; urlOfRPCServer: string; }) => Promise<{ [key: string]: any; passphrase: string; certificateId: any; deepLink: string; }>; storeContent: (objParams: { certificateId: any; content: any; url?: string; }) => Promise<{ jsonrpc: number; id: string; result?: any; }>; batch: (objParams: { datas: import("../../models/transaction-parameters").hydrateTokenParameters[]; }) => Promise; }; arianeeAccessToken: { create: (objParams: { url: string; certificateId: number; }) => Promise; decode: (objParams: { arianeeAccessToken: any; }) => { header: any; payload: import("../../models/JWT/certificate-jwt").CertificateJwt; signature: string; }; isArianeeAccessTokenValid: (objParams: { arianeeAccessToken: any; }) => Promise; isCertificateProofValid: (objParams: { certificateId: number; passphrase?: string; arianeeAccessToken?: string; }) => Promise>; isCertificateProofValidFromLink: (objParams: { proofLink: string; }) => Promise>; isCertificateProofValidFromActionProofLink: (objParams: { actionProofLink: string; }) => Promise; }; proof: { createCertificateProofLink: (objParams: { certificateId: number; passphrase?: string; }) => Promise<{ certificateId: number; passphrase: string; link: string; }>; createActionProofLink: (objParams: { url: string; certificateId: number; passphrase?: string; }) => Promise; isCertificateProofValid: (objParams: { certificateId: number; passphrase?: string; arianeeAccessToken?: string; }) => Promise>; isCertificateProofValidFromLink: (objParams: { proofLink: string; }) => Promise>; isCertificateProofValidFromActionProofLink: (objParams: { actionProofLink: string; }) => Promise; }; ownership: { destroy: (objParams: { certificateId: any; }) => Promise; recover: (objParams: { certificateId: any; }) => Promise; request: (objParams: { certificateId: any; passphrase: string; }) => Promise; isRequestable: (objParams: { certificateId: any; passphrase: string; }) => Promise; createRequestLink: (objParams: { certificateId: any; passphrase: string; }) => Promise<{ certificateId: number; passphrase: string; link: string; }>; }; }; arianeeEvent: { accept: (objParams: { eventId: string; }) => PromiEvent; refuse: (objParams: { eventId: string; }) => PromiEvent; setMessageAuthorization: (objParams: { certificateId: any; senderAddress: string; isAuthorized: boolean; }) => Promise; senders: (parameters: { certificateId: any; query: ConsolidatedCertificateRequest; }) => Promise<{ [key: string]: boolean; }>; creation: { create: (data: { uri?: string; contentImprint?: string; certificateId: number; arianeeEventId?: number; content?: { [key: string]: any; $schema: string; }; }) => Promise<{ contentImprint: string; arianeeEventId: number; }>; storeContent: (objParams: { certificateId: any; arianeeEventId: number; content: any; url: string; }) => Promise<{ jsonrpc: number; id: string; result?: any; }>; createAndStore: (objParams: { data: { uri?: string; certificateId: number; arianeeEventId?: number; content?: { [key: string]: any; $schema: string; }; }; urlOfRPC: string; }) => Promise<{ contentImprint: string; arianeeEventId: number; }>; }; }; store: { approve: () => PromiEvent; }; advanced: { diagnosis: (diagnosisList: Promise[], rawErrors?: any) => Promise; }; dMessage: { fetch: { mine: (parameters?: { query?: ConsolidatedCertificateRequest; url?: string; }) => Promise; one: (parameters: { messageId: number; query?: ConsolidatedCertificateRequest; url?: string; forceRefresh?: boolean; }) => Promise>; }; creation: { send: (objParams: { data: { uri?: string; certificateId: number; content?: { [key: string]: any; $schema: string; }; messageId?: number; }; url: string; }) => Promise<{ contentImprint: string; messageId: number; }>; storeContent: (objParams: { messageId: number; content: any; url: string; }) => Promise<{ jsonrpc: number; id: string; result?: any; }>; create: (data: { contentImprint?: string; certificateId: number; content?: { [key: string]: any; $schema: string; }; messageId?: number; }) => Promise<{ contentImprint: string; messageId: number; }>; createAndStore: (objParams: { data: { uri?: string; certificateId: number; content?: { [key: string]: any; $schema: string; }; messageId?: number; }; url: string; }) => Promise<{ contentImprint: string; messageId: number; }>; }; markAsRead: (objParams: { certificateId: any; }) => Promise; }; }; get utils(): UtilsService; get requestPoa(): () => Promise; get requestAria(): () => Promise; get account(): any; get walletservice(): WalletService; get contracts(): ContractService; customWatch: (watchParameters: WatchParameter) => EventEmitter; get watch(): EventEmitter; setDefaultQuery(value: ConsolidatedCertificateRequest): this; }