import { TiktokShopApp } from "../interfaces"; import TiktokNewEraService from "./tiktok-new-era.service"; export default class TiktokLogisticService extends TiktokNewEraService { private readonly TIKTOK_LOGISTIC_PREFIX; private readonly ACCEPTED_PROVIDERS; constructor({ app }: { app: TiktokShopApp; }); buildRequestUrl(suffix: string, version?: string): string; getWarehouseList(): Promise>; getWarehouseDeliveryOpions(warehouseIds: string[]): Promise; getShippingProviders(): Promise; } /** * Interfaces definition */ export interface TiktokWarehouseListResponse { warehouses: TiktokWarehouse[]; } export interface TiktokWarehouse { id: string; name: string; effect_status: string; type: string; sub_type: string; is_default: boolean; address: { region: string; state: string; city: string; distict: string; town: string; contact_person: string; first_name: string; last_name: string; first_name_local_script: string; last_name_local_script: string; postal_code: string; full_address: string; region_code: string; phone_number: string; address_line1: string; address_line2: string; address_line3: string; address_line4: string; geolocation: { latitude: string; longitude: string; }; }; } export interface TiktokWarehouseDeliveryOptionsResponse { delivery_options: TiktokWarehouseDeliveryOption[]; } export interface TiktokWarehouseDeliveryOption { id: string; name: string; type: string; description: string; dimension_limit: { max_height: number; max_length: number; max_width: number; unit: string; }; weight_limit: { max_weight: number; min_weight: number; unit: string; }; platform: string[]; } export interface TiktokShippingProvidersResponse { shipping_providers: TiktokShippingProvider[]; } export interface TiktokShippingProvider { id: string; name: string; }