@lehaotech/walmart-mcp 0.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/.env.example +25 -0
  2. package/CHANGELOG.md +247 -0
  3. package/LICENSE +21 -0
  4. package/README.md +344 -0
  5. package/build/api/advertising/ad-client.d.ts +24 -0
  6. package/build/api/advertising/ad-client.js +174 -0
  7. package/build/api/advertising/advertising-api.d.ts +50 -0
  8. package/build/api/advertising/advertising-api.js +89 -0
  9. package/build/api/client.d.ts +19 -0
  10. package/build/api/client.js +150 -0
  11. package/build/api/feeds/feeds-api.d.ts +15 -0
  12. package/build/api/feeds/feeds-api.js +53 -0
  13. package/build/api/fulfillment/fulfillment-api.d.ts +37 -0
  14. package/build/api/fulfillment/fulfillment-api.js +81 -0
  15. package/build/api/index.d.ts +44 -0
  16. package/build/api/index.js +56 -0
  17. package/build/api/inventory/inventory-api.d.ts +27 -0
  18. package/build/api/inventory/inventory-api.js +49 -0
  19. package/build/api/items/items-api.d.ts +33 -0
  20. package/build/api/items/items-api.js +67 -0
  21. package/build/api/notifications/notifications-api.d.ts +14 -0
  22. package/build/api/notifications/notifications-api.js +33 -0
  23. package/build/api/orders/orders-api.d.ts +32 -0
  24. package/build/api/orders/orders-api.js +47 -0
  25. package/build/api/pricing/pricing-api.d.ts +32 -0
  26. package/build/api/pricing/pricing-api.js +60 -0
  27. package/build/api/reports/reports-api.d.ts +37 -0
  28. package/build/api/reports/reports-api.js +51 -0
  29. package/build/api/returns/returns-api.d.ts +26 -0
  30. package/build/api/returns/returns-api.js +37 -0
  31. package/build/api/settings/settings-api.d.ts +9 -0
  32. package/build/api/settings/settings-api.js +21 -0
  33. package/build/auth/oauth.d.ts +16 -0
  34. package/build/auth/oauth.js +125 -0
  35. package/build/config/environment.d.ts +22 -0
  36. package/build/config/environment.js +50 -0
  37. package/build/index.d.ts +2 -0
  38. package/build/index.js +180 -0
  39. package/build/scripts/client-configs.d.ts +36 -0
  40. package/build/scripts/client-configs.js +132 -0
  41. package/build/scripts/diagnose.d.ts +15 -0
  42. package/build/scripts/diagnose.js +320 -0
  43. package/build/scripts/setup.d.ts +17 -0
  44. package/build/scripts/setup.js +276 -0
  45. package/build/tools/definitions/advertising.d.ts +664 -0
  46. package/build/tools/definitions/advertising.js +315 -0
  47. package/build/tools/definitions/discovery.d.ts +24 -0
  48. package/build/tools/definitions/discovery.js +65 -0
  49. package/build/tools/definitions/feeds.d.ts +46 -0
  50. package/build/tools/definitions/feeds.js +42 -0
  51. package/build/tools/definitions/fulfillment.d.ts +1127 -0
  52. package/build/tools/definitions/fulfillment.js +272 -0
  53. package/build/tools/definitions/inventory.d.ts +392 -0
  54. package/build/tools/definitions/inventory.js +182 -0
  55. package/build/tools/definitions/items.d.ts +447 -0
  56. package/build/tools/definitions/items.js +223 -0
  57. package/build/tools/definitions/notifications.d.ts +84 -0
  58. package/build/tools/definitions/notifications.js +73 -0
  59. package/build/tools/definitions/orders.d.ts +2659 -0
  60. package/build/tools/definitions/orders.js +298 -0
  61. package/build/tools/definitions/pricing.d.ts +724 -0
  62. package/build/tools/definitions/pricing.js +254 -0
  63. package/build/tools/definitions/reports.d.ts +223 -0
  64. package/build/tools/definitions/reports.js +144 -0
  65. package/build/tools/definitions/returns.d.ts +441 -0
  66. package/build/tools/definitions/returns.js +126 -0
  67. package/build/tools/definitions/settings.d.ts +100 -0
  68. package/build/tools/definitions/settings.js +52 -0
  69. package/build/tools/definitions/shared-schemas.d.ts +40 -0
  70. package/build/tools/definitions/shared-schemas.js +47 -0
  71. package/build/tools/definitions/token-management.d.ts +16 -0
  72. package/build/tools/definitions/token-management.js +41 -0
  73. package/build/tools/index.d.ts +6924 -0
  74. package/build/tools/index.js +379 -0
  75. package/build/utils/api-error.d.ts +41 -0
  76. package/build/utils/api-error.js +97 -0
  77. package/build/utils/endpoint-catalog.d.ts +22 -0
  78. package/build/utils/endpoint-catalog.js +89 -0
  79. package/build/utils/env-file.d.ts +12 -0
  80. package/build/utils/env-file.js +27 -0
  81. package/build/utils/known-issues.d.ts +29 -0
  82. package/build/utils/known-issues.js +122 -0
  83. package/build/utils/logger.d.ts +15 -0
  84. package/build/utils/logger.js +56 -0
  85. package/build/utils/rate-limiter.d.ts +51 -0
  86. package/build/utils/rate-limiter.js +109 -0
  87. package/package.json +1 -0
