import { IShipstationDimensions, IShipstationWeight } from './quote'; export default interface IShipstationOrderRequestBody { readonly orderNumber: string; readonly orderKey?: string; readonly orderDate: string; readonly paymentDate?: string; readonly shipByDate?: string; readonly orderStatus: 'awaiting_shipment' | 'awaiting_payment' | 'shipped' | 'on_hold' | 'cancelled'; readonly customerId?: string; readonly customerUsername?: string; readonly customerEmail?: string; readonly billTo: IShipstationAddress; readonly shipTo: IShipstationAddress; readonly items?: { readonly lineItemKey: string; readonly sku: string; readonly name: string; readonly imageUrl?: string; readonly weight: IShipstationWeight; readonly quantity: number; readonly unitPrice: number; readonly taxAmount: number; readonly shippingAmount: number; readonly warehouseLocation?: string; readonly options?: [ { readonly name: string; readonly value: string; } ]; readonly productId: string; readonly fulfillmentSku?: string; readonly adjustment: boolean; readonly upc: string; }[]; readonly amountPaid?: number; readonly taxAmount?: number; readonly shippingAmount?: number; readonly customerNotes?: string; readonly internalNotes?: string; readonly gift?: boolean; readonly giftMessage?: string; readonly paymentMethod?: string; readonly requestedShippingService?: string; readonly carrierCode?: string; readonly serviceCode?: string; readonly packageCode?: string; readonly confirmation?: string; readonly shipDate?: string; readonly weight?: IShipstationWeight; readonly dimensions?: IShipstationDimensions; readonly insuranceOptions?: { readonly provider: 'shipsurance' | 'carrier' | 'provider'; readonly insureShipment: boolean; readonly insuredValue: number; }; readonly internationalOptions?: { readonly contents: 'merchandise' | 'documents' | 'gift' | 'returned_goods' | 'sample'; readonly customsItems?: any[]; }; readonly advancedOptions?: { readonly warehouseId?: number; readonly nonMachinable?: boolean; readonly saturdayDelivery?: boolean; readonly containsAlcohol?: boolean; readonly mergedOrSplit?: boolean; readonly mergedIds?: any[]; readonly parentId?: number; readonly storeId?: number; readonly customField1?: string; readonly customField2?: string; readonly customField3?: string; readonly source?: string; readonly billToParty?: string; readonly billToAccount?: string; readonly billToPostalCode?: string; readonly billToCountryCode?: string; }; readonly tagIds?: number[]; } export interface IShipstationAddress { readonly name: string; readonly company?: string; readonly street1: string; readonly street2?: string; readonly street3?: string; readonly city: string; readonly state: string; readonly postalCode: string; readonly country: string; readonly phone: string; readonly residential: boolean; } export interface IShipstationOrderResponse { readonly orderId: number; readonly orderNumber: string; readonly orderKey: string; readonly orderDate: string; readonly createDate: string; readonly modifyDate: string; readonly paymentDate: string; readonly shipByDate: string; readonly orderStatus: 'awaiting_shipment' | 'awaiting_payment' | 'shipped' | 'on_hold' | 'cancelled'; readonly customerId?: string; readonly customerUsername?: string; readonly customerEmail?: string; readonly billTo: IShipstationAddress; readonly shipTo: IShipstationAddress; readonly items: { readonly orderItemId: number; readonly lineItemKey: string; readonly sku: string; readonly name: string; readonly imageUrl?: string; readonly weight: IShipstationWeight; readonly quantity: number; readonly unitPrice: number; readonly taxAmount: number; readonly shippingAmount: number; readonly warehouseLocation?: string; readonly options?: { readonly name: string; readonly value: string; }[]; readonly productId?: string; readonly fulfillmentSku?: string; readonly adjustment: false; readonly upc: string; readonly createDate: string; readonly modifyDate: string; }[]; readonly orderTotal: number; readonly amountPaid: number; readonly taxAmount: number; readonly shippingAmount: number; readonly customerNotes?: string; readonly internalNotes?: string; readonly gift?: boolean; readonly giftMessage?: string; readonly paymentMethod?: string; readonly requestedShippingService?: string; readonly carrierCode?: string; readonly serviceCode?: string; readonly packageCode?: string; readonly confirmation?: string; readonly shipDate: string; readonly holdUntilDate?: string; readonly weight?: IShipstationWeight; readonly dimensions?: IShipstationDimensions; readonly insuranceOptions?: { readonly provider: 'shipsurance' | 'carrier' | 'provider'; readonly insureShipment: boolean; readonly insuredValue: number; }; readonly internationalOptions?: { readonly contents: 'merchandise' | 'documents' | 'gift' | 'returned_goods' | 'sample'; readonly customsItems?: any[]; }; readonly advancedOptions?: { readonly warehouseId?: number; readonly nonMachinable?: boolean; readonly saturdayDelivery?: boolean; readonly containsAlcohol?: boolean; readonly mergedOrSplit?: boolean; readonly mergedIds?: any[]; readonly parentId?: number; readonly storeId?: number; readonly customField1?: string; readonly customField2?: string; readonly customField3?: string; readonly source?: string; readonly billToParty?: string; readonly billToAccount?: string; readonly billToPostalCode?: string; readonly billToCountryCode?: string; }; readonly tagIds?: string; readonly userId?: string; readonly externallyFulfilled?: boolean; readonly externallyFulfilledBy?: string; } export interface IShipstationLabelForOrderRequestBody { readonly orderId: number; readonly carrierCode: string; readonly serviceCode: string; readonly packageCode: string; readonly confirmation?: string; readonly shipDate: string; readonly weight: IShipstationWeight; readonly dimensions: IShipstationDimensions; readonly insuranceOptions?: { readonly provider: 'shipsurance' | 'carrier' | 'provider'; readonly insureShipment: boolean; readonly insuredValue: number; }; readonly internationalOptions?: { readonly contents: 'merchandise' | 'documents' | 'gift' | 'returned_goods' | 'sample'; readonly customsItems?: any[]; }; readonly advancedOptions?: { readonly warehouseId?: number; readonly nonMachinable?: boolean; readonly saturdayDelivery?: boolean; readonly containsAlcohol?: boolean; readonly mergedOrSplit?: boolean; readonly mergedIds?: any[]; readonly parentId?: number; readonly storeId?: number; readonly customField1?: string; readonly customField2?: string; readonly customField3?: string; readonly source?: string; readonly billToParty?: string; readonly billToAccount?: string; readonly billToPostalCode?: string; readonly billToCountryCode?: string; }; readonly testLabel: boolean; } export interface IShipstationLabelForOrderResponse { readonly shipmentId: number; readonly shipmentCost: number; readonly insuranceCost: number; readonly trackingNumber: number; readonly labelData: string; readonly formData?: any; }