export { keyframes } from '@emotion/react';
import { ShowProps, UseMediaQueryOptions, ToastPosition, AccordionProps, AccordionButtonProps as AccordionButtonProps$1, AccordionPanelProps, AccordionItemProps, ResponsiveValue, BreadcrumbProps, BreadcrumbLinkProps, ButtonProps as ButtonProps$1, ResponsiveObject, CenterProps as CenterProps$1, CheckboxProps as CheckboxProps$1, FlexProps, InputProps, SwitchProps as SwitchProps$1, DrawerProps, ModalBodyProps, DrawerContentProps, FormLabelProps as FormLabelProps$1, ComponentWithAs, GridProps, GridItemProps, HideProps, BoxProps, LinkProps as LinkProps$1, ListProps as ListProps$1, MenuProps as MenuProps$1, PopoverProps as PopoverProps$1, IconProps as IconProps$1, UseRadioGroupProps, NumberInputProps, RangeSliderProps as RangeSliderProps$2, SelectProps, SimpleGridProps, StackProps, TextProps, TooltipProps, SkeletonProps, TabsProps, TabProps, TabListProps, ModalProps, ModalCloseButtonProps, HeadingProps } from '@chakra-ui/react';
export { AspectRatio, Box, BreadcrumbItem as BreadcrumbsItem, Card, CardBody, CardFooter, CardHeader, Collapse, Divider, LinkBox, LinkBoxProps, LinkOverlay, LinkOverlayProps, ListItem, RadioGroup, Slide, Table, TableCaption, TableContainer, Tbody, Td, Text, Tfoot, Th, Thead, Tr, useAccordionItemState, useBreakpointValue, useDisclosure, useTheme, useToken } from '@chakra-ui/react';
import React, { FocusEventHandler, ChangeEventHandler, RefObject, ReactNode, ElementType, FC, PropsWithChildren, ReactElement, ChangeEvent, ComponentType, JSX, ComponentProps } from 'react';
import { Language as Language$1 } from '@smg-automotive/i18n-pkg';
import { RangeTuple } from 'fuse.js';
import { EnrichedSessionUser } from '@smg-automotive/auth';
import { ComponentWithAs as ComponentWithAs$1 } from '@chakra-ui/system';

declare const sizes: {
    xs: string;
    sm: string;
    md: string;
    lg: string;
    xl: string;
    '2xl': string;
    '3xl': string;
    '4xl': string;
    '5xl': string;
    '6xl': string;
    '7xl': string;
    '8xl': string;
    full: string;
    container: {
        sm: string;
        md: string;
        lg: string;
        xl: string;
        '2xl': string;
    };
    'auth0-width': string;
    'auth0-height': string;
};
type Sizes = Exclude<keyof typeof sizes, 'container'>;

declare const space: {
    xxs: string;
    xs: string;
    sm: string;
    md: string;
    lg: string;
    xl: string;
    '2xl': string;
    '3xl': string;
    '4xl': string;
    '5xl': string;
    '6xl': string;
    '7xl': string;
    'auth0-spacing': string;
};
type Space = Exclude<keyof typeof space, undefined>;

declare const fontWeights: {
    regular: number;
    bold: number;
};
type FontWeights = Exclude<keyof typeof fontWeights, undefined>;

declare const emBreakpoints: {
    base: string;
    '2xs': string;
    xs: string;
    sm: string;
    md: string;
    lg: string;
    xl: string;
};
type BreakpointName = keyof typeof emBreakpoints;
declare const breakpoints: Record<BreakpointName, {
    em: number;
    px: number;
}>;

declare const autoScout24Theme: Record<string, any>;
declare const motoScout24Theme: Record<string, any>;

declare const useDebouncedOnChange: ({ onChange, onBlur, debounce, }: {
    onBlur?: FocusEventHandler<HTMLInputElement>;
    onChange?: ChangeEventHandler<HTMLInputElement>;
    debounce?: number;
}) => {
    onChange: ChangeEventHandler<HTMLInputElement> | undefined;
    onBlur: FocusEventHandler<HTMLInputElement> | undefined;
};

declare const useFocusWhenVisible: ({ ref, enabled, maxWaitTime, }: {
    ref: RefObject<HTMLElement | null>;
    enabled?: boolean;
    maxWaitTime?: number;
}) => void;

declare const useMediaQuery: (query: ShowProps, options?: UseMediaQueryOptions) => boolean;

interface BareAlertProps {
    title?: string;
    description: ReactNode;
    link?: {
        as?: 'link' | 'button' | ElementType;
        text: string;
        url?: string;
        isExternal?: boolean;
        onClick?: () => void;
    };
    type?: 'error' | 'warning' | 'info' | 'success';
    icon?: ReactNode;
    onClose?: () => void;
}

interface ToastOptions extends BareAlertProps {
    position?: ToastPosition;
}
declare const useToast: () => (options: ToastOptions) => {
    closeToast: () => void;
};

declare const Accordion: FC<PropsWithChildren<AccordionProps>>;

interface AccordionButtonProps extends AccordionButtonProps$1 {
    leftIcon?: React.ReactNode;
}
declare const AccordionButton: FC<PropsWithChildren<AccordionButtonProps>>;

declare const AccordionPanel: FC<PropsWithChildren<AccordionPanelProps>>;

declare const AccordionItem: FC<PropsWithChildren<AccordionItemProps>>;

type Props$H = {
    title: string;
    text: string;
    imageUrl: string;
    url: string;
    maxImgW?: ResponsiveValue<Sizes>;
};
declare const ArticleTeaser: FC<Props$H>;

type SharedProps$4 = Omit<BareAlertProps, 'onClose'>;
type DismissibleProps = SharedProps$4 & {
    onDismiss?: () => void;
    dismissible?: true;
};
type NonDismissibleProps = SharedProps$4 & {
    onDismiss?: never;
    dismissible?: false;
};
type AlertProps = DismissibleProps | NonDismissibleProps;
declare const Alert: FC<AlertProps>;

interface BadgeProps {
    text: string;
    variant?: string;
}
declare const Badge: FC<BadgeProps>;

declare const Breadcrumbs: FC<PropsWithChildren<BreadcrumbProps>>;

declare const BreadcrumbLink: FC<BreadcrumbLinkProps>;

