import { Coin, CoinAmino, CoinSDKType } from "../../cosmos/base/v1beta1/coin";
import { SyntheticLock, SyntheticLockAmino, SyntheticLockSDKType } from "../lockup/lock";
import { BinaryReader, BinaryWriter } from "../../binary";
/**
* SuperfluidAssetType indicates whether the superfluid asset is
* a native token, lp share of a pool, or concentrated share of a pool
*/
export declare enum SuperfluidAssetType {
SuperfluidAssetTypeNative = 0,
SuperfluidAssetTypeLPShare = 1,
SuperfluidAssetTypeConcentratedShare = 2,
UNRECOGNIZED = -1
}
export declare const SuperfluidAssetTypeSDKType: typeof SuperfluidAssetType;
export declare const SuperfluidAssetTypeAmino: typeof SuperfluidAssetType;
export declare function superfluidAssetTypeFromJSON(object: any): SuperfluidAssetType;
export declare function superfluidAssetTypeToJSON(object: SuperfluidAssetType): string;
/** SuperfluidAsset stores the pair of superfluid asset type and denom pair */
export interface SuperfluidAsset {
denom: string;
/**
* AssetType indicates whether the superfluid asset is a native token or an lp
* share
*/
assetType: SuperfluidAssetType;
}
export interface SuperfluidAssetProtoMsg {
typeUrl: "/osmosis.superfluid.SuperfluidAsset";
value: Uint8Array;
}
/** SuperfluidAsset stores the pair of superfluid asset type and denom pair */
export interface SuperfluidAssetAmino {
denom?: string;
/**
* AssetType indicates whether the superfluid asset is a native token or an lp
* share
*/
asset_type?: SuperfluidAssetType;
}
export interface SuperfluidAssetAminoMsg {
type: "osmosis/superfluid-asset";
value: SuperfluidAssetAmino;
}
/** SuperfluidAsset stores the pair of superfluid asset type and denom pair */
export interface SuperfluidAssetSDKType {
denom: string;
asset_type: SuperfluidAssetType;
}
/**
* SuperfluidIntermediaryAccount takes the role of intermediary between LP token
* and OSMO tokens for superfluid staking. The intermediary account is the
* actual account responsible for delegation, not the validator account itself.
*/
export interface SuperfluidIntermediaryAccount {
/** Denom indicates the denom of the superfluid asset. */
denom: string;
valAddr: string;
/** perpetual gauge for rewards distribution */
gaugeId: bigint;
}
export interface SuperfluidIntermediaryAccountProtoMsg {
typeUrl: "/osmosis.superfluid.SuperfluidIntermediaryAccount";
value: Uint8Array;
}
/**
* SuperfluidIntermediaryAccount takes the role of intermediary between LP token
* and OSMO tokens for superfluid staking. The intermediary account is the
* actual account responsible for delegation, not the validator account itself.
*/
export interface SuperfluidIntermediaryAccountAmino {
/** Denom indicates the denom of the superfluid asset. */
denom?: string;
val_addr?: string;
/** perpetual gauge for rewards distribution */
gauge_id?: string;
}
export interface SuperfluidIntermediaryAccountAminoMsg {
type: "osmosis/superfluid-intermediary-account";
value: SuperfluidIntermediaryAccountAmino;
}
/**
* SuperfluidIntermediaryAccount takes the role of intermediary between LP token
* and OSMO tokens for superfluid staking. The intermediary account is the
* actual account responsible for delegation, not the validator account itself.
*/
export interface SuperfluidIntermediaryAccountSDKType {
denom: string;
val_addr: string;
gauge_id: bigint;
}
/**
* The Osmo-Equivalent-Multiplier Record for epoch N refers to the osmo worth we
* treat an LP share as having, for all of epoch N. Eventually this is intended
* to be set as the Time-weighted-average-osmo-backing for the entire duration
* of epoch N-1. (Thereby locking what's in use for epoch N as based on the
* prior epochs rewards) However for now, this is not the TWAP but instead the
* spot price at the boundary. For different types of assets in the future, it
* could change.
*/
export interface OsmoEquivalentMultiplierRecord {
epochNumber: bigint;
/** superfluid asset denom, can be LP token or native token */
denom: string;
multiplier: string;
}
export interface OsmoEquivalentMultiplierRecordProtoMsg {
typeUrl: "/osmosis.superfluid.OsmoEquivalentMultiplierRecord";
value: Uint8Array;
}
/**
* The Osmo-Equivalent-Multiplier Record for epoch N refers to the osmo worth we
* treat an LP share as having, for all of epoch N. Eventually this is intended
* to be set as the Time-weighted-average-osmo-backing for the entire duration
* of epoch N-1. (Thereby locking what's in use for epoch N as based on the
* prior epochs rewards) However for now, this is not the TWAP but instead the
* spot price at the boundary. For different types of assets in the future, it
* could change.
*/
export interface OsmoEquivalentMultiplierRecordAmino {
epoch_number?: string;
/** superfluid asset denom, can be LP token or native token */
denom?: string;
multiplier?: string;
}
export interface OsmoEquivalentMultiplierRecordAminoMsg {
type: "osmosis/osmo-equivalent-multiplier-record";
value: OsmoEquivalentMultiplierRecordAmino;
}
/**
* The Osmo-Equivalent-Multiplier Record for epoch N refers to the osmo worth we
* treat an LP share as having, for all of epoch N. Eventually this is intended
* to be set as the Time-weighted-average-osmo-backing for the entire duration
* of epoch N-1. (Thereby locking what's in use for epoch N as based on the
* prior epochs rewards) However for now, this is not the TWAP but instead the
* spot price at the boundary. For different types of assets in the future, it
* could change.
*/
export interface OsmoEquivalentMultiplierRecordSDKType {
epoch_number: bigint;
denom: string;
multiplier: string;
}
/**
* SuperfluidDelegationRecord is a struct used to indicate superfluid
* delegations of an account in the state machine in a user friendly form.
*/
export interface SuperfluidDelegationRecord {
delegatorAddress: string;
validatorAddress: string;
delegationAmount: Coin;
equivalentStakedAmount?: Coin;
}
export interface SuperfluidDelegationRecordProtoMsg {
typeUrl: "/osmosis.superfluid.SuperfluidDelegationRecord";
value: Uint8Array;
}
/**
* SuperfluidDelegationRecord is a struct used to indicate superfluid
* delegations of an account in the state machine in a user friendly form.
*/
export interface SuperfluidDelegationRecordAmino {
delegator_address?: string;
validator_address?: string;
delegation_amount?: CoinAmino;
equivalent_staked_amount?: CoinAmino;
}
export interface SuperfluidDelegationRecordAminoMsg {
type: "osmosis/superfluid-delegation-record";
value: SuperfluidDelegationRecordAmino;
}
/**
* SuperfluidDelegationRecord is a struct used to indicate superfluid
* delegations of an account in the state machine in a user friendly form.
*/
export interface SuperfluidDelegationRecordSDKType {
delegator_address: string;
validator_address: string;
delegation_amount: CoinSDKType;
equivalent_staked_amount?: CoinSDKType;
}
/**
* LockIdIntermediaryAccountConnection is a struct used to indicate the
* relationship between the underlying lock id and superfluid delegation done
* via lp shares.
*/
export interface LockIdIntermediaryAccountConnection {
lockId: bigint;
intermediaryAccount: string;
}
export interface LockIdIntermediaryAccountConnectionProtoMsg {
typeUrl: "/osmosis.superfluid.LockIdIntermediaryAccountConnection";
value: Uint8Array;
}
/**
* LockIdIntermediaryAccountConnection is a struct used to indicate the
* relationship between the underlying lock id and superfluid delegation done
* via lp shares.
*/
export interface LockIdIntermediaryAccountConnectionAmino {
lock_id?: string;
intermediary_account?: string;
}
export interface LockIdIntermediaryAccountConnectionAminoMsg {
type: "osmosis/lock-id-intermediary-account-connection";
value: LockIdIntermediaryAccountConnectionAmino;
}
/**
* LockIdIntermediaryAccountConnection is a struct used to indicate the
* relationship between the underlying lock id and superfluid delegation done
* via lp shares.
*/
export interface LockIdIntermediaryAccountConnectionSDKType {
lock_id: bigint;
intermediary_account: string;
}
export interface UnpoolWhitelistedPools {
ids: bigint[];
}
export interface UnpoolWhitelistedPoolsProtoMsg {
typeUrl: "/osmosis.superfluid.UnpoolWhitelistedPools";
value: Uint8Array;
}
export interface UnpoolWhitelistedPoolsAmino {
ids?: string[];
}
export interface UnpoolWhitelistedPoolsAminoMsg {
type: "osmosis/unpool-whitelisted-pools";
value: UnpoolWhitelistedPoolsAmino;
}
export interface UnpoolWhitelistedPoolsSDKType {
ids: bigint[];
}
export interface ConcentratedPoolUserPositionRecord {
validatorAddress: string;
positionId: bigint;
lockId: bigint;
syntheticLock: SyntheticLock;
delegationAmount: Coin;
equivalentStakedAmount?: Coin;
}
export interface ConcentratedPoolUserPositionRecordProtoMsg {
typeUrl: "/osmosis.superfluid.ConcentratedPoolUserPositionRecord";
value: Uint8Array;
}
export interface ConcentratedPoolUserPositionRecordAmino {
validator_address?: string;
position_id?: string;
lock_id?: string;
synthetic_lock?: SyntheticLockAmino;
delegation_amount?: CoinAmino;
equivalent_staked_amount?: CoinAmino;
}
export interface ConcentratedPoolUserPositionRecordAminoMsg {
type: "osmosis/concentrated-pool-user-position-record";
value: ConcentratedPoolUserPositionRecordAmino;
}
export interface ConcentratedPoolUserPositionRecordSDKType {
validator_address: string;
position_id: bigint;
lock_id: bigint;
synthetic_lock: SyntheticLockSDKType;
delegation_amount: CoinSDKType;
equivalent_staked_amount?: CoinSDKType;
}
export declare const SuperfluidAsset: {
typeUrl: string;
aminoType: string;
is(o: any): o is SuperfluidAsset;
isSDK(o: any): o is SuperfluidAssetSDKType;
isAmino(o: any): o is SuperfluidAssetAmino;
encode(message: SuperfluidAsset, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): SuperfluidAsset;
fromPartial(object: Partial<SuperfluidAsset>): SuperfluidAsset;
fromAmino(object: SuperfluidAssetAmino): SuperfluidAsset;
toAmino(message: SuperfluidAsset): SuperfluidAssetAmino;
fromAminoMsg(object: SuperfluidAssetAminoMsg): SuperfluidAsset;
toAminoMsg(message: SuperfluidAsset): SuperfluidAssetAminoMsg;
fromProtoMsg(message: SuperfluidAssetProtoMsg): SuperfluidAsset;
toProto(message: SuperfluidAsset): Uint8Array;
toProtoMsg(message: SuperfluidAsset): SuperfluidAssetProtoMsg;
};
export declare const SuperfluidIntermediaryAccount: {
typeUrl: string;
aminoType: string;
is(o: any): o is SuperfluidIntermediaryAccount;
isSDK(o: any): o is SuperfluidIntermediaryAccountSDKType;
isAmino(o: any): o is SuperfluidIntermediaryAccountAmino;
encode(message: SuperfluidIntermediaryAccount, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): SuperfluidIntermediaryAccount;
fromPartial(object: Partial<SuperfluidIntermediaryAccount>): SuperfluidIntermediaryAccount;
fromAmino(object: SuperfluidIntermediaryAccountAmino): SuperfluidIntermediaryAccount;
toAmino(message: SuperfluidIntermediaryAccount): SuperfluidIntermediaryAccountAmino;
fromAminoMsg(object: SuperfluidIntermediaryAccountAminoMsg): SuperfluidIntermediaryAccount;
toAminoMsg(message: SuperfluidIntermediaryAccount): SuperfluidIntermediaryAccountAminoMsg;
fromProtoMsg(message: SuperfluidIntermediaryAccountProtoMsg): SuperfluidIntermediaryAccount;
toProto(message: SuperfluidIntermediaryAccount): Uint8Array;
toProtoMsg(message: SuperfluidIntermediaryAccount): SuperfluidIntermediaryAccountProtoMsg;
};
export declare const OsmoEquivalentMultiplierRecord: {
typeUrl: string;
aminoType: string;
is(o: any): o is OsmoEquivalentMultiplierRecord;
isSDK(o: any): o is OsmoEquivalentMultiplierRecordSDKType;
isAmino(o: any): o is OsmoEquivalentMultiplierRecordAmino;
encode(message: OsmoEquivalentMultiplierRecord, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): OsmoEquivalentMultiplierRecord;
fromPartial(object: Partial<OsmoEquivalentMultiplierRecord>): OsmoEquivalentMultiplierRecord;
fromAmino(object: OsmoEquivalentMultiplierRecordAmino): OsmoEquivalentMultiplierRecord;
toAmino(message: OsmoEquivalentMultiplierRecord): OsmoEquivalentMultiplierRecordAmino;
fromAminoMsg(object: OsmoEquivalentMultiplierRecordAminoMsg): OsmoEquivalentMultiplierRecord;
toAminoMsg(message: OsmoEquivalentMultiplierRecord): OsmoEquivalentMultiplierRecordAminoMsg;
fromProtoMsg(message: OsmoEquivalentMultiplierRecordProtoMsg): OsmoEquivalentMultiplierRecord;
toProto(message: OsmoEquivalentMultiplierRecord): Uint8Array;
toProtoMsg(message: OsmoEquivalentMultiplierRecord): OsmoEquivalentMultiplierRecordProtoMsg;
};
export declare const SuperfluidDelegationRecord: {
typeUrl: string;
aminoType: string;
is(o: any): o is SuperfluidDelegationRecord;
isSDK(o: any): o is SuperfluidDelegationRecordSDKType;
isAmino(o: any): o is SuperfluidDelegationRecordAmino;
encode(message: SuperfluidDelegationRecord, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): SuperfluidDelegationRecord;
fromPartial(object: Partial<SuperfluidDelegationRecord>): SuperfluidDelegationRecord;
fromAmino(object: SuperfluidDelegationRecordAmino): SuperfluidDelegationRecord;
toAmino(message: SuperfluidDelegationRecord): SuperfluidDelegationRecordAmino;
fromAminoMsg(object: SuperfluidDelegationRecordAminoMsg): SuperfluidDelegationRecord;
toAminoMsg(message: SuperfluidDelegationRecord): SuperfluidDelegationRecordAminoMsg;
fromProtoMsg(message: SuperfluidDelegationRecordProtoMsg): SuperfluidDelegationRecord;
toProto(message: SuperfluidDelegationRecord): Uint8Array;
toProtoMsg(message: SuperfluidDelegationRecord): SuperfluidDelegationRecordProtoMsg;
};
export declare const LockIdIntermediaryAccountConnection: {
typeUrl: string;
aminoType: string;
is(o: any): o is LockIdIntermediaryAccountConnection;
isSDK(o: any): o is LockIdIntermediaryAccountConnectionSDKType;
isAmino(o: any): o is LockIdIntermediaryAccountConnectionAmino;
encode(message: LockIdIntermediaryAccountConnection, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): LockIdIntermediaryAccountConnection;
fromPartial(object: Partial<LockIdIntermediaryAccountConnection>): LockIdIntermediaryAccountConnection;
fromAmino(object: LockIdIntermediaryAccountConnectionAmino): LockIdIntermediaryAccountConnection;
toAmino(message: LockIdIntermediaryAccountConnection): LockIdIntermediaryAccountConnectionAmino;
fromAminoMsg(object: LockIdIntermediaryAccountConnectionAminoMsg): LockIdIntermediaryAccountConnection;
toAminoMsg(message: LockIdIntermediaryAccountConnection): LockIdIntermediaryAccountConnectionAminoMsg;
fromProtoMsg(message: LockIdIntermediaryAccountConnectionProtoMsg): LockIdIntermediaryAccountConnection;
toProto(message: LockIdIntermediaryAccountConnection): Uint8Array;
toProtoMsg(message: LockIdIntermediaryAccountConnection): LockIdIntermediaryAccountConnectionProtoMsg;
};
export declare const UnpoolWhitelistedPools: {
typeUrl: string;
aminoType: string;
is(o: any): o is UnpoolWhitelistedPools;
isSDK(o: any): o is UnpoolWhitelistedPoolsSDKType;
isAmino(o: any): o is UnpoolWhitelistedPoolsAmino;
encode(message: UnpoolWhitelistedPools, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): UnpoolWhitelistedPools;
fromPartial(object: Partial<UnpoolWhitelistedPools>): UnpoolWhitelistedPools;
fromAmino(object: UnpoolWhitelistedPoolsAmino): UnpoolWhitelistedPools;
toAmino(message: UnpoolWhitelistedPools): UnpoolWhitelistedPoolsAmino;
fromAminoMsg(object: UnpoolWhitelistedPoolsAminoMsg): UnpoolWhitelistedPools;
toAminoMsg(message: UnpoolWhitelistedPools): UnpoolWhitelistedPoolsAminoMsg;
fromProtoMsg(message: UnpoolWhitelistedPoolsProtoMsg): UnpoolWhitelistedPools;
toProto(message: UnpoolWhitelistedPools): Uint8Array;
toProtoMsg(message: UnpoolWhitelistedPools): UnpoolWhitelistedPoolsProtoMsg;
};
export declare const ConcentratedPoolUserPositionRecord: {
typeUrl: string;
aminoType: string;
is(o: any): o is ConcentratedPoolUserPositionRecord;
isSDK(o: any): o is ConcentratedPoolUserPositionRecordSDKType;
isAmino(o: any): o is ConcentratedPoolUserPositionRecordAmino;
encode(message: ConcentratedPoolUserPositionRecord, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): ConcentratedPoolUserPositionRecord;
fromPartial(object: Partial<ConcentratedPoolUserPositionRecord>): ConcentratedPoolUserPositionRecord;
fromAmino(object: ConcentratedPoolUserPositionRecordAmino): ConcentratedPoolUserPositionRecord;
toAmino(message: ConcentratedPoolUserPositionRecord): ConcentratedPoolUserPositionRecordAmino;
fromAminoMsg(object: ConcentratedPoolUserPositionRecordAminoMsg): ConcentratedPoolUserPositionRecord;
toAminoMsg(message: ConcentratedPoolUserPositionRecord): ConcentratedPoolUserPositionRecordAminoMsg;
fromProtoMsg(message: ConcentratedPoolUserPositionRecordProtoMsg): ConcentratedPoolUserPositionRecord;
toProto(message: ConcentratedPoolUserPositionRecord): Uint8Array;
toProtoMsg(message: ConcentratedPoolUserPositionRecord): ConcentratedPoolUserPositionRecordProtoMsg;
};