@omnia/fx-models
Version:
Provide Omnia Fx Models Stuffs.
110 lines (109 loc) • 2.56 kB
TypeScript
import { BusinessProfileProperty } from "./BusinessProfile";
import { GuidValue } from "@omnia/fx-models/internal-do-not-import-from-here/shared/models";
import { Color } from "./Color";
export interface ThemeDefinitionSettings {
items: Array<ThemeDefinition>;
}
export declare class BusinessProfileThemeMappingSettings extends BusinessProfileProperty {
constructor();
items: Array<ThemeTargetMapping>;
}
export interface ThemeColors {
primary: Color;
secondary: Color;
}
export interface ThemeStyling {
bg: {
color: Color;
css: string;
dark: boolean;
};
fg: {
color: Color;
css: string;
dark: boolean;
text: {
color: Color;
css: string;
csslighter1: string;
csslighter2: string;
csslighter3: string;
csslighter4: string;
csslighter5: string;
csslighter6: string;
};
};
text: {
color: Color;
css: string;
csslighter1: string;
csslighter2: string;
csslighter3: string;
csslighter4: string;
csslighter5: string;
csslighter6: string;
};
components: {
color: Color;
text: {
color: Color;
};
expansionPanel: {
css: string;
};
skeletonLoader: {
css: string;
};
slider: {
color: string;
trackColor: string;
};
tabs: {
css: string;
};
};
border: BorderDefinition;
}
/**
*Theme Definition
*
*/
export interface ThemeTargetRegistration {
id: GuidValue;
title: string;
defaultThemeDefinitionId: GuidValue;
defaultAccessibilityDefinitionId: GuidValue;
}
export interface ThemeTargetMapping {
id: GuidValue;
targetRegistrationId: GuidValue;
default: ThemeDefinition;
accessibility?: ThemeDefinition;
}
export interface ThemeDefinition {
id: GuidValue;
name: string;
readOnly: boolean;
colors: ThemeDefinitionColors;
chrome: ThemeColorDefinition;
body: ThemeColorDefinition;
}
export interface ThemeDefinitionColors {
primary: string;
secondary: string;
}
export interface BorderDefinition {
color: string;
width: number;
elevation: number;
radiustop: number;
radiusbottom: number;
}
export interface ThemeColorDefinition {
bg: string;
fg: string;
text: string;
darkBg: boolean;
darkFg: boolean;
border?: BorderDefinition;
}