type Overwrite<T, NewT> = Omit<T, keyof NewT> & NewT;
type Never<Source> = {
    [P in keyof Source]?: never;
};
type LinkButton = {
    href?: string;
    isExternal?: boolean;
    rel?: string;
};
type IconButton = {
    ariaLabel: string;
    icon: ReactElement;
};
type ButtonSize = 'md' | 'lg';
type SharedProps$3 = {
    as?: 'button';
    variant?: 'primary' | 'secondary' | 'success' | 'transparent';
    size?: ButtonSize | ResponsiveValue<ButtonSize>;
    children: ReactNode;
    leftIcon?: ReactElement;
    rightIcon?: ReactElement;
    onClick?: ButtonProps$1['onClick'];
} & Omit<ButtonProps$1, 'backgroundColor' | 'background' | 'color' | 'textColor' | 'border' | 'textStyle'> & Never<LinkButton> & Never<IconButton>;
type SubmitType = Overwrite<SharedProps$3, {
    type: 'submit';
}>;
type ButtonType = Overwrite<SharedProps$3, {
    type?: 'button';
    onClick: Exclude<ButtonProps$1['onClick'], undefined>;
}>;
type ButtonProps = SubmitType | ButtonType;
type LinkProps = Overwrite<SharedProps$3, LinkButton & {
    as: ElementType;
    isDisabled?: false;
}>;
type IconProps = IconButton & Never<Pick<SharedProps$3, 'leftIcon' | 'rightIcon' | 'children'>>;
type IconButtonProps = Overwrite<ButtonType, IconProps> | Overwrite<SubmitType, IconProps> | Overwrite<LinkProps, IconProps>;
type Props$G = ButtonProps | IconButtonProps | LinkProps;
declare const Button: React.ForwardRefExoticComponent<Props$G & React.RefAttributes<HTMLLinkElement | HTMLButtonElement>>;

type SharedProps$2 = {
    startIndex?: number;
    onSlideClick?: (index: number) => void;
    onSlideSelect?: (index: number) => void;
    slidesPerView?: ResponsiveObject<number> | 1;
    loop?: boolean;
    slidesToScroll?: 'auto' | number;
};
type DefaultProps = {
    fullScreen?: never;
    children: ReactNode[];
    paginationType?: Exclude<PaginationType, PaginationType.Thumbnail>;
} & SharedProps$2;
type FullScreenSlide = {
    slide: ReactNode;
    thumbnail: ReactNode;
    onSlideEnter?: () => void;
    onSlideLeave?: () => void;
};
type FullScreenProps = {
    fullScreen: true;
    paginationType?: never;
    children: FullScreenSlide[];
} & SharedProps$2;
type Props$F = DefaultProps | FullScreenProps;
declare enum PaginationType {
    Thumbnail = "thumbnail",
    Number = "number",
    None = "none",
    Dot = "dot"
}
declare const Carousel: FC<Props$F>;

type CenterProps = Pick<CenterProps$1, 'children' | 'padding'>;
declare const Center: FC<CenterProps>;

interface CheckboxProps {
    name: string;
    value?: string;
    isDisabled?: boolean;
    isChecked?: boolean;
    onChange?: (event: ChangeEvent<HTMLInputElement>) => void;
    label?: ReactNode | string;
    isInvalid?: boolean;
    isIndeterminate?: boolean;
    fontWeight?: 'regular' | 'bold';
    variant?: 'alignCenter' | 'alignTop' | 'alignTopForSmallSize';
    paddingY?: CheckboxProps$1['paddingY'];
    readOnly?: boolean;
    fullWidth?: boolean;
}
declare const Checkbox: React.ForwardRefExoticComponent<CheckboxProps & React.RefAttributes<HTMLInputElement>>;

type Item<ItemKey, FilterName> = {
    childCheckboxes?: Item<ItemKey, FilterName>[];
    facet?: number | null;
    filterName?: FilterName;
    highlightIndices?: ReadonlyArray<[number, number]>;
    image?: ReactNode;
    isChecked?: boolean;
    key: ItemKey;
    label: string;
};
type Props$E<ItemKey extends string, FilterName extends string> = {
    alwaysExpanded?: boolean;
    /**
     * @template ItemKey
     * @template FilterName
     * @param {Item} item     renders one checkbox { key: ItemKey, label: string, facet: number, isChecked: boolean }
     * @param item.key        unique name of the checkbox
     * @param item.label      label shown on the UI
     * @param item.facet      Numeric value shown next to the checkbox label. Indicates how many search results are going to be visible after the checkbox has been applied.
     * @param item.isChecked  The checkbox filter is a controlled component and the updated filter value must be passed in order to see the correct state.
     * @param item.image      image/icon shown on the UI
     * @param item.childCheckboxes      to show a collapsible checkbox with child items
     * @param item.filterName      in case multiple filters are controlled
     */
    items: Item<ItemKey, FilterName>[];
    /**
     * Callback function that is triggered after any checkbox has been clicked.
     * In case of the nested checkboxes it needs to update the parent/children respectively
     * @param updatedItem     contains the modified checkbox with the new value
     */
    onApply: (updatedItem: Item<ItemKey, FilterName>) => void;
    numberOfColumnsOnDesktop?: number;
    onToggleCheckboxGroup?: (pressedItem: Item<ItemKey, FilterName>) => void;
    language: Language$1;
};

declare function CheckboxFilter<ItemKey extends string, FilterName extends string>({ alwaysExpanded, items, onApply, numberOfColumnsOnDesktop, onToggleCheckboxGroup, language, }: Props$E<ItemKey, FilterName>): React.JSX.Element;

interface CheckboxGroupProps extends CheckboxProps {
    /**
     * Array of children checkboxes
     */
    checkboxes?: CheckboxProps[];
    addDividerAfterIndex?: number[];
}
declare const CheckboxGroup: FC<CheckboxGroupProps>;

type ChipProps = {
    isDisabled?: boolean;
    onClick?: () => void;
    isActive?: boolean;
    href?: string;
    'aria-label'?: string;
} & Pick<FlexProps, 'as'>;
declare const Chip: FC<PropsWithChildren<ChipProps>>;

type CountVariant = 'primary' | 'inverted' | 'info' | 'success' | 'warning' | 'error';
interface Props$D {
    variant?: CountVariant;
    count: number;
    ariaLabel?: string;
}
declare const Count: FC<Props$D>;

