import { ITypography } from "../Typography";
import { IColors } from "../Colors";
import { IDividers, IDividersColors, IBorders, IShadows, IBlur } from "../effects";
import { IShape } from "../Shape";
import type { TThemeAvatar } from "../../Avatar/themes";
import type { TThemeBanner } from "../../Banner/theme";
import type { TThemeBreadcrumbs } from "../../Breadcrumbs/theme";
import type { TThemeCalendar } from "../../Calendar/themes";
import type { TThemeButton } from "../../Button/themes";
import type { TThemeCheckBox } from "../../CheckBox/theme";
import type { TThemeCluster } from "../../Cluster/theme";
import type { TThemeColorPicker } from "../../ColorPicker/theme";
import type { TThemeDateBox } from "../../DateBox/theme";
import type { TThemeDivider } from "../../Divider/theme";
import type { TThemeEmptyState } from "../../EmptyState/themes";
import type { TThemeInfoCard } from "../../InfoCard/themes";
import type { TThemeInput } from "../../InputBase/themes";
import type { TThemeInputColor } from "../../InputColor/themes";
import type { TThemeInputNumber } from "../../InputNumber/themes";
import type { TThemeLabel } from "../../Label/themes";
import type { TThemeList } from "../../List/theme";
import type { TThemeMapObject } from "../../MapObject/themes";
import type { TThemePageHeader } from "../../PageHeader/theme";
import type { TThemePagination } from "../../Pagination/themes";
import type { TThemePreloader } from "../../Preloader/themes";
import type { TThemeProgressBar } from "../../ProgressBar/themes";
import type { TThemeRadioButton } from "../../RadioButton/themes";
import type { TThemeRoll } from "../../Roll/theme";
import type { TThemeScroll } from "../../Scroll/theme";
import type { TThemeSteps } from "../../Steps/themes";
import type { TThemeSearchBox } from "../../SearchBox/themes";
import type { TThemeSegmentedControl } from "../../SegmentedControl/theme";
import type { TThemeSelect } from "../../SelectBase/themes";
import type { TThemeSlider } from "../../Slider/themes";
import type { TThemeSnackBar } from "../../SnackBar/themes";
import type { TThemeStatus } from "../../Status/themes";
import type { TThemeSwitch } from "../../Switch/theme";
import type { TThemeTabs } from "../../Tabs/theme";
import type { TThemeTag } from "../../Tag/theme";
import type { TThemeTextArea } from "../../TextArea/themes";
import type { TThemeTooltip } from "../../Tooltip/themes";
import type { TThemeTree } from "../../Tree/theme";
import type { TThemeDropdown } from "../../Dropdown/themes";
import type { TThemePopover } from "../../Popover/themes";
import { TThemeMobileSteps } from "../../MobileSteps";
export declare const THEME_COMPONENTS_NAMES: readonly ["avatar", "banner", "breadcrumbs", "calendar", "button", "checkBox", "cluster", "colorPicker", "dateBox", "divider", "emptyState", "infoCard", "input", "inputColor", "inputNumber", "label", "list", "mapObject", "pageHeader", "pagination", "preloader", "progressBar", "radioButton", "roll", "scroll", "searchBox", "segmentedControl", "select", "slider", "snackBar", "status", "switch", "tab", "tag", "textarea", "tooltip", "popover", "tree", "dropdown", "steps", "mobileSteps"];
export declare type TThemeComponentName = typeof THEME_COMPONENTS_NAMES[number];
export declare type TThemeComponents = {
    avatar: TThemeAvatar;
    banner: TThemeBanner;
    breadcrumbs: TThemeBreadcrumbs;
    calendar: TThemeCalendar;
    button: TThemeButton;
    checkBox: TThemeCheckBox;
    cluster: TThemeCluster;
    colorPicker: TThemeColorPicker;
    dateBox: TThemeDateBox;
    divider: TThemeDivider;
    emptyState: TThemeEmptyState;
    infoCard: TThemeInfoCard;
    input: TThemeInput;
    inputColor: TThemeInputColor;
    inputNumber: TThemeInputNumber;
    label: TThemeLabel;
    list: TThemeList;
    mapObject: TThemeMapObject;
    pageHeader: TThemePageHeader;
    pagination: TThemePagination;
    preloader: TThemePreloader;
    progressBar: TThemeProgressBar;
    radioButton: TThemeRadioButton;
    roll: TThemeRoll;
    scroll: TThemeScroll;
    searchBox: TThemeSearchBox;
    segmentedControl: TThemeSegmentedControl;
    select: TThemeSelect;
    slider: TThemeSlider;
    snackBar: TThemeSnackBar;
    status: TThemeStatus;
    switch: TThemeSwitch;
    tab: TThemeTabs;
    tag: TThemeTag;
    popover: TThemePopover;
    textarea: TThemeTextArea;
    tooltip: TThemeTooltip;
    tree: TThemeTree;
    dropdown: TThemeDropdown;
    step: TThemeSteps;
    mobileSteps: TThemeMobileSteps;
};
export declare type TThemeComponentParams<T extends string> = Record<T, keyof IColors | string>;
export interface IThemeBasic {
    colors: IColors;
    dividers: IDividers;
    dividersColors: IDividersColors;
    name: string;
    borders: IBorders;
    shadows: IShadows;
    blur: IBlur;
    shape: IShape;
    typography: ITypography;
    colorIcon: string;
}
export interface ITheme extends IThemeBasic {
    components: TThemeComponents;
}
export declare const LIGHT_THEME_BASIC: IThemeBasic;
export declare const LIGHT_THEME: ITheme;
export declare const DARK_THEME_BASIC: IThemeBasic;
export declare const DEFAULT_THEME: ITheme;
export declare const DARK_THEME: ITheme;
export declare const DEFAULT_COLOR_TOKENS: Record<"button" | "input" | "label" | "select" | "textarea" | "switch" | "avatar" | "banner" | "breadcrumbs" | "calendar" | "checkBox" | "cluster" | "colorPicker" | "dateBox" | "divider" | "emptyState" | "infoCard" | "inputColor" | "inputNumber" | "list" | "mapObject" | "pageHeader" | "pagination" | "preloader" | "progressBar" | "radioButton" | "roll" | "scroll" | "searchBox" | "segmentedControl" | "slider" | "snackBar" | "status" | "tab" | "tag" | "tooltip" | "popover" | "tree" | "dropdown" | "steps" | "mobileSteps", TThemeComponentParams<string>>;
