@anoki/fse-ui
Version:
FSE UI components library
1,547 lines (1,256 loc) • 57.3 kB
TypeScript
import { AddressSchema } from '@anoki/fse-common';
import { ComponentPropsWithoutRef } from 'react';
import { ComponentType } from 'react';
import { CSSProperties } from 'react';
import { DayHours } from '@anoki/fse-common';
import { default as default_2 } from 'react';
import { ElementType } from 'react';
import { FC } from 'react';
import { GeneralPractitionerResponse } from '@anoki/fse-common/dist/types/general-practitioner-service';
import { GetValues } from '@anoki/fse-common/dist';
import { GetValues as GetValues_2 } from '@anoki/fse-common/dist/index';
import { JSX } from 'react/jsx-runtime';
import { Link as Link_2 } from '@anoki/fse-common/dist';
import { Link as Link_3 } from '@anoki/fse-common/dist/index';
import { MouseEvent as MouseEvent_2 } from 'react';
import { OpeningHours } from '@anoki/fse-common';
import { PropsWithChildren } from 'react';
import * as React_2 from 'react';
import { ReactNode } from 'react';
import { SectionLink } from '@anoki/fse-common';
import { Service } from '@anoki/fse-common';
import { Structure } from '@anoki/fse-common';
export declare const AccessLogSkeleton: () => JSX.Element;
export declare const ActionBanner: default_2.FC<ActionBannerProps>;
declare interface ActionBannerProps {
title: string;
description: string;
variant?: ActionBannerVariantTypes;
link?: Link_2;
firstAction?: Link_2;
secondAction?: Link_2;
}
export declare enum ActionBannerVariantEnum {
DEFAULT = "default",
OUTLINE = "outline",
SIMPLE = "simple"
}
export declare type ActionBannerVariantTypes = GetValues<typeof ActionBannerVariantEnum>;
export declare interface ActionData {
label: string;
ariaLabel: string;
type: "link" | "button";
link?: string;
action?: () => void;
}
export declare const ActionIconText: ({ iconColor, icon, noIcon, textLabel, handleAction, handleIconAction, classNameComponent, classNameText, disablePointer, iconPosition, popupInfo, positionPopUp, }: ActionIconTextProps) => JSX.Element;
declare type ActionIconTextProps = PropsWithChildren<{
icon?: ReactNode;
noIcon?: boolean;
textLabel?: string;
handleAction?: () => void;
handleIconAction?: () => void;
classNameComponent?: string;
classNameText?: string;
disablePointer?: boolean;
iconPosition?: "left" | "right";
popupInfo?: InfoPopupProps;
iconColor?: ColorKeys;
positionPopUp?: "left" | "right";
}>;
declare type ActionItem = PropsWithChildren<{
label: string;
icon: ReactNode;
onClick: () => void;
loading?: boolean;
}>;
export declare const ActionPoint: ({ links }: ActionPointProps) => JSX.Element;
declare type ActionPointProps = {
links: Array<Link_2>;
};
export declare const Actions: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const Add: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare type AggregationItemsProps = {
title: ReactNode;
description?: ReactNode;
goToLabel?: string;
href?: string;
asLink?: "a" | ComponentType<any>;
items: any[];
layout?: Layout;
className?: string;
};
export declare const Alert: default_2.FC<AlertProps>;
declare type AlertDialogProps = {
isOpen: boolean;
onClose: () => void;
title?: string;
description?: string;
confirmBtnLabel?: string;
};
export declare const AlertDialogUI: ({ title, description, confirmBtnLabel, isOpen, onClose, }: AlertDialogProps) => JSX.Element;
export declare type AlertProps = {
title: string;
description: string;
subtitle: string;
link: Link_2;
variant?: AlertVariant;
};
export declare type AlertVariant = GetValues<typeof AlertVariantEnum>;
export declare const AlertVariantEnum: {
readonly DEFAULT: "default";
readonly INFO: "info";
readonly WARNING: "warning";
readonly DANGER: "danger";
readonly SUCCESS: "success";
};
export declare const ArrowDown: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const ArrowLeft: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const ArrowLink: ({ href, asLink, isExternal, fs, children, className, onClick, type, asButton, ...props }: ArrowLinkProps) => JSX.Element;
declare type ArrowLinkAsButtonProps = BaseArrowLinkProps & {
onClick?: () => void;
type?: "button";
asButton?: true;
asLink?: never;
href?: never;
};
declare type ArrowLinkAsLinkProps = BaseArrowLinkProps & {
href: string;
asLink?: "a" | default_2.ComponentType<any>;
onClick?: never;
type?: never;
asButton?: never;
};
declare type ArrowLinkProps = ArrowLinkAsLinkProps | ArrowLinkAsButtonProps;
export declare const ArrowRight: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const ArrowTop: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const Attachment: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const AuthorBlock: ({ titleTag: TitleTag, authorName, avatar, avatarSize, publishedLabel, publishedDate, readingTimeLabel, readingTimeValue, readingMinuteLabel, }: CardDoctorProps_2) => JSX.Element;
export declare const Avatar: ({ initials, bg, textColor, size, className, }: AvatarProps) => JSX.Element;
declare type AvatarProps = {
initials: string;
bg?: ColorKeys;
textColor?: ColorKeys;
size?: AvatarSize;
className?: string;
};
export declare type AvatarSize = "1" | "2" | "3";
export declare const AvatarSkeleton: ({ size }: AvatarSkeletonProps) => JSX.Element;
declare type AvatarSkeletonProps = {
size?: "1" | "2" | "3";
};
declare type BaseArrowLinkProps = {
isExternal?: boolean;
fs?: TypographyKeys;
children: default_2.ReactNode;
className?: string;
};
declare type BaseButtonProps = {
children: React.ReactNode;
variant?: ButtonVariant;
bg?: ColorKeys;
textColor?: ColorKeys;
border?: ColorKeys;
size?: ButtonSize;
className?: string;
disabled?: boolean;
loading?: boolean;
form?: string;
rel?: string;
target?: string;
};
export declare const BaseModal: {
({ open, setOpen, overrideClassNames, id, children, }: BaseModalProps): JSX.Element;
Header: ({ labels, onCloseClick, onBackClick, showBackButton, children, }: {
labels?: {
closeButton?: string;
backButton?: string;
};
onCloseClick?: () => void;
onBackClick?: () => void;
showBackButton?: boolean;
children?: React.ReactNode;
}) => JSX.Element;
HeaderBack: ({ onBackClick, backButton, children, }: {
onBackClick: () => void;
backButton: string;
children?: React.ReactNode;
}) => JSX.Element;
Content: ({ className, children, }: {
className?: string;
children: React.ReactNode;
}) => JSX.Element;
Footer: ({ children, className, }: {
className?: string;
children: React.ReactNode;
}) => JSX.Element;
};
declare type BaseModalProps = {
open: boolean;
setOpen: (open: boolean) => void;
overrideClassNames?: string;
id?: string;
children: React.ReactNode;
};
export declare const Blockquote: default_2.FC<BlockquoteProps>;
declare type BlockquoteProps = {
text: string;
author: string;
variant?: Variant_2;
};
export declare const BottomNavigation: ({ className, title, removeLabel, applyLabel, selectedFilters, onApplyFilters, onClearFilters, applyDisabled, }: BottomNavigationProps) => JSX.Element;
declare type BottomNavigationProps = {
className?: string;
title: string;
removeLabel: string;
applyLabel: string;
selectedFilters: Record<string, string[]>;
onApplyFilters: () => void;
onClearFilters: () => void;
applyDisabled?: boolean;
};
export declare const Breadcrumb: ({ items, }: BreadcrumbProps) => JSX.Element;
declare type BreadcrumbItemProps = {
label: string;
href?: string;
isClickable?: boolean;
asLink?: "a" | ComponentType<any>;
};
export declare type BreadcrumbProps = {
items: BreadcrumbItemProps[];
};
declare type BreakpointSpace = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "10" | "11" | "12";
export declare const Button: ({ children, variant, bg, textColor, border, size, className, disabled, loading, onClick, type, form, asLink, href, target, rel, ...props }: ButtonProps) => JSX.Element;
declare type ButtonAsButtonProps = BaseButtonProps & {
onClick?: () => void;
type?: "button" | "submit" | "reset";
asLink?: never;
href?: never;
};
declare type ButtonAsLinkProps = BaseButtonProps & {
href: string;
onClick?: never;
type?: never;
asLink?: "a" | React.ComponentType<any>;
};
declare type ButtonProps = ButtonAsButtonProps | ButtonAsLinkProps;
declare type ButtonSize = "2" | "3" | "4";
declare type ButtonVariant = "primary" | "secondary";
export declare const Calendar: ({ width, height, className, filled, color, }: IconProps) => JSX.Element;
export declare const Callout: React.FC<CalloutProps>;
declare interface CalloutProps {
title: string;
description: React.ReactNode;
variant?: Variant_3;
}
export declare const CardCategory: ({ image, title, titleTag: TitleTag, href, description, description2, isExternal, showIcon, goToLabel, asLink, asImage, className, classNameTitle, classNameDescription, handleOnClick, }: CardCategoryProps) => JSX.Element;
declare type CardCategoryProps = {
image?: Image_2;
title: string;
titleTag?: HeadingLevel;
href?: string;
description?: string;
description2?: string;
isExternal?: boolean;
showIcon?: boolean;
goToLabel?: string;
asImage?: "img";
asLink?: "a" | ComponentType<any>;
className?: string;
classNameTitle?: string;
classNameDescription?: string;
handleOnClick?: (e: MouseEvent_2<HTMLAnchorElement>) => void;
};
export declare const CardDoctor: ({ titleTag: TitleTag, doctorName, specialties, contactInfo, schedule, avatar, avatarSize, button, }: CardDoctorProps) => JSX.Element;
export declare const CardDoctorInfo: ({ titleTag: TitleTag, doctorName, specialties, contactInfo, avatar, className, officesInfo, officeLabel, }: CardDoctorInfoProps) => JSX.Element;
declare type CardDoctorInfoProps = {
titleTag?: HeadingLevel_8;
doctorName: string;
specialties?: string[];
contactInfo?: Info_2[];
avatar?: {
initials: string;
bg?: ColorKeys;
textColor?: ColorKeys;
};
className?: string;
officesInfo?: Info_2[][];
officeLabel?: string;
};
declare type CardDoctorProps = {
titleTag?: HeadingLevel_11;
doctorName: string;
specialties?: string[];
contactInfo?: Info_3[];
schedule?: {
label: string;
days: ScheduleDay[];
};
avatar?: {
initials: string;
bg?: ColorKeys;
textColor?: ColorKeys;
};
avatarSize?: AvatarSize;
button?: {
label: string;
onClick: () => void;
};
};
declare type CardDoctorProps_2 = {
titleTag?: HeadingLevel_13;
authorName: string;
avatar?: {
initials: string;
bg?: ColorKeys;
textColor?: ColorKeys;
};
avatarSize?: AvatarSize;
publishedLabel?: string;
publishedDate?: string;
readingTimeLabel?: string;
readingTimeValue?: string;
readingMinuteLabel?: string;
};
export declare const CardDocument: ({ eventNumber, date, documentType, documentTitle, label, subtitle, action, CTA, handleDownloadDocument, hrefDocument, isLoading, openDocumentLabel, releaseDateLabel, eventLabel, asLink, }: CardDocumentProps) => JSX.Element;
declare type CardDocumentProps = {
eventNumber?: string;
date?: string | number;
documentType?: string;
documentTitle: string;
label?: string;
subtitle?: string;
action?: string;
CTA?: string;
iconView?: "attachments" | "obscured";
favorite?: boolean;
handleDownloadDocument?: () => void;
hrefDocument?: string;
isLoading?: boolean;
openDocumentLabel?: string;
releaseDateLabel?: string;
eventLabel?: string;
asLink?: "a" | ComponentType<any>;
};
export declare const CardExemption: ({ information, className, exemptionCode, isOpen, onToggle, hasBorder, exemptionLabel, }: CardExemptionProps) => JSX.Element;
declare type CardExemptionProps = {
information?: {
label: string;
value: string;
}[];
className?: string;
exemptionCode: string;
isOpen: boolean;
onToggle: () => void;
selectedStructures?: string[];
hasBorder?: boolean;
exemptionLabel?: string;
};
export declare function CardFile({ title, description, issued_at, file, action, }: CardFileProps): JSX.Element;
export declare enum CardFileActionTypeEnum {
DOWNLOAD = "download",
GOTO = "goto",
EXTERNAL = "external"
}
export declare type CardFileActionTypeTypes = GetValues_2<typeof CardFileActionTypeEnum>;
export declare type CardFileProps = {
title: string;
description?: string;
issued_at: string;
file?: {
type: string;
size: string;
};
action: {
type: CardFileActionTypeTypes;
link: Link_3;
};
};
export declare const CardMap: ({ id, title, titleTag: TitleTag, href, description, isExternal, asLink, className, address, setSelectedCard, }: CardMapProps) => JSX.Element;
export declare const CardMapDoctor: ({ titleTag: TitleTag, availableLabel, specialization, href, addressLabel, linkLabel, asLink, className, doctor, setSelectedCard, keepSelectionOnNavigation, }: CardMapDoctorProps) => JSX.Element;
declare type CardMapDoctorProps = {
titleTag: HeadingLevel_3;
availableLabel: string;
specialization?: string;
href?: string;
addressLabel?: string;
linkLabel?: string;
asLink?: "a";
className?: string;
doctor: GeneralPractitionerResponse;
setSelectedCard?: (id: string) => void;
keepSelectionOnNavigation?: boolean;
};
declare type CardMapProps = {
id: string;
title: string;
titleTag: HeadingLevel_2;
href?: string;
description?: string;
isExternal?: boolean;
showIcon?: boolean;
asLink?: "a";
className?: string;
address?: AddressSchema;
setSelectedCard?: (id: string) => void;
};
export declare const CardNotification: ({ type, onClickEdit, onClickRightManage, showExpired, buttonMaxWidth, onClickGoToDetails, icon, variant, onClickManage, date, title, showBadge, text, }: CardNotificationProps) => JSX.Element;
declare type CardNotificationProps = {
type: string;
date: string;
icon: NotificationIcon;
showBadge?: boolean;
title: string;
text: string;
variant?: Variant;
onClickEdit?: () => void;
onClickManage?: () => void;
onClickGoToDetails?: () => void;
showExpired?: boolean;
buttonMaxWidth?: boolean;
onClickRightManage?: () => void;
};
export declare const CardOpeningHours: ({ title, titleTag: TitleTag, openingHours, weekDaysMap, openLabel, todayLabel, closeLabel, open24Label, opensSoonLabel, opensAtLabel, opensTomorrowLabel, opensOnLabel, atLabel, closesAtLabel, }: CardOpeningHoursProps) => JSX.Element;
declare type CardOpeningHoursProps = {
title: string;
titleTag: HeadingLevel_4;
openingHours: OpeningHours;
weekDaysMap: WeekDaysMap;
openLabel?: string;
todayLabel?: string;
closeLabel?: string;
open24Label?: string;
opensSoonLabel?: string;
opensAtLabel?: string;
opensTomorrowLabel?: string;
opensOnLabel?: string;
atLabel?: string;
closesAtLabel?: string;
};
export declare const CardReminder: ({ icon, titleTag: TitleTag, title, description, footer, }: CardReminderProps) => JSX.Element;
declare type CardReminderProps = {
icon?: React.ReactNode;
title: string;
description?: React.ReactNode;
titleTag?: HeadingLevel_10;
footer?: React.ReactNode;
};
export declare const CardSelectDoctor: ({ id, title, titleTag: TitleTag, description, className, setSelectedCard, description2, keepSelectionOnNavigation, disabled, }: CardSelectDoctorProps) => JSX.Element;
declare type CardSelectDoctorProps = {
id: string;
title: string;
titleTag?: HeadingLevel_7;
href?: string;
description?: string;
isExternal?: boolean;
showIcon?: boolean;
asLink?: "a";
className?: string;
setSelectedCard?: (id: string) => void;
description2?: string;
keepSelectionOnNavigation?: boolean;
disabled?: boolean;
};
export declare const CardService: ({ title, href, titleTag: TitleTag, asLink, className, iconType, }: CardServiceProps) => JSX.Element;
export declare type CardServiceProps = {
title: string;
href?: string;
titleTag: "h3";
asLink?: "a" | ComponentType<any>;
className?: string;
iconType?: "icon1" | "icon2" | "icon3";
};
export declare const CardUser: ({ titleTag: TitleTag, userName, avatar, information, }: CardUserProps) => JSX.Element;
declare type CardUserProps = {
titleTag?: HeadingLevel_12;
userName: string;
avatar?: {
initials: string;
bg?: ColorKeys;
textColor?: ColorKeys;
};
information?: {
label: string;
value: string;
}[];
};
export declare const CategoryContent: ({ className, items, selectedItems, onChange, }: CategoryContentProps) => JSX.Element;
declare type CategoryContentProps = {
className?: string;
items: {
id: string;
label: string;
checked: boolean;
}[];
selectedItems: string[];
onChange: (selected: string[]) => void;
};
export declare const CategoryHeader: ({ className, title, isOpen, onToggle, selectedStructures, hasBorder, }: CategoryHeaderProps) => JSX.Element;
declare type CategoryHeaderProps = {
className?: string;
title: string;
isOpen: boolean;
onToggle: () => void;
selectedStructures?: string[];
hasBorder?: boolean;
};
export declare const CenterMap: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const ChangeProfileModal: {
({ open, overrideClassNames, showFooter, showHeader, OnPressConfirm, disabledConfirm, setOpen, children, }: ChangeProfileModalProps): JSX.Element;
Content: ({ overrideClassNames, children, }: {
overrideClassNames?: string;
children?: React.ReactNode;
}) => JSX.Element;
};
declare type ChangeProfileModalProps = {
open: boolean;
overrideClassNames?: string;
setOpen: (open: boolean) => void;
children: React.ReactNode;
OnPressConfirm: () => void;
disabledConfirm?: boolean;
showHeader?: boolean;
showFooter?: boolean;
};
export declare const ChangeRelatedCard: ({ title, isSelected, region, }: ChangeRelatedCardProps) => JSX.Element;
declare type ChangeRelatedCardProps = {
title: string;
region: Region;
isSelected?: boolean;
};
export declare const Checkbox: ({ id, label, checked, onChange, classNameText, }: CheckboxProps) => JSX.Element;
export declare const CheckboxFilter: ({ id, label, checked, onChange, classNameText, }: CheckboxFilterProps) => JSX.Element;
declare type CheckboxFilterProps = PropsWithChildren<{
id: string;
label?: ReactNode;
checked: boolean;
onChange: (checked: boolean) => void;
classNameText?: string;
}>;
declare type CheckboxProps = {
id: string;
label?: React.ReactNode;
checked: boolean;
onChange: (checked: boolean) => void;
classNameText?: string;
};
export declare const Close: ({ width, height, className, color, onClick, }: IconProps) => JSX.Element;
export declare const Col: <E extends ElementType = "div">({ as, className, justifyContent, alignItems, flexWrap, ref, style, ...rest }: PolymorphicProps_4<E>) => JSX.Element;
declare type ColorKeys = "primary" | "white" | "status-success" | "warning" | "error" | "muted" | "emphasis" | "slate-20" | "slate-14" | "slate-28" | "border-divider" | "transparent" | "blue-30" | "disabled" | "lightblue-a01" | "lightblue-a02" | "lightblue-a03" | "secondary" | "blue-48";
declare type ColorProps = {
bg?: ColorKeys;
text?: ColorKeys;
color?: ColorKeys;
border?: ColorKeys;
};
export declare interface ColumnConfig {
label: string;
ariaLabel: string;
sortable: boolean;
action?: () => void;
iconAction?: () => void;
popupInfo?: InfoPopupProps;
icon?: React_2.ReactNode | CommonIconsType;
iconPosition?: "left" | "right";
key?: string;
type?: "string" | "date" | "number";
}
declare type CommonIconsType = "info" | "download";
declare type Config = {
REGION: "marche" | "lazio" | "nazionale";
};
export declare const Confirm: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const ConsentModal: {
({ open, overrideClassNames, setOpen, children, }: ConsentModalProps): JSX.Element;
Header: ({ closeButton, onCloseClick, children, }: {
closeButton?: string;
onCloseClick?: () => void;
children?: React.ReactNode;
}) => JSX.Element;
Content: ({ overrideClassNames, children, }: {
overrideClassNames?: string;
children?: React.ReactNode;
}) => JSX.Element;
Footer: ({ children }: {
children?: React.ReactNode;
}) => JSX.Element;
};
declare type ConsentModalProps = {
open: boolean;
overrideClassNames?: string;
setOpen: (open: boolean) => void;
children: React.ReactNode;
};
export declare const ConsentPrivacySkeleton: () => JSX.Element;
export declare const Container: ({ as, children, className, display, justifyContent, alignItems, flexWrap, ...rest }: ContainerProps) => JSX.Element;
export declare type ContainerProps = {
as?: React.ElementType;
children: React.ReactNode;
className?: string;
display?: CSSProperties["display"];
justifyContent?: CSSProperties["justifyContent"];
alignItems?: CSSProperties["alignItems"];
flexWrap?: CSSProperties["flexWrap"];
} & SpacingProps;
export declare const CopyLink: ({ width, height, className, color, }: IconProps) => JSX.Element;
declare type ctaLevel = "link" | "button" | "outlineButton";
export declare const DatePicker: ({ label, value, maxValue, minValue, className, disabled, onClick, onChange, error, required, id, }: DatePickerProps) => JSX.Element;
declare type DatePickerProps = {
label: string;
value?: Date | null;
maxValue?: Date;
minValue?: Date;
className?: string;
disabled?: boolean;
onClick?: () => void;
onChange: (date: Date) => void;
error?: string;
required?: boolean;
id?: string;
};
export declare const DatePickerRange: ({ label, startDateLabel, endDateLabel, startDate, endDate, className, disabled, required, error, onStartDateChange, onEndDateChange, onStartDateClick, onEndDateClick, }: DatePickerRangeProps) => JSX.Element;
declare type DatePickerRangeProps = {
label?: string;
startDateLabel?: string;
endDateLabel?: string;
startDate?: Date;
endDate?: Date;
className?: string;
disabled?: boolean;
required?: boolean;
error?: string;
onStartDateChange: (date: Date) => void;
onEndDateChange: (date: Date) => void;
onStartDateClick?: () => void;
onEndDateClick?: () => void;
};
export declare const DelegateCard: ({ id, isSelected, title, subtitle, region, relation, isMe, showRegion, setSelectedCard, className, }: DelegateCardProps) => JSX.Element;
export declare type DelegateCardProps = {
id: string;
isSelected: boolean;
title: string;
subtitle: string;
relation: string;
isMe?: boolean;
setSelectedCard: (id: string) => void;
className?: string;
showRegion?: boolean;
region?: Region;
};
export declare const DelegateFilterDropDown: ({ size, items, className, selectedPerson, setSelectedPerson, placeholder, btnText, }: RelatedPeopleDropDownProps) => JSX.Element;
declare const Description: ({ fs, color, className, children, }: DescriptionProps) => JSX.Element;
declare type DescriptionProps = PropsWithChildren<{
fs?: TypographyKeys;
color?: ColorKeys;
className?: string;
}>;
export declare const Doctor: ({ width, height, className, filled, color, }: IconProps) => JSX.Element;
export declare const DoctorConfirmModal: {
({ open, overrideClassNames, setOpen, children, }: DoctorConfirmModalProps): JSX.Element;
Header: ({ closeButton, onCloseClick, children, }: {
closeButton?: string;
onCloseClick?: () => void;
children?: React.ReactNode;
}) => JSX.Element;
Content: ({ overrideClassNames, children, }: {
overrideClassNames?: string;
children?: React.ReactNode;
}) => JSX.Element;
Footer: ({ children, }: {
children?: React.ReactNode;
}) => JSX.Element;
};
declare type DoctorConfirmModalProps = {
open: boolean;
overrideClassNames?: string;
setOpen: (open: boolean) => void;
children: React.ReactNode;
};
export declare const DoctorModal: {
({ open, overrideClassNames, setOpen, children, }: DoctorModalProps): JSX.Element;
Content: ({ overrideClassNames, children, }: {
overrideClassNames?: string;
children?: React.ReactNode;
}) => JSX.Element;
Footer: ({ children }: {
children?: React.ReactNode;
}) => JSX.Element;
};
declare type DoctorModalHeaderProps = PropsWithChildren<{
closeButton?: string;
onCloseClick?: () => void;
children?: ReactNode;
title?: string;
stepLabel?: string;
currentStep?: number;
totalSteps?: number;
}>;
declare type DoctorModalProps = {
open: boolean;
overrideClassNames?: string;
setOpen: (open: boolean) => void;
children: React.ReactNode;
};
export declare const DoctorSkeleton: () => JSX.Element;
declare const Document_2: ({ width, height, className, filled, color, }: IconProps) => JSX.Element;
export { Document_2 as Document }
export declare const DocumentDetailSkeleton: () => JSX.Element;
export declare const Documents: ({ title, items, colorTitle, fontSizeTitle, }: Props_3) => JSX.Element;
export declare const DocumentsListSkeleton: () => JSX.Element;
export declare const DocumentUploadComponent: ({ onFileUpload, isLoading, title, description, titleTag: TitleTag, actionText, className, classNameTitle, classNameDescription, id, name, fileSizeLabel, removeLabel, }: DocumentUploadProps) => JSX.Element;
export declare const DocumentUploadModal: {
({ open, overrideClassNames, setOpen, children, }: DocumentUploadModalProps): JSX.Element;
Header: ({ closeButton, onCloseClick, children, }: {
closeButton?: string;
onCloseClick?: () => void;
children?: ReactNode;
} & {
children?: ReactNode | undefined;
}) => JSX.Element;
Content: ({ overrideClassNames, children, }: {
overrideClassNames?: string;
children?: React.ReactNode;
}) => JSX.Element;
Footer: ({ children, }: {
children?: React.ReactNode;
}) => JSX.Element;
};
declare type DocumentUploadModalProps = PropsWithChildren<{
open: boolean;
overrideClassNames?: string;
setOpen: (open: boolean) => void;
children: ReactNode;
}>;
declare interface DocumentUploadProps {
onFileUpload: (base64File: string, fileName: string, fileType: string) => void;
isLoading: boolean;
title: string;
description?: string;
titleTag: HeadingLevel_9;
actionText?: string;
className?: string;
classNameTitle?: string;
classNameDescription?: string;
id?: string;
name?: string;
fileSizeLabel?: string;
removeLabel?: string;
}
export declare interface DoubleLineData {
firstLine: string;
secondLine: string;
}
export declare const Download: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const Dropdown: ({ text, leftIcon, options, asLinkItem, textColor, }: DropdownProps) => JSX.Element;
declare type DropdownOption = {
label: string;
href?: string;
onClick?: () => void;
active?: boolean;
};
declare type DropdownProps = {
text: string;
leftIcon?: React.ReactNode;
options: DropdownOption[];
asLinkItem?: "a" | React.ComponentType<any>;
textColor?: ColorKeys;
};
export declare const EditorialWidget: ({ title, children, subtitle, variant, }: Props_2) => JSX.Element;
declare type EditorialWidgetVariant = "light" | "evidence";
export declare const EditPencil: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const Ellipse: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const Ellipse2: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const Ellipse3: ({ width, height, className, color, }: IconProps) => JSX.Element;
declare type EnhancedSectionLink = SectionLink & {
isNewTab?: boolean;
};
export declare const EntryButton: ({ href, asLink, showIcon, ariaLabel, children, }: EntryButtonProps) => JSX.Element;
declare type EntryButtonProps = {
href: string;
asLink?: "a" | React.ComponentType<any>;
showIcon?: boolean;
ariaLabel: string;
children: React.ReactNode;
};
export declare const ErrorExagon: ({ width, height }: IconProps) => JSX.Element;
export declare const ExternalLink: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const Favourite: ({ width, height, className, color, filled, }: IconProps) => JSX.Element;
declare const File_2: ({ height, width }: IconProps) => JSX.Element;
export { File_2 as File }
export declare const FilterDropDown: ({ size, items, className, filter, setFilter, allStructuresLabel, }: FilterDropdownProps) => JSX.Element;
declare type FilterDropdownProps = {
size: "small" | "large";
items: string[];
className?: string;
filter: string;
setFilter: (filter: string) => void;
allStructuresLabel: string;
};
export declare const FiltersChips: ({ chips, id, additionalClassName, onChange, selectedChip, }: FiltersChipsProps) => JSX.Element;
declare type FiltersChipsProps = PropsWithChildren<{
chips: string[];
id: string;
additionalClassName?: string;
onChange: (selectedChip: string) => void;
selectedChip?: string;
}>;
export declare const Footer: ({ footerLinks, version, asLink, className, additionalLogo, settingsFooterLinks, }: FooterProps) => JSX.Element;
declare type FooterLink = {
label: string;
href: string;
target?: "_blank" | "_self";
};
declare type FooterProps = {
footerLinks?: FooterLink[];
version?: string;
asLink?: "a" | React.ComponentType<any>;
className?: string;
additionalLogo?: string;
settingsFooterLinks?: {
FseMS?: string;
FseMEF?: string;
FseDGT?: string;
FseUE?: string;
externalLink?: string;
};
};
export declare const Fse: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const FseDGT: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const FseMEF: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const FseMS: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const FseUE: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const GenericSkeleton: () => JSX.Element;
export declare const GridContainer: <E extends ElementType = "div">({ as, className, style, ...rest }: PolymorphicProps<E>) => JSX.Element;
export declare const GridItem: <E extends ElementType = "div">({ as, className, style, md, sm, xs, ...rest }: PolymorphicProps_2<E>) => JSX.Element;
export declare const Hamburguer: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const Header: ({ title, region, shortTitle, asLink, navigatonItems, labels, supportLink, loginLink, headerTitleClassname, headerLogoUrl2, children, }: HeaderProps) => JSX.Element;
declare type HeaderDesktopProps = {
title: React.ReactNode | string;
region: Region;
asLink?: "a" | React.ComponentType<any>;
children?: React.ReactNode;
labels: NavigationLabels_2;
navigatonItems: NavigationItem_4[];
supportLink?: NavigationItem_4;
loginLink?: string;
shortTitle?: React.ReactNode;
headerTitleClassname?: string;
headerLogoUrl2?: string;
};
declare type HeaderMobileProps = HeaderTopBannerProps & {
shortTitle: React.ReactNode;
menuTitle?: string;
region: Region;
navigatonItems: NavigationItem_3[];
labels: NavigationLabels;
loginLink?: string;
};
export declare const HeaderNavigation: ({ className, title, closeButton, onCloseClick, }: HeaderNavigationProps) => JSX.Element;
declare type HeaderNavigationProps = {
className?: string;
title: string;
closeButton: string;
onCloseClick?: () => void;
};
export declare const HeaderPostLogin: ({ shortTitle, region, asLink, navigationItems, generalClassName, navItemsClassName, }: HeaderPostLoginProps) => JSX.Element;
export declare type HeaderPostLoginProps = {
shortTitle: ReactNode;
region: Region;
navigationItems: NavigationItem[];
loginLink?: string;
asLink?: "a" | ComponentType<any>;
generalClassName?: string;
navItemsClassName?: string;
};
declare type HeaderProps = HeaderMobileProps & HeaderDesktopProps & {
children?: ReactNode;
};
export declare const HeaderSlim: ({ as, className, hasContainer, display, justifyContent, alignItems, flexWrap, children, }: HeaderSlimProps) => JSX.Element;
declare type HeaderSlimProps = {
as?: "div" | "header";
className?: string;
hasContainer?: boolean;
display?: CSSProperties["display"];
justifyContent?: CSSProperties["justifyContent"];
alignItems?: CSSProperties["alignItems"];
flexWrap?: CSSProperties["flexWrap"];
children: React.ReactNode;
} & SpacingProps;
export declare const HeaderTopBanner: ({ asLink, shortTitle, region, className, }: HeaderTopBannerProps) => JSX.Element;
export declare type HeaderTopBannerProps = {
asLink?: "a" | React.ComponentType<any>;
shortTitle: React.ReactNode;
region?: Region;
className?: string;
};
declare type Heading = {
id: string;
text: string;
};
declare type HeadingLevel = "h2" | "h3" | "h4";
declare type HeadingLevel_10 = "h2" | "h3" | "h4";
declare type HeadingLevel_11 = "h2" | "h3" | "h4";
declare type HeadingLevel_12 = "h2" | "h3" | "h4";
declare type HeadingLevel_13 = "h2" | "h3" | "h4";
declare type HeadingLevel_14 = "h2" | "h3" | "h4";
declare type HeadingLevel_2 = "h2" | "h3" | "h4";
declare type HeadingLevel_3 = "h2" | "h3" | "h4";
declare type HeadingLevel_4 = "h2" | "h3" | "h4";
declare type HeadingLevel_5 = "h2" | "h3" | "h4";
declare type HeadingLevel_6 = "h2" | "h3" | "h4";
declare type HeadingLevel_7 = "h2" | "h3" | "h4";
declare type HeadingLevel_8 = "h2" | "h3" | "h4";
declare type HeadingLevel_9 = "h2" | "h3" | "h4";
export declare const HealthProfileSkeleton: () => JSX.Element;
export declare const Home: ({ width, height, className, filled, color, }: IconProps) => JSX.Element;
export declare const HOME_SERVICES_LAYOUTS: {
readonly LayoutOne: "LayoutOne";
readonly LayoutTwo: "LayoutTwo";
readonly LayoutThree: "LayoutThree";
};
export declare const HomeServices: ({ title, description, goToLabel, href, asLink, items, layout, className, }: AggregationItemsProps) => JSX.Element;
declare type IconProps = Pick<ColorProps, "color"> & {
width?: number;
height?: number;
className?: string;
filled?: boolean;
onClick?: () => void;
decorative?: boolean;
};
declare type Image_2 = {
alt: string;
src: string;
title: string;
};
declare type Image_3 = {
alt: string;
src: string;
title: string;
};
export declare const Info: ({ width, height, className, filled, color, decorative, }: IconProps) => JSX.Element;
declare type Info_2 = {
label: string;
value: string;
};
declare type Info_3 = {
label: string;
value: string;
};
export declare const InfoCardSkeleton: () => JSX.Element;
export declare const InfoModal: ({ open, setOpen, id, title, text }: InfoModalProps) => JSX.Element;
declare type InfoModalProps = {
open: boolean;
setOpen: (open: boolean) => void;
id?: string;
title: string;
text: string;
};
export declare const InfoPopup: ({ title, description, isOpen, onClickCloseBtn, className, positionPopUp, }: InfoPopupProps) => JSX.Element | null;
export declare type InfoPopupProps = PropsWithChildren<{
title: string;
description: string | React.ReactNode;
isOpen: boolean;
onClickCloseBtn?: () => void;
className?: string;
positionPopUp?: "left" | "right" | "center";
}>;
declare type Layout = (typeof HOME_SERVICES_LAYOUTS)[keyof typeof HOME_SERVICES_LAYOUTS];
export declare const Lazio: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare function Link({ title, src, decoration, transform, icon: Icon, asLink, }: Props): JSX.Element;
export declare const ListStructures: ({ width, height, className, }: IconProps) => JSX.Element;
export declare const Loader: ({ loading, className, }: {
loading?: boolean;
className?: string;
}) => JSX.Element;
export declare const Login: ({ title, description, loginTitle, loginDescription, buttonLabel, buttonAriaLabel, buttonHref, asImage, region, authSrc, }: LoginProps) => JSX.Element;
export declare type LoginProps = {
title: React.ReactNode;
description?: React.ReactNode;
loginTitle: string;
loginDescription: React.ReactNode;
buttonLabel: string;
buttonAriaLabel: string;
buttonHref: string;
asImage?: "img";
region?: Config["REGION"];
authSrc?: string;
};
export declare const LOGOS: Record<Region, ComponentType<IconProps>>;
export declare const Marche: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const MedicHistory: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const ModalsHeader: ({ title, closeButton, onCloseClick, }: ModalsHeaderProps) => JSX.Element;
declare type ModalsHeaderProps = {
title: string;
closeButton: string;
onCloseClick: () => void;
};
export declare const More: ({ width, height, className, filled, color, }: IconProps) => JSX.Element;
export declare const MoreActions: ({ width, height, className, color, }: IconProps) => JSX.Element;
declare type NavigationItem = {
label: string;
href: string;
icon?: ComponentType<any>;
active?: boolean;
isNewTab?: boolean;
};
declare type NavigationItem_2 = {
label: string;
href: string;
icon?: React.ComponentType<any>;
active?: boolean;
shortLabel?: string;
};
declare type NavigationItem_3 = {
label: string;
href: string;
active?: boolean;
isNewTab?: boolean;
};
declare type NavigationItem_4 = {
label: string;
href: string;
active?: boolean;
isNewTab?: boolean;
};
declare type NavigationLabels = {
closeMenu: string;
login: string;
};
declare type NavigationLabels_2 = {
closeMenu: string;
login: string;
};
export declare const NavList: ({ links, asLink, onClick }: NavListProps) => JSX.Element;
declare type NavListProps = {
links: {
value: string;
href: string;
icon?: React.ComponentType<any>;
}[];
asLink?: "a" | React.ComponentType<any>;
onClick?: () => void;
};
export declare const NotChecked: ({ width, height, className, color, }: IconProps) => JSX.Element;
declare const Notification_2: ({ width, height, className, color, }: IconProps) => JSX.Element;
export { Notification_2 as Notification }
declare type NotificationIcon = "calendar" | "actions";
export declare const NotificationSettingsSkeleton: () => JSX.Element;
export declare const NotificationsListSkeleton: () => JSX.Element;
export declare const NotificationsSettingsHeader: ({ className, ...props }: TableHeaderProps_2) => JSX.Element;
export declare const Obscured: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const Pagination: React_2.FC<PaginationProps>;
export declare interface PaginationProps {
currentPage: number;
totalResults: number;
resultsPerPage: number;
setCurrentPage: (page: number) => void;
onPageChange?: (page: number) => void;
className?: string;
}
declare type PolymorphicProps<E extends ElementType> = {
as?: E;
} & SpacingProps & Omit<ComponentPropsWithoutRef<E>, keyof SpacingProps>;
declare type PolymorphicProps_2<E extends ElementType> = {
as?: E;
md?: BreakpointSpace;
sm?: BreakpointSpace;
xs?: BreakpointSpace;
} & SpacingProps & Omit<ComponentPropsWithoutRef<E>, keyof SpacingProps>;
declare type PolymorphicProps_3<E extends ElementType> = {
as?: E;
display?: CSSProperties["display"];
justifyContent?: CSSProperties["justifyContent"];
alignItems?: CSSProperties["alignItems"];
flexWrap?: CSSProperties["flexWrap"];
ref?: React.Ref<HTMLDivElement>;
} & SpacingProps & ColorProps & TypographyProps & Omit<ComponentPropsWithoutRef<E>, keyof SpacingProps | keyof ColorProps | keyof TypographyProps>;
declare type PolymorphicProps_4<E extends ElementType> = {
as?: E;
justifyContent?: CSSProperties["justifyContent"];
alignItems?: CSSProperties["alignItems"];
flexWrap?: CSSProperties["flexWrap"];
ref?: React.Ref<HTMLDivElement>;
} & SpacingProps & ColorProps & TypographyProps & Omit<ComponentPropsWithoutRef<E>, keyof SpacingProps | keyof ColorProps | keyof TypographyProps>;
export declare const ProgressBar: ({ closeButton, onCloseClick, title, stepLabel, currentStep, totalSteps, }: DoctorModalHeaderProps) => JSX.Element;
declare type Props = {
title: string;
src: string;
decoration?: string;
transform?: "uppercase" | "lowercase" | "capitalize" | "none";
icon?: ElementType;
asLink?: ElementType;
};
declare type Props_2 = {
title: default_2.ReactNode;
subtitle: default_2.ReactNode;
children: default_2.ReactNode;
variant: EditorialWidgetVariant;
};
declare type Props_3 = {
title: string;
items: CardFileProps[];
colorTitle?: ColorKeys;
fontSizeTitle?: TypographyKeys;
};
declare type Props_4 = {
title: string;
items: any[];
};
export declare const RadioCard: ({ id, name, value, checked, label, description, onChange, }: RadioCardProps) => JSX.Element;
declare type RadioCardProps = {
id: string;
name: string;
value: string;
checked: boolean;
label: string;
description?: string;
onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
};
export declare type Region = "marche" | "lazio" | "nazionale";
export declare type RelatedPeople = {
birthDate: string;
firstName: string;
fiscalCode: string;
lastName: string;
relationship: string;
};
declare type RelatedPeopleDropDownProps = {
size?: "small" | "large";
items: RelatedPeople[];
className?: string;
selectedPerson: RelatedPeople | null;
setSelectedPerson: (person: RelatedPeople | null) => void;
placeholder?: string;
btnText?: string;
};
export declare const RichText: ({ title, description, fontSize, mdFontSize, classNameTitle, children, }: RichTextProps) => JSX.Element;
declare type RichTextProps = PropsWithChildren<{
title: ReactNode;
description?: ReactNode;
links?: SectionLink[];
asLink?: "a" | ComponentType<any>;
fontSize?: TypographyKeys;
mdFontSize?: TypographyKeys;
classNameTitle?: string;
}>;
export declare const Row: <E extends ElementType = "div">({ as, className, display, justifyContent, alignItems, flexWrap, style, ref, ...rest }: PolymorphicProps_3<E>) => JSX.Element;
declare type ScheduleDay = {
label: string;
slots: DayHours[];
};
export declare const Search: ({ btnText, helperText, onChangeValue, value, }: SearchProps_2) => JSX.Element;
export declare const SearchDocument: ({ btnText, helperText, value, items, setValue, }: SearchDocumentProps) => JSX.Element;
export declare type SearchDocumentProps = {
btnText: string;
helperText: string;
value: string;
items: any;
setValue: (value: string) => void;
};
export declare function SearchGeneric<T extends object>({ btnText, helperText, mobileHelperText, value, items, setValue, setTypedValue, getSearchField, getDisplayField, onItemSelect, minCharsToSearch, className, }: SearchGenericProps<T>): JSX.Element;
export declare type SearchGenericProps<T extends object> = {
btnText: string;
helperText: string;
mobileHelperText?: string;
value: string;
items: T[];
setValue: (value: string) => void;
setTypedValue?: (value: string) => void;
getSearchField: (item: T) => string;
getDisplayField?: (item: T) => string;
onItemSelect?: (item: T) => void;
minCharsToSearch?: number;
className?: string;
};
export declare type SearchProps = {
btnText: string;
helperText: string;
mobileHelperText?: string;
value: string;
items: Structure[];
setValue: (value: string) => void;
};
declare type SearchProps_2 = {
btnText: string;
helperText: string;
value: string;
onChangeValue?: (value: string) => void;
};
export declare const SearchService: ({ btnText, helperText, value, items, setValue, }: SearchServiceProps) => JSX.Element;
export declare type SearchServiceProps = {
btnText: string;
helperText: string;
value: string;
items: Service[];
setValue: (value: string) => void;
};
export declare const SearchStructure: ({ btnText, helperText, mobileHelperText, value, items, setValue, }: SearchProps) => JSX.Element;
export declare const SearchStructureSkeleton: () => JSX.Element;
export declare const Section: SectionComponent;
declare interface SectionComponent extends FC<SectionProps> {
Title: typeof Title;
Description: typeof Description;
}
declare type SectionProps = PropsWithChildren<{
className?: string;
}>;
export declare const Services: ({ title, description, goToLabel, href, asLink, items, layout, className, }: ServicesProps) => JSX.Element;
export declare const SERVICES_LAYOUTS: {
readonly LayoutOne: "LayoutOne";
readonly LayoutTwo: "LayoutTwo";
readonly LayoutThree: "LayoutThree";
readonly LayoutFour: "LayoutFour";
};
declare type ServicesLayout = (typeof SERVICES_LAYOUTS)[keyof typeof SERVICES_LAYOUTS];
export declare const ServicesListSkeleton: () => JSX.Element;
export declare type ServicesProps = {
title: ReactNode;
description?: ReactNode;
goToLabel?: string;
href?: string;
asLink?: "a" | ComponentType<any>;
items: any[];
layout?: ServicesLayout;
className?: string;
};
export declare const Shape: ({ width, height, className, color, }: IconProps) => JSX.Element;
export declare const ShareLink: ({ width, height, className, color, }: IconProps) => JSX.Element;
declare type SpacingKey = "x4" | "x8" | "x12" | "x16" | "x20" | "x24" | "x28" | "x32" | "x36" | "x40" | "x44" | "x48" | "x52" | "x56" | "x60" | "x64" | "x68" | "x72" | "x76" | "x80" | "x84" | "x88" | "x92" | "x96" | "x100" | "x104";
declare type SpacingProps = {
gap?: SpacingKey;
m?: SpacingKey;
mx?: SpacingKey;
my?: SpacingKey;
mt?: SpacingKey;
mr?: SpacingKey;
mb?: SpacingKey;
ml?: SpacingKey;
p?: SpacingKey;
px?: SpacingKey;
py?: SpacingKey;
pt?: SpacingKey;
pr?: SpacingKey;
pb?: SpacingKey;
pl?: SpacingKey;
br?: SpacingKey;
"br-t"?: SpacingKey;
"br-r"?: SpacingKey;
"br-b"?: SpacingKey;
"br-l"?: SpacingKey;
"min-h"?: SpacingKey;
"min-w"?: SpacingKey;
"max-h"?: SpacingKey;
"max-w"?: SpacingKey;
};
export declare const Spinner: () => JSX.Element;
export declare const SuggestedServices: ({ title, description, goToLabel, href, asLink, items, className, }: SuggestedServicesProps) => JSX.Element;
export declare type SuggestedServicesProps = {
title: ReactNode;
description?: ReactNode;
goToLabel?: string;
href?: string;
asLink?: "a" | ComponentType<any>;
items: any[];
className?: string;
};
export declare const Support: ({ width, height, className }: IconPro