@omnia/fx
Version:
Provide Omnia Fx typings and tooling for clientside Omnia development.
51 lines (50 loc) • 1.98 kB
TypeScript
import { ColorStyles } from "@omnia/fx-models";
import { ThemeStoreV2 } from "../ThemeStoreV2";
export interface ColorTypeResult<resultType> {
base: resultType;
baseTone: resultType;
onBase: resultType;
onBaseTone: resultType;
container: resultType;
containerTone: resultType;
onContainer: resultType;
onContainerTone: resultType;
colorType: (colorType: string) => resultType;
}
export interface ThemeDefinitionTypeResult {
primary: ColorTypeResult<ColorStyles>;
secondary: ColorTypeResult<ColorStyles>;
accent1: ColorTypeResult<ColorStyles>;
accent2: ColorTypeResult<ColorStyles>;
accent3: ColorTypeResult<ColorStyles>;
background: ColorTypeResult<ColorStyles>;
neutral: ColorTypeResult<ColorStyles>;
info: ColorTypeResult<ColorStyles>;
error: ColorTypeResult<ColorStyles>;
colorTypeSchema: (colorSchemaType: string) => ColorTypeResult<ColorStyles>;
}
export interface TypographyTypesResult {
h1: string;
h2: string;
h3: string;
caption: string;
link: string;
text: string;
typographyType: (typographyType: string) => string;
}
export declare const useThemeStyling: (injectedThemeStore?: ThemeStoreV2) => {
colorSchemas: () => ThemeDefinitionTypeResult;
colorSchema: (colorSchemaType: string) => any;
color: (colorSchemaType: string, colorType: string, opacity?: number) => ColorStyles;
cardStylings: (colorSchemaType: string, opacity?: number) => ColorTypeResult<string>;
cardStyling: (colorSchemaType: string, colorType: string, opacity?: number) => string;
cardImage: string;
typographies: () => TypographyTypesResult;
typography: (typographyType: string) => any;
vuetify: (colorSchemaType: string) => {
generalStylings: () => ColorTypeResult<object>;
generalStyling: (colorType: string) => object;
sliderStylings: () => ColorTypeResult<object>;
sliderStyling: (colorType: string) => object;
};
};