eth-janus
Version:
Indirection service
45 lines (44 loc) • 1.84 kB
TypeScript
import { ISigner } from "../interfaces/isigner";
import { IDirectoryProvider } from "../interfaces/idirectory-provider";
import { IMessageProvider } from "../interfaces/imessage-provider";
import { IStorageProvider } from "../interfaces/istorage-provider";
import { OnetimeKey } from "../common/models";
export declare class Janus {
private directoryProvider;
private messageProvider;
private storageProvider;
private signer;
private companyName;
private mnemonics;
private nodeUrl;
private smartContractService;
private web3;
private callbackMap;
private fundingAccount;
private hdwallet;
constructor(companyName: string, mnemonics: string, nodeUrl: string, directoryProvider: IDirectoryProvider, messageProvider: IMessageProvider, storageProvider: IStorageProvider, signer: ISigner);
startHdwallet(messageProvider: IMessageProvider): void;
requestOnetimeKeys(txnRef: string, networkId: string, parties: Array<string>, callback: (response: any) => void): Promise<void>;
getOnetimeKeys(txnRef: string, networkId: any): Promise<{
txnRef: string;
networkId: string;
partyKeyMap: {
partyName: string;
onetimeKey: OnetimeKey;
}[];
}>;
signTransaction(txnRef: string, networkId: string, txn: any): Promise<{
signedTx: string;
signedTxObj: any;
rawTx: any;
}>;
signMessage(txnRef: string, networkId: string, message: string): Promise<string>;
postTransaction(txnRef: string, networkId: string, txn: any): Promise<any>;
getTransactionReceipt(txnHash: string, interval: number): Promise<any>;
private fundAccountIfNeeded;
private onMessage;
private processOnetimeKeyResponse;
private registerCallback;
private unregisterCallback;
private invokeCallback;
}