UNPKG

usps-webtools-promise

Version:

API wrapper for the USPS Web-Tools, with Promises!

105 lines (104 loc) 2.76 kB
import type USPSClass from "../usps.js"; import type { ErrorResponse } from "../usps.js"; export interface PricingRateInput { Container?: string; Girth?: string; Height?: string; Length?: string; Machinable?: string; Ounces?: string; Pounds?: string; Service?: string; Size?: string; Width?: string; ZipDestination?: string; ZipOrigination?: string; } export interface RateV4Request { Package: { "@ID": string; AmountToCollect?: string; Container: string; Content?: { ContentDescription?: string; ContentType?: string; }; DropOffTime?: string; FirstClassMailType?: string; Girth?: string; GroundOnly?: boolean; Height?: string; Length?: string; Machinable?: string; Ounces: string; Pounds: string; ReturnDimensionalWeight?: boolean; ReturnLocations?: boolean; ReturnServiceInfo?: boolean; Service: string; ShipDate?: { Option?: string; }; SortBy?: string; SpecialServices?: { SpecialService?: string; }; TrackingRetentionPeriod?: string; Value?: string; Width?: string; ZipDestination: string; ZipOrigination: string; }; } interface RateV4Postage { CLASSID?: string; CommercialPlusRate?: string; CommercialRate?: string; DimensionalWeightCommercialPlusRate?: string; DimensionalWeightRate?: string; MailService?: string; MaxDimensions?: string; Rate?: string; ServiceInformation?: string; SpecialServices?: [ { SpecialService?: { Available?: string; AvailableCPP?: string; AvailableOnline?: string; DeclaredValueRequired?: string; DueSenderRequired?: string; Price?: string; PriceCPP?: string; PriceOnline?: string; ServiceID?: string; ServiceName?: string; }; } ]; } interface RateV4Package { Container?: string; Error?: string; FirstClassMailType?: string; Girth?: string; Height?: string; Length?: string; Machinable?: string; Ounces: number; Postage: RateV4Postage; Pounds: number; Restriction: { Restrictions?: string; }; Width?: string; ZipDestination: string; ZipOrigination: string; Zone?: string; } export interface RateV4Response { Error?: ErrorResponse; Package?: RateV4Package; } export default function (this: USPSClass, pricingRate: PricingRateInput): Promise<RateV4Postage | Error>; export {};