import { AxiosRequestConfig } from 'axios'; import type { ToastConfig, PaginationParams, PaginatedResponse } from './types/index.js'; export declare class ToastAPIError extends Error { statusCode?: number | undefined; response?: any | undefined; constructor(message: string, statusCode?: number | undefined, response?: any | undefined); } export declare class ToastAPIClient { private client; private config; constructor(config: ToastConfig); get(endpoint: string, params?: Record, config?: AxiosRequestConfig): Promise; post(endpoint: string, data?: any, config?: AxiosRequestConfig): Promise; put(endpoint: string, data?: any, config?: AxiosRequestConfig): Promise; patch(endpoint: string, data?: any, config?: AxiosRequestConfig): Promise; delete(endpoint: string, config?: AxiosRequestConfig): Promise; getPaginated(endpoint: string, pagination?: PaginationParams, additionalParams?: Record): Promise>; getAllPages(endpoint: string, pageSize?: number, additionalParams?: Record): Promise; orders: { list: (params?: { startDate?: string; endDate?: string; pagination?: PaginationParams; }) => Promise>; get: (orderId: string) => Promise; create: (orderData: any) => Promise; update: (orderId: string, orderData: any) => Promise; void: (orderId: string, voidReason?: string) => Promise; listChecks: (orderId: string) => Promise; addItem: (orderId: string, checkId: string, itemData: any) => Promise; removeItem: (orderId: string, checkId: string, selectionId: string) => Promise; applyDiscount: (orderId: string, checkId: string, discountData: any) => Promise; }; menus: { list: () => Promise; get: (menuId: string) => Promise; listGroups: (menuId: string) => Promise; getGroup: (menuId: string, groupId: string) => Promise; listItems: (menuId: string, groupId?: string) => Promise; getItem: (menuId: string, itemId: string) => Promise; listModifiers: (menuId: string, itemId: string) => Promise; updatePrice: (menuId: string, itemId: string, price: number) => Promise; }; employees: { list: (pagination?: PaginationParams) => Promise>; get: (employeeId: string) => Promise; create: (employeeData: any) => Promise; update: (employeeId: string, employeeData: any) => Promise; delete: (employeeId: string) => Promise; listJobs: (employeeId: string) => Promise; listShifts: (employeeId: string, startDate: string, endDate: string) => Promise; clockIn: (employeeId: string, jobId: string) => Promise; clockOut: (employeeId: string, timeEntryId: string) => Promise; listTimeEntries: (employeeId: string, startDate: string, endDate: string) => Promise; }; labor: { listShifts: (startDate: string, endDate: string, pagination?: PaginationParams) => Promise>; getShift: (shiftId: string) => Promise; listBreaks: (shiftId: string) => Promise; getLaborCost: (businessDate: string) => Promise; listJobs: () => Promise; }; restaurant: { getInfo: () => Promise; listRevenueCenters: () => Promise; listDiningOptions: () => Promise; listServiceAreas: () => Promise; listTables: (serviceAreaId?: string) => Promise; }; payments: { list: (startDate: string, endDate: string, pagination?: PaginationParams) => Promise>; get: (paymentId: string) => Promise; void: (paymentId: string, voidReason?: string) => Promise; refund: (paymentId: string, refundAmount: number, refundReason?: string) => Promise; listTips: (startDate: string, endDate: string) => Promise; }; inventory: { listItems: (pagination?: PaginationParams) => Promise>; getItem: (itemId: string) => Promise; updateCount: (itemId: string, quantity: number) => Promise; listVendors: () => Promise; createPurchaseOrder: (poData: any) => Promise; }; customers: { list: (pagination?: PaginationParams) => Promise>; get: (customerId: string) => Promise; create: (customerData: any) => Promise; update: (customerId: string, customerData: any) => Promise; listLoyalty: (customerId: string) => Promise; addLoyaltyPoints: (customerId: string, points: number) => Promise; }; cash: { listEntries: (startDate: string, endDate: string, pagination?: PaginationParams) => Promise>; getDrawerStatus: (drawerId: string) => Promise; }; } //# sourceMappingURL=api-client.d.ts.map