Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
import { ReactNode } from 'react'
import { CommonState } from 'src/state'

export interface ProductItemRenderProp extends Function {
  (props: ProductItemPlaceholderProps, state?: CommonState): ReactNode
}

export interface ItemDetailsType {
  itemid: string
  isSubscriptionItem?: boolean
  viewType?: string
}
export interface ProductItemPlaceholderProps {
  className?: ''
  children?: ReactNode
  hasSingleProduct: boolean
  state?: CommonState
  itemDetails: ItemDetailsType
  /**
   * render props
   */
  renderImage?: ProductItemRenderProp
  renderName?: ProductItemRenderProp
  renderDescription?: ProductItemRenderProp
  renderSkuId?: ProductItemRenderProp
  // renderItemId?: ProductItemRenderProp
  renderFacets?: ProductItemRenderProp
  renderQuantity?: ProductItemRenderProp
  renderPrice?: ProductItemRenderProp
  renderRatings?: ProductItemRenderProp
  renderProductFrequency?: ProductItemRenderProp
  //
  renderProductItemDetails?: ProductItemRenderProp
  renderButtonGroup?: ProductItemRenderProp
  //
  renderProductItemButtons?: ProductItemRenderProp
  renderProductItemForm?: ProductItemRenderProp
  //
  renderContainer?: ProductItemRenderProp,
  renderWrapper?: ProductItemRenderProp
}

// @todo extends React.Context?
export interface ProductItemContextValue {
  state: CommonState
  props: ProductItemPlaceholderProps
}