UNPKG

@provenanceio/wallet-utils

Version:

Typescript Utilities for Provenance Blockchain Wallet

58 lines (57 loc) 3.18 kB
import * as google_protobuf_any_pb from 'google-protobuf/google/protobuf/any_pb'; import { BaseAccount } from '../../../proto/cosmos/auth/v1beta1/auth_pb'; import { BroadcastTxRequest } from '../../../proto/cosmos/tx/v1beta1/service_pb'; import { Wallet } from '@tendermint/sig'; import { CoinAsObject } from '../../../types'; export interface BuildTxBodyProps { msgAny: google_protobuf_any_pb.Any | google_protobuf_any_pb.Any[]; extensionOptionsList?: google_protobuf_any_pb.Any[]; nonCriticalExtensionOptionsList?: google_protobuf_any_pb.Any[]; memo?: string; timeoutHeight?: number; } declare type BuildBroadcastTxRequestProps = BuildTxBodyProps & { account: BaseAccount; gasPriceDenom?: string; gasLimit: number; gasAdjustment?: number; feeGranter?: string; feePayer?: string; chainId: string; wallet: Wallet; feeEstimate: CoinAsObject[]; feeDenom: string; }; /** * Builds the BroadcastTxRequest, the request type for the * Service.BroadcastTxRequest RPC method * @param msgAny any valid Provenance message * @param account the account number sending the message * @param chainId the unique identifier of the chain this transaction targets. * It prevents signed transactions from being used on another chain by an * attacker * @param wallet the signing wallet. Used to identify the private key for * signature * @param feeEstimate the estimated fee * @param memo any arbitrary note/comment to be added to the transaction * @param feeDenom the denom of the fee. Not required * @param gasLimit the maximum gas that can be used in transaction processing * @param feeGranter if set, the fee payer (either the first signer or the value of the payer field) requests that a fee grant be used * to pay fees instead of the fee payer's own balance. If an appropriate fee grant does not exist or the chain does * not support fee grants, this will fail * @param feePayer if unset, the first signer is responsible for paying the fees. If set, the specified account must pay the fees. * The payer must be a tx signer (and thus have signed this field in AuthInfo). * Setting this field does *not* change the ordering of required signers for the transaction * @param timeoutHeight the block height after which this transaction will not * be processed by the chain * @param extensionOptionsList arbitrary options that can be added by chains * when the default options are not sufficient. If any of these are present * and can't be handled, the transaction will be rejected * @param nonCriticalExtensionOptionsList arbitrary options that can be added by chains * when the default options are not sufficient. If any of these are present * and can't be handled, they will be ignored * @returns the BroadCastTxRequest * reference: https://github.com/cosmos/cosmos-sdk/blob/v0.47.0-rc1/proto/cosmos/tx/v1beta1/tx.proto#L13-L26 */ export declare const buildBroadcastTxRequest: ({ msgAny, account, chainId, wallet, feeEstimate, memo, feeDenom, gasLimit, feeGranter, feePayer, timeoutHeight, extensionOptionsList, nonCriticalExtensionOptionsList, }: BuildBroadcastTxRequestProps) => BroadcastTxRequest; export {};