import { DeliveryTaskStatus } from '../enums/delivery-task-status'; export { DeliveryTaskStatus } from '../enums/delivery-task-status'; /** 外送收件方,也就是消費者。 */ export interface DeliveryRecipient { name: string; phone: string; /** 完整地址字串,不拆分 city / district。 */ address: string; /** 使用字串保留郵遞區號前導零。 */ zipCode?: string; /** 固定格式為 [longitude, latitude]。 */ lonLat: [number, number]; /** 收件人或配送指示。 */ note?: string; } /** 第三方原始資料的受控欄位,不得放入完整 provider payload。 */ export interface DeliveryTaskProviderData { /** 第三方原始狀態碼,例如 METE ST01。 */ statusCode?: string; /** 第三方原始狀態文字。 */ statusMessage?: string; /** 第三方服務內的平台代碼,例如 METE MT / LM。 */ deliveryPlatform?: string; } export declare enum DeliveryProvider { METE = "METE" } /** POS/backend 使用的標準化第三方配送任務資料。 */ export interface DeliveryTask { provider: DeliveryProvider; /** 我們給第三方的訂單 ID;目前 METE 使用 POS orderNo。 */ clientOrderId: string; /** 店家、司機與前端用來顯示及核對的配送編號。 */ deliveryReferenceOrderId: string; /** 第三方平台自己的配送單號。 */ providerOrderId?: string; normalizedStatus?: DeliveryTaskStatus; statusAt?: number; fee?: number; distance?: number; trackUrl?: string; courier?: DeliveryTaskCourier; providerData?: DeliveryTaskProviderData; } export interface DeliveryTaskCourier { name?: string; phone?: string; }