import { IPaginatedResponse } from '@/core/models/service.model'; import { HttpClient } from '@angular/common/http'; import { Injectable } from '@angular/core'; import { Observable } from 'rxjs'; import { POS_API_ROUTES } from '../constants'; import { IPosInfoRawResponse, IPosInfoResponse, IPosOrderRequest, IPosProductCategoriesRawResponse, IPosProductCategoriesResponse, IPosStockRawResponse, IPosStockResponse, } from '../models'; @Injectable({ providedIn: 'root' }) export class PosService { constructor(private http: HttpClient) {} private apiRoutes = POS_API_ROUTES; getInfo(): Observable { return this.http.get(this.apiRoutes.info()); } getStock(): Observable> { return this.http.get>(this.apiRoutes.stock()); } getCategories(): Observable> { return this.http.get>( this.apiRoutes.productCategories(), ); } submitOrder(payload: IPosOrderRequest): Observable { return this.http.post(this.apiRoutes.submitOrder(), payload); } }