import { BreakpointOverrides } from '@mui/system/createBreakpoints/createBreakpoints';
import { Components } from '@mui/material/styles';
import { PaletteOptions } from '@mui/material/styles';
import { Shadows } from '@mui/material/styles';
import { ThemeOptions } from '@mui/material/styles';
import { TypographyVariantsOptions } from '@mui/material/styles';

/**
 * Breakpoints for Material-UI theme
 *
 * @public
 */
export declare const breakpoints: Record<keyof BreakpointOverrides, number>;

export declare namespace colors {
    export {
        neutral,
        primary,
        secondary,
        error,
        warning,
        info,
        success,
        grey
    }
}

export declare const createElevation: () => {
    dropdown: string;
};

export declare const createSizing: () => {
    tableRowHeight: number;
};

/**
 * Creates and returns component overrides for a Material-UI theme.
 *
 * @param options - The options for creating theme components: paletteOptions and typographyOptions
 * @returns The object that contains the component overrides for Material-UI theme components
 *
 * @public
 */
export declare const createThemeComponents: ({ paletteOptions, typographyOptions, }: {
    paletteOptions: ReturnType<typeof createThemePaletteOptions>;
    typographyOptions: TypographyVariantsOptions;
}) => Components;

/**
 * Creates and returns theme options for a Material-UI theme.
 *
 * This function combines typography, palette, component, and shadow options
 * to create a cohesive theme configuration for Material-UI.
 *
 * @returns The theme options including breakpoints, shape, direction, typography, palette, components, shadows.
 *
 * @public
 */
export declare const createThemeOptions: () => ThemeOptions & {
    elevation: ReturnType<typeof createElevation>;
    sizing: ReturnType<typeof createSizing>;
};

/**
 * Creates and returns palette options for a Material-UI theme.
 *
 * @returns The palette options for the theme, including colors for actions, alerts, background, text, and various UI elements.
 *
 * @public
 */
export declare const createThemePaletteOptions: () => {
    action: {
        active: string;
        disabled: string;
        disabledBackground: string;
        focus: string;
        hover: string;
        selected: string;
    };
    alert: {
        error: {
            background: string;
            content: string;
        };
        info: {
            background: string;
            content: string;
        };
        success: {
            background: string;
            content: string;
        };
        warning: {
            background: string;
            content: string;
        };
    };
    background: {
        default: string;
        paper: string;
        paperGlass: string;
        paperTertiary: string;
        table: string;
    };
    common: {
        black: "#000";
        white: "#fff";
    };
    divider: string;
    error: {
        contrastText: string;
        dark: string;
        darkest: string;
        light: string;
        lightest: string;
        main: string;
    };
    info: {
        contrastText: string;
        dark: string;
        darkest: string;
        light: string;
        lightest: string;
        main: string;
    };
    grey: {
        300: string;
    };
    mode: PaletteOptions["mode"];
    neutral: {
        100: string;
        200: string;
        300: string;
        400: string;
        50: string;
        500: string;
        600: string;
        700: string;
        800: string;
        900: string;
    };
    primary: {
        hovered: string;
        contrastText: string;
        dark: string;
        darkest: string;
        darkestBg: string;
        light: string;
        lightest: string;
        main: string;
    };
    secondary: {
        hovered: string;
        contrastText: string;
        dark: string;
        darkest: string;
        light: string;
        lightest: string;
        main: string;
    };
    success: {
        contrastText: string;
        dark: string;
        darkest: string;
        light: string;
        lightest: string;
        main: string;
    };
    text: {
        disabled: string;
        primary: string;
        secondary: string;
    };
    warning: {
        contrastText: string;
        dark: string;
        darkest: string;
        light: string;
        lightest: string;
        main: string;
    };
    nav: {
        discreet: string;
        evident: string;
        evidentActive: string;
        evidentBg: string;
        evidentDivider: string;
    };
};

/**
 * Creates and returns an array of shadow definitions for a Material-UI theme.
 *
 * @returns The shadows array for the theme, defining the box-shadow styles for various elevation levels.
 *
 * @public
 */
export declare const createThemeShadows: () => Shadows;

/**
 * Creates and returns typography options for a Material-UI theme.
 *
 * @returns The typography options for the theme, including font families, sizes, weights, and line heights for various text styles.
 *
 * @public
 */
export declare const createTypographyOptions: () => TypographyVariantsOptions;

/**
 * Error colors for Material-UI theme
 *
 * @public
 */
declare const error: {
    contrastText: string;
    dark: string;
    darkest: string;
    light: string;
    lightest: string;
    main: string;
};

/**
 * Grey colors for Material-UI theme
 *
 * @public
 */
declare const grey: {
    300: string;
};

/**
 * Info colors for Material-UI theme
 *
 * @public
 */
declare const info: {
    contrastText: string;
    dark: string;
    darkest: string;
    light: string;
    lightest: string;
    main: string;
};

/**
 * Neutral colors for Material-UI theme
 *
 * @public
 */
declare const neutral: {
    100: string;
    200: string;
    300: string;
    400: string;
    50: string;
    500: string;
    600: string;
    700: string;
    800: string;
    900: string;
};

/**
 * Primary colors for Material-UI theme
 *
 * @public
 */
declare const primary: {
    contrastText: string;
    dark: string;
    darkest: string;
    darkestBg: string;
    light: string;
    lightest: string;
    main: string;
};

/**
 * Secondary colors for Material-UI theme
 *
 * @public
 */
