import { Arrivals, CheckoutTender, CustomerEndpoints, CustomerIdentifier, CustomerIdentify, Discount, Discounts, ItemTypes, Menu, Order, Orders, OrderCreatePos, OrderTender, OrderUpdate, OrderType, RequestedAt, RevenueCenter, SelectOptions, ServiceType, TicketUpdate, TicketsUpdate, TicketStatusUpdate, EntityType, KioskConfig, Store, Settings, InternalSettings, GiftCardCredit, GiftCardBalance, Employee, Punch, Employees, CashEvent, CashSummary, ErrorAlerts, ErrorAlert, OfflineAuths, OfflineAuthsResult, MenuColors, MenuPages, Surcharges, Taxes, CheckoutTenderPos, Refund, DeviceRead, OrderCreateSendReceipt, Tags, Allergens } from '@open-tender/types'; import { OrdersParams } from '../slices'; export interface InitAPI { apiUrl: string; posTerminalId?: number; kdsTerminalId?: number; } declare class PosAPI { apiUrl: string; posTerminalId?: number; kdsTerminalId?: number; constructor(init: InitAPI); request: (endpoint: string, method?: string, data?: any) => Promise; post(endpoint: string, data: Record): Promise>; getKioskConfig(): Promise; getStore(): Promise; getSelectOptions(): Promise; getItemTypes(): Promise; getCardRead(): Promise; postCardCancel(): Promise; getBarcodeRead(): Promise; postBarcodeCancel(): Promise; getSettings(posSettingType: EntityType): Promise; postSettings(posSettingType?: EntityType): Promise; getInternalSettings(): Promise; postInternalSettings(data: InternalSettings): Promise; postGiftCardCredit(data: GiftCardCredit, checkOnly?: boolean): Promise; getGiftCardBalance(code: string | null, cardNumber?: string): Promise; getEmployee(identifier: string | number): Promise; getCashier(): Promise; postCardAssign(employeeId: number, code: string): Promise; postCardUnassign(code: string): Promise; postTimePunch(data: Punch): Promise; getTimePunchesReport(businessDate?: string, employeeId?: number): Promise; postPrintShiftSummary(employeeId: number): Promise; postCashEvent(data: CashEvent): Promise; getCashSummary(employeeId: number): Promise; postPrintCashSummary(employeeId: number): Promise; getAlerts(): Promise; getAlert(alertId: number): Promise; putAlert(alertId: number, data: ErrorAlert): Promise; deleteAlert(alertId: number): Promise; getOfflineAuths(): Promise; postOfflineAuths(): Promise; getMenu(revenueCenterId: number, serviceType: ServiceType, requestedAt: RequestedAt): Promise; getMenuColors(): Promise; getMenuPages(): Promise; getDeals(): Promise; getSurcharges(serviceType: ServiceType): Promise; getDiscounts(serviceType: ServiceType, orderType: OrderType): Promise; getDiscount(name: string): Promise; getDiscountViaQRCode(code: string): Promise; getTaxes(serviceType: ServiceType, orderType: OrderType): Promise; getRevenueCenter(revenueCenterId: number): Promise; postOpenCashDrawer(): Promise; postTender(orderId: string, data: CheckoutTenderPos): Promise; patchTender(orderId: string, index: number, data: CheckoutTenderPos): Promise; postTenderVoid(orderId: string, index: number): Promise; postCreditTender(orderId: string, data: CheckoutTenderPos): Promise; postChipDNATender(orderId: string, data: CheckoutTender): Promise; postChipDNACancel(): Promise; postChipDNATmsUpdate(): Promise; postIdentifyCustomer(data: CustomerIdentifier): Promise; postSendReceipt(orderUuid: string, data: OrderCreateSendReceipt): Promise; getCustomer(customerId: number, endpoints: CustomerEndpoints): Promise; postOrderValidate(order: OrderCreatePos): Promise; postOrder(order: OrderCreatePos): Promise; deleteOrder(order: OrderCreatePos): Promise; getOrders(args: OrdersParams): Promise; patchOrder(orderId: string, data: OrderUpdate): Promise; postReceipt(orderId: string): Promise; putTicketsStatus(orderId: string, data: TicketsUpdate): Promise; postTicketsPrint(orderId: string, data?: TicketsUpdate): Promise; postTicketsReset(orderId: string): Promise; putTicketStatus(orderId: string, ticketNo: number, data?: TicketUpdate): Promise; postTicketPrint(orderId: string, ticketNo: number, data?: TicketUpdate): Promise; postTicketStatus(orderId: string, ticketNo: number, status: TicketStatusUpdate): Promise; getArrivals(): Promise; postAcknowledgeArrival(orderId: string): Promise; postRefundValidate(orderId: string, refund: Refund): Promise; postRefund(orderId: string, refund: Refund): Promise; getTags(): Promise; getAllergens(): Promise; testPrint(): Promise; rateOrder(orderId: string, data: any): Promise; fetchPaymentConfigs(): Promise<{ integration: string; is_testing: false; merchant_api_key: string; merchant_id: string; merchant_password: string; merchant_username: string; offline_limit: string; saved_cards: boolean; signature_threshold: string | null; freedompay_store_id: string; card_stor_service_url: string; client_selling_system: string; client_selling_system_version: string; freedompay_terminal_id: string; }>; } export default PosAPI;