/**
 * DHL Express APIs (MyDHL API)
 * Welcome to the official DHL Express APIs (MyDHL API) below are the published API Documentation to fulfill your shipping needs with DHL Express.       Please follow the process described [here](https://developer.dhl.com/api-reference/dhl-express-mydhl-api#get-started-section/user-guide--get-access) to request access to the DHL Express - MyDHL API services    In case you already have DHL Express - MyDHL API Service credentials please ensure to use the endpoints/environments listed  [here](https://developer.dhl.com/api-reference/dhl-express-mydhl-api#get-started-section/user-guide--environments)
 *
 * OpenAPI spec version: 2.4.0
 *
 *
 * NOTE: This class is auto generated by the swagger code generator program.
 * https://github.com/swagger-api/swagger-codegen.git
 * Do not edit the class manually.
 */
import { AxiosResponse, AxiosInstance, AxiosRequestConfig } from 'axios';
import { Configuration } from '../configuration';
import { RequestArgs, BaseAPI } from '../base';
import { SupermodelIoLogisticsExpressCreateShipmentRequest } from '../models';
import { SupermodelIoLogisticsExpressCreateShipmentResponse } from '../models';
import { SupermodelIoLogisticsExpressDocumentImageResponse } from '../models';
import { SupermodelIoLogisticsExpressEPODResponse } from '../models';
import { SupermodelIoLogisticsExpressImageUploadRequest } from '../models';
import { SupermodelIoLogisticsExpressUploadInvoiceDataRequest } from '../models';
/**
 * ShipmentApi - axios parameter creator
 * @export
 */