interface Props$C extends Pick<InputProps, 'onFocus' | 'onBlur' | 'onChange'> {
    size?: 'md' | 'lg';
    min?: Date;
    value?: string;
    isInvalid?: boolean;
}
declare const DatePicker: React.ForwardRefExoticComponent<Props$C & React.RefAttributes<HTMLInputElement>>;

interface Props$B extends Pick<InputProps, 'onFocus' | 'onBlur' | 'onChange'> {
    size?: 'md' | 'lg';
    value?: string;
    isInvalid?: boolean;
}
declare const TimePicker: React.ForwardRefExoticComponent<Props$B & React.RefAttributes<HTMLInputElement>>;

declare enum Brand {
    AutoScout24 = "autoscout24",
    MotoScout24 = "motoscout24"
}

type SwitchProps = Pick<SwitchProps$1, 'onChange' | 'isChecked' | 'isDisabled' | 'aria-label'> & {
    id: string;
    label?: ReactNode;
};
declare const Switch: FC<SwitchProps>;

type DevOverlayVariables = Record<string, string | number>[];
type DevOverlayProps = Omit<ButtonProps, 'onClick' | 'children'> & Omit<SwitchProps, 'onChange' | 'label' | 'id'> & {
    hideDevOverlay: Exclude<ButtonProps['onClick'], undefined>;
    toggleTheme: Exclude<SwitchProps['onChange'], undefined>;
    toggleTranslation: Exclude<SwitchProps['onChange'], undefined>;
    variables: DevOverlayVariables;
    activeTheme: Brand;
    displayTranslationKeys: boolean;
};
declare const DevOverlay: FC<DevOverlayProps>;

declare const Drawer: FC<PropsWithChildren<DrawerProps>>;

declare const DrawerBody: FC<PropsWithChildren<ModalBodyProps>>;

interface Props$A extends DrawerContentProps {
    withCloseButton?: boolean;
}
declare const DrawerContent: FC<PropsWithChildren<Props$A>>;

declare const DrawerOverlay: FC<PropsWithChildren>;

type Efficiency = 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G';
interface Props$z {
    efficiency: Efficiency;
}
declare const EnergyLabel: FC<Props$z>;

type ErrorStatusCode = 404 | 500 | 'clientSide' | 'UNVERIFIED_EMAIL' | 'INITIAL_UNVERIFIED_EMAIL' | 'USER_BLOCKED' | 'UNKNOWN_AUTH_ERROR' | 'EMAIL_CHANGE_VERIFICATION_ERROR';

interface Props$y {
    statusCode: ErrorStatusCode;
    language: Language$1;
    onButtonClick?: () => void;
}
declare const ErrorPage: FC<Props$y>;

declare const Flex: FC<Omit<FlexProps, 'gap' | 'columnGap' | 'rowGap'>>;

type Props$x = {
    isDisabled?: boolean;
    isRequired?: boolean;
    errorMessage?: string;
    id: string;
    label?: string;
    hint?: string;
    tooltip?: string;
    size?: 'sm' | 'lg';
    labelButtonText?: string;
    labelButtonOnClick?: () => void;
};
declare const FormControl: FC<PropsWithChildren<Props$x>>;

type FormLabelProps = {
    size?: 'sm' | 'lg';
} & Pick<FormLabelProps$1, 'htmlFor'>;
declare const FormLabel: FC<PropsWithChildren<FormLabelProps>>;

declare const FullHeight: FC<PropsWithChildren>;

declare const Grid: ComponentWithAs<'div', GridProps>;

declare const GridItem: ComponentWithAs<'div', GridItemProps>;

type Props$w = Omit<HideProps, 'ssr'> & Omit<BoxProps, 'sx'>;
declare const Hide: FC<Props$w>;

type SharedProps$1 = {
    placeholder?: string;
    isInvalid?: boolean;
    isDisabled?: boolean;
    size?: 'md' | 'lg';
    onBlur?: FocusEventHandler<HTMLInputElement>;
    onFocus?: FocusEventHandler<HTMLInputElement>;
    autoFocus?: boolean;
    name: string;
    type?: 'text' | 'number' | 'password';
    icon?: ComponentType;
    isClearable?: boolean;
    rightAddonElement?: ReactElement;
    leftAddonElement?: ReactElement;
    autoComplete?: 'on' | 'off';
};
type ControlledInputProps = {
    debounce?: false;
    value: string | number;
    onChange: ChangeEventHandler<HTMLInputElement>;
    setInputValue?: never;
} & SharedProps$1;
type InputPros = {
    debounce?: false;
    value?: never;
    onChange?: ChangeEventHandler<HTMLInputElement>;
    setInputValue?: never;
} & SharedProps$1;
type DebouncedInputPros = {
    value: string | number;
    onChange?: never;
    debounce: true;
    setInputValue: (value: string) => void;
} & SharedProps$1;
type Props$v = ControlledInputProps | InputPros | DebouncedInputPros;
declare const Input: React.ForwardRefExoticComponent<Props$v & React.RefAttributes<HTMLInputElement>>;

interface Props$u extends Partial<Omit<LinkProps$1, 'href' | 'onClick'>> {
    leftIcon?: ReactNode;
    rightIcon?: ReactNode;
    disabled?: boolean;
    href?: string | ReactNode | null;
    onClick?: ButtonProps$1['onClick'] | ((e: MouseEvent) => void) | null;
    to?: string;
    replace?: boolean;
    prefetch?: boolean;
}
declare const Link: React.ForwardRefExoticComponent<Props$u & React.RefAttributes<HTMLAnchorElement>>;

declare const ColorPicker: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<HTMLInputElement>>;

declare const List: React.ForwardRefExoticComponent<Omit<ListProps$1, "variant"> & {
    children?: React.ReactNode | undefined;
} & React.RefAttributes<HTMLUListElement | null>>;

type ListProps = {
    variant?: 'icon-inside' | 'icon-outside';
    size?: 'sm' | 'md';
    start?: number;
};

declare const styleTypes$1: readonly ["decimal", "lower-alpha", "lower-roman", "upper-alpha", "upper-roman"];
type StyleType$1 = (typeof styleTypes$1)[number];
type Props$t = PropsWithChildren<ListProps & {
    styleType?: StyleType$1;
}>;
declare const OrderedList: FC<Props$t>;

