import { Codec, GetType } from 'purify-ts'; import { HttpClient, RequestMeta } from '../http'; import { NextToken } from '../parsing'; import { RequireOnlyOne } from './types'; export declare enum InventoryCondition { NewItem = "NewItem", NewWithWarranty = "NewWithWarranty", NewOEM = "NewOEM", NewOpenBox = "NewOpenBox", UsedLikeNew = "UsedLikeNew", UsedVeryGood = "UsedVeryGood", UsedGood = "UsedGood", UsedAcceptable = "UsedAcceptable", UsedPoor = "UsedPoor", UsedRefurbished = "UsedRefurbished", CollectibleLikeNew = "CollectibleLikeNew", CollectibleVeryGood = "CollectibleVeryGood", CollectibleGood = "CollectibleGood", CollectibleAcceptable = "CollectibleAcceptable", CollectiblePoor = "CollectiblePoor", RefurbishedWithWarranty = "RefurbishedWithWarranty", Refurbished = "Refurbished", Club = "Club", '' = "" } export declare enum TimepointType { Immediately = "Immediately", DateTime = "DateTime", Unknown = "Unknown" } export declare enum SupplyType { InStock = "InStock", Inbound = "Inbound", Transfer = "Transfer" } export declare const InventorySupplyList: Codec<{ NextToken: NextToken<"ListInventorySupply"> | undefined; MarketplaceId: string | undefined; InventorySupplyList: { SellerSKU: string | undefined; FNSKU: string | undefined; ASIN: string | undefined; Condition: InventoryCondition | undefined; TotalSupplyQuantity: number; InStockSupplyQuantity: number; EarliestAvailability: { TimepointType: TimepointType; DateTime: Date | undefined; } | undefined; SupplyDetail: { Quantity: number; SupplyType: SupplyType; EarliestAvailableToPick: { TimepointType: TimepointType; DateTime: Date | undefined; }; LatestAvailableToPick: { TimepointType: TimepointType; DateTime: Date | undefined; }; }[] | undefined; }[]; }>; export declare const InventorySupplyListByNextToken: Codec<{ NextToken: NextToken<"ListInventorySupply"> | undefined; InventorySupplyList: { SellerSKU: string | undefined; FNSKU: string | undefined; ASIN: string | undefined; Condition: InventoryCondition | undefined; TotalSupplyQuantity: number; InStockSupplyQuantity: number; EarliestAvailability: { TimepointType: TimepointType; DateTime: Date | undefined; } | undefined; SupplyDetail: { Quantity: number; SupplyType: SupplyType; EarliestAvailableToPick: { TimepointType: TimepointType; DateTime: Date | undefined; }; LatestAvailableToPick: { TimepointType: TimepointType; DateTime: Date | undefined; }; }[] | undefined; }[]; }>; export declare type ResponseGroup = 'Basic' | 'Detailed'; export declare type ListInventorySupplyRequestParameters = RequireOnlyOne<{ SellerSkus?: string[]; QueryStartDateTime?: Date; ResponseGroup?: ResponseGroup; MarketplaceId?: string; }, 'SellerSkus' | 'QueryStartDateTime'>; export declare type InventorySupplyList = GetType; export declare type InventorySupplyListByNextToken = GetType; export declare class FulfillmentInventory { private httpClient; constructor(httpClient: HttpClient); listInventorySupply(parameters: ListInventorySupplyRequestParameters): Promise<[InventorySupplyList, RequestMeta]>; listInventorySupplyByNextToken(nextToken: NextToken<'ListInventorySupply'>): Promise<[InventorySupplyListByNextToken, RequestMeta]>; getServiceStatus(): Promise<[{ Status: import("../parsing").ServiceStatus; Timestamp: string; }, RequestMeta]>; }