@leapwallet/buffer-boba
Version:
Buffer Boba is a library for decoding protocol buffers in the cosmos ecosystem.
431 lines (430 loc) • 17.4 kB
TypeScript
import { BinaryReader, BinaryWriter } from '../../../../binary';
/**
* Status fields for a delegation record
* Note: There is an important assumption here that tokens in the deposit
* account should not be tracked by these records. The record is created as soon
* as the tokens leave stride
* Additionally, the GetActiveDelegationRecords query filters for records that
* are either TRANSFER_IN_PROGERSS or DELEGATION_QUEUE. If a new active status
* is added, the keeper must be modified
*/
export declare enum DelegationRecordStatus {
/**
* TRANSFER_IN_PROGRESS - TRANSFER_IN_PROGRESS indicates the native tokens are being sent from the
* deposit account to the delegation account
*/
TRANSFER_IN_PROGRESS = 0,
/**
* TRANSFER_FAILED - TRANSFER_FAILED indicates that the transfer either timed out or was an ack
* failure
*/
TRANSFER_FAILED = 1,
/**
* DELEGATION_QUEUE - DELEGATION_QUEUE indicates the tokens have landed on the host zone and are
* ready to be delegated
*/
DELEGATION_QUEUE = 2,
/** DELEGATION_COMPLETE - DELEGATION_COMPLETE indicates the delegation has been completed */
DELEGATION_COMPLETE = 3,
UNRECOGNIZED = -1
}
export declare const DelegationRecordStatusSDKType: typeof DelegationRecordStatus;
export declare const DelegationRecordStatusAmino: typeof DelegationRecordStatus;
export declare function delegationRecordStatusFromJSON(object: any): DelegationRecordStatus;
export declare function delegationRecordStatusToJSON(object: DelegationRecordStatus): string;
/** Status fields for an unbonding record */
export declare enum UnbondingRecordStatus {
/**
* ACCUMULATING_REDEMPTIONS - ACCUMULATING_REDEMPTIONS indicates redemptions are still being accumulated
* on this record
*/
ACCUMULATING_REDEMPTIONS = 0,
/**
* UNBONDING_QUEUE - UNBONDING_QUEUE indicates the unbond amount for this epoch has been froze
* and the tokens are ready to be unbonded on the host zone
*/
UNBONDING_QUEUE = 1,
/**
* UNBONDING_IN_PROGRESS - UNBONDING_IN_PROGRESS indicates the unbonding is currently in progress on
* the host zone
*/
UNBONDING_IN_PROGRESS = 2,
/**
* UNBONDED - UNBONDED indicates the unbonding is finished on the host zone and the
* tokens are still in the delegation account
*/
UNBONDED = 3,
/**
* CLAIMABLE - CLAIMABLE indicates the unbonded tokens have been swept to stride and are
* ready to be distributed to users
*/
CLAIMABLE = 4,
/** CLAIMED - CLAIMED indicates the full unbonding cycle has been completed */
CLAIMED = 5,
UNRECOGNIZED = -1
}
export declare const UnbondingRecordStatusSDKType: typeof UnbondingRecordStatus;
export declare const UnbondingRecordStatusAmino: typeof UnbondingRecordStatus;
export declare function unbondingRecordStatusFromJSON(object: any): UnbondingRecordStatus;
export declare function unbondingRecordStatusToJSON(object: UnbondingRecordStatus): string;
export interface HostZone {
/** Chain ID */
chainId: string;
/** Native token denom on the host zone (e.g. adym) */
nativeTokenDenom: string;
/** IBC denom of the native token as it lives on stride (e.g. ibc/...) */
nativeTokenIbcDenom: string;
/** Transfer channel ID from stride to the host zone */
transferChannelId: string;
/** Operator controlled delegation address on the host zone */
delegationAddress: string;
/** Operator controlled reward address on the host zone */
rewardAddress: string;
/** Deposit address on stride */
depositAddress: string;
/** Redemption address on stride */
redemptionAddress: string;
/** Claim address on stride */
claimAddress: string;
/** operator address set by safe, on stride */
operatorAddressOnStride: string;
/** admin address set upon host zone creation, on stride */
safeAddressOnStride: string;
/** Previous redemption rate */
lastRedemptionRate: string;
/** Current redemption rate */
redemptionRate: string;
/** Min outer redemption rate - adjusted by governance */
minRedemptionRate: string;
/** Max outer redemption rate - adjusted by governance */
maxRedemptionRate: string;
/** Min inner redemption rate - adjusted by controller */
minInnerRedemptionRate: string;
/** Max inner redemption rate - adjusted by controller */
maxInnerRedemptionRate: string;
/** Total delegated balance on the host zone delegation account */
delegatedBalance: string;
/** The undelegation period for Dymension in days */
unbondingPeriodSeconds: bigint;
/** Indicates whether the host zone has been halted */
halted: boolean;
}
export interface HostZoneProtoMsg {
typeUrl: '/stride.stakedym.HostZone';
value: Uint8Array;
}
export interface HostZoneAmino {
/** Chain ID */
chain_id?: string;
/** Native token denom on the host zone (e.g. adym) */
native_token_denom?: string;
/** IBC denom of the native token as it lives on stride (e.g. ibc/...) */
native_token_ibc_denom?: string;
/** Transfer channel ID from stride to the host zone */
transfer_channel_id?: string;
/** Operator controlled delegation address on the host zone */
delegation_address?: string;
/** Operator controlled reward address on the host zone */
reward_address?: string;
/** Deposit address on stride */
deposit_address?: string;
/** Redemption address on stride */
redemption_address?: string;
/** Claim address on stride */
claim_address?: string;
/** operator address set by safe, on stride */
operator_address_on_stride?: string;
/** admin address set upon host zone creation, on stride */
safe_address_on_stride?: string;
/** Previous redemption rate */
last_redemption_rate?: string;
/** Current redemption rate */
redemption_rate?: string;
/** Min outer redemption rate - adjusted by governance */
min_redemption_rate?: string;
/** Max outer redemption rate - adjusted by governance */
max_redemption_rate?: string;
/** Min inner redemption rate - adjusted by controller */
min_inner_redemption_rate?: string;
/** Max inner redemption rate - adjusted by controller */
max_inner_redemption_rate?: string;
/** Total delegated balance on the host zone delegation account */
delegated_balance?: string;
/** The undelegation period for Dymension in days */
unbonding_period_seconds?: string;
/** Indicates whether the host zone has been halted */
halted?: boolean;
}
export interface HostZoneAminoMsg {
type: '/stride.stakedym.HostZone';
value: HostZoneAmino;
}
export interface HostZoneSDKType {
chain_id: string;
native_token_denom: string;
native_token_ibc_denom: string;
transfer_channel_id: string;
delegation_address: string;
reward_address: string;
deposit_address: string;
redemption_address: string;
claim_address: string;
operator_address_on_stride: string;
safe_address_on_stride: string;
last_redemption_rate: string;
redemption_rate: string;
min_redemption_rate: string;
max_redemption_rate: string;
min_inner_redemption_rate: string;
max_inner_redemption_rate: string;
delegated_balance: string;
unbonding_period_seconds: bigint;
halted: boolean;
}
/**
* DelegationRecords track the aggregate liquid stakes and delegations
* for a given epoch
* Note: There is an important assumption here that tokens in the deposit
* account should not be tracked by these records. The record is created as soon
* as the tokens leave stride
*/
export interface DelegationRecord {
/** Deposit record unique ID */
id: bigint;
/** The amount of native tokens that should be delegated */
nativeAmount: string;
/** The status indicating the point in the delegation's lifecycle */
status: DelegationRecordStatus;
/** The tx hash of the delegation on the host zone */
txHash: string;
}
export interface DelegationRecordProtoMsg {
typeUrl: '/stride.stakedym.DelegationRecord';
value: Uint8Array;
}
/**
* DelegationRecords track the aggregate liquid stakes and delegations
* for a given epoch
* Note: There is an important assumption here that tokens in the deposit
* account should not be tracked by these records. The record is created as soon
* as the tokens leave stride
*/
export interface DelegationRecordAmino {
/** Deposit record unique ID */
id?: string;
/** The amount of native tokens that should be delegated */
native_amount?: string;
/** The status indicating the point in the delegation's lifecycle */
status?: DelegationRecordStatus;
/** The tx hash of the delegation on the host zone */
tx_hash?: string;
}
export interface DelegationRecordAminoMsg {
type: '/stride.stakedym.DelegationRecord';
value: DelegationRecordAmino;
}
/**
* DelegationRecords track the aggregate liquid stakes and delegations
* for a given epoch
* Note: There is an important assumption here that tokens in the deposit
* account should not be tracked by these records. The record is created as soon
* as the tokens leave stride
*/
export interface DelegationRecordSDKType {
id: bigint;
native_amount: string;
status: DelegationRecordStatus;
tx_hash: string;
}
/** UnbondingRecords track the aggregate unbondings across an epoch */
export interface UnbondingRecord {
/** Unbonding record ID */
id: bigint;
/** The status indicating the point in the delegation's lifecycle */
status: UnbondingRecordStatus;
/** The amount of stTokens that were redeemed */
stTokenAmount: string;
/** The corresponding amount of native tokens that should be unbonded */
nativeAmount: string;
/** The Unix timestamp (in seconds) at which the unbonding completes */
unbondingCompletionTimeSeconds: bigint;
/** The tx hash of the undelegation on the host zone */
undelegationTxHash: string;
/** The tx hash of the unbonded token sweep on the host zone */
unbondedTokenSweepTxHash: string;
}
export interface UnbondingRecordProtoMsg {
typeUrl: '/stride.stakedym.UnbondingRecord';
value: Uint8Array;
}
/** UnbondingRecords track the aggregate unbondings across an epoch */
export interface UnbondingRecordAmino {
/** Unbonding record ID */
id?: string;
/** The status indicating the point in the delegation's lifecycle */
status?: UnbondingRecordStatus;
/** The amount of stTokens that were redeemed */
st_token_amount?: string;
/** The corresponding amount of native tokens that should be unbonded */
native_amount?: string;
/** The Unix timestamp (in seconds) at which the unbonding completes */
unbonding_completion_time_seconds?: string;
/** The tx hash of the undelegation on the host zone */
undelegation_tx_hash?: string;
/** The tx hash of the unbonded token sweep on the host zone */
unbonded_token_sweep_tx_hash?: string;
}
export interface UnbondingRecordAminoMsg {
type: '/stride.stakedym.UnbondingRecord';
value: UnbondingRecordAmino;
}
/** UnbondingRecords track the aggregate unbondings across an epoch */
export interface UnbondingRecordSDKType {
id: bigint;
status: UnbondingRecordStatus;
st_token_amount: string;
native_amount: string;
unbonding_completion_time_seconds: bigint;
undelegation_tx_hash: string;
unbonded_token_sweep_tx_hash: string;
}
/** RedemptionRecords track an individual user's redemption claims */
export interface RedemptionRecord {
/** Unbonding record ID */
unbondingRecordId: bigint;
/** Redeemer */
redeemer: string;
/** The amount of stTokens that were redeemed */
stTokenAmount: string;
/** The corresponding amount of native tokens that should be unbonded */
nativeAmount: string;
}
export interface RedemptionRecordProtoMsg {
typeUrl: '/stride.stakedym.RedemptionRecord';
value: Uint8Array;
}
/** RedemptionRecords track an individual user's redemption claims */
export interface RedemptionRecordAmino {
/** Unbonding record ID */
unbonding_record_id?: string;
/** Redeemer */
redeemer?: string;
/** The amount of stTokens that were redeemed */
st_token_amount?: string;
/** The corresponding amount of native tokens that should be unbonded */
native_amount?: string;
}
export interface RedemptionRecordAminoMsg {
type: '/stride.stakedym.RedemptionRecord';
value: RedemptionRecordAmino;
}
/** RedemptionRecords track an individual user's redemption claims */
export interface RedemptionRecordSDKType {
unbonding_record_id: bigint;
redeemer: string;
st_token_amount: string;
native_amount: string;
}
/** SlashRecords log adjustments to the delegated balance */
export interface SlashRecord {
/** The slash record monotonically increasing ID */
id: bigint;
/**
* The Unix timestamp (in seconds) when the slash adjustment was processed on
* stride
*/
time: bigint;
/** The delta by which the total delegated amount changed from slash */
nativeAmount: string;
/** The address (or addresses) of the validator that was slashed */
validatorAddress: string;
}
export interface SlashRecordProtoMsg {
typeUrl: '/stride.stakedym.SlashRecord';
value: Uint8Array;
}
/** SlashRecords log adjustments to the delegated balance */
export interface SlashRecordAmino {
/** The slash record monotonically increasing ID */
id?: string;
/**
* The Unix timestamp (in seconds) when the slash adjustment was processed on
* stride
*/
time?: string;
/** The delta by which the total delegated amount changed from slash */
native_amount?: string;
/** The address (or addresses) of the validator that was slashed */
validator_address?: string;
}
export interface SlashRecordAminoMsg {
type: '/stride.stakedym.SlashRecord';
value: SlashRecordAmino;
}
/** SlashRecords log adjustments to the delegated balance */
export interface SlashRecordSDKType {
id: bigint;
time: bigint;
native_amount: string;
validator_address: string;
}
export declare const HostZone: {
typeUrl: string;
encode(message: HostZone, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): HostZone;
fromPartial(object: Partial<HostZone>): HostZone;
fromAmino(object: HostZoneAmino): HostZone;
toAmino(message: HostZone): HostZoneAmino;
fromAminoMsg(object: HostZoneAminoMsg): HostZone;
fromProtoMsg(message: HostZoneProtoMsg): HostZone;
toProto(message: HostZone): Uint8Array;
toProtoMsg(message: HostZone): HostZoneProtoMsg;
};
export declare const DelegationRecord: {
typeUrl: string;
encode(message: DelegationRecord, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): DelegationRecord;
fromPartial(object: Partial<DelegationRecord>): DelegationRecord;
fromAmino(object: DelegationRecordAmino): DelegationRecord;
toAmino(message: DelegationRecord): DelegationRecordAmino;
fromAminoMsg(object: DelegationRecordAminoMsg): DelegationRecord;
fromProtoMsg(message: DelegationRecordProtoMsg): DelegationRecord;
toProto(message: DelegationRecord): Uint8Array;
toProtoMsg(message: DelegationRecord): DelegationRecordProtoMsg;
};
export declare const UnbondingRecord: {
typeUrl: string;
encode(message: UnbondingRecord, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): UnbondingRecord;
fromPartial(object: Partial<UnbondingRecord>): UnbondingRecord;
fromAmino(object: UnbondingRecordAmino): UnbondingRecord;
toAmino(message: UnbondingRecord): UnbondingRecordAmino;
fromAminoMsg(object: UnbondingRecordAminoMsg): UnbondingRecord;
fromProtoMsg(message: UnbondingRecordProtoMsg): UnbondingRecord;
toProto(message: UnbondingRecord): Uint8Array;
toProtoMsg(message: UnbondingRecord): UnbondingRecordProtoMsg;
};
export declare const RedemptionRecord: {
typeUrl: string;
encode(message: RedemptionRecord, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): RedemptionRecord;
fromPartial(object: Partial<RedemptionRecord>): RedemptionRecord;
fromAmino(object: RedemptionRecordAmino): RedemptionRecord;
toAmino(message: RedemptionRecord): RedemptionRecordAmino;
fromAminoMsg(object: RedemptionRecordAminoMsg): RedemptionRecord;
fromProtoMsg(message: RedemptionRecordProtoMsg): RedemptionRecord;
toProto(message: RedemptionRecord): Uint8Array;
toProtoMsg(message: RedemptionRecord): RedemptionRecordProtoMsg;
};
export declare const SlashRecord: {
typeUrl: string;
encode(message: SlashRecord, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): SlashRecord;
fromPartial(object: Partial<SlashRecord>): SlashRecord;
fromAmino(object: SlashRecordAmino): SlashRecord;
toAmino(message: SlashRecord): SlashRecordAmino;
fromAminoMsg(object: SlashRecordAminoMsg): SlashRecord;
fromProtoMsg(message: SlashRecordProtoMsg): SlashRecord;
toProto(message: SlashRecord): Uint8Array;
toProtoMsg(message: SlashRecord): SlashRecordProtoMsg;
};