import { BaseKey, BaseTransaction } from '@bitgo/sdk-core'; import { BaseCoin as CoinConfig } from '@bitgo/statics'; import { IcpTransaction, IcpTransactionData, PayloadsData, Signatures, TxData, IcpTransactionExplanation, ParsedTransaction } from './iface'; export declare class Transaction extends BaseTransaction { protected _icpTransactionData: IcpTransactionData; protected _icpTransaction: IcpTransaction; protected _payloadsData: PayloadsData; protected _signedTransaction: string; protected _signaturePayload: Signatures[]; protected _createdTimestamp: number | bigint | undefined; constructor(_coinConfig: Readonly); get icpTransactionData(): IcpTransactionData; set icpTransactionData(icpTransactionData: IcpTransactionData); get icpTransaction(): IcpTransaction; set icpTransaction(icpTransaction: IcpTransaction); get unsignedTransaction(): string; get signaturePayload(): Signatures[]; set signedTransaction(signature: string); get signedTransaction(): string; set payloadsData(payloadsData: PayloadsData); get payloadsData(): PayloadsData; set createdTimestamp(createdTimestamp: number); get createdTimestamp(): number | bigint | undefined; fromRawTransaction(rawTransaction: string): Promise; addSignature(signaturePayloads: Signatures[]): void; /** @inheritdoc */ toJson(): TxData; /** @inheritDoc */ explainTransaction(): IcpTransactionExplanation; /** * Explains a transfer transaction by providing details about the recipients and the total output amount. * * @param {IcpTransactionExplanation} explanationResult - The initial explanation result to be extended. * @returns {IcpTransactionExplanation} The extended explanation result including the output amount and recipients. */ explainTransferTransaction(explanationResult: IcpTransactionExplanation): IcpTransactionExplanation; /** @inheritdoc */ toBroadcastFormat(): string; serialize(): string; parseUnsignedTransaction(rawTransaction: string): Promise; private getParsedTransactionFromUpdate; parseSignedTransaction(rawTransaction: string): Promise; /** @inheritdoc */ canSign(key: BaseKey): boolean; /** * Generates a unique transaction ID for the current transaction. * The transaction ID is derived using the unsigned transaction data, * the sender's address, and the receiver's address. * * @returns {string} The generated transaction ID. */ private generateTransactionId; } //# sourceMappingURL=transaction.d.ts.map