import { Property } from 'csstype'; import { ColorsDescription, ColorsScheme } from '..'; /** * Интерфейс всех цветов на выходе */ export interface ColorWithStates { normal: Property.Color; hover: Property.Color; active: Property.Color; } export declare type ColorDescriptionStatic = Property.Color | ColorWithStates; export declare type ColorDescriptionCallable = (theme: Partial>) => ColorDescription; export declare type ColorDescription = ColorDescriptionStatic | ColorDescriptionCallable; /** * В описании цветов достаточно указать просто строку * (тогда состояния сгенерируются при сборке) * Либо можно указать состояния цвета вручную */ export interface ColorsDescriptionStruct { colorBackgroundAccent: ColorDescription; colorBackgroundAccentThemed: ColorDescription; colorBackgroundAccentTint: ColorDescription; colorBackgroundAccentAlternative: ColorDescription; colorBackground: ColorDescription; colorBackgroundContent: ColorDescription; colorBackgroundSecondary: ColorDescription; colorBackgroundSecondaryAlpha: ColorDescription; colorBackgroundTertiary: ColorDescription; colorBackgroundContrast: ColorDescription; colorBackgroundContrastSecondaryAlpha: ColorDescription; colorBackgroundContrastInverse: ColorDescription; colorBackgroundModal: ColorDescription; colorBackgroundModalInverse: ColorDescription; colorBackgroundWarning: ColorDescription; colorBackgroundPositive: ColorDescription; colorBackgroundNegative: ColorDescription; colorBackgroundNegativeTint: ColorDescription; colorBackgroundPositiveTint: ColorDescription; colorFieldBackground: ColorDescription; colorHeaderBackground: ColorDescription; colorTextAccent: ColorDescription; colorTextAccentThemed: ColorDescription; colorTextPrimary: ColorDescription; colorTextPrimaryInvariably: ColorDescription; colorTextSecondary: ColorDescription; colorTextSubhead: ColorDescription; colorTextTertiary: ColorDescription; colorTextContrast: ColorDescription; colorTextContrastThemed: ColorDescription; colorTextPositive: ColorDescription; colorTextNegative: ColorDescription; colorTextLink: ColorDescription; colorTextLinkThemed: ColorDescription; colorTextLinkVisited: ColorDescription; colorTextMuted: ColorDescription; colorLinkContrast: ColorDescription; colorIconAccent: ColorDescription; colorIconAccentThemed: ColorDescription; colorIconPrimary: ColorDescription; colorIconPrimaryInvariably: ColorDescription; colorIconMedium: ColorDescription; colorIconMediumAlpha: ColorDescription; colorIconSecondary: ColorDescription; colorIconSecondaryAlpha: ColorDescription; colorIconTertiary: ColorDescription; colorIconTertiaryAlpha: ColorDescription; colorIconContrast: ColorDescription; colorIconContrastThemed: ColorDescription; colorIconContrastSecondary: ColorDescription; colorIconPositive: ColorDescription; colorIconNegative: ColorDescription; colorStrokeAccent: ColorDescription; colorStrokeAccentThemed: ColorDescription; colorStrokePositive: ColorDescription; colorStrokeNegative: ColorDescription; colorStrokeContrast: ColorDescription; colorImageBorderAlpha: ColorDescription; colorFieldBorderAlpha: ColorDescription; colorSeparatorPrimaryAlpha: ColorDescription; colorSeparatorSecondary: ColorDescription; colorSeparatorPrimary: ColorDescription; colorSeparatorPrimary2x: ColorDescription; colorSeparatorPrimary3x: ColorDescription; colorAccentBlue: ColorDescription; colorAccentGray: ColorDescription; colorAccentRed: ColorDescription; colorAccentGreen: ColorDescription; colorAccentOrange: ColorDescription; colorAccentPurple: ColorDescription; colorAccentViolet: ColorDescription; colorAccentSecondary: ColorDescription; colorOverlayPrimary: ColorDescription; colorAvatarOverlay: ColorDescription; colorAvatarOverlayInverseAlpha: ColorDescription; colorImagePlaceholder: ColorDescription; colorImagePlaceholderAlpha: ColorDescription; colorSkeletonFrom: ColorDescription; colorSkeletonTo: ColorDescription; colorWriteBarIcon: ColorDescription; colorWriteBarInputBackground: ColorDescription; colorWriteBarInputBorderAlpha: ColorDescription; colorActionSheetText: ColorDescription; colorTrackBackground: ColorDescription; colorTrackBuffer: ColorDescription; colorSearchFieldBackground: ColorDescription; colorPanelHeaderIcon: ColorDescription; colorTransparent: ColorDescription; colorSegmentedControl: ColorDescription; } export declare type Colors = { [key in keyof ColorsDescriptionStruct]: ColorWithStates; };