import { ThemeProperties as CoreThemeProperties } from '@dojo/framework/core/middleware/theme'; import { ThemeWithVariant, ClassNames, Theme } from '@dojo/framework/core/interfaces'; export declare const THEME_KEY = " _key"; export interface ThemeProperties extends CoreThemeProperties { } export declare const theme: import("@dojo/framework/core/interfaces").MiddlewareResultFactory[], { coreTheme: import("@dojo/framework/core/interfaces").MiddlewareResultFactory[], { invalidator: import("@dojo/framework/core/interfaces").MiddlewareResultFactory[], import("@dojo/framework/core/interfaces").MiddlewareMap<() => { api: {}; properties: {}; }>, () => void>; icache: import("@dojo/framework/core/interfaces").MiddlewareResultFactory[], { invalidator: import("@dojo/framework/core/interfaces").MiddlewareResultFactory[], import("@dojo/framework/core/interfaces").MiddlewareMap<() => { api: {}; properties: {}; }>, () => void>; destroy: import("@dojo/framework/core/interfaces").MiddlewareResultFactory[], import("@dojo/framework/core/interfaces").MiddlewareMap<() => { api: {}; properties: {}; }>, (destroyFunction: () => void) => void>; }, import("@dojo/framework/core/middleware/icache").ICacheResult>; diffProperty: import("@dojo/framework/core/interfaces").MiddlewareResultFactory[], import("@dojo/framework/core/interfaces").MiddlewareMap<() => { api: {}; properties: {}; }>, { any, K extends keyof ReturnType>(property: K, properties: T, diff: (current: ReturnType, next: ReturnType) => void | ReturnType[K]): void; (propertyName: string, diff: (current: any, next: any) => void): void; }>; injector: import("@dojo/framework/core/interfaces").MiddlewareResultFactory[], { getRegistry: import("@dojo/framework/core/interfaces").MiddlewareResultFactory[], import("@dojo/framework/core/interfaces").MiddlewareMap<() => { api: {}; properties: {}; }>, () => import("@dojo/framework/core/RegistryHandler").RegistryHandler | null>; invalidator: import("@dojo/framework/core/interfaces").MiddlewareResultFactory[], import("@dojo/framework/core/interfaces").MiddlewareMap<() => { api: {}; properties: {}; }>, () => void>; destroy: import("@dojo/framework/core/interfaces").MiddlewareResultFactory[], import("@dojo/framework/core/interfaces").MiddlewareMap<() => { api: {}; properties: {}; }>, (destroyFunction: () => void) => void>; }, { subscribe(label: string | symbol, callback?: Function | undefined): (() => void) | undefined; get(label: string | symbol): T | null; }>; getRegistry: import("@dojo/framework/core/interfaces").MiddlewareResultFactory[], import("@dojo/framework/core/interfaces").MiddlewareMap<() => { api: {}; properties: {}; }>, () => import("@dojo/framework/core/RegistryHandler").RegistryHandler | null>; }, { classes(css: T): T; variant(): string | undefined; set: { (theme: Theme): void; (theme: T, variant?: import("@dojo/framework/core/interfaces").NamedVariant | keyof T["variants"] | undefined): void; }; get(): import("@dojo/framework/core/ThemeInjector").ThemeWithVariantsInjectorPayload | import("@dojo/framework/core/ThemeInjector").ThemeInjectorPayload | undefined; }>; }, { compose: (baseCss: B, css: T, prefix?: string | undefined) => Theme | ThemeWithVariant; variant: () => string | undefined; get: () => import("@dojo/framework/core/ThemeInjector").ThemeWithVariantsInjectorPayload | import("@dojo/framework/core/ThemeInjector").ThemeInjectorPayload | undefined; set: { (theme: Theme): void; (theme: T, variant?: import("@dojo/framework/core/interfaces").NamedVariant | keyof T["variants"] | undefined): void; }; classes: (css: T) => T; }>; export default theme;