import { AminoMsg } from '@cosmjs/amino'; import { AminoConverters } from '@cosmjs/stargate'; import * as cosmos from '../../proto/generated/cosmos/base/v1beta1/coin'; import { ProviderStatus, ContractType, ContractAuthorization } from '../../proto/generated/arkeo/arkeo.arkeo/types/arkeo/arkeo/keeper'; import { Chain } from '../../proto/generated/arkeo/arkeo.claim/types/arkeo/claim/claim_record'; export interface AminoMsgBondProvider extends AminoMsg { readonly type: 'arkeo/BondProvider'; readonly value: { readonly creator: string; readonly provider: string; readonly service: string; readonly bond: string; }; } export interface AminoMsgModProvider extends AminoMsg { readonly type: 'arkeo/ModProvider'; readonly value: { readonly creator: string; readonly provider: string; readonly service: string; readonly metadata_uri: string; readonly metadata_nonce: number; readonly status: ProviderStatus; readonly min_contract_duration: number; readonly max_contract_duration: number; readonly subscription_rate: cosmos.Coin[]; readonly pay_as_you_go_rate: cosmos.Coin[]; readonly settlement_duration: number; }; } export interface AminoMsgOpenContract extends AminoMsg { readonly type: 'arkeo/OpenContract'; readonly value: { readonly creator: string; readonly provider: string; readonly service: string; readonly client: string; readonly delegate: string; readonly contract_type: ContractType; readonly duration: number; readonly rate: cosmos.Coin | undefined; readonly deposit: string; readonly settlement_duration: number; readonly authorization: ContractAuthorization; }; } export interface AminoMsgCloseContract extends AminoMsg { readonly type: 'arkeo/CloseContract'; readonly value: { readonly creator: string; readonly contract_id: number; }; } export interface AminoMsgClaimContractIncome extends AminoMsg { readonly type: 'arkeo/ClaimContractIncome'; readonly value: { readonly creator: string; readonly contract_id: number; readonly signature: Uint8Array; readonly nonce: number; }; } export interface AminoMsgClaimEth extends AminoMsg { readonly type: 'claim/ClaimEth'; readonly value: { readonly creator: string; readonly eth_address: string; readonly signature: string; }; } export interface AminoMsgClaimArkeo extends AminoMsg { readonly type: 'claim/ClaimArkeo'; readonly value: { readonly creator: string; }; } export interface AminoMsgTransferClaim extends AminoMsg { readonly type: 'claim/TransferClaim'; readonly value: { readonly creator: string; readonly to_address: string; }; } export interface AminoMsgAddClaim extends AminoMsg { readonly type: 'claim/AddClaim'; readonly value: { readonly creator: string; readonly chain: Chain; readonly address: string; readonly amount: number; }; } export declare function createAminoConverters(): AminoConverters;