@bandprotocol/bandchain.js
Version:
TypeScript library for Cosmos SDK and BandChain
287 lines (286 loc) • 13.3 kB
TypeScript
import { Coin, CoinAmino, CoinSDKType } from "../../../cosmos/base/v1beta1/coin";
import { BinaryReader, BinaryWriter } from "../../../binary";
/** TransitionStatus is an enumeration of the possible statuses of a group transition process. */
export declare enum TransitionStatus {
/** TRANSITION_STATUS_UNSPECIFIED - TRANSITION_STATUS_UNSPECIFIED is the status of a group transition that has not been specified. */
TRANSITION_STATUS_UNSPECIFIED = 0,
/**
* TRANSITION_STATUS_CREATING_GROUP - TRANSITION_STATUS_CREATING_GROUP is the status of a group transition that a new group
* is being created.
*/
TRANSITION_STATUS_CREATING_GROUP = 1,
/**
* TRANSITION_STATUS_WAITING_SIGN - TRANSITION_STATUS_WAITING_SIGN is the status of a group transition that waits members in
* a current group to sign the transition message.
*/
TRANSITION_STATUS_WAITING_SIGN = 2,
/**
* TRANSITION_STATUS_WAITING_EXECUTION - TRANSITION_STATUS_WAITING_EXECUTION is the status of a group transition that
* a transition process is completed, either from a forceTransition or having a current-group
* signature on a transition message, but waits for the execution time.
*/
TRANSITION_STATUS_WAITING_EXECUTION = 3,
UNRECOGNIZED = -1
}
export declare const TransitionStatusSDKType: typeof TransitionStatus;
export declare const TransitionStatusAmino: typeof TransitionStatus;
export declare function transitionStatusFromJSON(object: any): TransitionStatus;
export declare function transitionStatusToJSON(object: TransitionStatus): string;
/** Member maintains member information for monitoring their liveness activity. */
export interface Member {
/** address is the address of the member. */
address: string;
/** group_id is the group ID that the member belongs to. */
groupId: bigint;
/** is_active is a flag to indicate whether a member is active or not. */
isActive: boolean;
/** since is a block timestamp when a member status is changed (from active to inactive or vice versa). */
since: Date;
}
export interface MemberProtoMsg {
typeUrl: "/band.bandtss.v1beta1.Member";
value: Uint8Array;
}
/** Member maintains member information for monitoring their liveness activity. */
export interface MemberAmino {
/** address is the address of the member. */
address?: string;
/** group_id is the group ID that the member belongs to. */
group_id?: string;
/** is_active is a flag to indicate whether a member is active or not. */
is_active?: boolean;
/** since is a block timestamp when a member status is changed (from active to inactive or vice versa). */
since?: string;
}
export interface MemberAminoMsg {
type: "/band.bandtss.v1beta1.Member";
value: MemberAmino;
}
/** Member maintains member information for monitoring their liveness activity. */
export interface MemberSDKType {
address: string;
group_id: bigint;
is_active: boolean;
since: Date;
}
/** CurrentGroup is a bandtss current group information. */
export interface CurrentGroup {
/** group_id is the ID of the current group. */
groupId: bigint;
/** active_time is the timestamp at which the group becomes the current group of the module. */
activeTime: Date;
}
export interface CurrentGroupProtoMsg {
typeUrl: "/band.bandtss.v1beta1.CurrentGroup";
value: Uint8Array;
}
/** CurrentGroup is a bandtss current group information. */
export interface CurrentGroupAmino {
/** group_id is the ID of the current group. */
group_id?: string;
/** active_time is the timestamp at which the group becomes the current group of the module. */
active_time?: string;
}
export interface CurrentGroupAminoMsg {
type: "/band.bandtss.v1beta1.CurrentGroup";
value: CurrentGroupAmino;
}
/** CurrentGroup is a bandtss current group information. */
export interface CurrentGroupSDKType {
group_id: bigint;
active_time: Date;
}
/** Signing is a bandtss signing information. */
export interface Signing {
/** id is the unique identifier of the bandtss signing. */
id: bigint;
/** fee_per_signer is the tokens that will be paid per signer for this bandtss signing. */
feePerSigner: Coin[];
/** requester is the address who pays the bandtss signing. */
requester: string;
/** current_group_signing_id is a tss signing ID of a current group. */
currentGroupSigningId: bigint;
/** incoming_group_signing_id is a tss signing ID of an incoming group, if any. */
incomingGroupSigningId: bigint;
}
export interface SigningProtoMsg {
typeUrl: "/band.bandtss.v1beta1.Signing";
value: Uint8Array;
}
/** Signing is a bandtss signing information. */
export interface SigningAmino {
/** id is the unique identifier of the bandtss signing. */
id?: string;
/** fee_per_signer is the tokens that will be paid per signer for this bandtss signing. */
fee_per_signer?: CoinAmino[];
/** requester is the address who pays the bandtss signing. */
requester?: string;
/** current_group_signing_id is a tss signing ID of a current group. */
current_group_signing_id?: string;
/** incoming_group_signing_id is a tss signing ID of an incoming group, if any. */
incoming_group_signing_id?: string;
}
export interface SigningAminoMsg {
type: "/band.bandtss.v1beta1.Signing";
value: SigningAmino;
}
/** Signing is a bandtss signing information. */
export interface SigningSDKType {
id: bigint;
fee_per_signer: CoinSDKType[];
requester: string;
current_group_signing_id: bigint;
incoming_group_signing_id: bigint;
}
/** GroupTransition defines the group transition information of the current group and incoming group. */
export interface GroupTransition {
/** signing_id is a tss signing ID of group transition signing request. */
signingId: bigint;
/** current_group_id is the ID of the group that will be replaced. */
currentGroupId: bigint;
/** current_group_pub_key is the public key pair that used for sign & verify transition group msg. */
currentGroupPubKey: Uint8Array;
/** new_group_id is the ID of the new group that be a new key candidate. */
incomingGroupId: bigint;
/** incoming_group_pub_key is the public key of the group that will be the next key of this group */
incomingGroupPubKey: Uint8Array;
/** status is an enumeration of the possible statuses of a group transition process. */
status: TransitionStatus;
/** exec_time is the time when the transition will be executed. */
execTime: Date;
/**
* is_force_transition is a flag to indicate whether the current group signs the transition message
* before the transition is executed or not.
*/
isForceTransition: boolean;
}
export interface GroupTransitionProtoMsg {
typeUrl: "/band.bandtss.v1beta1.GroupTransition";
value: Uint8Array;
}
/** GroupTransition defines the group transition information of the current group and incoming group. */
export interface GroupTransitionAmino {
/** signing_id is a tss signing ID of group transition signing request. */
signing_id?: string;
/** current_group_id is the ID of the group that will be replaced. */
current_group_id?: string;
/** current_group_pub_key is the public key pair that used for sign & verify transition group msg. */
current_group_pub_key?: string;
/** new_group_id is the ID of the new group that be a new key candidate. */
incoming_group_id?: string;
/** incoming_group_pub_key is the public key of the group that will be the next key of this group */
incoming_group_pub_key?: string;
/** status is an enumeration of the possible statuses of a group transition process. */
status?: TransitionStatus;
/** exec_time is the time when the transition will be executed. */
exec_time?: string;
/**
* is_force_transition is a flag to indicate whether the current group signs the transition message
* before the transition is executed or not.
*/
is_force_transition?: boolean;
}
export interface GroupTransitionAminoMsg {
type: "/band.bandtss.v1beta1.GroupTransition";
value: GroupTransitionAmino;
}
/** GroupTransition defines the group transition information of the current group and incoming group. */
export interface GroupTransitionSDKType {
signing_id: bigint;
current_group_id: bigint;
current_group_pub_key: Uint8Array;
incoming_group_id: bigint;
incoming_group_pub_key: Uint8Array;
status: TransitionStatus;
exec_time: Date;
is_force_transition: boolean;
}
/** GroupTransitionSignatureOrder defines a general signature order for group transition. */
export interface GroupTransitionSignatureOrder {
$typeUrl?: "/band.bandtss.v1beta1.GroupTransitionSignatureOrder";
/** pub_key is the public key of new group that the current group needs to be signed. */
pubKey: Uint8Array;
/** transition_time is the timestamp at which the transition is executed and the public key is active. */
transitionTime: Date;
}
export interface GroupTransitionSignatureOrderProtoMsg {
typeUrl: "/band.bandtss.v1beta1.GroupTransitionSignatureOrder";
value: Uint8Array;
}
/** GroupTransitionSignatureOrder defines a general signature order for group transition. */
export interface GroupTransitionSignatureOrderAmino {
/** pub_key is the public key of new group that the current group needs to be signed. */
pub_key?: string;
/** transition_time is the timestamp at which the transition is executed and the public key is active. */
transition_time?: string;
}
export interface GroupTransitionSignatureOrderAminoMsg {
type: "/band.bandtss.v1beta1.GroupTransitionSignatureOrder";
value: GroupTransitionSignatureOrderAmino;
}
/** GroupTransitionSignatureOrder defines a general signature order for group transition. */
export interface GroupTransitionSignatureOrderSDKType {
$typeUrl?: "/band.bandtss.v1beta1.GroupTransitionSignatureOrder";
pub_key: Uint8Array;
transition_time: Date;
}
export declare const Member: {
typeUrl: string;
encode(message: Member, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): Member;
fromPartial(object: Partial<Member>): Member;
fromAmino(object: MemberAmino): Member;
toAmino(message: Member): MemberAmino;
fromAminoMsg(object: MemberAminoMsg): Member;
fromProtoMsg(message: MemberProtoMsg): Member;
toProto(message: Member): Uint8Array;
toProtoMsg(message: Member): MemberProtoMsg;
};
export declare const CurrentGroup: {
typeUrl: string;
encode(message: CurrentGroup, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): CurrentGroup;
fromPartial(object: Partial<CurrentGroup>): CurrentGroup;
fromAmino(object: CurrentGroupAmino): CurrentGroup;
toAmino(message: CurrentGroup): CurrentGroupAmino;
fromAminoMsg(object: CurrentGroupAminoMsg): CurrentGroup;
fromProtoMsg(message: CurrentGroupProtoMsg): CurrentGroup;
toProto(message: CurrentGroup): Uint8Array;
toProtoMsg(message: CurrentGroup): CurrentGroupProtoMsg;
};
export declare const Signing: {
typeUrl: string;
encode(message: Signing, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): Signing;
fromPartial(object: Partial<Signing>): Signing;
fromAmino(object: SigningAmino): Signing;
toAmino(message: Signing): SigningAmino;
fromAminoMsg(object: SigningAminoMsg): Signing;
fromProtoMsg(message: SigningProtoMsg): Signing;
toProto(message: Signing): Uint8Array;
toProtoMsg(message: Signing): SigningProtoMsg;
};
export declare const GroupTransition: {
typeUrl: string;
encode(message: GroupTransition, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): GroupTransition;
fromPartial(object: Partial<GroupTransition>): GroupTransition;
fromAmino(object: GroupTransitionAmino): GroupTransition;
toAmino(message: GroupTransition): GroupTransitionAmino;
fromAminoMsg(object: GroupTransitionAminoMsg): GroupTransition;
fromProtoMsg(message: GroupTransitionProtoMsg): GroupTransition;
toProto(message: GroupTransition): Uint8Array;
toProtoMsg(message: GroupTransition): GroupTransitionProtoMsg;
};
export declare const GroupTransitionSignatureOrder: {
typeUrl: string;
encode(message: GroupTransitionSignatureOrder, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): GroupTransitionSignatureOrder;
fromPartial(object: Partial<GroupTransitionSignatureOrder>): GroupTransitionSignatureOrder;
fromAmino(object: GroupTransitionSignatureOrderAmino): GroupTransitionSignatureOrder;
toAmino(message: GroupTransitionSignatureOrder): GroupTransitionSignatureOrderAmino;
fromAminoMsg(object: GroupTransitionSignatureOrderAminoMsg): GroupTransitionSignatureOrder;
fromProtoMsg(message: GroupTransitionSignatureOrderProtoMsg): GroupTransitionSignatureOrder;
toProto(message: GroupTransitionSignatureOrder): Uint8Array;
toProtoMsg(message: GroupTransitionSignatureOrder): GroupTransitionSignatureOrderProtoMsg;
};