export interface CanonicalizedAddtionalSellerInput { ValueAsString?: string; ValueAsBoolean?: boolean; ValueAsInteger?: number; ValueAsAddress?: Address; ValueAsWeight?: Weight; ValueAsDimension?: PackageDimensions; ValueAsCurrency?: CurrencyAmount; ValueAsTimestamp?: string; DataType: SellerInputDataType; [key: string]: string | boolean | number | Address | Weight | PackageDimensions | CurrencyAmount | string | undefined; } export interface CanonicalizedSellerInputs { AdditionalInputFieldName: string; AdditionalSellerInput: CanonicalizedAddtionalSellerInput; [key: string]: string | CanonicalizedAddtionalSellerInput; } export declare const canonicalizeAdditionalSellerInputs: (inputList: AdditionalSellerInputs[] | undefined) => CanonicalizedSellerInputs[] | undefined; export interface CanonicalizedItem { OrderItemId: string; Quantity: number; ItemWeight?: Weight; ItemDescription?: string; TransparencyCodeList?: string[]; ItemLevelSellerInputsList?: CanonicalizedSellerInputs[]; [key: string]: string | number | Weight | string[] | CanonicalizedSellerInputs[] | undefined; } export interface CanonicalizedShipmentRequestDetails { AmazonOrderId: string; SellerOrderId?: string; 'ItemList.Item': CanonicalizedItem[]; ShipFromAddress: Address; PackageDimensions: PackageDimensions; Weight: Weight; MustArriveByDate?: string; ShipDate?: string; ShippingServiceOptions: ShippingServiceOptions; LabelCustomization?: LabelCustomization; [key: string]: string | CanonicalizedItem[] | Address | PackageDimensions | Weight | ShippingServiceOptions | LabelCustomization | undefined; } export declare const canonicalizeShipmentRequestDetails: (shipmentRequestDetails: ShipmentRequestDetails) => CanonicalizedShipmentRequestDetails; /** * END common functions */ /** * START GetEligibleShippingServicesParameters */ export declare type WeightUnit = 'ounces' | 'grams'; export interface Weight { Value: number; Unit: WeightUnit; [key: string]: string | number; } export declare type SellerInputDataType = 'String' | 'Boolean' | 'Integer' | 'Timestamp' | 'Address' | 'Weight' | 'Dimension' | 'Currency'; export interface Address { Name: string; AddressLine1: string; AddressLine2?: string; AddressLine3?: string; DistrictOrCounty?: string; Email: string; City: string; StateOrProvinceCode?: string; PostalCode: string; CountryCode: string; Phone: string; [key: string]: string | undefined; } export declare enum PredefinedPackageDimensionsEnum { FedEx_Box_10kg = "FedEx_Box_10kg", FedEx_Box_25kg = "FedEx_Box_25kg", FedEx_Box_Extra_Large_1 = "FedEx_Box_Extra_Large_1", FedEx_Box_Extra_Large_2 = "FedEx_Box_Extra_Large_2", FedEx_Box_Large_1 = "FedEx_Box_Large_1", FedEx_Box_Large_2 = "FedEx_Box_Large_2", FedEx_Box_Medium_1 = "FedEx_Box_Medium_1", FedEx_Box_Medium_2 = "FedEx_Box_Medium_2", FedEx_Box_Small_1 = "FedEx_Box_Small_1", FedEx_Box_Small_2 = "FedEx_Box_Small_2", FedEx_Envelope = "FedEx_Envelope", FedEx_Padded_Pak = "FedEx_Padded_Pak", FedEx_Pak_2 = "FedEx_Pak_2", FedEx_Pak_1 = "FedEx_Pak_1", FedEx_Tube = "FedEx_Tube", FedEx_XL_Pak = "FedEx_XL_Pak", UPS_Box_10kg = "UPS_Box_10kg", UPS_Box_25kg = "UPS_Box_25kg", UPS_Express_Box = "UPS_Express_Box", UPS_Express_Box_Large = "UPS_Express_Box_Large", UPS_Express_Box_Medium = "UPS_Express_Box_Medium", UPS_Express_Box_Small = "UPS_Express_Box_Small", UPS_Express_Envelope = "UPS_Express_Envelope", UPS_Express_Hard_Pak = "UPS_Express_Hard_Pak", UPS_Express_Legal_Envelope = "UPS_Express_Legal_Envelope", UPS_Express_Pak = "UPS_Express_Pak", UPS_Express_Tube = "UPS_Express_Tube", UPS_Laboratory_Pak = "UPS_Laboratory_Pak", UPS_Pad_Pak = "UPS_Pad_Pak", UPS_Pallet = "UPS_Pallet", USPS_Card = "USPS_Card", USPS_Flat = "USPS_Flat", USPS_FlatRateCardboardEnvelope = "USPS_FlatRateCardboardEnvelope", USPS_FlatRateEnvelope = "USPS_FlatRateEnvelope", USPS_FlatRateGiftCardEnvelope = "USPS_FlatRateGiftCardEnvelope", USPS_FlatRateLegalEnvelope = "USPS_FlatRateLegalEnvelope", USPS_FlatRatePaddedEnvelope = "USPS_FlatRatePaddedEnvelope", USPS_FlatRateWindowEnvelope = "USPS_FlatRateWindowEnvelope", USPS_LargeFlatRateBoardGameBox = "USPS_LargeFlatRateBoardGameBox", USPS_LargeFlatRateBox = "USPS_LargeFlatRateBox", USPS_Letter = "USPS_Letter", USPS_MediumFlatRateBox1 = "USPS_MediumFlatRateBox1", USPS_MediumFlatRateBox2 = "USPS_MediumFlatRateBox2", USPS_RegionalRateBoxA1 = "USPS_RegionalRateBoxA1", USPS_RegionalRateBoxA2 = "USPS_RegionalRateBoxA2", USPS_RegionalRateBoxB1 = "USPS_RegionalRateBoxB1", USPS_RegionalRateBoxB2 = "USPS_RegionalRateBoxB2", USPS_RegionalRateBoxC = "USPS_RegionalRateBoxC", USPS_SmallFlatRateBox = "USPS_SmallFlatRateBox", USPS_SmallFlatRateEnvelope = "USPS_SmallFlatRateEnvelope" } export declare type PredefinedPackageDimensions = keyof typeof PredefinedPackageDimensionsEnum; export interface PackageDimensions { Length?: number; Width?: number; Height?: number; Unit?: 'inches' | 'centimeters'; PredefinedPackageDimensions?: PredefinedPackageDimensions; [key: string]: string | number | undefined; } export interface CurrencyAmount { CurrencyCode: string; Amount: number; [key: string]: string | number; } export interface AdditionalSellerInput { DataType: SellerInputDataType; ValueAsString?: string; ValueAsBoolean?: boolean; ValueAsInteger?: number; ValueAsTimestamp?: Date; ValueAsAddress?: Address; ValueAsWeight?: Weight; ValueAsDimension?: PackageDimensions; ValueAsCurrency?: CurrencyAmount; [key: string]: undefined | string | boolean | number | Date | Record; } export interface AdditionalSellerInputs { AdditionalInputFieldName: string; AdditionalSellerInput: AdditionalSellerInput; [key: string]: string | AdditionalSellerInput; } export interface Item { OrderItemId: string; Quantity: number; ItemWeight?: Weight; ItemDescription?: string; TransparencyCodeList?: string[]; ItemLevelSellerInputsList?: AdditionalSellerInputs[]; } export declare type DeliveryExperience = 'DeliveryConfirmationWithAdultSignature' | 'DeliveryConfirmationWithSignature' | 'DeliveryConfirmationWithoutSignature' | 'NoTracking'; export interface ShippingServiceOptions { DeliveryExperience: DeliveryExperience; DeclaredValue?: CurrencyAmount; CarrierWillPickUp: boolean; LabelFormat?: string; [key: string]: string | boolean | undefined | DeliveryExperience | CurrencyAmount; } export interface LabelCustomization { CustomTextForLabel?: string; StandardIdForLabel?: string; [key: string]: string | undefined; } export interface ShipmentRequestDetails { AmazonOrderId: string; SellerOrderId?: string; ItemList: Item[]; ShipFromAddress: Address; PackageDimensions: PackageDimensions; Weight: Weight; MustArriveByDate?: Date; ShipDate?: Date; ShippingServiceOptions: ShippingServiceOptions; LabelCustomization?: LabelCustomization; } export interface ShippingOfferingFilter { IncludeComplexShippingOptions?: boolean; } export interface GetEligibleShippingServicesParameters { ShipmentRequestDetails: ShipmentRequestDetails; ShippingOfferingFilter?: ShippingOfferingFilter; } export declare const canonicalizeParametersGetEligibleShippingServiceParameters: (parameters: GetEligibleShippingServicesParameters) => { ShippingOfferingFilter: { IncludeComplexShippingOptions: boolean | undefined; }; ShipmentRequestDetails: CanonicalizedShipmentRequestDetails; }; /** * END GetEligibleShippingServicesParameters */ export interface GetAdditionalSellerInputsParameters { OrderId: string; ShippingServiceId: string; ShipFromAddress: Address; [key: string]: string | Address; } /** * START CreateShipmentParameters */ export declare type HazmatType = 'None' | 'LQHazmat'; export interface LabelFormatOption { IncludePackingSlipWithLabel: boolean; [key: string]: boolean; } export interface CreateShipmentParameters { ShipmentRequestDetails: ShipmentRequestDetails; ShippingServiceId: string; ShippingServiceOfferId?: string; HazmatType?: HazmatType; LabelFormatOption?: LabelFormatOption; ShipmentLevelSellerInputsList?: AdditionalSellerInputs[]; } export interface CanonicalizedCreateShipmentParameters { ShipmentRequestDetails: CanonicalizedShipmentRequestDetails; ShippingServiceId: string; ShippingServiceOfferId?: string; HazmatType?: HazmatType; LabelFormatOption?: LabelFormatOption; 'ShipmentLevelSellerInputsList.member'?: CanonicalizedSellerInputs[]; [key: string]: CanonicalizedShipmentRequestDetails | string | HazmatType | LabelFormatOption | CanonicalizedSellerInputs[] | undefined; } export declare const canonicalizeCreateShipmentParameters: (parameters: CreateShipmentParameters) => CanonicalizedCreateShipmentParameters; /** * END CreateShipmentParameters */ export interface GetShipmentParameters { ShipmentId: string; } export interface CancelShipmentParameters { ShipmentId: string; }