// Generated by xsd compiler for ios/objective-c
// DO NOT CHANGE!

#import <Foundation/Foundation.h>
#import "PicoClassSchema.h"
#import "PicoPropertySchema.h"
#import "PicoConstants.h"
#import "PicoBindable.h"


@class Trading_AddressType;
@class Trading_ShipmentTrackingDetailsType;
@class Trading_ItemTransactionIDType;
@class Trading_MeasureType;
@class Trading_ShipmentLineItemType;
@class Trading_AmountType;

/**
 
 Type defining the <b>Shipment</b> container, which is used by
 the seller in <b>CompleteSale</b> to provide shipping information. The
 <b>Shipment</b> container is also returned in the
 <b>GetSellingManagerSaleRecord</b> response.
 
 
 @ingroup EBayAPIInterface
*/
@interface Trading_ShipmentType : NSObject <PicoBindable> {

@private
    NSDate *_estimatedDeliveryDate;
    Trading_AmountType *_insuredValue;
    Trading_MeasureType *_packageDepth;
    Trading_MeasureType *_packageLength;
    Trading_MeasureType *_packageWidth;
    NSString *_payPalShipmentID;
    NSNumber *_shipmentID;
    Trading_AmountType *_postageTotal;
    NSDate *_printedTime;
    Trading_AddressType *_shipFromAddress;
    Trading_AddressType *_shippingAddress;
    NSString *_shippingCarrierUsed;
    NSMutableArray *_shippingFeature;
    NSString *_shippingPackage;
    NSString *_shippingServiceUsed;
    NSString *_shipmentTrackingNumber;
    Trading_MeasureType *_weightMajor;
    Trading_MeasureType *_weightMinor;
    NSMutableArray *_itemTransactionID;
    NSDate *_deliveryDate;
    NSString *_deliveryStatus;
    NSDate *_refundGrantedTime;
    NSDate *_refundRequestedTime;
    NSString *_status;
    NSDate *_shippedTime;
    NSString *_notes;
    NSMutableArray *_shipmentTrackingDetails;
    Trading_ShipmentLineItemType *_shipmentLineItem;
    NSMutableArray *_any;

}


/**
 (public property)
 
 type : NSDate, wrapper for primitive date
*/
@property (nonatomic, retain) NSDate *estimatedDeliveryDate;

/**
 (public property)
 
 type : class Trading_AmountType
*/
@property (nonatomic, retain) Trading_AmountType *insuredValue;

/**
 
 Depth dimension of the package needed to ship the item after it is sold.
 <br>
 For calculated shipping only.
 
 
 type : class Trading_MeasureType
*/
@property (nonatomic, retain) Trading_MeasureType *packageDepth;

/**
 
 Length dimension of the package needed to ship the item after it is sold.
 <br>
 For calculated shipping only.
 
 
 type : class Trading_MeasureType
*/
@property (nonatomic, retain) Trading_MeasureType *packageLength;

/**
 
 Width dimension of the package needed to ship the item after it is sold.
 <br>
 For calculated shipping only.
 
 
 type : class Trading_MeasureType
*/
@property (nonatomic, retain) Trading_MeasureType *packageWidth;

/**
 (public property)
 
 type : NSString, wrapper for primitive string
*/
@property (nonatomic, retain) NSString *payPalShipmentID;

/**
 (public property)
 
 type : NSNumber, wrapper for primitive long
*/
@property (nonatomic, retain) NSNumber *shipmentID;

/**
 (public property)
 
 type : class Trading_AmountType
*/
@property (nonatomic, retain) Trading_AmountType *postageTotal;

/**
 (public property)
 
 type : NSDate, wrapper for primitive date
*/
@property (nonatomic, retain) NSDate *printedTime;

/**
 
   The address from which the item is being shipped.
 
 
 type : class Trading_AddressType
*/
@property (nonatomic, retain) Trading_AddressType *shipFromAddress;

/**
 
 The address to which the item is to be shipped.
 
 
 type : class Trading_AddressType
*/
@property (nonatomic, retain) Trading_AddressType *shippingAddress;

/**
 
 The shipping carrier used to ship the package. This value can be any
 combination of alphanumeric characters and it is not checked and verified by
 eBay. This field is required if ShipmentTrackingNumber is included in the
 call request.
 <br><br>
 ShippingCarrierUsed and ShipmentTrackingNumber are dependent upon each other.
 You must either specify both, or specify neither.
 
 
 type : NSString, wrapper for primitive string
*/
@property (nonatomic, retain) NSString *shippingCarrierUsed;

