@glitterprotocol/glitter-sdk
Version:
The JavaScript SDK for Glitter
149 lines (148 loc) • 5.14 kB
TypeScript
/// <reference types="node" />
import { PublicKey } from './PublicKey';
import { Any } from '@glitterprotocol/glitter.proto/google/protobuf/any';
import { SignMode as SignMode_pb } from '@glitterprotocol/glitter.proto/cosmos/tx/signing/v1beta1/signing';
import { Tx as Tx_pb, TxBody as TxBody_pb, SignerInfo as SignerInfo_pb, ModeInfo as ModeInfo_pb, AuthInfo as AuthInfo_pb, ModeInfo_Single as ModeInfoSingle_pb, ModeInfo_Multi as ModeInfoMulti_pb } from '@glitterprotocol/glitter.proto/cosmos/tx/v1beta1/tx';
import { CompactBitArray } from './CompactBitArray';
import { Msg } from './Msg';
import { Fee } from './Fee';
import { Buffer } from 'buffer';
import { SignatureV2 } from './SignatureV2';
import { SignerData } from '../client/lcd/api/TxAPI';
export declare class Tx {
body: TxBody;
auth_info: AuthInfo;
signatures: string[];
constructor(body: TxBody, auth_info: AuthInfo, signatures: string[]);
static fromAmino(data: Tx.Amino, isClassic?: boolean): Tx;
static fromData(data: Tx.Data, isClassic?: boolean): Tx;
toData(isClassic?: boolean): Tx.Data;
static unpackAny(anyProto: Any, isClassic?: boolean): Tx;
static fromProto(proto: Tx.Proto, isClassic?: boolean): Tx;
toProto(isClassic?: boolean): Tx.Proto;
toBytes(isClassic?: boolean): Uint8Array;
static fromBuffer(buf: Buffer, isClassic?: boolean): Tx;
appendEmptySignatures(signers: SignerData[]): void;
clearSignatures(): void;
appendSignatures(signatures: SignatureV2[]): void;
}
export declare namespace Tx {
interface Amino {
type: 'core/StdTx' | 'cosmos-sdk/StdTx';
value: {
msg: Msg.Amino[];
fee: Fee.Amino;
signatures: SignatureV2.Amino[];
memo: string;
timeout_height: string;
};
}
interface Data {
body: TxBody.Data;
auth_info: AuthInfo.Data;
signatures: string[];
}
type Proto = Tx_pb;
}
export declare class TxBody {
messages: Msg[];
memo?: string | undefined;
timeout_height?: number | undefined;
constructor(messages: Msg[], memo?: string | undefined, timeout_height?: number | undefined);
static fromData(data: TxBody.Data, isClassic?: boolean): TxBody;
toData(isClassic?: boolean): TxBody.Data;
static fromProto(proto: TxBody.Proto, isClassic?: boolean): TxBody;
toProto(isClassic?: boolean): TxBody.Proto;
toBytes(isClassic?: boolean): Uint8Array;
}
export declare namespace TxBody {
interface Data {
messages: Msg.Data[];
memo: string;
timeout_height: string;
}
type Proto = TxBody_pb;
}
export declare class AuthInfo {
signer_infos: SignerInfo[];
fee: Fee;
constructor(signer_infos: SignerInfo[], fee: Fee);
static fromData(data: AuthInfo.Data): AuthInfo;
toData(): AuthInfo.Data;
static fromProto(proto: AuthInfo.Proto): AuthInfo;
toProto(): AuthInfo.Proto;
toBytes(): Uint8Array;
}
export declare namespace AuthInfo {
interface Data {
signer_infos: SignerInfo.Data[];
fee: Fee.Data;
}
type Proto = AuthInfo_pb;
}
export declare class SignerInfo {
public_key: PublicKey;
sequence: number;
mode_info: ModeInfo;
constructor(public_key: PublicKey, sequence: number, mode_info: ModeInfo);
static fromData(data: SignerInfo.Data): SignerInfo;
toData(): SignerInfo.Data;
static fromProto(proto: SignerInfo.Proto): SignerInfo;
toProto(): SignerInfo.Proto;
}
export declare namespace SignerInfo {
interface Data {
public_key: PublicKey.Data | null;
mode_info: ModeInfo.Data;
sequence: string;
}
type Proto = SignerInfo_pb;
}
export declare class ModeInfo {
single?: ModeInfo.Single;
multi?: ModeInfo.Multi;
constructor(mode_info: ModeInfo.Single | ModeInfo.Multi);
static fromData(data: ModeInfo.Data): ModeInfo;
toData(): ModeInfo.Data;
static fromProto(proto: ModeInfo.Proto): ModeInfo;
toProto(): ModeInfo.Proto;
}
export declare namespace ModeInfo {
interface Data {
single?: Single.Data;
multi?: Multi.Data;
}
type Proto = ModeInfo_pb;
const SignMode: typeof SignMode_pb;
type SignMode = SignMode_pb;
class Single {
mode: SignMode;
constructor(mode: SignMode);
static fromData(data: Single.Data): Single;
toData(): Single.Data;
static fromProto(proto: Single.Proto): Single;
toProto(): Single.Proto;
}
namespace Single {
interface Data {
mode: string;
}
type Proto = ModeInfoSingle_pb;
}
class Multi {
bitarray: CompactBitArray;
modeInfos: ModeInfo[];
constructor(bitarray: CompactBitArray, modeInfos: ModeInfo[]);
static fromData(proto: Multi.Data): Multi;
toData(): Multi.Data;
static fromProto(proto: Multi.Proto): Multi;
toProto(): Multi.Proto;
}
namespace Multi {
interface Data {
bitarray: CompactBitArray.Data;
mode_infos: ModeInfo.Data[];
}
type Proto = ModeInfoMulti_pb;
}
}