UNPKG

@c15t/react

Version:

Developer-first CMP for React: cookie banner, consent manager, preferences centre. GDPR ready with minimal setup and rich customization

136 lines 6.01 kB
/** * @packageDocumentation * Provides the core components for building cookie consent banners. * Implements accessible, customizable components following GDPR and CCPA requirements. */ import { type BoxProps } from '../shared/primitives/box'; import type { ConsentButtonProps } from '../shared/primitives/button.types'; /** * Title component for the cookie banner. * * @remarks * Provides the main heading for the cookie consent notice. * Implements proper heading semantics and supports theming. * * @example * ```tsx * <CookieBannerTitle> * Cookie Preferences * </CookieBannerTitle> * ``` */ declare const CookieBannerTitle: import("react").ForwardRefExoticComponent<Omit<BoxProps, "themeKey"> & import("react").RefAttributes<HTMLDivElement>>; /** * Description component for the cookie banner. * * @remarks * Provides explanatory text about cookie usage and privacy policies. * Supports rich text content and proper accessibility attributes. * * @example * ```tsx * <CookieBannerDescription> * We use cookies to enhance your browsing experience and analyze our traffic. * </CookieBannerDescription> * ``` */ declare const CookieBannerDescription: import("react").ForwardRefExoticComponent<Omit<BoxProps, "themeKey"> & import("react").RefAttributes<HTMLDivElement>>; /** * Footer component for the cookie banner. * * @remarks * Contains action buttons and additional information. * Implements proper layout and spacing for action items. * * @example * ```tsx * <CookieBannerFooter> * <CookieBannerRejectButton>Reject All</CookieBannerRejectButton> * <CookieBannerAcceptButton>Accept All</CookieBannerAcceptButton> * </CookieBannerFooter> * ``` */ declare const CookieBannerFooter: import("react").ForwardRefExoticComponent<Omit<BoxProps, "themeKey"> & import("react").RefAttributes<HTMLDivElement>>; /** * Card component for the cookie banner. * * @remarks * Provides the main container for the cookie notice. * Implements proper elevation and layout structure. * * @example * ```tsx * <CookieBannerCard> * <CookieBannerHeader> * <CookieBannerTitle>Cookie Notice</CookieBannerTitle> * </CookieBannerHeader> * </CookieBannerCard> * ``` */ declare const CookieBannerCard: import("react").ForwardRefExoticComponent<Omit<BoxProps, "themeKey"> & import("react").RefAttributes<HTMLDivElement>>; /** * Header component for the cookie banner. * * @remarks * Contains the title and description sections. * Implements proper spacing and layout for header content. */ declare const CookieBannerHeader: import("react").ForwardRefExoticComponent<Omit<BoxProps, "themeKey"> & import("react").RefAttributes<HTMLDivElement>>; /** * Footer sub-group component for organizing related actions. * * @remarks * Groups related buttons or controls in the footer. * Implements proper spacing and alignment for button groups. */ declare const CookieBannerFooterSubGroup: import("react").ForwardRefExoticComponent<Omit<BoxProps, "themeKey"> & import("react").RefAttributes<HTMLDivElement>>; /** * Button to reject all non-essential cookies. * * @remarks * Implements the reject action for cookie preferences. * Provides proper accessibility attributes and keyboard interaction. * * @example * ```tsx * <CookieBannerRejectButton> * Reject All Cookies * </CookieBannerRejectButton> * ``` */ declare const CookieBannerRejectButton: import("react").ForwardRefExoticComponent<ConsentButtonProps & import("react").RefAttributes<HTMLButtonElement>>; /** * Button to open detailed cookie preferences. * * @remarks * Opens the detailed consent management interface. * Implements proper focus management and keyboard interaction. */ declare const CookieBannerCustomizeButton: import("react").ForwardRefExoticComponent<ConsentButtonProps & import("react").RefAttributes<HTMLButtonElement>>; /** * Button to accept all cookies. * * @remarks * Implements the accept action for cookie preferences. * Provides proper accessibility attributes and keyboard interaction. * Supports theming and style customization. * * @example * ```tsx * <CookieBannerAcceptButton> * Accept All Cookies * </CookieBannerAcceptButton> * ``` */ declare const CookieBannerAcceptButton: import("react").ForwardRefExoticComponent<ConsentButtonProps & import("react").RefAttributes<HTMLButtonElement>>; declare const Title: import("react").ForwardRefExoticComponent<Omit<BoxProps, "themeKey"> & import("react").RefAttributes<HTMLDivElement>>; declare const Description: import("react").ForwardRefExoticComponent<Omit<BoxProps, "themeKey"> & import("react").RefAttributes<HTMLDivElement>>; declare const Footer: import("react").ForwardRefExoticComponent<Omit<BoxProps, "themeKey"> & import("react").RefAttributes<HTMLDivElement>>; declare const FooterSubGroup: import("react").ForwardRefExoticComponent<Omit<BoxProps, "themeKey"> & import("react").RefAttributes<HTMLDivElement>>; declare const Card: import("react").ForwardRefExoticComponent<Omit<BoxProps, "themeKey"> & import("react").RefAttributes<HTMLDivElement>>; declare const Header: import("react").ForwardRefExoticComponent<Omit<BoxProps, "themeKey"> & import("react").RefAttributes<HTMLDivElement>>; declare const RejectButton: import("react").ForwardRefExoticComponent<ConsentButtonProps & import("react").RefAttributes<HTMLButtonElement>>; declare const CustomizeButton: import("react").ForwardRefExoticComponent<ConsentButtonProps & import("react").RefAttributes<HTMLButtonElement>>; declare const AcceptButton: import("react").ForwardRefExoticComponent<ConsentButtonProps & import("react").RefAttributes<HTMLButtonElement>>; export { CookieBannerTitle, CookieBannerDescription, CookieBannerFooter, CookieBannerFooterSubGroup, CookieBannerCard, CookieBannerHeader, CookieBannerRejectButton, CookieBannerCustomizeButton, CookieBannerAcceptButton, Title, Description, Footer, FooterSubGroup, Card, Header, RejectButton, CustomizeButton, AcceptButton, }; //# sourceMappingURL=components.d.ts.map