import { PaymentPathExplanation } from '../explain/ExplainPaymentPath'; import { Explanation } from '../explain/Explanation'; import { Flag } from '../flag'; import PaymentInstructions from '../types/instructions/PaymentInstructions'; import TransactionType from '../types/TransactionType'; import CurrencyAmount from '../types/util/CurrencyAmount'; /** * An annotation for payment transactions. * * @property type - An explanation of the type. * @property additionalFlags - Any transaction-type specific flags. * @property amount - An explanation of the amount. * @property destination - An explanation of the destination. * @property destinationTag - An explanation of the destinationTag. * @property invoiceID - An explanation of the invoiceID. * @property paths - An explanation of the paths. * @property sendMax - An explanation of the sendMax. * @property deliverMin - An explanation of the deliverMin. */ export interface PaymentAnnotation { readonly type: TransactionType.Payment; readonly additionalFlags: Flag[]; readonly amount: Explanation; readonly destination: Explanation; readonly destinationTag?: Explanation; readonly invoiceID?: Explanation; readonly paths?: Explanation; readonly sendMax?: Explanation; readonly deliverMin?: Explanation; } /** * Takes a transaction object and returns an annotated transaction object. * The returned object contains explanations about the various transaction features. * * Calls the describe function for BaseAnnotation. * * @param transactionInstructions - The input transaction. * @returns An annotated transaction object detailing the various transaction features. */ export declare function annotate(transactionInstructions: PaymentInstructions): PaymentAnnotation; //# sourceMappingURL=PaymentAnnotation.d.ts.map