@@ -0,0 +1,272 @@
1
+ import { z } from 'zod';
2
+ import { SkuSchema, Iso8601UtcSchema } from './shared-schemas.js';
3
+ // ---------- Shared atoms for WFS ----------
4
+ const PostalAddressSchema = z
5
+ .object({
6
+ addressLine1: z.string().min(1).max(200),
7
+ addressLine2: z.string().max(200).optional(),
8
+ city: z.string().min(1).max(100),
9
+ state: z.string().min(2).max(50),
10
+ postalCode: z.string().min(3).max(20),
11
+ country: z.string().length(3, 'country must be ISO 3166-1 alpha-3 (USA, MEX, etc.)').default('USA'),
12
+ phone: z.string().optional(),
13
+ name: z.string().optional(),
14
+ })
15
+ .passthrough();
16
+ const PackageWeightSchema = z
17
+ .object({
18
+ value: z.number().positive(),
19
+ unit: z.enum(['LB', 'OZ', 'KG', 'G']).default('LB'),
20
+ })
21
+ .strict();
22
+ const PackageDimensionsSchema = z
23
+ .object({
24
+ length: z.number().positive(),
25
+ width: z.number().positive(),
26
+ height: z.number().positive(),
27
+ unit: z.enum(['IN', 'CM']).default('IN'),
28
+ })
29
+ .strict();
30
+ // ---------- WFS Inbound order ----------
31
+ const InboundOrderBodySchema = z
32
+ .object({
33
+ inboundOrderItems: z
34
+ .array(z
35
+ .object({
36
+ sku: SkuSchema,
37
+ expectedQuantity: z.number().int().positive(),
38
+ packagingType: z.enum(['CASE', 'PALLET', 'EACH']).optional(),
39
+ })
40
+ .passthrough())
41
+ .min(1, 'Inbound order needs at least 1 item'),
42
+ shipFromAddress: PostalAddressSchema,
43
+ expectedArrivalDate: Iso8601UtcSchema.optional(),
44
+ })
45
+ .passthrough();
46
+ // ---------- WFS tracking update ----------
47
+ const TrackingUpdateSchema = z
48
+ .object({
49
+ shipmentId: z.string().min(1, 'shipmentId required'),
50
+ carrier: z.string().min(1, 'carrier required'),
51
+ trackingNumber: z.string().min(1, 'trackingNumber required'),
52
+ shipDateTime: Iso8601UtcSchema.optional(),
53
+ })
54
+ .passthrough();
55
+ // ---------- WFS label discard ----------
56
+ const DiscardLabelSchema = z
57
+ .object({
58
+ trackingNumber: z.string().min(1),
59
+ carrierShortName: z.enum(['USPS', 'FedEx', 'UPS', 'DHL']),
60
+ })
61
+ .strict();
62
+ // ---------- WFS Multichannel order ----------
63
+ const McsOrderBodySchema = z
64
+ .object({
65
+ orderId: z.string().min(1),
66
+ items: z
67
+ .array(z
68
+ .object({
69
+ sku: SkuSchema,
70
+ quantity: z.number().int().positive(),
71
+ })
72
+ .passthrough())
73
+ .min(1),
74
+ shippingAddress: PostalAddressSchema,
75
+ serviceLevel: z.enum(['STANDARD', 'EXPEDITED', 'NEXT_DAY']).default('STANDARD'),
76
+ })
77
+ .passthrough();
78
+ const McsCancelSchema = z
79
+ .object({
80
+ orderId: z.string().min(1),
81
+ reason: z.string().optional(),
82
+ })
83
+ .passthrough();
84
+ // ---------- WFS carrier rate quote ----------
85
+ const RateQuoteSchema = z
86
+ .object({
87
+ fromAddress: PostalAddressSchema,
88
+ toAddress: PostalAddressSchema,
89
+ packages: z
90
+ .array(z
91
+ .object({
92
+ weight: PackageWeightSchema,
93
+ dimensions: PackageDimensionsSchema.optional(),
94
+ quantity: z.number().int().positive().default(1),
95
+ })
96
+ .strict())
97
+ .min(1, 'Need at least 1 package'),
98
+ })
99
+ .passthrough();
100
+ // ---------- WFS carrier shipment booking ----------
101
+ const CarrierBookingSchema = z
102
+ .object({
103
+ quoteId: z.string().min(1, 'quoteId required'),
104
+ shipmentInfo: z.record(z.string(), z.unknown()).optional(),
105
+ })
106
+ .passthrough();
107
+ // ---------- WFS pickup scheduling ----------
108
+ const PickupSchedulingSchema = z
109
+ .object({
110
+ shipmentId: z.string().min(1),
111
+ pickupDate: Iso8601UtcSchema,
112
+ pickupTimeWindow: z
113
+ .object({
114
+ start: z.string().regex(/^([01][0-9]|2[0-3]):[0-5][0-9]$/, 'start must be HH:MM'),
115
+ end: z.string().regex(/^([01][0-9]|2[0-3]):[0-5][0-9]$/, 'end must be HH:MM'),
116
+ })
117
+ .strict()
118
+ .optional(),
119
+ pickupAddress: PostalAddressSchema,
120
+ })
121
+ .passthrough();
122
+ export const fulfillmentTools = [
123
+ // ===== WFS Inbound =====
124
+ {
125
+ name: 'walmart_create_inbound_order',
126
+ description: 'Create a WFS inbound shipment order. Required: inboundOrderItems[] (sku + expectedQuantity), ' +
127
+ 'shipFromAddress (full postal address). Optional: expectedArrivalDate (ISO 8601 UTC).',
128
+ inputSchema: {
129
+ orderData: InboundOrderBodySchema,
130
+ },
131
+ },
132
+ {
133
+ name: 'walmart_get_inbound_shipments',
134
+ description: 'Get list of WFS inbound shipments with optional filtering by status.',
135
+ inputSchema: {
136
+ limit: z.number().int().min(1).max(200).optional(),
137
+ offset: z.number().int().min(0).optional(),
138
+ status: z.string().optional(),
139
+ },
140
+ },
141
+ {
142
+ name: 'walmart_get_inbound_errors',
143
+ description: 'Get inbound shipment errors. Use to diagnose issues with WFS inbound orders.',
144
+ inputSchema: {
145
+ inboundOrderId: z.string().optional(),
146
+ shipmentId: z.string().optional(),
147
+ },
148
+ },
149
+ {
150
+ name: 'walmart_get_shipment_items',
151
+ description: 'Get SKU-level details for a WFS shipment including quantities received and expected.',
152
+ inputSchema: {
153
+ shipmentId: z.string().optional(),
154
+ limit: z.number().int().min(1).max(200).optional(),
155
+ offset: z.number().int().min(0).optional(),
156
+ },
157
+ },
158
+ {
159
+ name: 'walmart_get_shipment_quantities',
160
+ description: 'Get shipment quantity breakdown: expected, received, and discrepancies.',
161
+ inputSchema: {
162
+ shipmentId: z.string().optional(),
163
+ },
164
+ },
165
+ {
166
+ name: 'walmart_get_shipment_label',
167
+ description: 'Get the shipping label for a WFS inbound shipment.',
168
+ inputSchema: {
169
+ shipmentId: z.string().describe('Shipment ID to get label for'),
170
+ },
171
+ },
172
+ {
173
+ name: 'walmart_update_shipment_tracking',
174
+ description: 'Update tracking information for a WFS inbound shipment. Required: shipmentId, carrier, ' +
175
+ 'trackingNumber. Optional: shipDateTime (ISO 8601 UTC).',
176
+ inputSchema: {
177
+ trackingData: TrackingUpdateSchema,
178
+ },
179
+ },
180
+ {
181
+ name: 'walmart_cancel_inbound_order',
182
+ description: 'Cancel a WFS inbound order. Only works for orders not yet received at fulfillment center.',
183
+ inputSchema: {
184
+ inboundOrderId: z.string().describe('Inbound order ID to cancel'),
185
+ },
186
+ },
187
+ // ===== Shipping Labels =====
188
+ {
189
+ name: 'walmart_get_purchased_label',
190
+ description: 'Get a previously purchased shipping label by purchase order ID (Ship with Walmart).',
191
+ inputSchema: {
192
+ purchaseOrderId: z.string().describe('Purchase order ID the label was created for'),
193
+ },
194
+ },
195
+ {
196
+ name: 'walmart_get_label_by_tracking',
197
+ description: 'Get a shipping label by carrier ID and tracking number.',
198
+ inputSchema: {
199
+ carrierId: z.string().describe('Carrier ID (e.g., USPS, FedEx)'),
200
+ trackingNo: z.string().describe('Tracking number'),
201
+ },
202
+ },
203
+ {
204
+ name: 'walmart_discard_label',
205
+ description: 'Void/discard a previously purchased shipping label. Required: trackingNumber + ' +
206
+ 'carrierShortName (USPS|FedEx|UPS|DHL). Must be done before carrier pickup.',
207
+ inputSchema: {
208
+ labelData: DiscardLabelSchema,
209
+ },
210
+ },
211
+ {
212
+ name: 'walmart_get_package_types',
213
+ description: 'Get available package types for a specific carrier. Needed when creating shipping labels.',
214
+ inputSchema: {
215
+ carrierId: z.string().describe('Carrier ID to get package types for'),
216
+ },
217
+ },
218
+ // ===== Multichannel Solutions =====
219
+ {
220
+ name: 'walmart_create_mcs_order',
221
+ description: 'Create a WFS multichannel order. Required: orderId, items[] (sku + quantity), ' +
222
+ 'shippingAddress. Optional: serviceLevel (STANDARD|EXPEDITED|NEXT_DAY).',
223
+ inputSchema: {
224
+ orderData: McsOrderBodySchema,
225
+ },
226
+ },
227
+ {
228
+ name: 'walmart_cancel_mcs_order',
229
+ description: 'Cancel a WFS multichannel order before it ships.',
230
+ inputSchema: {
231
+ cancelData: McsCancelSchema,
232
+ },
233
+ },
234
+ {
235
+ name: 'walmart_get_mcs_order_status',
236
+ description: 'Get status of a WFS multichannel order.',
237
+ inputSchema: {
238
+ orderId: z.string().describe('Multichannel order ID'),
239
+ },
240
+ },
241
+ // ===== WFS Carrier =====
242
+ {
243
+ name: 'walmart_get_carrier_rate_quotes',
244
+ description: 'Get shipping rate quotes from WFS carriers. Required: fromAddress, toAddress, packages[] ' +
245
+ '(each with weight). Returns rate options per carrier.',
246
+ inputSchema: {
247
+ quoteData: RateQuoteSchema,
248
+ },
249
+ },
250
+ {
251
+ name: 'walmart_book_carrier_shipment',
252
+ description: 'Book a carrier shipment using a WFS carrier rate quote. Required: quoteId.',
253
+ inputSchema: {
254
+ bookingData: CarrierBookingSchema,
255
+ },
256
+ },
257
+ {
258
+ name: 'walmart_get_carrier_label',
259
+ description: 'Get the carrier shipping label for a booked WFS shipment.',
260
+ inputSchema: {
261
+ shipmentId: z.string().describe('WFS shipment ID'),
262
+ },
263
+ },
264
+ {
265
+ name: 'walmart_schedule_carrier_pickup',
266
+ description: 'Schedule a carrier pickup for a WFS inbound shipment. Required: shipmentId, pickupDate ' +
267
+ '(ISO 8601 UTC), pickupAddress. Optional pickupTimeWindow (HH:MM format).',
268
+ inputSchema: {
269
+ pickupData: PickupSchedulingSchema,
270
+ },
271
+ },
272
+ ];
@@ -0,0 +1,392 @@
1
+ import { z } from 'zod';
2
+ export declare const inventoryTools: ({
3
+ name: string;
4
+ description: string;
5
+ inputSchema: {
6
+ sku: z.ZodString;
7
+ quantity?: undefined;
8
+ shipNode?: undefined;
9
+ inventoryData?: undefined;
10
+ limit?: undefined;
11
+ offset?: undefined;
12
+ feedData?: undefined;
13
+ fulfillmentLagTime?: undefined;
14
+ };
15
+ } | {
16
+ name: string;
17
+ description: string;
18
+ inputSchema: {
19
+ sku: z.ZodString;
20
+ quantity: z.ZodNumber;
21
+ shipNode: z.ZodOptional<z.ZodString>;
22
+ inventoryData?: undefined;
23
+ limit?: undefined;
24
+ offset?: undefined;
25
+ feedData?: undefined;
26
+ fulfillmentLagTime?: undefined;
27
+ };
28
+ } | {
29
+ name: string;
30
+ description: string;
31
+ inputSchema: {
32
+ sku: z.ZodString;
33
+ inventoryData: z.ZodObject<{
34
+ sku: z.ZodString;
35
+ shipNodes: z.ZodArray<z.ZodObject<{
36
+ shipNode: z.ZodString;
37
+ availToSellQty: z.ZodObject<{
38
+ unit: z.ZodDefault<z.ZodEnum<["EACH", "CASE"]>>;
39
+ amount: z.ZodNumber;
40
+ }, "strict", z.ZodTypeAny, {
41
+ amount: number;
42
+ unit: "EACH" | "CASE";
43
+ }, {
44
+ amount: number;
45
+ unit?: "EACH" | "CASE" | undefined;
46
+ }>;
47
+ processMode: z.ZodOptional<z.ZodDefault<z.ZodEnum<["UPSERT", "DELETE"]>>>;
48
+ }, "strict", z.ZodTypeAny, {
49
+ shipNode: string;
50
+ availToSellQty: {
51
+ amount: number;
52
+ unit: "EACH" | "CASE";
53
+ };
54
+ processMode?: "DELETE" | "UPSERT" | undefined;
55
+ }, {
56
+ shipNode: string;
57
+ availToSellQty: {
58
+ amount: number;
59
+ unit?: "EACH" | "CASE" | undefined;
60
+ };
61
+ processMode?: "DELETE" | "UPSERT" | undefined;
62
+ }>, "many">;
63
+ }, "strict", z.ZodTypeAny, {
64
+ sku: string;
65
+ shipNodes: {
66
+ shipNode: string;
67
+ availToSellQty: {
68
+ amount: number;
69
+ unit: "EACH" | "CASE";
70
+ };
71
+ processMode?: "DELETE" | "UPSERT" | undefined;
72
+ }[];
73
+ }, {
74
+ sku: string;
75
+ shipNodes: {
76
+ shipNode: string;
77
+ availToSellQty: {
78
+ amount: number;
79
+ unit?: "EACH" | "CASE" | undefined;
80
+ };
81
+ processMode?: "DELETE" | "UPSERT" | undefined;
82
+ }[];
83
+ }>;
84
+ quantity?: undefined;
85
+ shipNode?: undefined;
86
+ limit?: undefined;
87
+ offset?: undefined;
88
+ feedData?: undefined;
89
+ fulfillmentLagTime?: undefined;
90
+ };
91
+ } | {
92
+ name: string;
93
+ description: string;
94
+ inputSchema: {
95
+ limit: z.ZodOptional<z.ZodNumber>;
96
+ offset: z.ZodOptional<z.ZodString>;
97
+ shipNode: z.ZodOptional<z.ZodString>;
98
+ sku?: undefined;
99
+ quantity?: undefined;
100
+ inventoryData?: undefined;
101
+ feedData?: undefined;
102
+ fulfillmentLagTime?: undefined;
103
+ };
104
+ } | {
105
+ name: string;
106
+ description: string;
107
+ inputSchema: {
108
+ feedData: z.ZodObject<{
109
+ InventoryHeader: z.ZodObject<{
110
+ version: z.ZodDefault<z.ZodString>;
111
+ feedDate: z.ZodOptional<z.ZodString>;
112
+ }, "strict", z.ZodTypeAny, {
113
+ version: string;
114
+ feedDate?: string | undefined;
115
+ }, {
116
+ version?: string | undefined;
117
+ feedDate?: string | undefined;
118
+ }>;
119
+ Inventory: z.ZodArray<z.ZodObject<{
120
+ sku: z.ZodString;
121
+ quantity: z.ZodObject<{
122
+ unit: z.ZodDefault<z.ZodEnum<["EACH", "CASE"]>>;
123
+ amount: z.ZodNumber;
124
+ }, "strict", z.ZodTypeAny, {
125
+ amount: number;
126
+ unit: "EACH" | "CASE";
127
+ }, {
128
+ amount: number;
129
+ unit?: "EACH" | "CASE" | undefined;
130
+ }>;
131
+ fulfillmentLagTime: z.ZodOptional<z.ZodNumber>;
132
+ }, "strict", z.ZodTypeAny, {
133
+ sku: string;
134
+ quantity: {
135
+ amount: number;
136
+ unit: "EACH" | "CASE";
137
+ };
138
+ fulfillmentLagTime?: number | undefined;
139
+ }, {
140
+ sku: string;
141
+ quantity: {
142
+ amount: number;
143
+ unit?: "EACH" | "CASE" | undefined;
144
+ };
145
+ fulfillmentLagTime?: number | undefined;
146
+ }>, "many">;
147
+ }, "strict", z.ZodTypeAny, {
148
+ InventoryHeader: {
149
+ version: string;
150
+ feedDate?: string | undefined;
151
+ };
152
+ Inventory: {
153
+ sku: string;
154
+ quantity: {
155
+ amount: number;
156
+ unit: "EACH" | "CASE";
157
+ };
158
+ fulfillmentLagTime?: number | undefined;
159
+ }[];
160
+ }, {
161
+ InventoryHeader: {
162
+ version?: string | undefined;
163
+ feedDate?: string | undefined;
164
+ };
165
+ Inventory: {
166
+ sku: string;
167
+ quantity: {
168
+ amount: number;
169
+ unit?: "EACH" | "CASE" | undefined;
170
+ };
171
+ fulfillmentLagTime?: number | undefined;
172
+ }[];
173
+ }>;
174
+ sku?: undefined;
175
+ quantity?: undefined;
176
+ shipNode?: undefined;
177
+ inventoryData?: undefined;
178
+ limit?: undefined;
179
+ offset?: undefined;
180
+ fulfillmentLagTime?: undefined;
181
+ };
182
+ } | {
183
+ name: string;
184
+ description: string;
185
+ inputSchema: {
186
+ feedData: z.ZodObject<{
187
+ InventoryFeed: z.ZodObject<{
188
+ InventoryHeader: z.ZodObject<{
189
+ version: z.ZodDefault<z.ZodString>;
190
+ requestId: z.ZodOptional<z.ZodString>;
191
+ }, "strict", z.ZodTypeAny, {
192
+ version: string;
193
+ requestId?: string | undefined;
194
+ }, {
195
+ version?: string | undefined;
196
+ requestId?: string | undefined;
197
+ }>;
198
+ inventory: z.ZodArray<z.ZodObject<{
199
+ sku: z.ZodString;
200
+ shipNodes: z.ZodArray<z.ZodObject<{
201
+ shipNode: z.ZodString;
202
+ availToSellQty: z.ZodObject<{
203
+ unit: z.ZodDefault<z.ZodEnum<["EACH", "CASE"]>>;
204
+ amount: z.ZodNumber;
205
+ }, "strict", z.ZodTypeAny, {
206
+ amount: number;
207
+ unit: "EACH" | "CASE";
208
+ }, {
209
+ amount: number;
210
+ unit?: "EACH" | "CASE" | undefined;
211
+ }>;
212
+ processMode: z.ZodOptional<z.ZodDefault<z.ZodEnum<["UPSERT", "DELETE"]>>>;
213
+ }, "strict", z.ZodTypeAny, {
214
+ shipNode: string;
215
+ availToSellQty: {
216
+ amount: number;
217
+ unit: "EACH" | "CASE";
218
+ };
219
+ processMode?: "DELETE" | "UPSERT" | undefined;
220
+ }, {
221
+ shipNode: string;
222
+ availToSellQty: {
223
+ amount: number;
224
+ unit?: "EACH" | "CASE" | undefined;
225
+ };
226
+ processMode?: "DELETE" | "UPSERT" | undefined;
227
+ }>, "many">;
228
+ }, "strict", z.ZodTypeAny, {
229
+ sku: string;
230
+ shipNodes: {
231
+ shipNode: string;
232
+ availToSellQty: {
233
+ amount: number;
234
+ unit: "EACH" | "CASE";
235
+ };
236
+ processMode?: "DELETE" | "UPSERT" | undefined;
237
+ }[];
238
+ }, {
239
+ sku: string;
240
+ shipNodes: {
241
+ shipNode: string;
242
+ availToSellQty: {
243
+ amount: number;
244
+ unit?: "EACH" | "CASE" | undefined;
245
+ };
246
+ processMode?: "DELETE" | "UPSERT" | undefined;
247
+ }[];
248
+ }>, "many">;
249
+ }, "strict", z.ZodTypeAny, {
250
+ InventoryHeader: {
251
+ version: string;
252
+ requestId?: string | undefined;
253
+ };
254
+ inventory: {
255
+ sku: string;
256
+ shipNodes: {
257
+ shipNode: string;
258
+ availToSellQty: {
259
+ amount: number;
260
+ unit: "EACH" | "CASE";
261
+ };
262
+ processMode?: "DELETE" | "UPSERT" | undefined;
263
+ }[];
264
+ }[];
265
+ }, {
266
+ InventoryHeader: {
267
+ version?: string | undefined;
268
+ requestId?: string | undefined;
269
+ };
270
+ inventory: {
271
+ sku: string;
272
+ shipNodes: {
273
+ shipNode: string;
274
+ availToSellQty: {
275
+ amount: number;
276
+ unit?: "EACH" | "CASE" | undefined;
277
+ };
278
+ processMode?: "DELETE" | "UPSERT" | undefined;
279
+ }[];
280
+ }[];
281
+ }>;
282
+ }, "strict", z.ZodTypeAny, {
283
+ InventoryFeed: {
284
+ InventoryHeader: {
285
+ version: string;
286
+ requestId?: string | undefined;
287
+ };
288
+ inventory: {
289
+ sku: string;
290
+ shipNodes: {
291
+ shipNode: string;
292
+ availToSellQty: {
293
+ amount: number;
294
+ unit: "EACH" | "CASE";
295
+ };
296
+ processMode?: "DELETE" | "UPSERT" | undefined;
297
+ }[];
298
+ }[];
299
+ };
300
+ }, {
301
+ InventoryFeed: {
302
+ InventoryHeader: {
303
+ version?: string | undefined;
304
+ requestId?: string | undefined;
305
+ };
306
+ inventory: {
307
+ sku: string;
308
+ shipNodes: {
309
+ shipNode: string;
310
+ availToSellQty: {
311
+ amount: number;
312
+ unit?: "EACH" | "CASE" | undefined;
313
+ };
314
+ processMode?: "DELETE" | "UPSERT" | undefined;
315
+ }[];
316
+ }[];
317
+ };
318
+ }>;
319
+ sku?: undefined;
320
+ quantity?: undefined;
321
+ shipNode?: undefined;
322
+ inventoryData?: undefined;
323
+ limit?: undefined;
324
+ offset?: undefined;
325
+ fulfillmentLagTime?: undefined;
326
+ };
327
+ } | {
328
+ name: string;
329
+ description: string;
330
+ inputSchema: {
331
+ sku: z.ZodString;
332
+ fulfillmentLagTime: z.ZodNumber;
333
+ quantity?: undefined;
334
+ shipNode?: undefined;
335
+ inventoryData?: undefined;
336
+ limit?: undefined;
337
+ offset?: undefined;
338
+ feedData?: undefined;
339
+ };
340
+ } | {
341
+ name: string;
342
+ description: string;
343
+ inputSchema: {
344
+ feedData: z.ZodObject<{
345
+ LagTimeHeader: z.ZodObject<{
346
+ version: z.ZodDefault<z.ZodString>;
347
+ feedDate: z.ZodOptional<z.ZodString>;
348
+ }, "strict", z.ZodTypeAny, {
349
+ version: string;
350
+ feedDate?: string | undefined;
351
+ }, {
352
+ version?: string | undefined;
353
+ feedDate?: string | undefined;
354
+ }>;
355
+ lagTime: z.ZodArray<z.ZodObject<{
356
+ sku: z.ZodString;
357
+ fulfillmentLagTime: z.ZodNumber;
358
+ }, "strict", z.ZodTypeAny, {
359
+ sku: string;
360
+ fulfillmentLagTime: number;
361
+ }, {
362
+ sku: string;
363
+ fulfillmentLagTime: number;
364
+ }>, "many">;
365
+ }, "strict", z.ZodTypeAny, {
366
+ LagTimeHeader: {
367
+ version: string;
368
+ feedDate?: string | undefined;
369
+ };
370
+ lagTime: {
371
+ sku: string;
372
+ fulfillmentLagTime: number;
373
+ }[];
374
+ }, {
375
+ LagTimeHeader: {
376
+ version?: string | undefined;
377
+ feedDate?: string | undefined;
378
+ };
379
+ lagTime: {
380
+ sku: string;
381
+ fulfillmentLagTime: number;
382
+ }[];
383
+ }>;
384
+ sku?: undefined;
385
+ quantity?: undefined;
386
+ shipNode?: undefined;
387
+ inventoryData?: undefined;
388
+ limit?: undefined;
389
+ offset?: undefined;
390
+ fulfillmentLagTime?: undefined;
391
+ };
392
+ })[];