import { Theme as MuiTheme, ThemeOptions as MuiThemeOptions } from "@material-ui/core/styles"; import * as PasteLight from "@twilio-paste/design-tokens"; import * as PasteDark from "@twilio-paste/design-tokens/dist/themes/dark/tokens.common"; import { AvatarThemeProps } from "./Avatar/Avatar"; import { BadgeThemeProps } from "./Badge/Badge.definitions"; import { ButtonThemeProps } from "./Button"; import { CSSProps } from "./CSSProps"; import { CircularProgressThemeProps } from "./CircularProgress"; import { CountrySelectorThemeProps, UserCardThemeProps, MenuThemeProps } from "../internal-flex-commons/src"; import { DialerThemeProps } from "./Dialer/Dialer"; import { DialpadThemeProps } from "./Dialpad/Dialpad"; import { FiltersListThemeProps } from "./FiltersList/FiltersList"; import { SidePanelThemeProps } from "./SidePanel/SidePanel"; import { TabsThemeProps } from "./Tabs/Tabs"; import { TranscriptMessageIconProps } from "./channel/TranscriptMessageBubble/TranscriptMessageBubble.definitions"; import { ChatTheme } from "./channel/theme"; import { FormComponentsThemeProps } from "./formitems/theme"; export { withTheme } from "@emotion/react"; export declare const styled: import("@emotion/styled").CreateStyled; export type PropsWithTheme
= ThemeProps & P;
/**
* Baseplate colors for a theme
* @category Theme
* @ignore
* @interface CoreThemeBaseplates
* @property {string} base1 base1
* @property {string} base2 base2
* @property {string} base3 base3
* @property {string} base4 base4
* @property {string} base5 base5
* @property {string} base6 base6
* @property {string} base7 base7
* @property {string} base8 base8
* @property {string} base9 base9
* @property {string} base10 base10
* @property {string} base11 base11
*/
export interface CoreThemeBaseplates {
base1: string;
base2: string;
base3: string;
base4: string;
base5: string;
base6: string;
base7: string;
base8: string;
base9: string;
base10: string;
base11: string;
}
/**
* Core theme colors
* Extends {@link CoreThemeBaseplates}
* @typedef Theme.CoreThemeColors
* @property {string} defaultButtonColor - The default button color
* @property {string} lightTextColor - The color for the light texts
* @property {string} darkTextColor - The color for the dark texts
* @property {string} buttonHoverColor - The color for the buttons hover state
* @property {string} tabSelectedColor - The color for the selected tabs
* @property {string} connectingColor - The color for the connecting copy
* @property {string} disconnectedColor - The color for the disconnected copy
* @property {string} notificationBackgroundColorInformation - The color for the information notifications background
* @property {string} notificationBackgroundColorSuccess - The color for the success notifications background
* @property {string} notificationBackgroundColorError - The color for the error notifications background
* @property {string} notificationIconColorWarning - The color for the icons in the warning notifications
* @property {string} notificationBackgroundColorWarning - The color for the warning notifications background
* @property {string} notificationIconColorError - The color for the icons in the error notifications
* @property {string} userAvailableColor - The color for available users
* @property {string} userUnavailableColor - The color for unavailable users
* @property {string} errorColor - Error color
* @property {string} errorGlow - Error glow
* @property {string} circularProgressColor - Color of the circular progress bar
* @property {string} disabledColor - Color the disabled elements
* @property {string} focusColor - Color for the focused elements
* @property {string} focusGlow - Color of the glow for the focused elements
*/
export interface CoreThemeColors extends CoreThemeBaseplates {
defaultButtonColor: string;
lightTextColor: string;
darkTextColor: string;
buttonHoverColor: string;
tabSelectedColor: string;
connectingColor: string;
disconnectedColor: string;
notificationBackgroundColorInformation: string;
notificationBackgroundColorSuccess: string;
notificationBackgroundColorError: string;
notificationBackgroundColorWarning: string;
notificationIconColorError: string;
notificationIconColorWarning: string;
userAvailableColor: string;
userUnavailableColor: string;
errorColor: string;
errorGlow: string;
disabledColor: string;
focusColor: string;
focusGlow: string;
}
/**
* @typedef ThemeProps
* @property {Theme} [theme]
* @private
*/
export interface ThemeProps {
theme?: Theme;
}
type ExtraBackgroundColors = {
colorBackgroundSuccessStrong: string;
colorBackgroundSuccessStronger: string;
colorBackgroundSuccessWeak: string;
colorBackgroundWarningWeak: string;
colorBackgroundErrorWeak: string;
};
type ExtraBoxShadows = {
shadowBorderDecorative40Weaker: string;
shadowBorderInverseNewWeaker: string;
};
interface LightTokens {
backgroundColors: Record