///
import { BaseKey, BaseTransaction, TransactionType } from '@bitgo-beta/sdk-core';
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
import { OsmoTransaction, TransactionExplanation, TxData } from './iface';
export declare class Transaction extends BaseTransaction {
private _osmoTransaction;
private _accountNumber;
private _chainId;
constructor(_coinConfig: Readonly);
get osmoTransaction(): OsmoTransaction;
set osmoTransaction(osmoTransaction: Readonly);
get chainId(): string;
set chainId(chainId: string);
get accountNumber(): number;
set accountNumber(accountNumber: number);
/** @inheritDoc **/
get id(): string;
/** @inheritdoc */
canSign(key: BaseKey): boolean;
/** @inheritdoc */
toBroadcastFormat(): string;
/** @inheritdoc */
toJson(): TxData;
/** @inheritDoc */
explainTransaction(): TransactionExplanation;
/**
* Set the transaction type.
* @param {TransactionType} transactionType The transaction type to be set.
*/
set transactionType(transactionType: TransactionType);
/**
* Sets this transaction payload
* @param rawTransaction raw transaction in base64 encoded string
*/
enrichTransactionDetailsFromRawTransaction(rawTransaction: string): void;
/**
* Add a signature to the transaction
* @param {string} signature in hex format
*/
addSignature(signature: string): void;
/**
* Serialize the transaction to a JSON string
* @returns {string} serialized base64 encoded transaction
*/
serialize(): string;
/** @inheritdoc **/
get signablePayload(): Buffer;
/**
* Returns a complete explanation for a transfer transaction
* Currently only supports one message per transfer.
* @param {TxData} json The transaction data in json format
* @param {TransactionExplanation} explanationResult The transaction explanation to be completed
* @returns {TransactionExplanation}
*/
explainTransactionInternal(json: TxData, explanationResult: TransactionExplanation): TransactionExplanation;
loadInputsAndOutputs(): void;
}
//# sourceMappingURL=transaction.d.ts.map