export declare const ShipmentApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     * ## Create Shipment The ShipmentRequest Operation will allow you to generate an AWB number and piece IDs, generate a shipping label, transmit manifest shipment detail to DHL, and optionally book a courier for the pickup of a shipment. The key elements in the response of the Shipment Request will be a base64 encoded PDF label and the Shipment and Piece identification numbers, which you can use for tracking on the DHL web site. While the RateRequest and ShipmentRequest services can be used independently, DHL recommends the use of RateRequest to first validate the products available for the shipper/receiver. The global product codes which are output during the RateResponse can be used directly as input into the Shipment Request, as both perform similar validations in terms of service capability.
     * @summary Create Shipment
     * @param {SupermodelIoLogisticsExpressCreateShipmentRequest} body Details about the shipment to be created
     * @param {string} [messageReference] Please provide message reference
     * @param {string} [messageReferenceDate] Optional reference date in the  HTTP-date format https://tools.ietf.org/html/rfc7231#section-7.1.1.2
     * @param {string} [pluginName] Please provide name of the plugin (applicable to 3PV only)
     * @param {string} [pluginVersion] Please provide version of the plugin (applicable to 3PV only)
     * @param {string} [shippingSystemPlatformName] Please provide name of the shipping platform(applicable to 3PV only)
     * @param {string} [shippingSystemPlatformVersion] Please provide version of the shipping platform (applicable to 3PV only)
     * @param {string} [webstorePlatformName] Please provide name of the webstore platform (applicable to 3PV only)
     * @param {string} [webstorePlatformVersion] Please provide version of the webstore platform (applicable to 3PV only)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    expApiShipments: (body: SupermodelIoLogisticsExpressCreateShipmentRequest, messageReference?: string, messageReferenceDate?: string, pluginName?: string, pluginVersion?: string, shippingSystemPlatformName?: string, shippingSystemPlatformVersion?: string, webstorePlatformName?: string, webstorePlatformVersion?: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * The Get Image service can be used to retrieve customer's own uploaded Commercial Invoice, Waybill Document  or supporting documents that uploaded during shipment creation.
     * @summary Get Image
     * @param {string} shipmentTrackingNumber DHL Express shipment identification number
     * @param {string} shipperAccountNumber DHL Express customer shipper account number
     * @param {string} typeCode Please provide correct document type.
     * @param {string} pickupYearAndMonth Please provide the pickup&#x27;s date in YYYY-MM format
     * @param {string} [encodingFormat] Please provide the document image encoding format in pdf or tiff format
     * @param {boolean} [allInOnePDF] Option to return all the document images in a single PDF file
     * @param {boolean} [compressedPackage] Option to return all the document images in a compressed package
     * @param {string} [messageReference] Please provide message reference
     * @param {string} [messageReferenceDate] Optional reference date in the  HTTP-date format https://tools.ietf.org/html/rfc7231#section-7.1.1.2
     * @param {string} [pluginName] Please provide name of the plugin (applicable to 3PV only)
     * @param {string} [pluginVersion] Please provide version of the plugin (applicable to 3PV only)
     * @param {string} [shippingSystemPlatformName] Please provide name of the shipping platform(applicable to 3PV only)
     * @param {string} [shippingSystemPlatformVersion] Please provide version of the shipping platform (applicable to 3PV only)
     * @param {string} [webstorePlatformName] Please provide name of the webstore platform (applicable to 3PV only)
     * @param {string} [webstorePlatformVersion] Please provide version of the webstore platform (applicable to 3PV only)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    expApiShipmentsDocumentimage: (shipmentTrackingNumber: string, shipperAccountNumber: string, typeCode: string, pickupYearAndMonth: string, encodingFormat?: string, allInOnePDF?: boolean, compressedPackage?: boolean, messageReference?: string, messageReferenceDate?: string, pluginName?: string, pluginVersion?: string, shippingSystemPlatformName?: string, shippingSystemPlatformVersion?: string, webstorePlatformName?: string, webstorePlatformVersion?: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * The electronic proof of delivery service can be used to retrieve proof of delivery for certain delivered DHL Express shipments
     * @summary Electronic Proof of Delivery
     * @param {string} shipmentTrackingNumber DHL Express shipment identification number
     * @param {string} [shipperAccountNumber] DHL Express customer shipper account number
     * @param {string} [content]
     * @param {string} [messageReference] Please provide message reference
     * @param {string} [messageReferenceDate] Optional reference date in the  HTTP-date format https://tools.ietf.org/html/rfc7231#section-7.1.1.2
     * @param {string} [pluginName] Please provide name of the plugin (applicable to 3PV only)
     * @param {string} [pluginVersion] Please provide version of the plugin (applicable to 3PV only)
     * @param {string} [shippingSystemPlatformName] Please provide name of the shipping platform(applicable to 3PV only)
     * @param {string} [shippingSystemPlatformVersion] Please provide version of the shipping platform (applicable to 3PV only)
     * @param {string} [webstorePlatformName] Please provide name of the webstore platform (applicable to 3PV only)
     * @param {string} [webstorePlatformVersion] Please provide version of the webstore platform (applicable to 3PV only)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    expApiShipmentsEpod: (shipmentTrackingNumber: string, shipperAccountNumber?: string, content?: string, messageReference?: string, messageReferenceDate?: string, pluginName?: string, pluginVersion?: string, shippingSystemPlatformName?: string, shippingSystemPlatformVersion?: string, webstorePlatformName?: string, webstorePlatformVersion?: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * The update shipment service can be used to upload updated customs documentation for your DHL Express shipment that has not been picked up yet.
     * @summary Upload updated customs documentation for your DHL Express shipment
     * @param {SupermodelIoLogisticsExpressImageUploadRequest} body Details about the shipment images
     * @param {string} shipmentTrackingNumber DHL Express shipment identification number
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    expApiShipmentsImgUpload: (body: SupermodelIoLogisticsExpressImageUploadRequest, shipmentTrackingNumber: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * ## Upload Invoice Data with Shipment ID The upload invoice data service can be used to upload Commerical Invoice data with Shipment Identification Number for your DHL Express shipment.Customer can provide Commercial Invoice data before Shipment Data via Create Shipment flow or vice versa.  Important Note: UploadInvoiceData service is not enabled by default and must be requested per customer. Use of this service is only enabled on exceptional basis and DHL Express recommends to submit shipment requests together with a commercial invoice data.To enable use of UploadInvoiceData service, please contact your DHL Express IT representative. To use UploadInvoiceData service, it is required that \"PM\" service code is provided in MyDHL API Create Shipment request. \"PM\" service code is not enabled by  default for the customers, and needs to be enabled upon request.  When Shipment is created via MyDHL API Create Shipment service before uploading the Commercial Invoice (CIN) data,it is mandatory to provide the Shipment Identification Number as received in MyDHL API Create Shipment service Response. When Commercial Invoice (CIN) data is uploaded prior to creating a shipment via MyDHL API Create Shipment service, it is mandatory to provide Invoice Reference Number with Invoice Reference Type value \"CU\" and Shipper Account Number.   These elements are mandatory to facilitate an effective data merge of the Commercial Invoice (CIN) data with Shipment Data. As an output customer will receive Notification element value '0' on successful upload of Commercial Invoice (CIN) data.  DHL backend application performs the subsequent data merging process of the Shipment Data and Commercial Invoice data.
     * @summary Upload Commercial Invoice data for your DHL Express shipment
     * @param {SupermodelIoLogisticsExpressUploadInvoiceDataRequest} body Details about the invoice data
     * @param {string} shipmentTrackingNumber DHL Express shipment identification number
     * @param {string} [messageReference] Please provide message reference
     * @param {string} [messageReferenceDate] Optional reference date in the  HTTP-date format https://tools.ietf.org/html/rfc7231#section-7.1.1.2
     * @param {string} [pluginName] Please provide name of the plugin (applicable to 3PV only)
     * @param {string} [pluginVersion] Please provide version of the plugin (applicable to 3PV only)
     * @param {string} [shippingSystemPlatformName] Please provide name of the shipping platform(applicable to 3PV only)
     * @param {string} [shippingSystemPlatformVersion] Please provide version of the shipping platform (applicable to 3PV only)
     * @param {string} [webstorePlatformName] Please provide name of the webstore platform (applicable to 3PV only)
     * @param {string} [webstorePlatformVersion] Please provide version of the webstore platform (applicable to 3PV only)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    expApiShipmentsInvoiceDataAwb: (body: SupermodelIoLogisticsExpressUploadInvoiceDataRequest, shipmentTrackingNumber: string, messageReference?: string, messageReferenceDate?: string, pluginName?: string, pluginVersion?: string, shippingSystemPlatformName?: string, shippingSystemPlatformVersion?: string, webstorePlatformName?: string, webstorePlatformVersion?: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
};
/**
 * ShipmentApi - functional programming interface
 * @export
 */
export declare const ShipmentApiFp: (configuration?: Configuration) => {
    /**
     * ## Create Shipment The ShipmentRequest Operation will allow you to generate an AWB number and piece IDs, generate a shipping label, transmit manifest shipment detail to DHL, and optionally book a courier for the pickup of a shipment. The key elements in the response of the Shipment Request will be a base64 encoded PDF label and the Shipment and Piece identification numbers, which you can use for tracking on the DHL web site. While the RateRequest and ShipmentRequest services can be used independently, DHL recommends the use of RateRequest to first validate the products available for the shipper/receiver. The global product codes which are output during the RateResponse can be used directly as input into the Shipment Request, as both perform similar validations in terms of service capability.
     * @summary Create Shipment
     * @param {SupermodelIoLogisticsExpressCreateShipmentRequest} body Details about the shipment to be created
     * @param {string} [messageReference] Please provide message reference
     * @param {string} [messageReferenceDate] Optional reference date in the  HTTP-date format https://tools.ietf.org/html/rfc7231#section-7.1.1.2
     * @param {string} [pluginName] Please provide name of the plugin (applicable to 3PV only)
     * @param {string} [pluginVersion] Please provide version of the plugin (applicable to 3PV only)
     * @param {string} [shippingSystemPlatformName] Please provide name of the shipping platform(applicable to 3PV only)
     * @param {string} [shippingSystemPlatformVersion] Please provide version of the shipping platform (applicable to 3PV only)
     * @param {string} [webstorePlatformName] Please provide name of the webstore platform (applicable to 3PV only)
     * @param {string} [webstorePlatformVersion] Please provide version of the webstore platform (applicable to 3PV only)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    expApiShipments(body: SupermodelIoLogisticsExpressCreateShipmentRequest, messageReference?: string, messageReferenceDate?: string, pluginName?: string, pluginVersion?: string, shippingSystemPlatformName?: string, shippingSystemPlatformVersion?: string, webstorePlatformName?: string, webstorePlatformVersion?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<SupermodelIoLogisticsExpressCreateShipmentResponse>>>;
    /**
     * The Get Image service can be used to retrieve customer's own uploaded Commercial Invoice, Waybill Document  or supporting documents that uploaded during shipment creation.
     * @summary Get Image
     * @param {string} shipmentTrackingNumber DHL Express shipment identification number
     * @param {string} shipperAccountNumber DHL Express customer shipper account number
     * @param {string} typeCode Please provide correct document type.
     * @param {string} pickupYearAndMonth Please provide the pickup&#x27;s date in YYYY-MM format
     * @param {string} [encodingFormat] Please provide the document image encoding format in pdf or tiff format
     * @param {boolean} [allInOnePDF] Option to return all the document images in a single PDF file
     * @param {boolean} [compressedPackage] Option to return all the document images in a compressed package
     * @param {string} [messageReference] Please provide message reference
     * @param {string} [messageReferenceDate] Optional reference date in the  HTTP-date format https://tools.ietf.org/html/rfc7231#section-7.1.1.2
     * @param {string} [pluginName] Please provide name of the plugin (applicable to 3PV only)
     * @param {string} [pluginVersion] Please provide version of the plugin (applicable to 3PV only)
     * @param {string} [shippingSystemPlatformName] Please provide name of the shipping platform(applicable to 3PV only)
     * @param {string} [shippingSystemPlatformVersion] Please provide version of the shipping platform (applicable to 3PV only)
     * @param {string} [webstorePlatformName] Please provide name of the webstore platform (applicable to 3PV only)
     * @param {string} [webstorePlatformVersion] Please provide version of the webstore platform (applicable to 3PV only)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    expApiShipmentsDocumentimage(shipmentTrackingNumber: string, shipperAccountNumber: string, typeCode: string, pickupYearAndMonth: string, encodingFormat?: string, allInOnePDF?: boolean, compressedPackage?: boolean, messageReference?: string, messageReferenceDate?: string, pluginName?: string, pluginVersion?: string, shippingSystemPlatformName?: string, shippingSystemPlatformVersion?: string, webstorePlatformName?: string, webstorePlatformVersion?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<SupermodelIoLogisticsExpressDocumentImageResponse>>>;
    /**
     * The electronic proof of delivery service can be used to retrieve proof of delivery for certain delivered DHL Express shipments
     * @summary Electronic Proof of Delivery
     * @param {string} shipmentTrackingNumber DHL Express shipment identification number
     * @param {string} [shipperAccountNumber] DHL Express customer shipper account number
     * @param {string} [content]
     * @param {string} [messageReference] Please provide message reference
     * @param {string} [messageReferenceDate] Optional reference date in the  HTTP-date format https://tools.ietf.org/html/rfc7231#section-7.1.1.2
     * @param {string} [pluginName] Please provide name of the plugin (applicable to 3PV only)
     * @param {string} [pluginVersion] Please provide version of the plugin (applicable to 3PV only)
     * @param {string} [shippingSystemPlatformName] Please provide name of the shipping platform(applicable to 3PV only)
     * @param {string} [shippingSystemPlatformVersion] Please provide version of the shipping platform (applicable to 3PV only)
     * @param {string} [webstorePlatformName] Please provide name of the webstore platform (applicable to 3PV only)
     * @param {string} [webstorePlatformVersion] Please provide version of the webstore platform (applicable to 3PV only)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    expApiShipmentsEpod(shipmentTrackingNumber: string, shipperAccountNumber?: string, content?: string, messageReference?: string, messageReferenceDate?: string, pluginName?: string, pluginVersion?: string, shippingSystemPlatformName?: string, shippingSystemPlatformVersion?: string, webstorePlatformName?: string, webstorePlatformVersion?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<SupermodelIoLogisticsExpressEPODResponse>>>;
    /**
     * The update shipment service can be used to upload updated customs documentation for your DHL Express shipment that has not been picked up yet.
     * @summary Upload updated customs documentation for your DHL Express shipment
     * @param {SupermodelIoLogisticsExpressImageUploadRequest} body Details about the shipment images
     * @param {string} shipmentTrackingNumber DHL Express shipment identification number
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    expApiShipmentsImgUpload(body: SupermodelIoLogisticsExpressImageUploadRequest, shipmentTrackingNumber: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<void>>>;
    /**
     * ## Upload Invoice Data with Shipment ID The upload invoice data service can be used to upload Commerical Invoice data with Shipment Identification Number for your DHL Express shipment.Customer can provide Commercial Invoice data before Shipment Data via Create Shipment flow or vice versa.  Important Note: UploadInvoiceData service is not enabled by default and must be requested per customer. Use of this service is only enabled on exceptional basis and DHL Express recommends to submit shipment requests together with a commercial invoice data.To enable use of UploadInvoiceData service, please contact your DHL Express IT representative. To use UploadInvoiceData service, it is required that \"PM\" service code is provided in MyDHL API Create Shipment request. \"PM\" service code is not enabled by  default for the customers, and needs to be enabled upon request.  When Shipment is created via MyDHL API Create Shipment service before uploading the Commercial Invoice (CIN) data,it is mandatory to provide the Shipment Identification Number as received in MyDHL API Create Shipment service Response. When Commercial Invoice (CIN) data is uploaded prior to creating a shipment via MyDHL API Create Shipment service, it is mandatory to provide Invoice Reference Number with Invoice Reference Type value \"CU\" and Shipper Account Number.   These elements are mandatory to facilitate an effective data merge of the Commercial Invoice (CIN) data with Shipment Data. As an output customer will receive Notification element value '0' on successful upload of Commercial Invoice (CIN) data.  DHL backend application performs the subsequent data merging process of the Shipment Data and Commercial Invoice data.
     * @summary Upload Commercial Invoice data for your DHL Express shipment
     * @param {SupermodelIoLogisticsExpressUploadInvoiceDataRequest} body Details about the invoice data
     * @param {string} shipmentTrackingNumber DHL Express shipment identification number
     * @param {string} [messageReference] Please provide message reference
     * @param {string} [messageReferenceDate] Optional reference date in the  HTTP-date format https://tools.ietf.org/html/rfc7231#section-7.1.1.2
     * @param {string} [pluginName] Please provide name of the plugin (applicable to 3PV only)
     * @param {string} [pluginVersion] Please provide version of the plugin (applicable to 3PV only)
     * @param {string} [shippingSystemPlatformName] Please provide name of the shipping platform(applicable to 3PV only)
     * @param {string} [shippingSystemPlatformVersion] Please provide version of the shipping platform (applicable to 3PV only)
     * @param {string} [webstorePlatformName] Please provide name of the webstore platform (applicable to 3PV only)
     * @param {string} [webstorePlatformVersion] Please provide version of the webstore platform (applicable to 3PV only)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    expApiShipmentsInvoiceDataAwb(body: SupermodelIoLogisticsExpressUploadInvoiceDataRequest, shipmentTrackingNumber: string, messageReference?: string, messageReferenceDate?: string, pluginName?: string, pluginVersion?: string, shippingSystemPlatformName?: string, shippingSystemPlatformVersion?: string, webstorePlatformName?: string, webstorePlatformVersion?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<void>>>;
};
/**
 * ShipmentApi - factory interface
 * @export
 */
export declare const ShipmentApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     * ## Create Shipment The ShipmentRequest Operation will allow you to generate an AWB number and piece IDs, generate a shipping label, transmit manifest shipment detail to DHL, and optionally book a courier for the pickup of a shipment. The key elements in the response of the Shipment Request will be a base64 encoded PDF label and the Shipment and Piece identification numbers, which you can use for tracking on the DHL web site. While the RateRequest and ShipmentRequest services can be used independently, DHL recommends the use of RateRequest to first validate the products available for the shipper/receiver. The global product codes which are output during the RateResponse can be used directly as input into the Shipment Request, as both perform similar validations in terms of service capability.
     * @summary Create Shipment
     * @param {SupermodelIoLogisticsExpressCreateShipmentRequest} body Details about the shipment to be created
     * @param {string} [messageReference] Please provide message reference
     * @param {string} [messageReferenceDate] Optional reference date in the  HTTP-date format https://tools.ietf.org/html/rfc7231#section-7.1.1.2
     * @param {string} [pluginName] Please provide name of the plugin (applicable to 3PV only)
     * @param {string} [pluginVersion] Please provide version of the plugin (applicable to 3PV only)
     * @param {string} [shippingSystemPlatformName] Please provide name of the shipping platform(applicable to 3PV only)
     * @param {string} [shippingSystemPlatformVersion] Please provide version of the shipping platform (applicable to 3PV only)
     * @param {string} [webstorePlatformName] Please provide name of the webstore platform (applicable to 3PV only)
     * @param {string} [webstorePlatformVersion] Please provide version of the webstore platform (applicable to 3PV only)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    expApiShipments(body: SupermodelIoLogisticsExpressCreateShipmentRequest, messageReference?: string, messageReferenceDate?: string, pluginName?: string, pluginVersion?: string, shippingSystemPlatformName?: string, shippingSystemPlatformVersion?: string, webstorePlatformName?: string, webstorePlatformVersion?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<SupermodelIoLogisticsExpressCreateShipmentResponse>>;
    /**
     * The Get Image service can be used to retrieve customer's own uploaded Commercial Invoice, Waybill Document  or supporting documents that uploaded during shipment creation.
     * @summary Get Image
     * @param {string} shipmentTrackingNumber DHL Express shipment identification number
     * @param {string} shipperAccountNumber DHL Express customer shipper account number
     * @param {string} typeCode Please provide correct document type.
     * @param {string} pickupYearAndMonth Please provide the pickup&#x27;s date in YYYY-MM format
     * @param {string} [encodingFormat] Please provide the document image encoding format in pdf or tiff format
     * @param {boolean} [allInOnePDF] Option to return all the document images in a single PDF file
     * @param {boolean} [compressedPackage] Option to return all the document images in a compressed package
     * @param {string} [messageReference] Please provide message reference
     * @param {string} [messageReferenceDate] Optional reference date in the  HTTP-date format https://tools.ietf.org/html/rfc7231#section-7.1.1.2
     * @param {string} [pluginName] Please provide name of the plugin (applicable to 3PV only)
     * @param {string} [pluginVersion] Please provide version of the plugin (applicable to 3PV only)
     * @param {string} [shippingSystemPlatformName] Please provide name of the shipping platform(applicable to 3PV only)
     * @param {string} [shippingSystemPlatformVersion] Please provide version of the shipping platform (applicable to 3PV only)
     * @param {string} [webstorePlatformName] Please provide name of the webstore platform (applicable to 3PV only)
     * @param {string} [webstorePlatformVersion] Please provide version of the webstore platform (applicable to 3PV only)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    expApiShipmentsDocumentimage(shipmentTrackingNumber: string, shipperAccountNumber: string, typeCode: string, pickupYearAndMonth: string, encodingFormat?: string, allInOnePDF?: boolean, compressedPackage?: boolean, messageReference?: string, messageReferenceDate?: string, pluginName?: string, pluginVersion?: string, shippingSystemPlatformName?: string, shippingSystemPlatformVersion?: string, webstorePlatformName?: string, webstorePlatformVersion?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<SupermodelIoLogisticsExpressDocumentImageResponse>>;
    /**
     * The electronic proof of delivery service can be used to retrieve proof of delivery for certain delivered DHL Express shipments
     * @summary Electronic Proof of Delivery
     * @param {string} shipmentTrackingNumber DHL Express shipment identification number
     * @param {string} [shipperAccountNumber] DHL Express customer shipper account number
     * @param {string} [content]
     * @param {string} [messageReference] Please provide message reference
     * @param {string} [messageReferenceDate] Optional reference date in the  HTTP-date format https://tools.ietf.org/html/rfc7231#section-7.1.1.2
     * @param {string} [pluginName] Please provide name of the plugin (applicable to 3PV only)
     * @param {string} [pluginVersion] Please provide version of the plugin (applicable to 3PV only)
     * @param {string} [shippingSystemPlatformName] Please provide name of the shipping platform(applicable to 3PV only)
     * @param {string} [shippingSystemPlatformVersion] Please provide version of the shipping platform (applicable to 3PV only)
     * @param {string} [webstorePlatformName] Please provide name of the webstore platform (applicable to 3PV only)
     * @param {string} [webstorePlatformVersion] Please provide version of the webstore platform (applicable to 3PV only)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    expApiShipmentsEpod(shipmentTrackingNumber: string, shipperAccountNumber?: string, content?: string, messageReference?: string, messageReferenceDate?: string, pluginName?: string, pluginVersion?: string, shippingSystemPlatformName?: string, shippingSystemPlatformVersion?: string, webstorePlatformName?: string, webstorePlatformVersion?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<SupermodelIoLogisticsExpressEPODResponse>>;
    /**
     * The update shipment service can be used to upload updated customs documentation for your DHL Express shipment that has not been picked up yet.
     * @summary Upload updated customs documentation for your DHL Express shipment
     * @param {SupermodelIoLogisticsExpressImageUploadRequest} body Details about the shipment images
     * @param {string} shipmentTrackingNumber DHL Express shipment identification number
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    expApiShipmentsImgUpload(body: SupermodelIoLogisticsExpressImageUploadRequest, shipmentTrackingNumber: string, options?: AxiosRequestConfig): Promise<AxiosResponse<void>>;
    /**
     * ## Upload Invoice Data with Shipment ID The upload invoice data service can be used to upload Commerical Invoice data with Shipment Identification Number for your DHL Express shipment.Customer can provide Commercial Invoice data before Shipment Data via Create Shipment flow or vice versa.  Important Note: UploadInvoiceData service is not enabled by default and must be requested per customer. Use of this service is only enabled on exceptional basis and DHL Express recommends to submit shipment requests together with a commercial invoice data.To enable use of UploadInvoiceData service, please contact your DHL Express IT representative. To use UploadInvoiceData service, it is required that \"PM\" service code is provided in MyDHL API Create Shipment request. \"PM\" service code is not enabled by  default for the customers, and needs to be enabled upon request.  When Shipment is created via MyDHL API Create Shipment service before uploading the Commercial Invoice (CIN) data,it is mandatory to provide the Shipment Identification Number as received in MyDHL API Create Shipment service Response. When Commercial Invoice (CIN) data is uploaded prior to creating a shipment via MyDHL API Create Shipment service, it is mandatory to provide Invoice Reference Number with Invoice Reference Type value \"CU\" and Shipper Account Number.   These elements are mandatory to facilitate an effective data merge of the Commercial Invoice (CIN) data with Shipment Data. As an output customer will receive Notification element value '0' on successful upload of Commercial Invoice (CIN) data.  DHL backend application performs the subsequent data merging process of the Shipment Data and Commercial Invoice data.
     * @summary Upload Commercial Invoice data for your DHL Express shipment
     * @param {SupermodelIoLogisticsExpressUploadInvoiceDataRequest} body Details about the invoice data
     * @param {string} shipmentTrackingNumber DHL Express shipment identification number
     * @param {string} [messageReference] Please provide message reference
     * @param {string} [messageReferenceDate] Optional reference date in the  HTTP-date format https://tools.ietf.org/html/rfc7231#section-7.1.1.2
     * @param {string} [pluginName] Please provide name of the plugin (applicable to 3PV only)
     * @param {string} [pluginVersion] Please provide version of the plugin (applicable to 3PV only)
     * @param {string} [shippingSystemPlatformName] Please provide name of the shipping platform(applicable to 3PV only)
     * @param {string} [shippingSystemPlatformVersion] Please provide version of the shipping platform (applicable to 3PV only)
     * @param {string} [webstorePlatformName] Please provide name of the webstore platform (applicable to 3PV only)
     * @param {string} [webstorePlatformVersion] Please provide version of the webstore platform (applicable to 3PV only)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    expApiShipmentsInvoiceDataAwb(body: SupermodelIoLogisticsExpressUploadInvoiceDataRequest, shipmentTrackingNumber: string, messageReference?: string, messageReferenceDate?: string, pluginName?: string, pluginVersion?: string, shippingSystemPlatformName?: string, shippingSystemPlatformVersion?: string, webstorePlatformName?: string, webstorePlatformVersion?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<void>>;
};
/**
 * ShipmentApi - object-oriented interface
 * @export
 * @class ShipmentApi
 * @extends {BaseAPI}
 */
export declare class ShipmentApi extends BaseAPI {
    /**
     * ## Create Shipment The ShipmentRequest Operation will allow you to generate an AWB number and piece IDs, generate a shipping label, transmit manifest shipment detail to DHL, and optionally book a courier for the pickup of a shipment. The key elements in the response of the Shipment Request will be a base64 encoded PDF label and the Shipment and Piece identification numbers, which you can use for tracking on the DHL web site. While the RateRequest and ShipmentRequest services can be used independently, DHL recommends the use of RateRequest to first validate the products available for the shipper/receiver. The global product codes which are output during the RateResponse can be used directly as input into the Shipment Request, as both perform similar validations in terms of service capability.
     * @summary Create Shipment
     * @param {SupermodelIoLogisticsExpressCreateShipmentRequest} body Details about the shipment to be created
     * @param {string} [messageReference] Please provide message reference
     * @param {string} [messageReferenceDate] Optional reference date in the  HTTP-date format https://tools.ietf.org/html/rfc7231#section-7.1.1.2
     * @param {string} [pluginName] Please provide name of the plugin (applicable to 3PV only)
     * @param {string} [pluginVersion] Please provide version of the plugin (applicable to 3PV only)
     * @param {string} [shippingSystemPlatformName] Please provide name of the shipping platform(applicable to 3PV only)
     * @param {string} [shippingSystemPlatformVersion] Please provide version of the shipping platform (applicable to 3PV only)
     * @param {string} [webstorePlatformName] Please provide name of the webstore platform (applicable to 3PV only)
     * @param {string} [webstorePlatformVersion] Please provide version of the webstore platform (applicable to 3PV only)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof ShipmentApi
     */
    expApiShipments(body: SupermodelIoLogisticsExpressCreateShipmentRequest, messageReference?: string, messageReferenceDate?: string, pluginName?: string, pluginVersion?: string, shippingSystemPlatformName?: string, shippingSystemPlatformVersion?: string, webstorePlatformName?: string, webstorePlatformVersion?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<SupermodelIoLogisticsExpressCreateShipmentResponse>>;
    /**
     * The Get Image service can be used to retrieve customer's own uploaded Commercial Invoice, Waybill Document  or supporting documents that uploaded during shipment creation.
     * @summary Get Image
     * @param {string} shipmentTrackingNumber DHL Express shipment identification number
     * @param {string} shipperAccountNumber DHL Express customer shipper account number
     * @param {string} typeCode Please provide correct document type.
     * @param {string} pickupYearAndMonth Please provide the pickup&#x27;s date in YYYY-MM format
     * @param {string} [encodingFormat] Please provide the document image encoding format in pdf or tiff format
     * @param {boolean} [allInOnePDF] Option to return all the document images in a single PDF file
     * @param {boolean} [compressedPackage] Option to return all the document images in a compressed package
     * @param {string} [messageReference] Please provide message reference
     * @param {string} [messageReferenceDate] Optional reference date in the  HTTP-date format https://tools.ietf.org/html/rfc7231#section-7.1.1.2
     * @param {string} [pluginName] Please provide name of the plugin (applicable to 3PV only)
     * @param {string} [pluginVersion] Please provide version of the plugin (applicable to 3PV only)
     * @param {string} [shippingSystemPlatformName] Please provide name of the shipping platform(applicable to 3PV only)
     * @param {string} [shippingSystemPlatformVersion] Please provide version of the shipping platform (applicable to 3PV only)
     * @param {string} [webstorePlatformName] Please provide name of the webstore platform (applicable to 3PV only)
     * @param {string} [webstorePlatformVersion] Please provide version of the webstore platform (applicable to 3PV only)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof ShipmentApi
     */
    expApiShipmentsDocumentimage(shipmentTrackingNumber: string, shipperAccountNumber: string, typeCode: string, pickupYearAndMonth: string, encodingFormat?: string, allInOnePDF?: boolean, compressedPackage?: boolean, messageReference?: string, messageReferenceDate?: string, pluginName?: string, pluginVersion?: string, shippingSystemPlatformName?: string, shippingSystemPlatformVersion?: string, webstorePlatformName?: string, webstorePlatformVersion?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<SupermodelIoLogisticsExpressDocumentImageResponse>>;
    /**
     * The electronic proof of delivery service can be used to retrieve proof of delivery for certain delivered DHL Express shipments
     * @summary Electronic Proof of Delivery
     * @param {string} shipmentTrackingNumber DHL Express shipment identification number
     * @param {string} [shipperAccountNumber] DHL Express customer shipper account number
     * @param {string} [content]
     * @param {string} [messageReference] Please provide message reference
     * @param {string} [messageReferenceDate] Optional reference date in the  HTTP-date format https://tools.ietf.org/html/rfc7231#section-7.1.1.2
     * @param {string} [pluginName] Please provide name of the plugin (applicable to 3PV only)
     * @param {string} [pluginVersion] Please provide version of the plugin (applicable to 3PV only)
     * @param {string} [shippingSystemPlatformName] Please provide name of the shipping platform(applicable to 3PV only)
     * @param {string} [shippingSystemPlatformVersion] Please provide version of the shipping platform (applicable to 3PV only)
     * @param {string} [webstorePlatformName] Please provide name of the webstore platform (applicable to 3PV only)
     * @param {string} [webstorePlatformVersion] Please provide version of the webstore platform (applicable to 3PV only)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof ShipmentApi
     */
    expApiShipmentsEpod(shipmentTrackingNumber: string, shipperAccountNumber?: string, content?: string, messageReference?: string, messageReferenceDate?: string, pluginName?: string, pluginVersion?: string, shippingSystemPlatformName?: string, shippingSystemPlatformVersion?: string, webstorePlatformName?: string, webstorePlatformVersion?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<SupermodelIoLogisticsExpressEPODResponse>>;
    /**
     * The update shipment service can be used to upload updated customs documentation for your DHL Express shipment that has not been picked up yet.
     * @summary Upload updated customs documentation for your DHL Express shipment
     * @param {SupermodelIoLogisticsExpressImageUploadRequest} body Details about the shipment images
     * @param {string} shipmentTrackingNumber DHL Express shipment identification number
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof ShipmentApi
     */
    expApiShipmentsImgUpload(body: SupermodelIoLogisticsExpressImageUploadRequest, shipmentTrackingNumber: string, options?: AxiosRequestConfig): Promise<AxiosResponse<void>>;
    /**
     * ## Upload Invoice Data with Shipment ID The upload invoice data service can be used to upload Commerical Invoice data with Shipment Identification Number for your DHL Express shipment.Customer can provide Commercial Invoice data before Shipment Data via Create Shipment flow or vice versa.  Important Note: UploadInvoiceData service is not enabled by default and must be requested per customer. Use of this service is only enabled on exceptional basis and DHL Express recommends to submit shipment requests together with a commercial invoice data.To enable use of UploadInvoiceData service, please contact your DHL Express IT representative. To use UploadInvoiceData service, it is required that \"PM\" service code is provided in MyDHL API Create Shipment request. \"PM\" service code is not enabled by  default for the customers, and needs to be enabled upon request.  When Shipment is created via MyDHL API Create Shipment service before uploading the Commercial Invoice (CIN) data,it is mandatory to provide the Shipment Identification Number as received in MyDHL API Create Shipment service Response. When Commercial Invoice (CIN) data is uploaded prior to creating a shipment via MyDHL API Create Shipment service, it is mandatory to provide Invoice Reference Number with Invoice Reference Type value \"CU\" and Shipper Account Number.   These elements are mandatory to facilitate an effective data merge of the Commercial Invoice (CIN) data with Shipment Data. As an output customer will receive Notification element value '0' on successful upload of Commercial Invoice (CIN) data.  DHL backend application performs the subsequent data merging process of the Shipment Data and Commercial Invoice data.
     * @summary Upload Commercial Invoice data for your DHL Express shipment
     * @param {SupermodelIoLogisticsExpressUploadInvoiceDataRequest} body Details about the invoice data
     * @param {string} shipmentTrackingNumber DHL Express shipment identification number
     * @param {string} [messageReference] Please provide message reference
     * @param {string} [messageReferenceDate] Optional reference date in the  HTTP-date format https://tools.ietf.org/html/rfc7231#section-7.1.1.2
     * @param {string} [pluginName] Please provide name of the plugin (applicable to 3PV only)
     * @param {string} [pluginVersion] Please provide version of the plugin (applicable to 3PV only)
     * @param {string} [shippingSystemPlatformName] Please provide name of the shipping platform(applicable to 3PV only)
     * @param {string} [shippingSystemPlatformVersion] Please provide version of the shipping platform (applicable to 3PV only)
     * @param {string} [webstorePlatformName] Please provide name of the webstore platform (applicable to 3PV only)
     * @param {string} [webstorePlatformVersion] Please provide version of the webstore platform (applicable to 3PV only)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof ShipmentApi
     */
    expApiShipmentsInvoiceDataAwb(body: SupermodelIoLogisticsExpressUploadInvoiceDataRequest, shipmentTrackingNumber: string, messageReference?: string, messageReferenceDate?: string, pluginName?: string, pluginVersion?: string, shippingSystemPlatformName?: string, shippingSystemPlatformVersion?: string, webstorePlatformName?: string, webstorePlatformVersion?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<void>>;
}
