import type { Product as ElasticPathProduct, BundleConfiguration as EPBundleConfiguration } from "@epcc-sdk/sdks-shopper"; import { Product } from "../types/product"; export declare type BundleConfiguration = EPBundleConfiguration; export interface ElasticPathBundleProduct extends ElasticPathProduct { attributes?: ElasticPathProduct["attributes"] & { components?: { [key: string]: ComponentProduct; }; }; meta?: ElasticPathProduct["meta"] & { product_types?: string[]; bundle_configuration?: BundleConfiguration; }; } export interface BundleProduct extends Product { rawData?: ElasticPathBundleProduct; } export interface ComponentProduct { name?: string; options?: ComponentProductOption[]; min?: number | null; max?: number | null; sort_order?: number | null; } export interface ComponentProductOption { id?: string; type?: "product"; quantity?: number; min?: number | null; max?: number | null; sort_order?: number | null; default?: boolean | null; } export interface ValidationResult { isValid: boolean; errors: string[]; }