declare const styleTypes: readonly ["disc", "circle", "square", "initial"];
type StyleType = (typeof styleTypes)[number];
type Props$s = PropsWithChildren<ListProps & {
    styleType?: StyleType;
}>;
declare const UnorderedList: FC<Props$s>;

type SearchFieldOptions = {
    placeholder?: string;
    onFocus?: () => void;
    onBlur?: () => void;
    autofocusOnDesktop?: boolean;
    autoComplete?: 'on' | 'off';
};
declare const SearchField: React.ForwardRefExoticComponent<{
    name: string;
    ariaControls?: string;
    searchQuery: string;
    setSearchQuery: (newQuery: string) => void;
} & SearchFieldOptions & React.RefAttributes<HTMLInputElement>>;

type CommonListItem = {
    label: string;
    value: string;
    facet?: string;
    isSelected: boolean;
    showChevron?: boolean;
    highlightIndices?: readonly RangeTuple[];
    isCheckbox?: boolean;
};
type CheckboxListItem = {
    onClick: (event: ChangeEvent<HTMLInputElement>) => void;
    isCheckbox: true;
    isIndeterminate?: boolean;
} & CommonListItem;
type RadioButtonListItem = {
    onClick: ButtonProps$1['onClick'];
    isCheckbox?: false;
} & CommonListItem;
type ListItemType = CheckboxListItem | RadioButtonListItem;

type ListItemWithChildren = ListItemType & {
    children?: ListItemType[];
};
type Props$r = {
    listItems: ListItemWithChildren[];
    NoResults?: FC;
    EmptyQueryPlaceholder?: FC;
    listAriaLabel?: string;
    searchFieldOptions?: SearchFieldOptions;
    listOptions?: {
        columns?: number;
        childrenSpacing?: 'md' | '2xl';
    };
    listRef?: React.RefObject<HTMLUListElement | null>;
};
declare const SearchableList: React.ForwardRefExoticComponent<Props$r & React.RefAttributes<HTMLInputElement>>;

interface MenuItem {
    text: JSX.Element | string;
    onClick: () => void;
}
interface MenuProps {
    title: string | ReactElement;
    items: MenuItem[];
    fontWeightTitle?: FontWeights;
    offset?: [number, number];
    menuColor?: string;
    showChevron?: boolean;
    icon?: ReactElement;
    iconSpacing?: ButtonProps$1['iconSpacing'];
    placement?: MenuProps$1['placement'];
}
declare const Menu: FC<MenuProps>;

declare const MissingImage: FC;

type Props$q = {
    totalPages: number;
    currentPage: number;
    onChange: (page: number) => void;
} & Pick<BoxProps, 'marginTop' | 'marginBottom'>;
declare const Pagination: FC<PropsWithChildren<Props$q>>;

type ContentPadding = '2xl' | 0;
type MaxWidth = '6xl' | '8xl';
type PopoverProps = PropsWithChildren<{
    content: ReactNode;
    showArrow?: boolean;
    contentPadding?: ContentPadding;
    maxWidth?: MaxWidth;
    contentPosition?: 'relative' | 'absolute';
} & Pick<PopoverProps$1, 'placement' | 'closeOnBlur' | 'gutter' | 'size' | 'trigger' | 'onClose' | 'onOpen' | 'isOpen'>>;
declare const Popover: FC<PopoverProps>;

type FilterPatternProps = {
    /**
     * Shows the value of the filter in default and open state.
     */
    displayValue: string;
    /**
     * Showing an icon (e.g. EV indicator) on the filter button and heading
     */
    Icon?: FC<IconProps$1>;
    /**
     * To know if a filter is applied or not.
     * Controls styling and to know which button is shown.
     */
    isApplied: boolean;
    /**
     * Label for the filter button and the modal/popover title.
     */
    label: string;
    language: Language$1;
    /**
     * In case multiple filters are shown in the same filter (e.g. a list of checkboxes).
     * This can be used to show a branded bubble next to the filter title that shows how many filters are applied.
     */
    numberOfAppliedFilters?: number;
    /**
     * Callback that is called if the reset filter button is pressed.
     */
    onResetFilter: (placement: 'filterButton' | 'filter') => void;
    /**
     * If a call-to-action button is displayed in the filter footer
     * @default true
     */
    showCallToActionButton?: boolean;
    /**
     * To show a custom filter header.
     */
    header?: ReactNode;
    /**
     * Content of the filter.
     */
    children: ReactNode;
};

type ActionButtonProps = {
    /**
     * The primary action button if a filter is applied.
     * If a filter is not applied, a secondary close button is shown.
     */
    actionButton: {
        label: string;
        onClick?: () => void;
        href?: () => void;
    };
    onClose: () => void;
} & Pick<FilterPatternProps, 'isApplied'>;

type PopoverFilterProps = FilterPatternProps & Omit<ActionButtonProps, 'onClose'> & {
    initialPopoverState?: 'open' | 'closed';
    onPopoverClose?: () => void;
    onPopoverOpen?: () => void;
    appliedLabel?: string;
    enforceHeight?: boolean;
    triggerHeight?: 'md' | 'lg';
    isDisabled?: boolean;
    hasFlip?: boolean;
    zIndex?: string;
};

declare const PopoverFilter: FC<PopoverFilterProps>;

type PaddingX = '0' | 'md';
type Variant = 'sm' | 'md';
type Props$p = Pick<FilterPatternProps, 'label' | 'displayValue' | 'Icon' | 'isApplied'> & Pick<ButtonProps$1, 'backgroundColor'> & {
    onClick: () => void;
    variant?: Variant;
    isDisabled?: boolean;
    paddingX?: PaddingX;
};
declare const OpenFilterButton: FC<Props$p>;

type ModalFilterProps = FilterPatternProps & Omit<ActionButtonProps, 'onClose'> & {
    onModalOpen?: () => void;
    onModalClose?: () => void;
    initialModalState?: 'open' | 'closed';
    isDisabled?: boolean;
    paddingX?: PaddingX;
    trapFocus?: boolean;
} & Pick<ButtonProps$1, 'backgroundColor'>;

declare const ModalFilter: FC<ModalFilterProps>;

