import { MessageBusExposeOnlySubscription, SubscriptionHandler } from "..";
import { IMessageBusTopicSubscription, Color } from "../models";
interface ITheme {
    onThemingChanged: () => IMessageBusTopicSubscription<ITheme>;
    system: {
        grey: Color;
    };
    chrome: {
        dark: boolean;
        background: Color;
        primary: Color;
        secondary: Color;
        class: string;
    };
    promoted: {
        header: {
            dark: boolean;
            background: Color;
            text: Color;
            primary: Color;
            secondary: Color;
            onComponent: Color;
            class: string;
        };
        body: {
            dark: boolean;
            background: Color;
            text: Color;
            primary: Color;
            secondary: Color;
            onComponent: Color;
            class: string;
        };
    };
}
export declare class OmniaTheming implements ITheme {
    private omniaContext;
    subscriptionHandler: SubscriptionHandler;
    themes: {
        dark: Color;
        light: Color;
        grey: Color;
        primary: Color;
        secondary: Color;
    };
    system: {
        grey: Color;
    };
    chrome: {
        dark: boolean;
        background: Color;
        primary: Color;
        secondary: Color;
        class: string;
    };
    promoted: {
        header: {
            dark: boolean;
            background: Color;
            text: Color;
            primary: Color;
            secondary: Color;
            onComponent: Color;
            class: string;
        };
        body: {
            class: string;
            dark: boolean;
            background: Color;
            text: Color;
            primary: Color;
            secondary: Color;
            onComponent: Color;
        };
    };
    private trackingThemingSettings;
    private themingChangedPublishSubscriber;
    static listenForThemingInjectOverride(): void;
    beforeDestroy(): void;
    onThemingChanged(): MessageBusExposeOnlySubscription<ITheme>;
    private created;
    private populateTheme;
    private get component();
    private get chromeDark();
    private get headerDark();
    private get headerText();
    private get headerBackground();
    private get bodyDark();
    private get bodyText();
    private get bodyBackground();
    private get chromeBackground();
}
export {};
