UNPKG

@b-design/ui-console-menu

Version:

React component for Alibaba Cloud.

56 lines 1.84 kB
interface IDefineCssVar { default?: string; desc?: string; } interface IDefineCssVars { [name: string]: IDefineCssVar; } export declare class CssVar implements IDefineCssVar { name: string; default: string | undefined; desc: string | undefined; constructor(opts: { name: string; default?: string; desc?: string; }); get consume(): string; get consumeStyled(): (props: any) => string; } export interface ICssVars { [name: string]: CssVar; } declare type GetCssVars<Definition extends IDefineCssVars> = { [Name in keyof Definition]: CssVar; }; declare type IStyleObjecy<CssVars extends ICssVars> = { [Name in keyof CssVars]: string | undefined; }; declare type OverWriteCssVars<CssVars extends ICssVars> = { [Name in keyof CssVars]?: string; }; declare type GetOverwritten<CssVars extends ICssVars, Overwrite extends OverWriteCssVars<CssVars>> = { [Name in keyof CssVars]: CssVar; } & { [Name in keyof Overwrite]: CssVar; }; export declare class CssVarTheme<CssVars extends ICssVars> { private _vars; private constructor(); static create<Definition extends IDefineCssVars>(definitions: Definition): CssVarTheme<GetCssVars<Definition>>; overwrite<Overwrite extends OverWriteCssVars<CssVars>>(overwrite: OverWriteCssVars<CssVars> & NoExtraProperties<OverWriteCssVars<CssVars>, Overwrite>): CssVarTheme<GetOverwritten<CssVars, Overwrite>>; /** * 主题变量集合 */ get vars(): CssVars; /** * 产生主题变量定义,即name->value映射 */ values(): IStyleObjecy<CssVars>; } declare type Impossible<K extends keyof any> = { [P in K]: never; }; declare type NoExtraProperties<T, U extends T = T> = U & Impossible<Exclude<keyof U, keyof T>>; export {}; //# sourceMappingURL=define-css-var.d.ts.map