type Props$o = {
    onClose?: () => void;
    language: Language$1;
    contentRef?: RefObject<HTMLElement | null>;
} & Pick<FilterPatternProps, 'Icon' | 'isApplied' | 'label' | 'numberOfAppliedFilters' | 'onResetFilter'>;
declare const FilterHeading: FC<Props$o>;

interface Props$n {
    name?: string;
    value: string;
    label?: string;
    size?: 'md' | 'base';
    onChange?: (event: ChangeEvent<HTMLInputElement>) => void;
    isChecked?: boolean;
    isInvalid?: boolean;
    isDisabled?: boolean;
    variant?: 'fontRegular' | 'fontBold';
}
declare const Radio: React.ForwardRefExoticComponent<Props$n & React.RefAttributes<HTMLInputElement>>;

type RadioListProps = {
    options: JSX.Element[];
} & Pick<UseRadioGroupProps, 'name' | 'defaultValue' | 'onChange'>;
declare const RadioList: FC<RadioListProps>;

type FollowUpProps = {
    id: string;
    name: string;
    options: {
        label: string;
        value: string;
    }[];
    groupLabel: string;
    tooltip?: string;
    hint?: string;
};
type Option$1 = {
    label: string;
    value: string;
};
type Props$m<TOptions extends readonly Option$1[] = Option$1[]> = {
    id: string;
    name: string;
    values: Record<string, string>;
    onChange: (values: Record<string, string>) => void;
    options: TOptions;
    groupLabel: string;
    tooltip?: string;
    errorMessage?: string;
    hint?: string;
    followUps?: Partial<Record<TOptions[number]['value'], FollowUpProps>>;
    recurring?: boolean;
};
declare const QuestionWithFollowUp: React.ForwardRefExoticComponent<Props$m<Option$1[]> & {
    children?: React.ReactNode | undefined;
} & React.RefAttributes<HTMLInputElement>>;

type RangeFilterInputField<Name> = {
    name: Name;
    value?: number | null;
    placeholder?: string;
    ariaLabel?: string;
};
type ChangeCallback$1<Name> = {
    value?: number | null;
    name: Name;
};
type PickedNumberInputProps = Pick<NumberInputProps, 'min' | 'max' | 'isDisabled' | 'onFocus'>;
type RangeFilterInputProps<NameFrom, NameTo> = {
    from: RangeFilterInputField<NameFrom>;
    handleChange: (event: ChangeCallback$1<NameFrom | NameTo>) => void;
    onBlur?: (event: ChangeCallback$1<NameFrom | NameTo>) => void;
    to: RangeFilterInputField<NameTo>;
    unit?: string;
} & PickedNumberInputProps;
declare function RangeFilterInput<NameFrom extends string, NameTo extends string>({ from, to, handleChange, unit, onBlur, ...rest }: RangeFilterInputProps<NameFrom, NameTo>): React.JSX.Element;

type RangeSliderProps$1 = RangeSliderProps$2;
declare const RangeSlider: FC<RangeSliderProps$1>;

type DiscreteSliderMark<T> = {
    stepValue?: number;
    label: ReactNode;
    value: T;
};
type DiscreteSliderProps<T> = {
    applyIndentation?: boolean;
    marks: DiscreteSliderMark<T>[];
    value: T;
    onValueChanged: (arg: T) => void;
};
declare const DiscreteSlider: <T>({ marks, applyIndentation, onValueChanged, value, }: DiscreteSliderProps<T>) => React.JSX.Element;

type NumericMinMaxValue = {
    min: number | null | undefined;
    max: number | null | undefined;
};
type ChangeCallback = {
    touched: 'min' | 'max';
    value: NumericMinMaxValue;
};

type Facet = {
    from: number;
    to?: number | null;
    value: number;
};
interface RangeSliderWithChartProps {
    facets: Facet[];
    selection: NumericMinMaxValue;
    onSliderChange: (event: ChangeCallback) => void;
    onSliderRelease: (event: ChangeCallback) => void;
    chartHeight?: BoxProps['h'];
}

type ChangeRangeInputWithSliderCallback<Name> = {
    changeType?: 'inputfield' | 'slider';
} & ChangeCallback$1<Name>;
type RangeSliderProps = {
    facets?: Facet[];
    rangeSliderScale?: number[];
    chartHeight?: RangeSliderWithChartProps['chartHeight'];
} & ({
    facets: Facet[];
    chartHeight?: string;
    rangeSliderScale?: never;
} | {
    rangeSliderScale: number[];
    facets?: never;
    chartHeight?: never;
});
type Props$l<NameFrom, NameTo> = {
    from: RangeFilterInputField<NameFrom>;
    onChange: (event: ChangeRangeInputWithSliderCallback<NameFrom | NameTo>) => void;
    onBlur?: (event: ChangeRangeInputWithSliderCallback<NameFrom | NameTo>) => void;
    to: RangeFilterInputField<NameTo>;
    unit?: string;
} & RangeSliderProps & PickedNumberInputProps;
declare function RangeFilterInputWithSlider<NameFrom extends string, NameTo extends string>({ rangeSliderScale, facets, unit, onChange, from, to, chartHeight, ...rest }: Props$l<NameFrom, NameTo>): React.JSX.Element;

type Props$k = {
    rating: number;
    size: 'large' | 'small';
};
declare const Rating: FC<Props$k>;

interface Props$j {
    variant?: 'hero' | 'regular';
    title: string;
    text?: string;
    image?: ReactNode;
    maxImgW?: ResponsiveValue<Sizes>;
}
declare const Section: FC<Props$j>;

type Option<T extends string | number> = {
    value: T;
    label: string;
};
type OptionsAndValue<T extends string | number> = {
    options: Option<T>[];
    value?: T;
};
type Props$i = Pick<SelectProps, 'placeholder' | 'isInvalid' | 'isDisabled' | 'onBlur' | 'onFocus' | 'onChange' | 'autoFocus' | 'borderLeftRadius' | 'borderRightRadius'> & {
    size?: 'md' | 'lg';
    name: string;
} & (OptionsAndValue<string> | OptionsAndValue<number>);
declare const Select: React.ForwardRefExoticComponent<Props$i & React.RefAttributes<HTMLSelectElement>>;

type Props$h = Omit<ShowProps, 'ssr'> & Omit<BoxProps, 'sx'> & {
    showDisplay?: string;
};
declare const Show: FC<Props$h>;

