import { Order, GetRestaurantSlotActiveBillsDto, GetRestaurantSlotBillEffectDto, QuoteOption } from '~backend/order/order.model'; import { OrderService } from '~backend/order/order.service'; import { Request } from 'express'; import { RestaurantService } from '~backend/business/restaurant/restaurant.service'; import { Bill } from '~core/modules/order/definitions'; import { ModuleRef } from '@nestjs/core'; import { VoucherService } from '~backend/marketing/voucher/voucher.service'; import { CreateOrderOption, QueueCalculatePayload } from '~backend/order/order.interface'; import { Effect } from '~backend/marketing/marketing.model'; import { MembershipService } from '~backend/marketing/membership/membership.service'; import { DeliveryQuote } from '~backend/order/delivery/delivery.interface'; import { ConfigService } from '@nestjs/config'; import { CouchdbStaticService } from '~backend/couchdb/couchdb-static/couchdb-static.service'; import { UserService } from '~backend/user/user.service'; export declare class OrderController { private readonly orderService; private readonly restaurantService; private readonly voucherService; private readonly membershipService; private readonly userService; private readonly configService; private readonly couchdbStaticService; private readonly moduleRef; constructor(orderService: OrderService, restaurantService: RestaurantService, voucherService: VoucherService, membershipService: MembershipService, userService: UserService, configService: ConfigService, couchdbStaticService: CouchdbStaticService, moduleRef: ModuleRef); private getSlotActiveBills; private getEffectClaims; private getMember; private getBenefits; private getCouchdbConnection; private getRestaurantSetting; private getDynamicQrSession; private getPromotions; private orderToBill; getActiveOrders(req: Request): Promise; getActiveOrder(orderId: string): Promise; private getLastBillClosedAt; getSlotActiveOrderBills({ restaurantId, slot }: GetRestaurantSlotActiveBillsDto): Promise<{ order?: Order; bill: Bill; }[]>; /** @deprecated */ getSlotOrdersDeprecated(slot: string): Promise; private getOrderTypeCondition; private getOrderStatusCondition; private getTimestampCondition; paginate(req: Request, start?: string, end?: string, type?: string | string[], status?: string | string[], limit?: string, skip?: string): Promise; create(option: CreateOrderOption): Promise; validateBillEffect({ restaurantId, slot }: GetRestaurantSlotBillEffectDto): Promise; calculate(option: CreateOrderOption): Promise; calcualteQueue(queue: QueueCalculatePayload): Promise; getDeliveryTypes(body: QuoteOption): Promise; }