import { CSSInterpolation, Theme } from '@/_cssinjs'; import type { AliasToken } from './alias'; import { BaseToken } from './base'; import type { ComponentTokenMap } from './components'; import { SeedToken } from './seeds'; export type AnyObject = Record; export type OverrideToken = { [key in keyof ComponentTokenMap]: Partial & Partial; }; export type ComponentsToken = { [key in keyof OverrideToken]?: OverrideToken[key]; }; export type GlobalToken = AliasToken & ComponentTokenMap; export type { AliasToken } from './alias'; export type { ComponentTokenMap } from './components'; export type { ColorBaseToken, ColorNeutralBaseen, MotionBaseToken, FontBaseToken, BaseToken, SizeBaseToken, OtherBaseToken, } from './base'; export { PresetColors } from './presetColors'; export type { ColorPalettes, PresetColorKey, PresetColorType, GenerateColorMap, GenerateNeutralColorMap, } from './presetColors'; export type { SeedToken } from './seeds'; export type UseComponentStyleResult = [(node: React.ReactNode) => React.ReactElement, string]; export type GenerateStyle = (token: ComponentToken, type?: string) => ReturnType; export interface EuiTokenProviderProps { token: Partial; theme?: Theme; components?: ComponentsToken; override?: { override: Partial; } & ComponentsToken; hashed?: string | boolean; scheme: 'light' | 'dark'; }