import { type HTMLAttributes, type ReactNode } from 'react'; import { type VariantProps } from 'class-variance-authority'; import { type ErrorCorrectionLevel } from './qr-encode'; declare const qrCodeVariants: (props?: ({ variant?: "plain" | "framed" | "with-caption" | null | undefined; size?: "sm" | "md" | "lg" | null | undefined; tone?: "default" | "inverted" | null | undefined; } & import("class-variance-authority/types").ClassProp) | undefined) => string; type QrCodeVariantProps = VariantProps; interface QrCodeBase extends Omit, 'role' | 'aria-label' | 'aria-hidden' | 'children' | 'color'>, QrCodeVariantProps { /** * The string encoded into the QR — typically an absolute https URL * (check-in landing or patient-portal link), but any text is valid. An * empty string renders the empty state. Not validated as a URL: the kit * is byte-transparent and the consumer passes a fully-formed value. */ value: string; /** * Reed-Solomon redundancy. When omitted it defaults to `H` (high, ~30% * recovery) whenever a centre logo is shown — the obscured centre still * decodes — and to `M` when the logo is disabled (`logo={false}`). Pass an * explicit level to override (raising to `Q`/`H` is required if a logo * occludes the centre). */ errorCorrectionLevel?: ErrorCorrectionLevel; /** * Centre mark over the matrix. The product wants the AlfaDocs mark present * on every code, so this defaults to the canonical mark * ({@link AlfadocsLogoMark}, decorative). Pass `logo={false}` to disable it, * or `logo={}` to override with your own node. The mark is clamped * to ~22% of the edge and seated on a tone-matched opaque knockout so the * modules beneath it are visually cleared; ECC-H reconstructs them on scan. */ logo?: ReactNode | false; /** Caption for `variant="with-caption"`. Defaults to the i18n caption. */ caption?: string; /** Quiet-zone width in MODULES. Clamped up to the spec minimum of 4. */ quietZone?: number; } type QrCodeA11y = { /** * Human-readable destination woven into the accessible name, e.g. a * practice name → "QR code to check in at Studio Dentistico Rossi". * Not rendered visually. */ label?: string; decorative?: never; } | { label?: never; /** * Decorative usage — the code is hidden from assistive tech (rare; the * same QR is duplicated purely ornamentally next to a real one). */ decorative: true; }; export type QrCodeProps = QrCodeBase & QrCodeA11y; export declare const QrCode: import("react").ForwardRefExoticComponent>; export {}; //# sourceMappingURL=qr-code.d.ts.map