import { PublicAccount } from '../account/PublicAccount'; import { UnresolvedAddress } from '../account/UnresolvedAddress'; import { Mosaic } from '../mosaic'; import { NetworkType } from '../network/NetworkType'; import { UInt64 } from '../UInt64'; import { Deadline } from './Deadline'; import { InnerTransaction } from './InnerTransaction'; import { Transaction } from './Transaction'; import { TransactionInfo } from './TransactionInfo'; /** * Creators of a revokable mosaic will be able to recall any and all balances from any holders. Holders of these mosaics implicitly place trust in the issuer. * The mosaic issuer can revoke and recall balances using this transaction. */ export declare class MosaicSupplyRevocationTransaction extends Transaction { /** * Address from which tokens should be revoked. */ readonly sourceAddress: UnresolvedAddress; /** * Revoked mosaic and amount. */ readonly mosaic: Mosaic; /** * Create a mosaic supply revocation transaction object * @param deadline - The deadline to include the transaction. * @param sourceAddress - Address from which tokens should be revoked. * @param mosaic - Revoked mosaic and amount. * @param networkType - The network type. * @param maxFee - (Optional) Max fee defined by the sender * @param signature - (Optional) Transaction signature * @param signer - (Optional) Signer public account * @returns {MosaicSupplyRevocationTransaction} */ static create(deadline: Deadline, sourceAddress: UnresolvedAddress, mosaic: Mosaic, networkType: NetworkType, maxFee?: UInt64, signature?: string, signer?: PublicAccount): MosaicSupplyRevocationTransaction; /** * @param networkType * @param version * @param deadline * @param maxFee * @param sourceAddress * @param mosaic * @param signature * @param signer * @param transactionInfo */ constructor(networkType: NetworkType, version: number, deadline: Deadline, maxFee: UInt64, /** * Address from which tokens should be revoked. */ sourceAddress: UnresolvedAddress, /** * Revoked mosaic and amount. */ mosaic: Mosaic, signature?: string, signer?: PublicAccount, transactionInfo?: TransactionInfo); /** * Create a transaction object from payload * @param {string} payload Binary payload * @param {Boolean} isEmbedded Is embedded transaction (Default: false) * @returns {Transaction | InnerTransaction} */ static createFromPayload(payload: string, isEmbedded?: boolean): Transaction | InnerTransaction; }