UNPKG

jalt-product-card

Version:

Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.

42 lines (41 loc) 1.29 kB
/// <reference types="react" /> import { Props as ProductButtonsProps } from '../components/ProductButtons'; import { Props as ProductCardProps } from '../components/ProductCard'; import { Props as ProductImageProps } from '../components/ProductImage'; import { Props as ProductTitleProps } from '../components/ProductTitle'; export interface InitialValue { count?: number; maxCount?: number; } export interface Product { id: string; img?: string; title: string; } export interface ProductContextProps { counter: number; product: Product; maxCount?: number; increaseBy: (value: number) => void; } export interface ProductCardHOCProps { ({ children, product }: ProductCardProps): JSX.Element; Buttons: (Props: ProductButtonsProps) => JSX.Element; Image: (Props: ProductImageProps) => JSX.Element; Title: (Props: ProductTitleProps) => JSX.Element; } export interface onChangeArgs { product: Product; count: number; } export interface ProductInCart extends Product { count: number; } export interface ProductCardHandlers { count: number; isMaxCountReached: boolean; maxCount?: number; product: Product; increaseBy: (value: number) => void; reset: () => void; }