///
import { CheckPaymentOrderClassesType } from '../CheckPaymentOrder/types';
import { ItemPerPageClasses } from '../ItemPerPage/types';
import { PaginationClassName } from '../Pagination/type';
import { ShippingDataClasses } from './components/ShippingMethodData';
import { PopupOrderConfirmationClassesType } from './components/PopupOrderConfirmation';
import { OrderStatusClassesType } from '../Common/helpers/getStatusPayment';
export declare const ValidImageTypes: string[];
export declare type OrderHistoryType = {
ID: string;
createdAt: string;
lineItems: LineItemType[];
buyerNote: string;
deliveryAddress: DeliveryAddressType;
billingAddress: DeliveryAddressType;
shipping: ShippingType;
payment: PaymentType;
totalCost: MoneyType;
discount: MoneyType;
convertedPoint: number;
paymentRecords: PaymentRecordsType[];
status: OrderStatusType;
};
export declare const TAB_ACCOUNT = "account";
export declare const TAB_ORDER_HISTORY = "orderHistory";
export declare const TAB_CHANGE_PASSWORD = "changePassword";
export declare const TAB_MEMBERSHIP_HISTORY = "membershipHistory";
export declare const TAB_SETTING_NOTIFICATION = "settingNotification";
export declare type defaultTabType = typeof TAB_ACCOUNT | typeof TAB_ORDER_HISTORY | typeof TAB_CHANGE_PASSWORD | typeof TAB_MEMBERSHIP_HISTORY | typeof TAB_SETTING_NOTIFICATION;
export declare const ORDER_UNPAID = "UNPAID";
export declare const ORDER_PAID = "PAID";
export declare const ORDER_CONFIRMING = "CONFIRMING";
export declare const ORDER_ACCEPTED = "ACCEPTED";
export declare const ORDER_CANCELLED = "CANCELLED";
export declare const ORDER_COMPLETED = "COMPLETED";
export declare const ORDER_CREATED = "CREATED";
export declare const ORDER_READY_TO_SHIP = "READY_TO_SHIP";
export declare const ORDER_RETURNED = "RETURNED";
export declare const ORDER_SHIPPED = "SHIPPED";
export declare const ORDER_DELIVERED = "DELIVERED";
export declare type OrderStatusType = typeof ORDER_ACCEPTED | typeof ORDER_CANCELLED | typeof ORDER_COMPLETED | typeof ORDER_CREATED | typeof ORDER_READY_TO_SHIP | typeof ORDER_RETURNED | typeof ORDER_SHIPPED | typeof ORDER_DELIVERED;
export declare type ShippingType = {
provider: string;
AWBNumber: string;
cost: {
code: string;
value: number;
};
service: string;
};
export declare type PaymentType = {
provider: string;
service: string;
fee?: {
code: string;
value: number;
};
uniqueCode?: number;
};
export declare type DeliveryAddressType = {
name: string;
phone: string;
email: string;
street: string;
formattedLocation: string;
postalCode: string;
};
export declare type UserBasicInfoType = {
firstName: string;
lastName: string;
dateOfBirth: number;
gender: string;
phone: string;
email: string;
};
export declare type UserProfileType = UserBasicInfoType & AddressType;
export declare type AddressType = {
street: string;
districtCode: string;
postalCode: string;
location: string;
latitude: string;
longitude: string;
};
export declare enum ReviewStatusEnum {
DRAFT = "DRAFT",
PENDING = "PENDING",
APPROVED = "APPROVED",
REJECTED = "REJECTED"
}
export declare type LineItemType = {
title: string;
SKU: string;
quantity: number;
price: MoneyType;
imageURL: string;
reviewStatus: ReviewStatusEnum;
};
export declare type MoneyType = {
code: string;
value: number;
};
export declare type PaymentRecordsType = {
status: string;
method: string;
};
export declare type UpdateUserProfileInputType = {
accountID: string;
userProfile: {
basicInfo: UserBasicInfoType;
addresses: Array & {
latitude: string;
longitude: string;
isPrimary: boolean;
addressLabel: string;
contactName: string;
}>;
};
};
export declare type AccountClassesType = {
buttonClassName?: string;
changePasswordClassName?: string;
containerClassName?: string;
editAccountClassName?: string;
inputClassName?: string;
inputContainerClassName?: string;
inputDistrictClassName?: string;
inputLabelClassName?: string;
linkTabItemActiveClassName?: string;
linkTabItemClassName?: string;
myAccountBodyClassName?: string;
myAccountClassName?: string;
myAccountContentClassName?: string;
myAccountFieldClassName?: string;
myAccountLabelClassName?: string;
myAccountSeparatorClassName?: string;
myAccountValueClassName?: string;
tabClassName?: string;
tabContentClassName?: string;
tabItemClassName?: string;
tabItemIconClassName?: string;
tabPaneClassName?: string;
shipmentHeaderClassName?: string;
shipmentBodyClassName?: string;
shipmentFooterClassName?: string;
shipmentTrackingClassName?: string;
shipmentHeaderTextClassName?: string;
shipmentTextClassName?: string;
shipmentStatusClassName?: string;
shipmentNoteClassName?: string;
shipmentDateClassName?: string;
shipmentListClassName?: string;
shipmentListWrapperClassName?: string;
shipmentCloseIconClassName?: string;
shippingTrackerButton?: string;
shippingMethodLabelClassName?: string;
shipmentTrackButtonClassName?: string;
datePickerInputClassName?: string;
datePickerCalendarClassName?: string;
};
export declare type MembershipStatusClassesType = {
membershipStatusClassName?: string;
accordionClassName?: string;
accordionToggleClassName?: string;
accordionIconClassName?: string;
totalPointsClassName?: string;
membershipProgressClassName?: string;
membershipPromptClassName?: string;
};
export declare type MembershipStatusPropsType = {
classes?: MembershipStatusClassesType;
accordionIcon?: React.ReactNode;
loadingComponent?: React.ReactNode;
};
export declare type MembershipHistoryClassesType = {
buttonContinueClassName?: string;
linkContinueClassName?: string;
pointHistoryItemClassName?: string;
orderIDClassName?: string;
transactionTypeClassName?: string;
transactionDateClassName?: string;
pointDeltaClassName?: string;
membershipPaginationClassName?: string;
membershipHistoryClassName?: string;
};
export declare type MembershipHistoryPropsType = {
classes?: Partial;
itemPerPageOptions?: number[];
paginationNextLabel?: React.ReactNode;
paginationPrevLabel?: React.ReactNode;
loadingComponent?: React.ReactNode;
errorComponent?: React.ReactNode;
membershipPaginationClasses?: PaginationClassName;
continueShoppingRoute?: string;
emptyStateComponent?: React.ReactNode;
withShoppingButton?: boolean;
};
export declare type NotificationMediaType = {
label: string;
value: string;
icon: React.ReactNode;
isActive: boolean;
disabled: boolean;
details: Array;
};
export declare type NotificationMediaDetailType = {
label: string;
value: string;
isActive: boolean;
disabled: boolean;
};
export declare type SettingNotificationClassesType = {
settingNotifContainer?: string;
settingNotifHeader?: string;
settingNotifIcon?: string;
settingNotifTitle?: string;
settingNotifDescription?: string;
settingNotifMediaContainer?: string;
settingNotifMedia?: string;
settingNotifMediaDisabled?: string;
mediaParent?: string;
mediaLabelContainer?: string;
mediaInnerLabelContainer?: string;
mediaLabel?: string;
mediaDescription?: string;
mediaCheckboxContainer?: string;
mediaCheckbox?: string;
mediaCheckboxSlider?: string;
mediaDetailContainer?: string;
mediaDetailLabel?: string;
mediaDetailCheckboxContainer?: string;
mediaDetailCheckbox?: string;
mediaDetailCheckboxLabel?: string;
};
export declare type OrderInfoClassesType = {
orderInfoContainerClassName?: string;
orderInfoLabelClassName?: string;
OrderInfoSearchHereClassName?: string;
OrderInfoIconClassName?: string;
} & CheckPaymentOrderClassesType;
export declare type MemberInfoType = {
name: string;
email: string;
};
export declare type TableItemDetailClassesType = {
tableDetailTitleClassName?: string;
tableDetailLabelNeedReviewClassName?: string;
tableDetailLabelReviewedClassName?: string;
tableDetailButtonDeliveredClassName?: string;
tableDetailButtonNeedReviewClassName?: string;
tableDetailButtonDetailClasName?: string;
tableDetailUploadReceiptClassName?: string;
tableDetailViewInvoiceClassName?: string;
tableDetailContainerClassName?: string;
tableDetailInfoSectionClassName?: string;
tableDetailInfoItemClassName?: string;
tableDetailItemSectionClassName?: string;
tableDetailItemLineClassName?: string;
tableDetailItemImageClassName?: string;
tableDetailItemDescClassName?: string;
tableDetailItemPriceClassName?: string;
tableDetailPriceSectionClassName?: string;
tableDetailPriceLineClassName?: string;
tableDetailPriceTitleClassName?: string;
tableDetailPriceClassName?: string;
} & OrderStatusClassesType;
export declare type OrderHistoryTableClassesType = {
orderHistoryContainerClassName?: string;
tableClassName?: string;
} & Partial;