export interface OrderSectionItemOption {
    optionName?: string;
    optionValue?: string;
}
export interface OrderSectionItem {
    orderSectionItemCode: string;
    orderSectionCode: string;
    orderItemCode: string;
    qty: number;
    itemCouponDiscount: number;
    itemPointAmount: number;
    isRestock: string;
    shippingPlaceCode?: string;
    prodOptionDetailCode: string;
    prodCode: string;
    prodName: string;
    weight: number;
    baseItemPrice: number;
    itemPrice: number;
    givePoint: number;
    isRequireOption: string;
    prodSkuNo?: string;
    optionSkuNo?: string;
    optionInfo?: OrderSectionItemOption[];
    imageUrl?: string;
}
export interface OrderDelivery {
    orderDeliveryCode: string;
    receiverName: string;
    receiverCall: string;
    zipcode: string;
    addr1: string;
    addr2?: string;
    city?: string;
    state?: string;
    country?: string;
    countryName?: string;
    memo: string | null;
}
export interface Invoice {
    invoiceCode: string;
    invoiceNo: string;
    parcelCompanyIdx: number;
    trackingUrl?: string;
    deliveryStatusCd: 'IDS01' | 'IDS02' | 'IDS03';
}
export interface ReturnInfoData {
    isCustomerRequest: boolean;
    reasonCd?: string;
    reason: string;
    orderDeliveryCode: string | null;
    invoice: Invoice | null;
    retrieveTypeCd: 'RRT01' | 'RRT02' | 'RRT03';
    isExchange: 'Y' | 'N';
    isRefund: 'Y' | 'N';
    retrieveMemo?: string;
}
export interface CancelInfoData {
    reasonCd?: string;
    reason: string;
    isCustomerRequest: boolean;
    isRefund: 'Y' | 'N';
}
export interface OrderSectionInfo {
    orderSectionCode: string;
    orderSectionNo: string;
    orderCode: string;
    statusCd: 'OSS01' | 'OSS02' | 'OSS03' | 'OSS04' | 'OSS05' | 'OSS06' | 'OSS07' | 'OSS08' | 'OSS12';
    isDeliveryHold: 'Y' | 'N';
    deliveryPrice: number;
    deliveryIslandPrice: number;
    deliveryCouponDiscount: number;
    deliveryPointAmount: number;
    deliveryExtraPrice: number;
    deliveryTypeCd: 'ODT01' | 'ODT02' | 'ODT03' | 'ODT04' | 'ODT05' | 'ODT06' | 'ODT07' | 'ODT08';
    deliveryPayTypeCd: 'ODP01' | 'ODP02' | 'ODP03';
    orderDeliveryCode?: string | null;
    invoiceCode?: string;
    deliverySendTime?: string;
    deliveryCompleteTime?: string;
    isDel: string;
    wtime?: string;
    mtime: string;
    orderSectionItemList?: OrderSectionItem[];
    invoice?: Invoice | null;
    pickupMemo?: string;
    returnInfo?: ReturnInfoData;
    cancelInfo?: CancelInfoData;
}
export interface OrderMemo {
    memo?: string;
    wtime: string;
    mtime: string;
}
export interface SectionInfoByStatus {
    [status: string]: OrderSectionInfo[];
}
export interface OrderDetailItemWithSectionCode {
    [sectionCode: string]: OrderSectionInfo;
}
export interface EditPurchaserData {
    ordererEmail: string;
    ordererCall: string;
    ordererName: string;
}
export interface PurchaserDataType {
    ordererEmail: string;
    ordererCall: string;
    ordererName: string;
}
export interface ReceiverDataType {
    orderDeliveryCode: string | null;
    receiverName: string | null;
    receiverCall: string | null;
    zipcode: string | null;
    addr1: string | null;
    addr2?: string | null;
    city?: string | null;
    state?: string | null;
    country?: string | null;
    countryName?: string | null;
    memo?: string | null;
}
export interface DeliveryDelayReason {
    reasonCd: string | null;
    reasonDetail: string | null;
    shippingDeadline: Date | null;
}
export type SectionType = 'OSS01' | 'OSS02' | 'OSS03' | 'OSS04' | 'OSS05' | 'OSS06' | 'OSS07' | 'OSS08' | 'OSS12';
