/** * Mexico Product Model * * Extends base Product with Mexico-specific accessors. */ import type { MexProductScopeData } from "@artu-ai/shared"; import { Product, type ProductData } from "../Product"; /** * Product data with Mexico scope */ export interface MexProductData extends ProductData { scopeData?: { MX?: MexProductScopeData; [key: string]: unknown; }; } /** * Mexico Product Model. * * Provides typed accessors for Mexico-specific product data. * * @example * ```typescript * if (product instanceof MexProduct) { * console.log(`Activities: ${product.activityCodes.join(", ")}`); * } * ``` */ export declare class MexProduct extends Product { /** * Mexico-specific scope data */ protected get mexicoData(): MexProductScopeData | undefined; /** * Whether product is related to any Actividad Vulnerable */ get isActividadVulnerable(): boolean; /** * Activity codes this product is associated with */ get activityCodes(): string[]; /** * Checks if product is for a specific activity */ hasActivity(code: string): boolean; /** * Whether product is related to any CNBV subject */ get isCNBV(): boolean; toString(): string; } import type { Product as ProductBase } from "../Product"; /** * Check if product is a Mexico product */ export declare function isMexProduct(product: ProductBase): product is MexProduct;