import type { AddressCreate } from './AddressCreate';
import type { LineItemCreate } from './LineItemCreate';
/**
 *
 * @export
 * @interface TransactionInvoiceReplacement
 */
export interface TransactionInvoiceReplacement {
    /**
     * The invoiced line items that will appear on the invoice document.
     * @type {Array<LineItemCreate>}
     * @memberof TransactionInvoiceReplacement
     */
    lineItems: Array<LineItemCreate>;
    /**
     * The due date for payment of the invoice.
     * @type {Date}
     * @memberof TransactionInvoiceReplacement
     */
    dueOn?: Date;
    /**
     * A client-generated nonce which uniquely identifies some action to be executed. Subsequent requests with the same external ID do not execute the action again, but return the original result.
     * @type {string}
     * @memberof TransactionInvoiceReplacement
     */
    externalId: string;
    /**
     *
     * @type {AddressCreate}
     * @memberof TransactionInvoiceReplacement
     */
    billingAddress?: AddressCreate;
    /**
     * Whether the invoice will be sent to the customer via email.
     * @type {boolean}
     * @memberof TransactionInvoiceReplacement
     */
    sentToCustomer?: boolean;
    /**
     * The merchant's reference used to identify the invoice.
     * @type {string}
     * @memberof TransactionInvoiceReplacement
     */
    merchantReference?: string;
}
/**
 * Check if a given object implements the TransactionInvoiceReplacement interface.
 */
export declare function instanceOfTransactionInvoiceReplacement(value: object): value is TransactionInvoiceReplacement;
export declare function TransactionInvoiceReplacementFromJSON(json: any): TransactionInvoiceReplacement;
export declare function TransactionInvoiceReplacementFromJSONTyped(json: any, ignoreDiscriminator: boolean): TransactionInvoiceReplacement;
export declare function TransactionInvoiceReplacementToJSON(json: any): TransactionInvoiceReplacement;
export declare function TransactionInvoiceReplacementToJSONTyped(value?: TransactionInvoiceReplacement | null, ignoreDiscriminator?: boolean): any;
