import { Observable } from 'rxjs'; import { MetadataRepository } from '../infrastructure/MetadataRepository'; import { Address } from '../model/account/Address'; import { MosaicId } from '../model/mosaic/MosaicId'; import { NamespaceId } from '../model/namespace/NamespaceId'; import { NetworkType } from '../model/network/NetworkType'; import { AccountMetadataTransaction } from '../model/transaction/AccountMetadataTransaction'; import { Deadline } from '../model/transaction/Deadline'; import { MosaicMetadataTransaction } from '../model/transaction/MosaicMetadataTransaction'; import { NamespaceMetadataTransaction } from '../model/transaction/NamespaceMetadataTransaction'; import { UInt64 } from '../model/UInt64'; /** * MetadataTransaction service */ export declare class MetadataTransactionService { private readonly metadataRepository; /** * Constructor * @param metadataRepository */ constructor(metadataRepository: MetadataRepository); /** * Create an Account Metadata Transaction object without knowing previous metadata value * @param deadline - Deadline * @param networkType - Network identifier * @param targetAddress - Target address * @param key - Metadata key * @param value - New metadata value * @param sourceAddress - sender (signer) address * @param maxFee - max fee * @returns {Observable} */ createAccountMetadataTransaction(deadline: Deadline, networkType: NetworkType, targetAddress: Address, key: UInt64, value: string, sourceAddress: Address, maxFee: UInt64): Observable; /** * Create a Mosaic Metadata Transaction object without knowing previous metadata value * @param deadline - Deadline * @param networkType - Network identifier * @param targetAddress - Target Address * @param mosaicId - Mosaic Id * @param key - Metadata key * @param value - New metadata value * @param sourceAddress - sender (signer) address * @param maxFee - max fee * @returns {Observable} */ createMosaicMetadataTransaction(deadline: Deadline, networkType: NetworkType, targetAddress: Address, mosaicId: MosaicId, key: UInt64, value: string, sourceAddress: Address, maxFee: UInt64): Observable; /** * Create a Namespace Metadata Transaction object without knowing previous metadata value * @param deadline - Deadline * @param networkType - Network identifier * @param targetAddress - Target address * @param namespaceId - Namespace Id * @param key - Metadata key * @param value - New metadata value * @param sourceAddress - sender (signer) address * @param maxFee - max fee * @returns {Observable} */ createNamespaceMetadataTransaction(deadline: Deadline, networkType: NetworkType, targetAddress: Address, namespaceId: NamespaceId, key: UInt64, value: string, sourceAddress: Address, maxFee: UInt64): Observable; }