/**
 (public property)
 
 entry type : string constant in Trading_ShippingFeatureCodeType.h
*/

@property (nonatomic, retain) NSMutableArray *shippingFeature;

/**
 
 The size of the package used to ship the item(s). See ShippingPackageCodeType
 for its possible values. Input.
 
 
 type: string constant in Trading_ShippingPackageCodeType.h
*/
@property (nonatomic, retain) NSString *shippingPackage;

/**
 
 The size of the package used to ship the item(s). See ShippingPackageCodeType
 for its possible values. Input.
 
 
 type : NSString, wrapper for primitive string
*/
@property (nonatomic, retain) NSString *shippingServiceUsed;

/**
 
 The tracking number associated with one package of a shipment. The seller is
 responsible for the accuracy of the shipment tracking number. eBay verifies
 the tracking number is unique (across all of a seller's orders) and consistent
 with the numbering scheme used by the specified shipping carrier. eBay cannot
 verify the accuracy of the tracking number. This field is required if
 ShippingCarrierUsed is included in the call request.
 <br><br>
 Sellers can specify multiple tracking numbers for the same ShippingCarrierUsed
 by separating the tracking numbers with commas.
 <br><br>
 ShippingCarrierUsed and ShipmentTrackingNumber are dependent upon each other.
 You must either specify both, or specify neither.
 
 
 type : NSString, wrapper for primitive string
*/
@property (nonatomic, retain) NSString *shipmentTrackingNumber;

/**
 
 See the documentation regarding "Working with Item Weights".
 The 'unit' attribute can have a value of lbs.
 
 
 type : class Trading_MeasureType
*/
@property (nonatomic, retain) Trading_MeasureType *weightMajor;

/**
 
 See the documentation regarding "Working with Item Weights".
 The 'unit' attribute is optional and assumed to be the
 minor compared to the value of 'unit' in WeightMajor.
 
 
 type : class Trading_MeasureType
*/
@property (nonatomic, retain) Trading_MeasureType *weightMinor;

/**
 (public property)
 
 entry type : class Trading_ItemTransactionIDType
*/

@property (nonatomic, retain) NSMutableArray *itemTransactionID;

/**
 
 Revise only
 
 
 type : NSDate, wrapper for primitive date
*/
@property (nonatomic, retain) NSDate *deliveryDate;

/**
 
 Revise only
 
 
 type: string constant in Trading_ShipmentDeliveryStatusCodeType.h
*/
@property (nonatomic, retain) NSString *deliveryStatus;

/**
 
 Revise only
 
 
 type : NSDate, wrapper for primitive date
*/
@property (nonatomic, retain) NSDate *refundGrantedTime;

/**
 
 Revise only
 
 
 type : NSDate, wrapper for primitive date
*/
@property (nonatomic, retain) NSDate *refundRequestedTime;

/**
 
 Status, for revise only
 
 
 type: string constant in Trading_ShipmentStatusCodeType.h
*/
@property (nonatomic, retain) NSString *status;

/**
 
 The date and time that the seller handed off the package(s) to the shipping
 carrier. If this field is not included in the request, the timestamp of the call
 execution is used as the shipped time. Note that sellers have the ability to set
 this value up to 3 calendar days in the future.
 
 
 type : NSDate, wrapper for primitive date
*/
@property (nonatomic, retain) NSDate *shippedTime;

/**
 
 This string field allows a seller to provide notes to the buyer regarding shipment of a
 Half.com item. Only alphanumeric characters can be used in this field. This is an optional
 field that is only applicable to Half.com items.
 
 
 type : NSString, wrapper for primitive string
*/
@property (nonatomic, retain) NSString *notes;

/**
 
 Container consisting of the tracking number and shipping carrier associated with
 the shipment of one item (package).
 <br><br>
 Because an order can have multiple line items and/or packages, there can be
 multiple <b>ShipmentTrackingDetails</b> containers under the
 <b>Shipment</b> container.
 
 
 entry type : class Trading_ShipmentTrackingDetailsType
*/

@property (nonatomic, retain) NSMutableArray *shipmentTrackingDetails;

/**
 
                   Contains information about one or more order line items in a Global Shipping Program package. Required or returned if the value of <strong>ShippingCarrierUsed</strong> is <code>GlobalShipping_MultiCarrier</code>.
 
 
 type : class Trading_ShipmentLineItemType
*/
@property (nonatomic, retain) Trading_ShipmentLineItemType *shipmentLineItem;

/**
 (public property)
 
 entry type : PicoAnyElement, wrapper for primitive anyelement
*/

@property (nonatomic, retain) NSMutableArray *any;


@end
