export default class Merchant { merchant: undefined; } declare global { export interface IMerchant { id: string; shortCode: string; name: string; desc: string; contact: string; address: string; tables: string[]; tableGroups: { [group: string]: string[]; }; openings: { [weekdayFrom0: number]: [[number, number]]; }; openingsWithSurcharge: { [weekdayFrom0: number]: IOpeningWithSurcharge[]; }; payments: IMerchantPayment[]; extraPayments: IMerchantExtraPayment[]; surcharge: IOrderDiscount; rounding: IOrderRounding; clientLocales: string[]; batchLocale: string; images: { [imageType: string]: string; }; takeawayDisabled: boolean; disabled: boolean; setting: IMerchantSetting; shippings: IShipping[]; } export interface IMerchantSetting { staff: boolean; waiter: boolean; qrcode: boolean; autoPrintReceipt: boolean; code: boolean; litePrinting: boolean; qrCustomText: string; qrDisableCustomerCount: boolean; recommendCustomText: string; defaultClientLanguage: string; orderCutOffMins: number; takeawayPickupAfterMins: number; takeawayMaxPickupMins: number; notRequiredAtBottom: boolean; skipCreditCardVerification: boolean; enableDelivery: boolean; takeawayCashPayment: boolean; takeawayCreditCardPayment: boolean; takeawayAddress: boolean; remark: string; autoConfirm: boolean; takeawayAutoConfirm: boolean; batchLocaleOptions: string[]; showOrderCreateAt: boolean; inventory: boolean; hideTimeInReport: boolean; showPickupTimeInKitchenReceipt: boolean; shop: boolean; storeDelivery: boolean; printSerialOnReceiptTextStyle: number; printSerialOnReceipt: boolean; printPayQrOnReceipt: boolean; disableHandUp: boolean; enableCategoryTag: boolean; footerCustomText: string; notifyPlayCount: number; takeawayNotifyPlayCount: number; storeDeliveryNotifyPlayCount: number; noTimeLimitForWaiterOrder: boolean; minCharge: number; minChargeBeforeDiscount: boolean; defaultUseOrderCreateTime: boolean; loginSessionTimeout: number; memberDiscountOrderQuantity: number; memberDiscountMinOrderValue: number; memberDiscountAmount: number; printWithNoOptions: boolean; tableListLimit: number; largerSerialInReceipt: boolean; largerLineSpacingInKitchenReceipt: boolean; directoryBroadcastMessage: string; directoryDeliveryTimeText: string; directoryTakeawayTimeText: string; directoryTags: string; directoryOpeningTimeText: string; directoryBackgroundImage: string; whatsappLink: string; lineLink: string; wechatLink: string; instagramLink: string; facebookLink: string; mapLink: string; managerPhone: string; setMenuHideFreeItem: boolean; customDirectoryTakeawayLink: string; customDirectorySdeliveryLink: string; customDirectoryShopLink: string; kitchenReceiptOptionSeparator: string; kitchenReceiptSetMenuHideLabel: boolean; lalamove: boolean; sdeliveryAutoPrintKitchenReceipt: boolean; kitchenReceiptGroupOptionSet: boolean; receiptHideFreeItem: boolean; printCustomerCountOnKitchenReceipt: boolean; printCustomerCountOnReceipt: boolean; mutedPrinter: boolean; location: [number, number]; } export interface IShipping { key: string; name: string; cost: number; totalFee: number; customerAmount: number; minAmount: number; type: TDeliveryType; minDeliveryMinute: number; maxDeliveryMinute: number; enabled: boolean; discounts: IShippingDiscount[]; freightCollect: boolean; areas: IShippingArea[]; lalamove: IShippingLalamoveOrder; } export interface IPayment { paymentMethod: string; gateway: string; payload: {}; } export interface IShippingDiscount { amount: number; minOrderAmount: number; } export interface IShippingArea { district: string; isDefault: boolean; price: number; providers: string[]; payByMerchant: boolean; } export interface IShippingLalamoveOrder { amount: number; currency: string; driverId: string; driverName: string; driverPlateNumber: string; driverPhone: string; driverPhoto: string; status: string; scheduleAt: string; startLat: string; startLng: string; startAddress: string; startContactName: string; startContactPhone: string; endLat: string; endLng: string; endAddress: string; endBuilding: string; endFloorRoom: string; endContactName: string; endContactPhone: string; } export interface IOpeningWithSurcharge { start: number; startMin: number; end: number; endMin: number; orderBeforeMin: number; takeaway: boolean; storeDelivery: boolean; surcharge: IOrderDiscount; } export interface IMerchantPayment { key: string; name: string; serviceCharge: IPaymentServiceCharge; tips: boolean; } export interface IPaymentServiceCharge { percent: number; amount: number; } export interface IMerchantExtraPayment { key: string; name: string; amount: boolean; } export interface IMerchantUpdateInfoRequest { name: string; desc: string; contact: string; address: string; } export interface IMerchantUpdateSurchargeRequest { percent: number; amount: number; } export interface IMerchantOpeningSetting { start: number; startMin: number; end: number; endMin: number; twentyFourHours: null | boolean; orderBeforeMin: number; surcharge: null | number; takeaway: boolean; storeDelivery: boolean; } export interface IMerchantSetPaymentRequest { key: TPaymentMethod | string; name: string; percent: number; amount: number; extra: false; tips: boolean; remove: boolean; } export interface IMerchantUiVersion { client: string; version: string; } } //# sourceMappingURL=Merchant.d.ts.map