import { BaseRequest } from "./requests/base.request.js"; import { MapRequest } from "./requests/map.request.js"; import { CreateOrderRequest } from "./requests/create-order.request.js"; import { QueryOrderRequest } from "./requests/query-order.request.js"; import { PrintOrderRequest } from "./requests/print-order.request.js"; import { BaseResponse, BaseResponseData } from "./responses/base.response.js"; import { HttpClient } from "./transport.js"; import { Environment } from "./constants.js"; /** * NewebPay Logistics SDK 客戶端。 * * 此類別提供與 NewebPay Logistics API 互動的方法。 */ export declare class NewebPayLogistics { private merchantId; private hashKey; private hashIV; private httpClient; private environment; /** * 建立 NewebPayLogistics 實例。 * * @param merchantId - NewebPay 提供的 Merchant ID。 * @param hashKey - NewebPay 提供的 Hash Key。 * @param hashIV - NewebPay 提供的 Hash IV。 * @param httpClient - 可選的自訂 HttpClient 實作。預設為 FetchHttpClient。 * @param environment - API 環境(測試或正式)。預設為測試環境。 */ constructor(merchantId: string, hashKey: string, hashIV: string, httpClient?: HttpClient, environment?: Environment); /** * 建立 MapRequest 實例。 * * @returns 新的 MapRequest 實例。 */ map(): MapRequest; /** * 建立 CreateOrderRequest 實例。 * * @returns 新的 CreateOrderRequest 實例。 */ createOrder(): CreateOrderRequest; /** * 建立 QueryOrderRequest 實例。 * * @returns 新的 QueryOrderRequest 實例。 */ queryOrder(): QueryOrderRequest; /** * 建立 PrintOrderRequest 實例。 * * @returns 新的 PrintOrderRequest 實例。 */ printOrder(): PrintOrderRequest; /** * 發送請求到 NewebPay Logistics API。 * * @param request - 要發送的請求物件。 * @returns 解析為回應物件的 Promise。 * @throws {NetworkError} 當網路請求失敗時。 * @throws {ApiError} 當 API 回傳非成功的 HTTP 狀態時。 */ send(request: BaseRequest): Promise>; }