import { CSSProperties } from '@mui/material/styles/createMixins';
import { Theme } from '@mui/material';
export type CoreTheme = 'light' | 'dark' | 'testnet';
export declare const lightTheme: Theme;
export declare const darkTheme: Theme;
export declare const testnetTheme: Theme;
export declare function getTheme(theme: CoreTheme): Theme;
type ThemeComponentStylesOverride<T = CSSProperties> = T | (({ theme }: {
    theme: Theme;
}) => T);
declare module '@mui/material/styles' {
    interface Theme {
        shape: {
            borderRadius: number | string;
            mediumBorderRadius: number | string;
            largeBorderRadius: number | string;
            xlargeBorderRadius: number | string;
            fullBorderRadius: number | string;
        };
        componentStyles: {
            accountDetails?: ThemeComponentStylesOverride;
            appBar?: ThemeComponentStylesOverride;
            drawer?: ThemeComponentStylesOverride;
            buttonDisconnect?: ThemeComponentStylesOverride;
            buttonDisabled?: ThemeComponentStylesOverride;
            buttonHoverWithBoxShadow?: ThemeComponentStylesOverride;
            buttonFocused?: ThemeComponentStylesOverride;
            tableCell?: ThemeComponentStylesOverride;
            popover?: ThemeComponentStylesOverride;
            popper?: ThemeComponentStylesOverride;
            cookieBanner?: ThemeComponentStylesOverride;
        };
    }
    interface ThemeOptions {
        shape?: {
            borderRadius?: number | string;
            mediumBorderRadius?: number | string;
            largeBorderRadius?: number | string;
            xlargeBorderRadius?: number | string;
            fullBorderRadius?: number | string;
        };
        componentStyles?: {
            accountDetails?: ThemeComponentStylesOverride;
            appBar?: ThemeComponentStylesOverride;
            drawer?: ThemeComponentStylesOverride;
            buttonDisabled?: ThemeComponentStylesOverride;
            buttonDisconnect?: ThemeComponentStylesOverride;
            buttonHoverWithBoxShadow?: ThemeComponentStylesOverride;
            buttonFocused?: ThemeComponentStylesOverride;
            tableCell?: ThemeComponentStylesOverride;
            popover?: ThemeComponentStylesOverride;
            popper?: ThemeComponentStylesOverride;
            cookieBanner?: ThemeComponentStylesOverride;
        };
    }
    interface TypographyVariants {
        body3: React.CSSProperties;
        h7: React.CSSProperties;
        subtitle3: React.CSSProperties;
        subtitle4: React.CSSProperties;
        caption2: React.CSSProperties;
        mono: React.CSSProperties;
        mono2: React.CSSProperties;
    }
    /**
     * allows configuration using `createTheme`
     */
    interface TypographyVariantsOptions {
        body3?: React.CSSProperties;
        h7?: React.CSSProperties;
        subtitle3?: React.CSSProperties;
        subtitle4?: React.CSSProperties;
        caption2?: React.CSSProperties;
        mono?: React.CSSProperties;
        mono2?: React.CSSProperties;
    }
    interface CommonColors {
        black_25: string;
        white_10_alpha_match: string;
        white_10: string;
        white_30: string;
        white_60: string;
        white_80: string;
    }
    interface Palette {
        alphaMatch: {
            paper: string;
            backdropSolid: string;
        };
        avagpt: {
            background: {
                dialog: string;
                botMessage: string;
                userMessage: string;
                input: string;
                support: string;
            };
            button: {
                background: string;
                border: string;
            };
            text: {
                botMessage: string;
                userMessage: string;
            };
        };
        avalanche: {
            main: string;
        };
        datePicker: {
            background: string;
            border: string;
            hover: string;
            text: string;
            textSelected: string;
            textSecondary: string;
        };
        green: {
            light: string;
            main: string;
        };
        red: {
            main: string;
        };
        teal: {
            main: string;
        };
        neutral: {
            50: string;
            850: string;
            '850_10_alpha_match': string;
            '850_10': string;
            '850_30': string;
            '850_50': string;
            '850_60': string;
            '850_80': string;
            '850_90': string;
            900: string;
            950: string;
        };
        glass: {
            light: string;
            light2: string;
            dark: string;
            dark2: string;
            dark3: string;
        };
        surface: {
            primary: string;
            secondary: string;
            tertiary: string;
        };
        successAlt: {
            main: string;
            secondary: string;
        };
        gradient: {
            conic1: string;
            conic2: string;
            conic3: string;
            conic4: string;
            glow: string;
            positiveChange: string;
            negativeChange: string;
        };
        tabs: {
            scrollButton: {
                background: string;
            };
        };
    }
    interface PaletteOptions {
        alphaMatch?: {
            paper: string;
            backdropSolid: string;
        };
        avagpt?: {
            background: {
                dialog: string;
                botMessage: string;
                userMessage: string;
                input: string;
                support: string;
            };
            button: {
                background: string;
                border: string;
            };
            text: {
                botMessage: string;
                userMessage: string;
            };
        };
        avalanche?: {
            main: string;
        };
        datePicker?: {
            background: string;
            border: string;
            hover: string;
            text: string;
            textSelected: string;
            textSecondary: string;
        };
        green?: {
            light: string;
            main: string;
        };
        red?: {
            main: string;
        };
        teal?: {
            main: string;
        };
        neutral?: {
            50?: string;
            850?: string;
            '850_10_alpha_match'?: string;
            '850_10'?: string;
            '850_30'?: string;
            '850_50'?: string;
            '850_60'?: string;
            '850_80'?: string;
            '850_90'?: string;
            900?: string;
            950?: string;
        };
        glass?: {
            light?: string;
            light2?: string;
            dark?: string;
            dark2?: string;
            dark3?: string;
        };
        surface?: {
            primary?: string;
            secondary?: string;
            tertiary?: string;
        };
        successAlt?: {
            main?: string;
            secondary?: string;
        };
        gradient?: {
            conic1?: string;
            conic2?: string;
            conic3?: string;
            conic4?: string;
            glow?: string;
            positiveChange?: string;
            negativeChange?: string;
        };
        tabs?: {
            scrollButton?: {
                background?: string;
            };
        };
    }
    interface TypeBackground {
        backdrop: string;
        default: string;
        paper: string;
        navBarItem: string;
        switchTrackUnchecked: string;
        icon: string;
        popover: string;
    }
}
declare module '@mui/material/styles/createTypography' {
    interface FontStyle {
        fontFamilyMonospace: string;
        fontWeightSemiBold: number;
    }
}
declare module '@mui/material/Typography' {
    interface TypographyPropsVariantOverrides {
        h7: true;
        body3: true;
        subtitle3: true;
        subtitle4: true;
        caption2: true;
        mono: true;
        mono2: true;
    }
    interface TypographyClasses {
        h7: true;
        body3: true;
        subtitle3: true;
        subtitle4: true;
        caption2: true;
        mono: true;
        mono2: true;
    }
}
declare module '@mui/material/Button' {
    interface ButtonPropsSizeOverrides {
        extension: true;
        xsmall: true;
    }
}
export {};
