UNPKG

@firmachain/firma-js

Version:

The Official FirmaChain Javascript SDK written in Typescript

45 lines (44 loc) 2.31 kB
import { EncodeObject, OfflineDirectSigner, Registry } from "@cosmjs/proto-signing"; import { Tendermint34Client } from "@cosmjs/tendermint-rpc"; import { SignDoc, TxRaw } from "cosmjs-types/cosmos/tx/v1beta1/tx"; import { StdFee } from "."; import { Account } from "./accounts"; import { BroadcastTxResponse, StargateClient } from "./stargateclient"; export interface SignerData { readonly accountNumber: number; readonly sequence: number; readonly chainId: string; } export interface SequenceResponse { readonly accountNumber: number; readonly sequence: number; } export interface TxRawExt { readonly txRaw: TxRaw; readonly signature: string; } export declare class SigningStargateClient extends StargateClient { private readonly signer; private readonly registry; private chainId; private static _endpoint; private getSigner; static connectWithSigner(endpoint: string, signer: OfflineDirectSigner | undefined, registry: Registry): Promise<SigningStargateClient>; protected constructor(tmClient: Tendermint34Client | undefined, signer: OfflineDirectSigner | undefined, registry: Registry); signAndBroadcast(signerAddress: string, messages: readonly EncodeObject[], fee: StdFee, memo?: string): Promise<BroadcastTxResponse>; static makeSignDocForSend(signerAddress: string, pubkeyStr: string, messages: readonly EncodeObject[], fee: StdFee, memo: string, serverUrl: string, chainId: string, registry: Registry): Promise<SignDoc>; sign(signerAddress: string, messages: readonly EncodeObject[], fee: StdFee, memo: string, explicitSignerData?: SignerData): Promise<TxRaw>; getChainId(): Promise<string>; /** * Takes a bech32 encoded address and returns the data part. The prefix is ignored and discarded. * This is called AccAddress in Cosmos SDK, which is basically an alias for raw binary data. * The result is typically 20 bytes long but not restricted to that. */ private static toAccAddress; static getAccount(address: string): Promise<Account | undefined>; static getSequence(address: string): Promise<SequenceResponse>; private static makeSignerInfos; private static makeAuthInfoBytes; private signDirect; signDirectForSignDoc(signerAddress: string, signDoc: SignDoc): Promise<TxRawExt>; }