import { BaseKey, BaseTransaction, Entry, PublicKey, Signature, TransactionRecipient, TransactionType } from '@bitgo/sdk-core'; import { BaseCoin as CoinConfig } from '@bitgo/statics'; import { InputGenerateTransactionPayloadData, RawTransaction, SignedTransaction, TransactionPayload } from '@aptos-labs/ts-sdk'; import { AptTransactionExplanation, TxData } from '../iface'; export type InputsAndOutputs = { /** Used for this.inputs */ inputs: Entry[]; /** Used for this.outputs */ outputs: Entry[]; /** Used for this.explainTransaction() */ externalOutputs: TransactionRecipient[]; }; export declare abstract class Transaction extends BaseTransaction { protected _rawTransaction: RawTransaction; protected _senderSignature: Signature; protected _feePayerSignature: Signature; protected _sender: string; protected _recipients: TransactionRecipient[]; protected _sequenceNumber: number; protected _maxGasAmount: number; protected _gasUnitPrice: number; protected _gasUsed: number; protected _expirationTime: number; protected _feePayerAddress: string; protected _assetId: string; protected _isSimulateTxn: boolean; static EMPTY_PUBLIC_KEY: Buffer; static EMPTY_SIGNATURE: Buffer; constructor(coinConfig: Readonly); /** @inheritDoc **/ get id(): string; get sender(): string; set sender(value: string); /** * @deprecated - use `recipients()`. */ get recipient(): TransactionRecipient; /** * @deprecated - use `recipients()`. */ set recipient(value: TransactionRecipient); get recipients(): TransactionRecipient[]; set recipients(value: TransactionRecipient[]); get sequenceNumber(): number; set sequenceNumber(value: number); get maxGasAmount(): number; set maxGasAmount(value: number); get gasUnitPrice(): number; set gasUnitPrice(value: number); get gasUsed(): number; set gasUsed(value: number); get expirationTime(): number; set expirationTime(value: number); get feePayerAddress(): string; set transactionType(transactionType: TransactionType); get assetId(): string; set assetId(value: string); get isSimulateTxn(): boolean; set isSimulateTxn(value: boolean); protected abstract getTransactionPayloadData(): InputGenerateTransactionPayloadData; protected abstract parseTransactionPayload(payload: TransactionPayload): void; fromDeserializedSignedTransaction(signedTxn: SignedTransaction): void; canSign(_key: BaseKey): boolean; toBroadcastFormat(): string; serialize(): string; addSenderSignature(publicKey: PublicKey, signature: Buffer): void; getFeePayerPubKey(): string; addFeePayerSignature(publicKey: PublicKey, signature: Buffer): void; addFeePayerAddress(address: string): void; build(): Promise; abstract inputsAndOutputs(): InputsAndOutputs; loadInputsAndOutputs(): void; fromRawTransaction(rawTransaction: string): void; /** * Deserializes a signed transaction hex string * @param {string} signedRawTransaction * @returns {SignedTransaction} the aptos signed transaction */ static deserializeSignedTransaction(signedRawTransaction: string): SignedTransaction; toJson(): TxData; getFee(): string; get signablePayload(): Buffer; /** @inheritDoc */ explainTransaction(): AptTransactionExplanation; protected buildRawTransaction(): Promise; private getSignablePayloadWithFeePayer; private getSignablePayloadWithoutFeePayer; private generateTxnId; } //# sourceMappingURL=transaction.d.ts.map