/**
 * Octane API
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import { CustomerPortalInvoiceStatus } from './CustomerPortalInvoiceStatus';
import { LineItems } from './LineItems';
/**
 *
 * @export
 * @interface CustomerPortalInvoice
 */
export interface CustomerPortalInvoice {
    /**
     * [DEPRECATED] Start time of the cycle in which the invoice was generated
     * @type {Date}
     * @memberof CustomerPortalInvoice
     */
    startTime?: Date;
    /**
     * Amount due before any credits are applied
     * @type {number}
     * @memberof CustomerPortalInvoice
     */
    subTotal?: number;
    /**
     * Url pointing to the pdf of this invoice.
     * @type {string}
     * @memberof CustomerPortalInvoice
     */
    pdfUrl?: string;
    /**
     * Information related to the current status of this invoice.
     * @type {CustomerPortalInvoiceStatus}
     * @memberof CustomerPortalInvoice
     */
    status?: CustomerPortalInvoiceStatus | null;
    /**
     *
     * @type {Array<LineItems>}
     * @memberof CustomerPortalInvoice
     */
    lineItems?: Array<LineItems>;
    /**
     * Earliest start time of line items covered by the invoice
     * @type {Date}
     * @memberof CustomerPortalInvoice
     */
    minItemStartTime?: Date;
    /**
     *
     * @type {Date}
     * @memberof CustomerPortalInvoice
     */
    dueDate?: Date;
    /**
     * The date the invoice will be issued to the end customer or forwarded to the payment processor.
     * @type {Date}
     * @memberof CustomerPortalInvoice
     */
    issueDate?: Date;
    /**
     * Any discount credits applied to the invoice
     * @type {number}
     * @memberof CustomerPortalInvoice
     */
    discountCredit?: number;
    /**
     * Tax amount applied to subtotal
     * @type {number}
     * @memberof CustomerPortalInvoice
     */
    taxAmount?: number;
    /**
     * [DEPRECATED] End time of the cycle in which the invoice was generated
     * @type {Date}
     * @memberof CustomerPortalInvoice
     */
    endTime?: Date;
    /**
     * Total amount due
     * @type {number}
     * @memberof CustomerPortalInvoice
     */
    amountDue?: number;
    /**
     * False if not paid yet
     * @type {boolean}
     * @memberof CustomerPortalInvoice
     */
    isPaid?: boolean;
    /**
     *
     * @type {string}
     * @memberof CustomerPortalInvoice
     */
    id?: string;
    /**
     * Latest end time of line items covered by the invoice
     * @type {Date}
     * @memberof CustomerPortalInvoice
     */
    maxItemEndTime?: Date;
}
export declare function CustomerPortalInvoiceFromJSON(json: any): CustomerPortalInvoice;
export declare function CustomerPortalInvoiceFromJSONTyped(json: any, ignoreDiscriminator: boolean): CustomerPortalInvoice;
export declare function CustomerPortalInvoiceToJSON(value?: CustomerPortalInvoice | null): any;