declare const secondary: {
    contrastText: string;
    dark: string;
    darkest: string;
    light: string;
    lightest: string;
    main: string;
};

/**
 * Success colors for Material-UI theme
 *
 * @public
 */
declare const success: {
    contrastText: string;
    dark: string;
    darkest: string;
    light: string;
    lightest: string;
    main: string;
};

/**
 * Warning colors for Material-UI theme
 *
 * @public
 */
declare const warning: {
    contrastText: string;
    dark: string;
    darkest: string;
    light: string;
    lightest: string;
    main: string;
};

export { }
import React from 'react';
declare module '@mui/material/styles' {
    interface TypographyVariants {
        body1Bold: React.CSSProperties;
        body2Bold: React.CSSProperties;
        tableHeader: React.CSSProperties;
    }
    interface TypographyVariantsOptions {
        body1Bold?: React.CSSProperties;
        body2Bold?: React.CSSProperties;
        tableHeader?: React.CSSProperties;
    }
}
declare module '@mui/material/Typography' {
    interface TypographyPropsVariantOverrides {
        body1Bold: true;
        body2Bold: true;
        tableHeader: true;
    }
}
declare module '@mui/material/styles/createTypography' {
    interface FontStyle {
        fontFamilyAzeretMono: React.CSSProperties['fontFamily'];
        fontFamilyJakarta: React.CSSProperties['fontFamily'];
    }
}
declare module '@mui/system/createBreakpoints/createBreakpoints' {
    interface BreakpointOverrides {
        lg: true;
        md: true;
        sm: true;
        xl: true;
        xs: true;
        xxl: true;
    }
}
declare module '@mui/material/styles/createPalette' {
    interface Palette {
        alert: {
            error: {
                background: string;
                content: string;
            };
            info: {
                background: string;
                content: string;
            };
            success: {
                background: string;
                content: string;
            };
            warning: {
                background: string;
                content: string;
            };
        };
        neutral: {
            100: string;
            200: string;
            300: string;
            400: string;
            50: string;
            500: string;
            600: string;
            700: string;
            800: string;
            900: string;
        };
        success: PaletteColor;
        warning: PaletteColor;
    }
    interface PaletteColor {
        darkest?: string;
        hovered?: string;
        lightest?: string;
        darkestBg?: string;
    }
    interface SimplePaletteColorOptions {
        darkest?: string;
        hovered?: string;
        lightest?: string;
    }
    interface PaletteOptions {
        alert: {
            error: {
                background: string;
                content: string;
            };
            info: {
                background: string;
                content: string;
            };
            success: {
                background: string;
                content: string;
            };
            warning: {
                background: string;
                content: string;
            };
        };
        neutral: {
            100: string;
            200: string;
            300: string;
            400: string;
            50: string;
            500: string;
            600: string;
            700: string;
            800: string;
            900: string;
        };
    }
    interface TypeBackground {
        default: string;
        paper: string;
        paperGlass: string;
        paperTertiary: string;
    }
}
//# sourceMappingURL=types.d.ts.mapimport React from 'react';
declare module '@mui/material/styles' {
    interface TypographyVariants {
        body1Bold: React.CSSProperties;
        body2Bold: React.CSSProperties;
        tableHeader: React.CSSProperties;
    }
    interface TypographyVariantsOptions {
        body1Bold?: React.CSSProperties;
        body2Bold?: React.CSSProperties;
        tableHeader?: React.CSSProperties;
    }
}
declare module '@mui/material/Typography' {
    interface TypographyPropsVariantOverrides {
        body1Bold: true;
        body2Bold: true;
        tableHeader: true;
    }
}
declare module '@mui/material/styles/createTypography' {
    interface FontStyle {
        fontFamilyAzeretMono: React.CSSProperties['fontFamily'];
        fontFamilyJakarta: React.CSSProperties['fontFamily'];
    }
}
declare module '@mui/system/createBreakpoints/createBreakpoints' {
    interface BreakpointOverrides {
        lg: true;
        md: true;
        sm: true;
        xl: true;
        xs: true;
        xxl: true;
    }
}
declare module '@mui/material/styles/createPalette' {
    interface Palette {
        alert: {
            error: {
                background: string;
                content: string;
            };
            info: {
                background: string;
                content: string;
            };
            success: {
                background: string;
                content: string;
            };
            warning: {
                background: string;
                content: string;
            };
        };
        neutral: {
            100: string;
            200: string;
            300: string;
            400: string;
            50: string;
            500: string;
            600: string;
            700: string;
            800: string;
            900: string;
        };
        success: PaletteColor;
        warning: PaletteColor;
    }
    interface PaletteColor {
        darkest?: string;
        hovered?: string;
        lightest?: string;
        darkestBg?: string;
    }
    interface SimplePaletteColorOptions {
        darkest?: string;
        hovered?: string;
        lightest?: string;
    }
    interface PaletteOptions {
        alert: {
            error: {
                background: string;
                content: string;
            };
            info: {
                background: string;
                content: string;
            };
            success: {
                background: string;
                content: string;
            };
            warning: {
                background: string;
                content: string;
            };
        };
        neutral: {
            100: string;
            200: string;
            300: string;
            400: string;
            50: string;
            500: string;
            600: string;
            700: string;
            800: string;
            900: string;
        };
    }
    interface TypeBackground {
        default: string;
        paper: string;
        paperGlass: string;
        paperTertiary: string;
    }
}
//# sourceMappingURL=types.d.ts.map