import { PaletteMode } from '@mui/material';
import { mergeThemeOptions as deepmerge, ThemeOptions, Theme } from '@blocklet/theme';
import { deepmergeAll } from '../Util';
/** 是否是 MUI Theme 对象 */
export declare function isTheme(obj: any): obj is Theme;
/** 是否是 UX Theme 对象 */
export declare function isUxTheme(obj: any): obj is Theme;
export declare function collectFontFamilies(obj?: {
    fontFamily?: string;
}, fontSet?: Set<string>): Set<string>;
export declare function loadFonts(fonts: string[]): Promise<boolean>;
export declare function createDefaultThemeOptions(mode?: PaletteMode): ThemeOptions;
export interface UxThemeOptions extends ThemeOptions {
    disableBlockletTheme?: boolean;
}
export declare function lazyCreateDefaultTheme(mode: PaletteMode): () => Theme;
export declare const create: (...args: Array<UxThemeOptions | ((baseTheme: Theme) => UxThemeOptions)>) => Theme;
export declare const createTheme: (...args: Array<UxThemeOptions | ((baseTheme: Theme) => UxThemeOptions)>) => Theme;
export { deepmerge, deepmergeAll };
