@meterio/flex-framework
Version:
A library implements Meter Flex interface
34 lines (33 loc) • 1.25 kB
TypeScript
/// <reference types="@meterio/flex" />
import { DriverNoVendor } from './driver-no-vendor';
import { Net, Wallet } from './interfaces';
/** class fully implements Flex.Driver */
export declare class Driver extends DriverNoVendor {
private readonly wallet?;
/**
* create driver instance
* it will fetch config(genesis, head) via net as construction params
* @param net
* @param wallet
*/
static connect(net: Net, wallet?: Wallet): Promise<Driver>;
/** handler to receive txs committed */
onTxCommit?: (txObj: TxObject) => void;
/** params for tx construction */
txParams: {
expiration: number;
gasPriceCoef: number;
};
constructor(net: Net, genesis: Flex.Meter.Block, initialHead?: Flex.Meter.Status['head'], wallet?: Wallet | undefined);
signTx(msg: Flex.Driver.SignTxArg, option: Flex.Driver.SignTxOption): Promise<Flex.Driver.SignTxResult>;
signCert(msg: Flex.Driver.SignCertArg, options: Flex.Driver.SignCertOption): Promise<Flex.Driver.SignCertResult>;
isAddressOwned(addr: string): Promise<boolean>;
private findKey;
private sendTx;
private estimateGas;
}
export interface TxObject {
id: string;
raw: string;
resend(): Promise<void>;
}