import { EncodeObject, GeneratedType } from "@shareledgerjs/signing"; import { MsgCreateAsset, MsgDeleteAsset, MsgUpdateAsset } from "@shareledgerjs/types/shareledger/asset/tx"; import Long from "long"; import { BaseClient } from "../../baseclient"; export declare function createAssetTypes(): ReadonlyArray<[string, GeneratedType]>; export declare function createAssetActions(): Record; export interface MsgCreateAssetEncodeObject extends EncodeObject { readonly typeUrl: "/shareledger.asset.MsgCreateAsset"; readonly value: Partial; } export declare function isMsgCreateAssetEncodeObject(encodeObject: EncodeObject): encodeObject is MsgCreateAssetEncodeObject; export interface MsgUpdateAssetEncodeObject extends EncodeObject { readonly typeUrl: "/shareledger.asset.MsgUpdateAsset"; readonly value: Partial; } export declare function isMsgUpdateAssetEncodeObject(encodeObject: EncodeObject): encodeObject is MsgUpdateAssetEncodeObject; export interface MsgDeleteAssetEncodeObject extends EncodeObject { readonly typeUrl: "/shareledger.asset.MsgDeleteAsset"; readonly value: Partial; } export declare function isMsgDeleteAssetEncodeObject(encodeObject: EncodeObject): encodeObject is MsgDeleteAssetEncodeObject; export type AssetTxExtension = { get asset(): { readonly create: (uuid: string, hash: Uint8Array, status: boolean, rate: Long, creator: string) => MsgCreateAssetEncodeObject; readonly update: (uuid: string, hash: Uint8Array, status: boolean, rate: Long, creator: string) => MsgUpdateAssetEncodeObject; readonly delete: (uuid: string, owner: string) => MsgDeleteAssetEncodeObject; }; }; export declare function AssetTxExtension(constructor: T): T;