/* tslint:disable */
/* eslint-disable */
/**
 * ShipStation API v2
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: 2.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.
 */


// May contain unused imports in some cases
// @ts-ignore
import type { AdvancedShipmentOptionsDangerousGoodsContact } from './advanced-shipment-options-dangerous-goods-contact';
// May contain unused imports in some cases
// @ts-ignore
import type { AdvancedShipmentOptionsFedexFreight } from './advanced-shipment-options-fedex-freight';
// May contain unused imports in some cases
// @ts-ignore
import type { AdvancedShipmentOptionsWindsorFrameworkDetails } from './advanced-shipment-options-windsor-framework-details';
// May contain unused imports in some cases
// @ts-ignore
import type { BillToParty } from './bill-to-party';
// May contain unused imports in some cases
// @ts-ignore
import type { CollectOnDelivery } from './collect-on-delivery';
// May contain unused imports in some cases
// @ts-ignore
import type { OriginType } from './origin-type';
// May contain unused imports in some cases
// @ts-ignore
import type { Weight } from './weight';

/**
 * Advanced shipment options
 * @export
 * @interface AdvancedShipmentOptions
 */
export interface AdvancedShipmentOptions {
    [key: string]: any;

    /**
     * This field is used to [bill shipping costs to a third party].  This field must be used in conjunction with the `bill_to_country_code`, `bill_to_party`, and `bill_to_postal_code` fields. 
     * @type {string}
     * @memberof AdvancedShipmentOptions
     */
    'bill_to_account'?: string | null;
    /**
     * The two-letter [ISO 3166-1 country code](https://en.wikipedia.org/wiki/ISO_3166-1) of the third-party that is responsible for shipping costs. 
     * @type {string}
     * @memberof AdvancedShipmentOptions
     */
    'bill_to_country_code'?: string | null;
    /**
     * Indicates whether to bill shipping costs to the recipient or to a third-party.  When billing to a third-party, the `bill_to_account`, `bill_to_country_code`, and `bill_to_postal_code` fields must also be set. 
     * @type {BillToParty}
     * @memberof AdvancedShipmentOptions
     */
    'bill_to_party'?: BillToParty | null;
    /**
     * The postal code of the third-party that is responsible for shipping costs. 
     * @type {string}
     * @memberof AdvancedShipmentOptions
     */
    'bill_to_postal_code'?: string | null;
    /**
     * Indicates that the shipment contains alcohol.
     * @type {boolean}
     * @memberof AdvancedShipmentOptions
     */
    'contains_alcohol'?: boolean;
    /**
     * Indicates that the shipper is paying the international delivery duties for this shipment.  This option is supported by UPS, FedEx, and DHL Express. 
     * @type {boolean}
     * @memberof AdvancedShipmentOptions
     */
    'delivered_duty_paid'?: boolean;
    /**
     * Indicates if the shipment contain dry ice
     * @type {boolean}
     * @memberof AdvancedShipmentOptions
     */
    'dry_ice'?: boolean;
    /**
     * The weight of the dry ice in the shipment
     * @type {Weight}
     * @memberof AdvancedShipmentOptions
     */
    'dry_ice_weight'?: Weight | null;
    /**
     * Indicates that the package cannot be processed automatically because it is too large or irregularly shaped. This is primarily for USPS shipments.  See [Section 1.2 of the USPS parcel standards](https://pe.usps.com/text/dmm300/101.htm#ep1047495) for details. 
     * @type {boolean}
     * @memberof AdvancedShipmentOptions
     */
    'non_machinable'?: boolean;
    /**
     * Enables Saturday delivery, if supported by the carrier.
     * @type {boolean}
     * @memberof AdvancedShipmentOptions
     */
    'saturday_delivery'?: boolean;
    /**
     * 
     * @type {AdvancedShipmentOptionsFedexFreight}
     * @memberof AdvancedShipmentOptions
     */
    'fedex_freight'?: AdvancedShipmentOptionsFedexFreight;
    /**
     * Whether to use [UPS Ground Freight pricing] If enabled, then a `freight_class` must also be specified. 
     * @type {boolean}
     * @memberof AdvancedShipmentOptions
     */
    'use_ups_ground_freight_pricing'?: boolean | null;
    /**
     * The National Motor Freight Traffic Association [freight class](http://www.nmfta.org/pages/nmfc?AspxAutoDetectCookieSupport=1), such as \"77.5\", \"110\", or \"250\". 
     * @type {string}
     * @memberof AdvancedShipmentOptions
     */
    'freight_class'?: string | null;
    /**
     * An arbitrary field that can be used to store information about the shipment. 
     * @type {string}
     * @memberof AdvancedShipmentOptions
     */
    'custom_field1'?: string | null;
    /**
     * An arbitrary field that can be used to store information about the shipment. 
     * @type {string}
     * @memberof AdvancedShipmentOptions
     */
    'custom_field2'?: string | null;
    /**
     * An arbitrary field that can be used to store information about the shipment. 
     * @type {string}
     * @memberof AdvancedShipmentOptions
     */
    'custom_field3'?: string | null;
    /**
     * 
     * @type {OriginType}
     * @memberof AdvancedShipmentOptions
     */
    'origin_type'?: OriginType | null;
    /**
     * Indicate to the carrier that this shipment requires additional handling. 
     * @type {boolean}
     * @memberof AdvancedShipmentOptions
     */
    'additional_handling'?: boolean | null;
    /**
     * 
     * @type {boolean}
     * @memberof AdvancedShipmentOptions
     */
    'shipper_release'?: boolean | null;
    /**
     * 
     * @type {CollectOnDelivery}
     * @memberof AdvancedShipmentOptions
     */
    'collect_on_delivery'?: CollectOnDelivery;
    /**
     * Third Party Consignee option is a value-added service that allows the shipper to supply goods without commercial invoices being attached
     * @type {boolean}
     * @memberof AdvancedShipmentOptions
     */
    'third_party_consignee'?: boolean;
    /**
     * Indicates if the Dangerous goods are present in the shipment
     * @type {boolean}
     * @memberof AdvancedShipmentOptions
     */
    'dangerous_goods'?: boolean;
    /**
     * 
     * @type {AdvancedShipmentOptionsDangerousGoodsContact}
     * @memberof AdvancedShipmentOptions
     */
    'dangerous_goods_contact'?: AdvancedShipmentOptionsDangerousGoodsContact;
    /**
     * 
     * @type {AdvancedShipmentOptionsWindsorFrameworkDetails}
     * @memberof AdvancedShipmentOptions
     */
    'windsor_framework_details'?: AdvancedShipmentOptionsWindsorFrameworkDetails;
}



