import { ClusterConfig, Product } from '@propeller-commerce/propeller-sdk-v2'; /** * A computed object containing a cluster config setting enriched with * its current UI state: available values for drilldown, the currently * selected value, and whether the selector should be disabled. */ export interface ClusterConfiguratorProps { /** * The cluster ID this configurator belongs to. * @required */ clusterId: number; /** * All products that belong to the cluster. * Used to derive available values per attribute and to match * the configured product when all selections are made. * @required */ products: Product[]; /** * Cluster configuration object (cluster.config). * Provides the ordered list of attribute settings. * @required */ config: ClusterConfig; /** * Fired whenever the user completes a set of attribute selections * that uniquely identifies a cluster product. * Also fired whenever any selection changes and a matching product * can already be determined (e.g. only one setting exists). */ onConfigurationChange?: (product: Product) => void; /** Default product to pre-populate the attribute selections on mount. */ defaultProduct?: Product; /** Override any UI string. Available keys: selectOption */ labels?: Record; /** Extra CSS class applied to the root element. */ className?: string; } declare const _default: import('vue').DefineComponent & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>; export default _default;