@symanticreative/vendure-admin-client
Version:
A TypeScript GraphQL client for Vendure Admin API to create custom dashboards
35 lines (34 loc) • 1.26 kB
TypeScript
import { BasePaginatedService } from './base.service';
import { ProductRepository } from '../repositories/product.repository';
import { Product, CreateProductInput, UpdateProductInput } from '../models/product.model';
/**
* Service for product operations
*/
export declare class ProductService extends BasePaginatedService<Product, string> {
constructor(productRepository: ProductRepository);
/**
* Create a new product
* @param input - Product creation input
* @returns Promise resolving to the created product
*/
createProduct(input: CreateProductInput): Promise<Product>;
/**
* Update an existing product
* @param input - Product update input
* @returns Promise resolving to the updated product
*/
updateProduct(input: UpdateProductInput): Promise<Product>;
/**
* Get product by slug
* @param slug - Product slug
* @returns Promise resolving to product or null
*/
getProductBySlug(slug: string): Promise<Product | null>;
/**
* Search products by term
* @param term - Search term
* @param options - Pagination options
* @returns Promise resolving to paginated products
*/
searchProducts(term: string, options?: any): Promise<any>;
}