import { Client } from '../client'; import { ThBaseHandler } from '../base'; import { UriHelper } from '../uri-helper'; export interface OrdersOptions { user?: string; base?: string; } export interface OrdersQuery { limit?: number; uri?: string; itemId?: string; order?: string; auto?: boolean; suggestion?: boolean; order_qty?: number; active?: boolean; deleted?: boolean; } export interface OrdersResponse { data?: Array>; metadata?: Record; msg?: string; } export interface OrdersUpdateValues { id?: string; open?: boolean; deleted?: boolean; ordered_at?: string; finalized_at?: string; direction?: string; } export interface OrdersRequest { orderId: string; values: OrdersUpdateValues; } export interface OrderItem { added_at?: string; issuer?: Record; order_qty: number; auto?: boolean; suggestion?: boolean; deleted?: boolean; product: string; stock?: string; location?: string; } export interface OrderItemCreate extends OrderItem { order: string; } export interface OrderItemUpdate extends OrderItem { id: string; } export interface OrderItemsCreateRequest { order_items: OrderItemCreate[]; } export interface OrderItemsUpdateRequest { order_items: OrderItemUpdate[]; } export interface OrderItemUpdateRequest { itemId: string; item: OrderItemUpdate; } export interface BookStockBody { qty: number; } export interface BookStockRequest { orderId: string; body: BookStockBody; uri?: string; } export declare class Orders extends ThBaseHandler { static baseEndpoint: string; endpoint: string; http: Client; options: OrdersOptions; uriHelper: UriHelper; constructor(options: OrdersOptions, http: Client); getAll(query?: OrdersQuery | undefined): Promise; create(options: OrdersRequest): Promise; update(options: OrdersRequest): Promise; getOrderItems(orderId: string): Promise; deleteOrderItems(query: OrdersQuery): Promise; createOrderItems(body: OrderItemsCreateRequest): Promise; updateOrderItems(body: OrderItemsUpdateRequest): Promise; updateOrderItem(query: OrderItemUpdateRequest): Promise; getIncomingOrders(query?: OrdersQuery | undefined): Promise; getOutgoingOrders(query?: OrdersQuery | undefined): Promise; getOrderSuggestions(query?: OrdersQuery | undefined): Promise; getHistoricOrderItems(orderId: string): Promise; bookStock(query: BookStockRequest): Promise; getOpenOrder(query?: OrdersQuery | undefined): Promise; }