@omnia/fx
Version:
Provide Omnia Fx typings and tooling for clientside Omnia development.
29 lines (28 loc) • 1.58 kB
TypeScript
import { Color, ThemeColorDefinition, ThemeStyling, ThemeDefinition, BorderDefinition } from "../../models";
import { OmniaTheming } from "../OmniaTheming";
import { GuidValue, ThemeType } from "../../models";
export declare class ThemeManager {
static omniaTheming: OmniaTheming;
static isDarkColor(color: string): boolean;
private static getDefaultComponentColor;
static IsRGBColor(color: string): boolean;
static GetRGBValues(color: string): string[];
static GetRGBValuesFromHex(color: string): number[];
static ParseRGBColor(color: string): Color;
static ParseColor(color: string): Color;
static ExtractReplacementColors(color: string): string;
static InjectReplacementColors(color: string): string;
static EnsureDefaultBorder(themeDefinition: ThemeDefinition): void;
/**
* We had model mismatch of BorderDefinition between client-side and server-side.
*
* It had been PascalCase on server-side: RadiusTop, RadiusBotton (not m)
* Then we had to update them to Radiustop and Radiusbottom to match the lowercase of client-side: radiustop, radiusbottom
*
* So this soft migration is all about that
*/
static MigrateBorder(borderDefinition: BorderDefinition): void;
static CreateThemeStylingFromDefinition(themeDefinition: ThemeColorDefinition): ThemeStyling;
static CreateDefaultBorderDefinition(): BorderDefinition;
static CreateThemeDefinition(primaryColor: string, secondaryColor: string, name: string, themeType: ThemeType, id?: GuidValue, readOnly?: boolean): ThemeDefinition;
}