import type { CountryCode } from './country'; import type { currencyCode } from './currency'; export interface Order { id?: string; amount: number; currency: currencyCode; customer: { id?: string; first_name?: string; middle_name?: string; last_name?: string; phone?: { country_code: CountryCode; number: string; }; email?: string; }; items: OrderItem[]; tax?: Tax[]; shipping?: Shipping; merchant: { id?: string; }; reference?: { order?: string; }; } export interface OrderItem { quantity: number; amount: number; currency: currencyCode; name: string; requiresShipping: string; description?: string; productID?: string; fulfillmentService?: string; category?: ItemCategory; accountCode?: string; vendor?: string; discount?: Additions[]; taxes?: Additions[]; image?: string; } export interface Tax { name: string; description: string; rate: Additions; } export interface Shipping { amount: number; currency: currencyCode; description: string; provider: string; service: string; } export interface Additions { type: AdditionType; value: number; minimum_fee?: number; maximum_fee?: number; } export declare enum ItemCategory { PHYSICAL_GOODS = "PHYSICAL_GOODS", DIGITAL_GOODS = "DIGITAL_GOODS" } export declare enum AdditionType { FIXED = "F", PERCENTAGE = "P" }