/**
 * Apideck
 * The Apideck OpenAPI Spec: SDK Optimized
 *
 * The version of the OpenAPI document: 10.13.0
 * Contact: support@apideck.com
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import { EcommerceDiscount } from './EcommerceDiscount';
/**
 * A single line item of an ecommerce order, representing a product or variant with associated options, quantity, and pricing information.
 * @export
 * @interface EcommerceOrderLineItem
 */
export interface EcommerceOrderLineItem {
    /**
     * The name of the product or variant associated with the line item.
     * @type {string}
     * @memberof EcommerceOrderLineItem
     */
    name: string | null;
    /**
     * The quantity of the product or variant associated with the line item.
     * @type {string}
     * @memberof EcommerceOrderLineItem
     */
    quantity: string | null;
    /**
     * The total amount for the product(s) or variant associated with the line item, including taxes and discounts.
     * @type {string}
     * @memberof EcommerceOrderLineItem
     */
    total_amount: string | null;
    /**
     * A unique identifier for an object.
     * @type {string}
     * @memberof EcommerceOrderLineItem
     */
    readonly id?: string | null;
    /**
     * A unique identifier for the product associated with the line item.
     * @type {string}
     * @memberof EcommerceOrderLineItem
     */
    product_id?: string | null;
    /**
     * A unique identifier for the variant of the product associated with the line item, if applicable.
     * @type {string}
     * @memberof EcommerceOrderLineItem
     */
    variant_id?: string | null;
    /**
     * The SKU of the product or variant associated with the line item.
     * @type {string}
     * @memberof EcommerceOrderLineItem
     */
    sku?: string | null;
    /**
     * The description of the product or variant associated with the line item.
     * @type {string}
     * @memberof EcommerceOrderLineItem
     */
    description?: string | null;
    /**
     *
     * @type {Array<object>}
     * @memberof EcommerceOrderLineItem
     */
    options?: Array<object>;
    /**
     * The unit price of the product or variant associated with the line item.
     * @type {string}
     * @memberof EcommerceOrderLineItem
     */
    unit_price?: string | null;
    /**
     * The tax rate applied to the product or variant associated with the line item.
     * @type {string}
     * @memberof EcommerceOrderLineItem
     */
    tax_rate?: string | null;
    /**
     * The total tax amount applied to the product or variant associated with the line item.
     * @type {string}
     * @memberof EcommerceOrderLineItem
     */
    tax_amount?: string | null;
    /**
     * Whether the line item has been refunded.
     * @type {boolean}
     * @memberof EcommerceOrderLineItem
     */
    is_refunded?: boolean | null;
    /**
     * The amount of the line item that has been refunded.
     * @type {string}
     * @memberof EcommerceOrderLineItem
     */
    refunded_amount?: string | null;
    /**
     * The quantity of the line item that has been refunded.
     * @type {string}
     * @memberof EcommerceOrderLineItem
     */
    refunded_quantity?: string | null;
    /**
     * The sub total for the product(s) or variant associated with the line item, excluding taxes and discounts.
     * @type {string}
     * @memberof EcommerceOrderLineItem
     */
    sub_total?: string | null;
    /**
     *
     * @type {Array<EcommerceDiscount>}
     * @memberof EcommerceOrderLineItem
     */
    discounts?: Array<EcommerceDiscount>;
}
export declare function EcommerceOrderLineItemFromJSON(json: any): EcommerceOrderLineItem;
export declare function EcommerceOrderLineItemFromJSONTyped(json: any, ignoreDiscriminator: boolean): EcommerceOrderLineItem;
export declare function EcommerceOrderLineItemToJSON(value?: EcommerceOrderLineItem | null): any;
