UNPKG

@hhgtech/hhg-components

Version:
60 lines (59 loc) 2.89 kB
import React, { ComponentProps, PropsWithChildren } from 'react'; import { ImageWrapV2Props } from "../../../atoms"; import { Carousel } from "../../../mantine"; import { CarouselImageItem, CarouselImageItemWrapper, StyledImageCarousel } from "./index.styled"; export interface GeneralInfoData { id: number; name: string | React.ReactNode; altText?: string; logo?: string; banner?: string; description?: string | React.ReactNode; inject_schedule?: string; middleContent?: React.ReactNode; } export type GeneralInfoProps = { generalInfo: GeneralInfoData; backupSrc?: string; className?: string; contentClassName?: string; bannerProps?: Partial<ImageWrapV2Props>; imagesSelect?: React.ReactNode; isMobile?: boolean; imageCarousel?: string[]; carouselSlotProps?: GeneralInfoCarouselSlotProps; isCarouselParallax?: boolean; onCarouselImageClick?: (index: number) => void; }; type StyledImageCarouselProps = Omit<ComponentProps<typeof StyledImageCarousel>, 'children'>; type CarouselSlideProps = Omit<ComponentProps<typeof Carousel.Slide>, 'children'>; type CarouselImageItemWrapperProps = Omit<ComponentProps<typeof CarouselImageItemWrapper>, 'children'>; type CarouselImageItemProps = Omit<ComponentProps<typeof CarouselImageItem>, 'children' | 'src' | 'alt' | 'backupSrc' | 'isMobile'>; export type GeneralInfoCarouselSlotProps = { imageCarousel?: Partial<StyledImageCarouselProps>; slide?: Partial<CarouselSlideProps>; imageItemWrapper?: Partial<CarouselImageItemWrapperProps>; imageItem?: Partial<CarouselImageItemProps>; }; export declare function GeneralInfo({ generalInfo, backupSrc, className, contentClassName, bannerProps, imagesSelect, children, isMobile: isMobileProp, imageCarousel, carouselSlotProps, isCarouselParallax, onCarouselImageClick, }: PropsWithChildren<GeneralInfoProps>): React.JSX.Element; export declare namespace GeneralInfo { var Container: import("@emotion/styled").StyledComponent<{ theme?: import("@emotion/react").Theme; as?: React.ElementType<any>; }, React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>; var Image: import("@emotion/styled").StyledComponent<{ alt: string; backupSrc?: string; unoptimized?: boolean; placeholderSrc?: string; width?: number; quality?: number; } & React.ClassAttributes<HTMLImageElement> & React.ImgHTMLAttributes<HTMLImageElement> & { theme?: import("@emotion/react").Theme; }, {}, {}>; var Content: import("@emotion/styled").StyledComponent<{ theme?: import("@emotion/react").Theme; as?: React.ElementType<any>; }, React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>; } export default GeneralInfo;