import { Codec, GetType } from 'purify-ts'; import { HttpClient, RequestMeta } from '../http'; export interface GetFbaOutboundShipmentDetailParameters { MarketplaceId: string; AmazonShipmentId: string; } export declare enum AddressTypeEnum { Commercial = "Commercial", Residential = "Residential" } /** * Documentation has this as different from * MerchantFulfillment's address */ export declare const ShipmentInvoicingAddress: Codec<{ Name: string; AddressLine1: string | undefined; AddressLine2: string | undefined; AddressLine3: string | undefined; City: string | undefined; County: string | undefined; District: string | undefined; StateOrRegion: string | undefined; PostalCode: string | undefined; CountryCode: string | undefined; Phone: string | undefined; AddressType: AddressTypeEnum | undefined; }>; export declare const Money: Codec<{ CurrencyCode: string | undefined; Amount: string | undefined; }>; export declare const GetFBAOutboundShipmentDetail: Codec<{ ShipmentDetail: { AmazonOrderId: string; AmazonShipmentId: string; PurchaseDate: string; ShippingAddress: { Name: string; AddressLine1: string | undefined; AddressLine2: string | undefined; AddressLine3: string | undefined; City: string | undefined; County: string | undefined; District: string | undefined; StateOrRegion: string | undefined; PostalCode: string | undefined; CountryCode: string | undefined; Phone: string | undefined; AddressType: AddressTypeEnum | undefined; } | undefined; PaymentMethodDetails: string[]; MarketplaceId: string; BuyerName: string | undefined; BuyerCountry: string | undefined; BuyerTaxInfo: unknown; ShipmentItems: { ASIN: string; SellerSKU: string | undefined; OrderItemId: string; Title: string | undefined; QuantityOrdered: number; ItemPrice: { CurrencyCode: string | undefined; Amount: string | undefined; } | undefined; ShippingPrice: { CurrencyCode: string | undefined; Amount: string | undefined; } | undefined; GiftWrapPrice: { CurrencyCode: string | undefined; Amount: string | undefined; } | undefined; ShippingDiscount: { CurrencyCode: string | undefined; Amount: string | undefined; } | undefined; PromotionDiscount: { CurrencyCode: string | undefined; Amount: string | undefined; } | undefined; SerialNumbers: string[] | undefined; }[]; WarehouseId: string | undefined; }; }>; export interface SubmitFBAOutboundShipmentInvoiceParameters { MarketplaceId: string; AmazonShipmentId: string; InvoiceContent: string; } export declare const SubmitFBAOutboundShipmentInvoiceResult: Codec<"" | undefined>; export declare type SubmitFBAOutboundShipmentInvoiceResult = GetType; export interface GetFBAOutboundShipmentInvoiceStatusParameters { MarketplaceId: string; AmazonShipmentId: string; } export declare type GetFBAOutboundShipmentDetail = GetType; export declare const GetFBAOutboundShipmentInvoiceStatus: Codec<{ Shipments: { AmazonShipmentId: string; InvoiceStatus: string; }[]; }>; export declare type GetFBAOutboundShipmentInvoiceStatus = GetType; export declare class ShipmentInvoicing { private httpClient; constructor(httpClient: HttpClient); getFbaOutboundShipmentInvoiceStatus(parameters: GetFBAOutboundShipmentInvoiceStatusParameters): Promise<[GetFBAOutboundShipmentInvoiceStatus, RequestMeta]>; submitFbaOutboundShipmentInvoice(parameters: SubmitFBAOutboundShipmentInvoiceParameters): Promise<[SubmitFBAOutboundShipmentInvoiceResult, RequestMeta]>; getFbaOutboundShipmentDetail(parameters: GetFbaOutboundShipmentDetailParameters): Promise<[GetFBAOutboundShipmentDetail, RequestMeta]>; getServiceStatus(): Promise<[{ Status: import("../parsing").ServiceStatus; Timestamp: string; }, RequestMeta]>; }