import { AggregateTransaction, InnerTransaction, NetworkType, Account, TransactionAnnounceResponse, AccountKeyLinkTransaction, NodeKeyLinkTransaction, VotingKeyLinkTransaction, VrfKeyLinkTransaction, HashLockTransaction, Mosaic, SignedTransaction, UInt64, MultisigAccountModificationTransaction, Address, Message, TransferTransaction, IListener, ReceiptRepository, TransactionRepository, MosaicDefinitionTransaction, MosaicNonce, MosaicId, MosaicFlags, MosaicSupplyChangeTransaction, TransactionStatus, Transaction, BlockRepository, BlockInfo, TransactionStatusRepository } from '@tech-bureau/symbol-sdk';
export default class TransactionServices {
    constructor();
    static getTransactionStatus(transactionRepository: TransactionStatusRepository, transactionId: string): Promise<TransactionStatus>;
    static getTransaction(transactionRepository: TransactionRepository, transactionId: string, transactionStatus: string): Promise<Transaction>;
    static getBlock(blockRepository: BlockRepository, height: UInt64): Promise<BlockInfo>;
    static announceCosign(transactionRepository: TransactionRepository, account: Account, transaction: AggregateTransaction): Promise<TransactionAnnounceResponse>;
    static announceHashLockAggregateBonded(signedHashLockTransaction: SignedTransaction, signedTransaction: SignedTransaction, listener: IListener, transactionRepository: TransactionRepository, receiptRepository: ReceiptRepository): Promise<AggregateTransaction>;
    static announce(signedTransaction: SignedTransaction, listener: IListener, transactionRepository: TransactionRepository, receiptRepository: ReceiptRepository): Promise<Transaction>;
    static createHashLock(epoch: number, mosaic: Mosaic, signedTransaction: SignedTransaction, networkType: NetworkType): HashLockTransaction;
    static createBonded(epoch: number, transactions: InnerTransaction[], networkType: NetworkType): AggregateTransaction;
    static createComplete(epoch: number, transactions: InnerTransaction[], networkType: NetworkType): AggregateTransaction;
    static createVrfKey(epoch: number, linkPublickey: string, networkType: NetworkType): VrfKeyLinkTransaction;
    static createVotingKey(epoch: number, linkPublickey: string, networkType: NetworkType): VotingKeyLinkTransaction;
    static createAccountKey(epoch: number, linkPublickey: string, networkType: NetworkType): AccountKeyLinkTransaction;
    static createNodeKey(epoch: number, linkPublickey: string, networkType: NetworkType): NodeKeyLinkTransaction;
    static createMultisig(epoch: number, minApproval: number, minRemoval: number, addAddresses: string[] | [], delAddresses: string[] | [], networkType: NetworkType): MultisigAccountModificationTransaction;
    static createTransfer(epoch: number, recipientAddress: Address, mosaic: Mosaic[] | [], message: Message, networkType: NetworkType): TransferTransaction;
    static createMosaicDefinition(epoch: number, nonce: MosaicNonce, mosaicId: MosaicId, mosaicFlags: MosaicFlags, divisibility: number, networkType: NetworkType, duration?: number | undefined): MosaicDefinitionTransaction;
    static createMosaicSupplyChange(epoch: number, mosaicId: MosaicId, mosaicSupply: number, networkType: NetworkType): MosaicSupplyChangeTransaction;
    static deleteVrf(epoch: number, linkPublickey: string, networkType: NetworkType): VrfKeyLinkTransaction;
    static deleteVoting(epoch: number, linkPublickey: string, networkType: NetworkType): VotingKeyLinkTransaction;
    static deleteAccount(epoch: number, linkPublickey: string, networkType: NetworkType): AccountKeyLinkTransaction;
    static deleteNode(epoch: number, linkPublickey: string, networkType: NetworkType): NodeKeyLinkTransaction;
}
//# sourceMappingURL=TransactionServices.d.ts.map