UNPKG

ov25-ui

Version:

A UI configurator for OV25 product visualization

44 lines (43 loc) 1.23 kB
import * as React from 'react'; import { Swatch } from '../../contexts/ov25-ui-context.js'; export interface Variant { id: string; groupId?: string; optionId?: string; name: string; price: number; image: string; blurHash: string; data?: any; isSelected?: boolean; swatch?: Swatch; } export type DrawerSizes = 'closed' | 'small' | 'large'; export interface VariantGroup { groupName: string; variants: Variant[]; } export interface VariantCardProps { variant: Variant; onSelect: (variant: Variant) => void; index: number; isMobile: boolean; isGrouped?: boolean; } interface ProductVariantsProps { isOpen: boolean; onClose: () => void; title: string; variants: Variant[] | VariantGroup[]; onSelect: (variant: Variant) => void; VariantCard?: React.ComponentType<VariantCardProps>; onAccordionChange?: () => void; gridDivide?: number; drawerSize?: DrawerSizes; onNext?: () => void; onPrevious?: () => void; basis?: string; isMobile: boolean; } export declare const ProductVariants: ({ variants, onSelect, drawerSize, gridDivide, VariantCard, basis, isMobile, }: ProductVariantsProps) => React.JSX.Element; export {};