/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import { ratesAtCheckoutCreate } from "../funcs/ratesAtCheckoutCreate.js"; import { ratesAtCheckoutDeleteDefaultParcelTemplate } from "../funcs/ratesAtCheckoutDeleteDefaultParcelTemplate.js"; import { ratesAtCheckoutGetDefaultParcelTemplate } from "../funcs/ratesAtCheckoutGetDefaultParcelTemplate.js"; import { ratesAtCheckoutUpdateDefaultParcelTemplate } from "../funcs/ratesAtCheckoutUpdateDefaultParcelTemplate.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as components from "../models/components/index.js"; import * as operations from "../models/operations/index.js"; import { unwrapAsync } from "../types/fp.js"; export class RatesAtCheckout extends ClientSDK { /** * Generate a live rates request * * @remarks * Initiates a live rates request. Include either the object ID for * an existing address record or a fully formed address object when entering * an address value. You can also enter the object ID of an existing user parcel * template or a fully formed user parcel template object as the parcel value. */ async create( request: components.LiveRateCreateRequest, options?: RequestOptions, ): Promise { return unwrapAsync(ratesAtCheckoutCreate( this, request, options, )); } /** * Show current default parcel template * * @remarks * Retrieve and display the currently configured default parcel template for live rates. */ async getDefaultParcelTemplate( request: operations.GetDefaultParcelTemplateRequest, options?: RequestOptions, ): Promise { return unwrapAsync(ratesAtCheckoutGetDefaultParcelTemplate( this, request, options, )); } /** * Update default parcel template * * @remarks * Update the currently configured default parcel template for live rates. The object_id in the request payload should identify the user parcel template to be the new default. */ async updateDefaultParcelTemplate( request?: components.DefaultParcelTemplateUpdateRequest | undefined, options?: RequestOptions, ): Promise { return unwrapAsync(ratesAtCheckoutUpdateDefaultParcelTemplate( this, request, options, )); } /** * Clear current default parcel template * * @remarks * Clears the currently configured default parcel template for live rates. */ async deleteDefaultParcelTemplate( request: operations.DeleteDefaultParcelTemplateRequest, options?: RequestOptions, ): Promise { return unwrapAsync(ratesAtCheckoutDeleteDefaultParcelTemplate( this, request, options, )); } }