/** * VEH (VehĂ­culos) Products Resource * * Extends MexProductsResource with VEH-specific behavior: * - Accepts flattened CreateVEHProductInput (VEH fields at root level) * - Returns MexVEHProduct models */ import type { CreateProductInput, CreateVEHProductInput, ListOptions, PaginatedResponse, ProductFilter, ProductSort, UpdateProductInput, UpdateVEHProductInput, UpsertResult, UpsertVEHProductInput } from "@artu-ai/shared"; import { MexVEHProduct, type ProductData } from "../../../../models"; import { AVProductsResource } from "../products"; /** * VEH (VehĂ­culos) scoped products resource. * * @example * ```typescript * const vehSdk = new ComplianceSDK({ * apiKey, * environment: "test", * scope: "MX:AV:VEH", * }); * * const product = await vehSdk.products.create({ * name: "New Vehicle Sale", * operationType: "801", * }); * ``` */ export declare class VEHProductsResource extends AVProductsResource { create(data: CreateVEHProductInput): Promise; retrieve(id: string, opts?: { crossScope?: boolean; }): Promise; retrieveByExternalId(externalId: string, opts?: { crossScope?: boolean; }): Promise; update(id: string, data: UpdateVEHProductInput): Promise; list(options?: ListOptions & { crossScope?: boolean; }): Promise>; count(filter?: ProductFilter, options?: { crossScope?: boolean; }): Promise; iterate(options?: { filter?: ProductFilter; sort?: ProductSort; pageSize?: number; crossScope?: boolean; }): AsyncGenerator; upsertByExternalId(data: UpsertVEHProductInput): Promise>; protected transformToNested(data: CreateVEHProductInput): CreateProductInput; protected transformUpdateToNested(data: UpdateVEHProductInput): UpdateProductInput; protected instantiate(data: ProductData): MexVEHProduct; /** Materializes a raw payload into a {@link MexVEHProduct} (return type narrowed via the `instantiate` override). */ materialize(data: ProductData): MexVEHProduct; }