type Props$g = Pick<SimpleGridProps, 'minChildWidth' | 'columns' | 'spacing' | 'spacingX' | 'spacingY' | 'children' | 'alignItems' | 'width' | 'rowGap'>;
declare const SimpleGrid: FC<Props$g>;

interface Props$f {
    title: string;
    url: string;
}
declare const SimpleHeader: FC<Props$f>;

type Props$e = Pick<StackProps, 'align' | 'children' | 'direction' | 'justify' | 'spacing' | 'wrap' | 'marginBottom' | 'marginTop' | 'divider' | 'marginY' | 'paddingY' | 'paddingX' | 'alignItems' | 'width'>;
declare const Stack: FC<Props$e>;

type Props$d = {
    size?: 'xs' | 'sm' | 'md' | 'lg';
};
declare const Spinner: FC<Props$d>;

type Props$c = {
    text: string;
    highlightIndices?: ReadonlyArray<[number, number]>;
} & Omit<TextProps, 'as' | 'fontWeight'>;
declare const HighlightedText: FC<Props$c>;

type SharedProps = Exclude<BoxProps, 'position' | 'width' | 'display' | 'alignItems'>;
type HighlightProps = SharedProps & {
    variant?: 'highlight';
    highlightColor?: 'white' | 'gray.100' | 'brand.primary';
};
type UnderlineProps = SharedProps & {
    variant: 'underline';
    highlightColor?: never;
};
type MarkedTextProps = HighlightProps | UnderlineProps;
declare const MarkedText: FC<MarkedTextProps>;

interface Props$b {
    name: string;
    value?: string;
    placeholder?: string;
    isInvalid?: boolean;
    isDisabled?: boolean;
    autoFocus?: boolean;
    onBlur?: FocusEventHandler<HTMLTextAreaElement>;
    onFocus?: FocusEventHandler<HTMLTextAreaElement>;
    onChange?: ChangeEventHandler<HTMLTextAreaElement>;
    rows?: number;
    cols?: number;
    textStyle?: 'body' | 'body-small';
}
declare const Textarea: React.ForwardRefExoticComponent<Props$b & React.RefAttributes<HTMLTextAreaElement>>;

type Props$a = {
    children: React.ReactNode;
} & Pick<TooltipProps, 'label' | 'placement' | 'maxWidth'>;
declare const Tooltip: FC<Props$a>;

declare const Skeleton: FC<SkeletonProps>;

type Project = 'listings-web' | 'seller-web';

type Language = 'de' | 'fr' | 'it' | 'en';

type Environment = 'production' | 'preprod';

interface FooterProps {
    brand: Brand;
    language: Language;
    environment?: Environment;
    useAbsoluteUrls?: boolean;
    project?: Project;
}
declare const Footer: FC<FooterProps>;

type Props$9 = {
    aspectRatio?: number;
};
declare const TopListingBadge: FC<PropsWithChildren<Props$9>>;

declare const AppLayout: ComponentWithAs<'div', GridProps>;

declare const AppLayoutHeader: ComponentWithAs<'div', GridItemProps>;

declare const AppLayoutFooter: ComponentWithAs<'div', GridItemProps>;

declare const AppLayoutContent: ComponentWithAs<'div', GridItemProps>;

type Props$8 = {
    variant?: 'spaceBetween' | 'spaceAround' | 'enclosed' | 'fullWidth';
} & Pick<TabsProps, 'defaultIndex' | 'isLazy' | 'onChange' | 'index'>;
declare const Tabs: FC<PropsWithChildren<Props$8>>;

type Props$7 = {
    marginX?: Space;
} & Pick<TabProps, 'isDisabled' | 'as'>;
declare const Tab: FC<PropsWithChildren<Props$7>>;

declare const TabList: FC<PropsWithChildren<TabListProps>>;

declare const TabPanel: FC<PropsWithChildren>;

declare const TabPanels: FC<PropsWithChildren>;

type ActionButton = {
    action: () => void;
    label: string;
};
interface Props$6 extends Pick<ModalProps, 'isOpen' | 'onClose' | 'motionPreset'> {
    title?: string;
    primaryActionButton?: ActionButton;
    secondaryActionButton?: ActionButton;
    variant?: 'fullScreen' | 'base' | 'topScroll';
    size?: 'md' | 'lg' | 'full' | 'auth0';
    disableBodyPadding?: boolean;
    overlayColor?: 'default' | 'gray';
}
declare const Modal: FC<PropsWithChildren<Props$6>>;

declare const ModalCloseButton: FC<ModalCloseButtonProps>;

type CustomEvent = {
    eventAction: string;
    eventCategory: string;
    eventLabel?: string | null;
};

interface NavigationProps {
    brand: Brand;
    comparisonItemIds?: number[] | null;
    entitlements?: string[];
    environment: Environment;
    experiments?: Record<string, string>;
    hasNotification: boolean;
    language: Language$1;
    onLogin: () => void;
    onLogout: () => void;
    trackEvent?: (event: CustomEvent) => void;
    useAbsoluteUrls?: boolean;
    project?: Project;
    user: EnrichedSessionUser | null;
    selectTenant: (sellerId: number | string) => Promise<void>;
    showTenantSelection?: boolean;
}
declare const Navigation: FC<NavigationProps>;

declare enum UserTypeExternal {
    Guest = "guest"
}

interface GalleryHeaderProps {
    currentSlide: number;
    slidesCount: number;
    onClose: () => void;
    language: Language;
}
declare const GalleryHeader: FC<PropsWithChildren<GalleryHeaderProps>>;

interface MenuOption {
    value: string;
    label: string;
    onClick?: () => void;
}
interface SelectMenuProps {
    title: string | JSX.Element;
    value: string;
    options: MenuOption[];
    fontWeightTitle?: FontWeights;
    offset?: [number, number];
    menuColor?: string;
    menuOptionColor?: string;
    onChange?: (val: string | string[]) => void;
    leftIcon?: JSX.Element;
    withIndicator?: boolean;
}
declare const SelectMenu: FC<SelectMenuProps>;

type Props$5 = {
    aspectRatio?: number;
};
declare const TopVehicleSharedBadge: FC<PropsWithChildren<Props$5>>;

