UNPKG

@codegouvfr/react-dsfr

Version:

French State Design System React integration library

26 lines (25 loc) 1.17 kB
import { type ReactNode } from "react"; import type { RegisteredLinkProps } from "../../link"; import type { ExtractFinalityFromFinalityDescription, FinalityConsent } from "../types"; import type { ProcessConsentChanges } from "../processConsentChanges"; export declare function createConsentManagement<FinalityDescription extends Record<string, { title: ReactNode; description?: ReactNode; subFinalities?: Record<string, ReactNode>; }>>(params: { personalDataPolicyLinkProps: RegisteredLinkProps | undefined; finalityDescription: ((params: { lang: string; }) => FinalityDescription) | FinalityDescription; useFinalityConsent: () => FinalityConsent<ExtractFinalityFromFinalityDescription<FinalityDescription>> | undefined; processConsentChanges: ProcessConsentChanges<ExtractFinalityFromFinalityDescription<FinalityDescription>>; finalities: ExtractFinalityFromFinalityDescription<FinalityDescription>[]; }): { ConsentManagement: () => JSX.Element; consentModalButtonProps: { id: string; "aria-controls": string; "data-fr-opened": boolean; }; useIsConsentManagementOpen: () => boolean; };