type FocusedHeaderProps = {
    brand: Brand;
};
declare const FocusedHeader: FC<FocusedHeaderProps>;

type Props$4 = {
    id: string;
    errorMessage?: string;
    label?: string;
    hint?: string;
    tooltip?: string;
    recurring?: boolean;
};
declare const FormControlSection: FC<PropsWithChildren<Props$4>>;

type Props$3 = {
    theme: Brand;
};
declare const ThemeProvider: FC<PropsWithChildren<Props$3>>;

interface Props$2 {
    image?: ReactNode;
    vehicleTitle: string;
    price?: string | null;
    sellerName?: string | null;
    sellerAddress?: string | null;
    callToAction?: ReactNode;
    templateColumns?: ComponentProps<typeof Grid>['templateColumns'];
}
declare const VehicleReference: FC<Props$2>;

declare const H1: FC<Omit<HeadingProps, 'as'>>;
declare const H2: FC<Omit<HeadingProps, 'as'>>;
declare const H3: FC<Omit<HeadingProps, 'as'>>;
declare const H4: FC<Omit<HeadingProps, 'as'>>;
declare const H5: FC<Omit<HeadingProps, 'as'>>;
declare const H6: FC<Omit<HeadingProps, 'as'>>;

declare const AdvancedSearchIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ArrowCircleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ArrowDiagonalIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ArrowDownIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ArrowLeftIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ArrowRightIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ArrowUpIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const AutoScout24AppLogo: ComponentWithAs$1<'svg', IconProps$1>;

declare const AvatarIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const AvatarWithNotificationIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const BatteryIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const BookmarkIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CalculatorIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CalendarIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CallIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CamperIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CarConditionIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CarIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CopyIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ChartIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CheckmarkIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CheckmarkCircleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CheckShieldIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ChevronDownLargeIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ChevronDownSmallIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ChevronLeftLargeIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ChevronLeftSmallIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ChevronRightLargeIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ChevronRightSmallIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ChevronRightTinyIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ChevronUpLargeIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ChevronUpSmallIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CloseIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CompareIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ConsumptionIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CreditIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CreditCardIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const DaylightIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const DeleteIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const DocumentCheckIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const DocumentIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const DragIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const DriveSystemIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const DriveTypeIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const EquipmentIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ErrorIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ExchangeIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const EyeIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const EyeCrossedIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const FacebookIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const FlagIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const FlameIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const FlashIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const GasStationIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const HeartIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const HistoryClockIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const HouseIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ImageIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const InfoIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const InstagramIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const InteriorIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const LinkedinIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ListIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const LocationPinIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const MagnifierIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const MessageIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const MissingImageIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const MotorcycleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const MotoScout24AppLogo: ComponentWithAs$1<'svg', IconProps$1>;

declare const PenIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const PlusIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ChfCurrencyIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const PrintIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const RangeIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const RoadIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const RotateIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const SafeNumberIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ShareIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const StarIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const SteeringWheelIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ThreeSixtyIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const TimeIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const TooltipIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const InformationIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const TopListingIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const TrailerIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const TransmissionIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const TrashIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const TruckIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const TwitterIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const UtilityVehicleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const VehiclePowerIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const VehicleTypesMotorcycleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const VideoIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const VideoCameraIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ViewCarIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const DriveSystemLargeIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const WarningIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const WhatsAppIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const YoutubeIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const SortIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ViewMotorcycleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const GoogleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const SaveSearchIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const AutoScout24Icon: ComponentWithAs$1<'svg', IconProps$1>;

declare const MotoScout24Icon: ComponentWithAs$1<'svg', IconProps$1>;

declare const MagnifierLargeIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const RocketIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CartIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const VanIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const MiniVanIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const SuvIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CoupeIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CabrioletIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const SmallCarIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const SedanIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const WagonIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const PickUpIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const InformationBubbleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const OverflowVerticalIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const PartialClockIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const LockIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const TiltedRectangleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const PlusCircleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const StarCircleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const InfinityCircleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const VehicleTypesMotorcycleStarIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CategoryAOneIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CategoryAIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CategoryAMinusIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const BankNotesIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ChatBubbleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const DigitalContractIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const OptimizerIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CheckmarkCircleColorIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ArrowDownCircleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ArrowUpCircleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const NotAvailableIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const LabelIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const BulbIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const NoPhotoIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ThumbsUpIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ThumbsDownIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const MinusIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const DoubleChevronUpIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const DoubleChevronDownIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const DoubleLineIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const NotAvailableSquareIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const WarrantyIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const DownloadIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const TriangleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const SwissFlagIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const GlobeIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const GarageIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const HamburgerMenuIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const LogoutIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const AndroidIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const AppleIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const WindowsIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const SpeakerIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const AddPhotoIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ScreenIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const QualitySealIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ExpandIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const CollapseIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ForwardIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const BalanceIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const ParagraphIcon: ComponentWithAs$1<'svg', IconProps$1>;

declare const repeatArea: (count: number, area: string) => string;

type ColumnSize = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11;
interface TwoColumnsLayoutProps {
    header?: ReactNode;
    title?: string | ReactNode;
    backLink?: {
        text: string;
        url: string;
    } | ReactNode;
    left: {
        content: ReactNode;
        columns?: ColumnSize;
    };
    right: {
        content: ReactNode;
        columns?: ColumnSize;
    };
    maxContentWidth?: keyof typeof sizes.container;
}
declare const TwoColumnsLayout: FC<TwoColumnsLayoutProps>;

interface Props$1 extends Omit<TwoColumnsLayoutProps, 'left' | 'right'> {
    vehicle: Props$2;
    leftColumnSize?: ColumnSize;
    rightColumnSize?: ColumnSize;
}
declare const LayoutWithVehicleReference: FC<PropsWithChildren<Props$1>>;

type SingleColumnCenteredLayoutProps = PropsWithChildren<{
    maxContentWidth?: keyof typeof sizes.container;
}>;
declare const SingleColumnCenteredLayout: FC<SingleColumnCenteredLayoutProps>;

interface Props {
    header: ReactNode;
    maxContentWidth: keyof typeof sizes.container;
    skyScraperAd?: ReactNode;
    heroAd?: ReactNode;
    footer?: ReactNode;
}
declare const PageLayout: FC<PropsWithChildren<Props>>;

type TenantSelectionProps = {
    user: EnrichedSessionUser | null;
    isLoading?: boolean;
    selectTenant: (sellerId: number | string) => void;
    language: Language$1;
};
declare const TenantSelection: FC<TenantSelectionProps>;

declare const convertRemEmToPx: (value: string) => number;

declare class Logger {
    onMissingTranslation: (error: Error) => void;
}
declare const logger: Logger;

export { Accordion, AccordionButton, AccordionItem, AccordionPanel, AddPhotoIcon, AdvancedSearchIcon, Alert, AndroidIcon, AppLayout, AppLayoutContent, AppLayoutFooter, AppLayoutHeader, AppleIcon, ArrowCircleIcon, ArrowDiagonalIcon, ArrowDownCircleIcon, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowUpCircleIcon, ArrowUpIcon, ArticleTeaser, AutoScout24AppLogo, AutoScout24Icon, AvatarIcon, AvatarWithNotificationIcon, Badge, BalanceIcon, BankNotesIcon, BatteryIcon, BookmarkIcon, BreadcrumbLink, Breadcrumbs, BulbIcon, Button, CabrioletIcon, CalculatorIcon, CalendarIcon, CallIcon, CamperIcon, CarConditionIcon, CarIcon, Carousel, CartIcon, CategoryAIcon, CategoryAMinusIcon, CategoryAOneIcon, Center, ChartIcon, ChatBubbleIcon, CheckShieldIcon, Checkbox, CheckboxFilter, CheckboxGroup, CheckmarkCircleColorIcon, CheckmarkCircleIcon, CheckmarkIcon, ChevronDownLargeIcon, ChevronDownSmallIcon, ChevronLeftLargeIcon, ChevronLeftSmallIcon, ChevronRightLargeIcon, ChevronRightSmallIcon, ChevronRightTinyIcon, ChevronUpLargeIcon, ChevronUpSmallIcon, ChfCurrencyIcon, Chip, CloseIcon, CollapseIcon, ColorPicker, CompareIcon, ConsumptionIcon, CopyIcon, Count, CoupeIcon, CreditCardIcon, CreditIcon, DatePicker, DaylightIcon, DeleteIcon, DevOverlay, DigitalContractIcon, DiscreteSlider, DocumentCheckIcon, DocumentIcon, DoubleChevronDownIcon, DoubleChevronUpIcon, DoubleLineIcon, DownloadIcon, DragIcon, Drawer, DrawerBody, DrawerContent, DrawerOverlay, DriveSystemIcon, DriveSystemLargeIcon, DriveTypeIcon, EnergyLabel, EquipmentIcon, ErrorIcon, ErrorPage, ExchangeIcon, ExpandIcon, EyeCrossedIcon, EyeIcon, FacebookIcon, FilterHeading, FlagIcon, FlameIcon, FlashIcon, Flex, FocusedHeader, Footer, FormControl, FormControlSection, FormLabel, ForwardIcon, FullHeight, GalleryHeader, GarageIcon, GasStationIcon, GlobeIcon, GoogleIcon, Grid, GridItem, H1, H2, H3, H4, H5, H6, HamburgerMenuIcon, Navigation as HeaderNavigation, HeartIcon, Hide, HighlightedText, HistoryClockIcon, HouseIcon, ImageIcon, InfinityCircleIcon, InfoIcon, InformationBubbleIcon, InformationIcon, Input, SingleColumnCenteredLayout as InsertionLayout, InstagramIcon, InteriorIcon, LabelIcon, LayoutWithVehicleReference, Link, LinkedinIcon, List, ListIcon, LocationPinIcon, LockIcon, LogoutIcon, MagnifierIcon, MagnifierLargeIcon, MarkedText, Menu, MessageIcon, MiniVanIcon, MinusIcon, MissingImage, MissingImageIcon, Modal, ModalCloseButton, ModalFilter, MotoScout24AppLogo, MotoScout24Icon, MotorcycleIcon, NoPhotoIcon, NotAvailableIcon, NotAvailableSquareIcon, OpenFilterButton, OptimizerIcon, OrderedList, OverflowVerticalIcon, PageLayout, Pagination, PaginationType, ParagraphIcon, PartialClockIcon, PenIcon, PickUpIcon, PlusCircleIcon, PlusIcon, Popover, PopoverFilter, PrintIcon, QualitySealIcon, QuestionWithFollowUp, Radio, RadioList, RangeFilterInput, RangeFilterInputWithSlider, RangeIcon, RangeSlider, Rating, RoadIcon, RocketIcon, RotateIcon, SafeNumberIcon, SaveSearchIcon, ScreenIcon, SearchField, SearchableList, Section, SedanIcon, Select, SelectMenu, ShareIcon, Show, SimpleGrid, SimpleHeader, Skeleton, SmallCarIcon, SortIcon, SpeakerIcon, Spinner, Stack, StarCircleIcon, StarIcon, SteeringWheelIcon, SuvIcon, SwissFlagIcon, Switch, Tab, TabList, TabPanel, TabPanels, Tabs, TenantSelection, Textarea, ThemeProvider, ThreeSixtyIcon, ThumbsDownIcon, ThumbsUpIcon, TiltedRectangleIcon, TimeIcon, TimePicker, Tooltip, TooltipIcon, TopListingBadge, TopListingIcon, TopVehicleSharedBadge, TrailerIcon, TransmissionIcon, TrashIcon, TriangleIcon, TruckIcon, TwitterIcon, TwoColumnsLayout, UnorderedList, UserTypeExternal, UtilityVehicleIcon, VanIcon, VehiclePowerIcon, VehicleReference, VehicleTypesMotorcycleIcon, VehicleTypesMotorcycleStarIcon, VideoCameraIcon, VideoIcon, ViewCarIcon, ViewMotorcycleIcon, WagonIcon, WarningIcon, WarrantyIcon, WhatsAppIcon, WindowsIcon, YoutubeIcon, autoScout24Theme, breakpoints, convertRemEmToPx, logger, motoScout24Theme, repeatArea, useDebouncedOnChange, useFocusWhenVisible, useMediaQuery, useToast };
export type { Item as CheckboxFilterItem, CountVariant, ListItemWithChildren, Option, Props$F as Props, SearchFieldOptions, TenantSelectionProps, Props$3 as ThemeProviderProps };
