import type { ComponentConfig } from '../component-config';
import type { ColorConfig, CustomColorVariables } from '../color';
import type { IconConfig } from '../icon';
import type { BreakpointConfig } from '../breakpoint';
import type { I18nConfig, CustomI18NKeys } from '../i18n';
import type { Ref, Component } from 'vue';
import type { ColorsClassesConfig } from '../colors-classes';
export type GlobalConfig = {
    colors: ColorConfig;
    icons: IconConfig;
    components: ComponentConfig;
    breakpoint: BreakpointConfig;
    i18n: I18nConfig;
    colorsClasses: ColorsClassesConfig;
    routerComponent: Component | undefined;
};
type DeepPartial<T> = T extends Record<string, any> ? {
    [P in keyof T]?: P extends 'components' ? T[P] : DeepPartial<T[P]>;
} : T;
export type PartialGlobalConfig = DeepPartial<GlobalConfig> & {
    colors?: {
        variables?: Partial<CustomColorVariables>;
    };
    i18n?: Partial<CustomI18NKeys>;
};
export type SizeConfig = {
    defaultSize?: number;
    sizes?: {
        [sizeName: string]: number | string;
    };
};
export type GlobalConfigUpdater<T> = (config: T) => T;
export type { ColorConfig, ComponentConfig, IconConfig, BreakpointConfig, };
export type ProvidedGlobalConfig = {
    globalConfig: Ref<GlobalConfig>;
    getGlobalConfig: () => GlobalConfig;
    /**
     * Set new global config
     * @see mergeGlobalConfig if you want to update existing config
     */
    setGlobalConfig: (updater: GlobalConfig | GlobalConfigUpdater<GlobalConfig>) => void;
    mergeGlobalConfig: (updater: PartialGlobalConfig | GlobalConfigUpdater<PartialGlobalConfig>) => void;
};
export declare const defineVuesticConfig: <Config extends {
    colors?: {
        variables?: {
            [x: string & Record<never, never>]: string | undefined;
            primary?: string | undefined;
            secondary?: string | undefined;
            success?: string | undefined;
            info?: string | undefined;
            danger?: string | undefined;
            warning?: string | undefined;
            backgroundPrimary?: string | undefined;
            backgroundSecondary?: string | undefined;
            backgroundElement?: string | undefined;
            backgroundBorder?: string | undefined;
            textPrimary?: string | undefined;
            textInverted?: string | undefined;
            shadow?: string | undefined;
            focus?: string | undefined;
            transparent?: string | undefined;
            onFocus?: string | undefined;
            onPrimary?: string | undefined;
            onSecondary?: string | undefined;
            onSuccess?: string | undefined;
            onInfo?: string | undefined;
            onDanger?: string | undefined;
            onWarning?: string | undefined;
            onBackgroundPrimary?: string | undefined;
            onBackgroundSecondary?: string | undefined;
            onBackgroundElement?: string | undefined;
            onBackgroundBorder?: string | undefined;
            onTextPrimary?: string | undefined;
            onTextInverted?: string | undefined;
            onShadow?: string | undefined;
            onTransparent?: string | undefined;
        } | undefined;
        threshold?: number | undefined;
        presets?: {
            [x: string]: {
                [x: string & Record<never, never>]: string | undefined;
                primary?: string | undefined;
                secondary?: string | undefined;
                success?: string | undefined;
                info?: string | undefined;
                danger?: string | undefined;
                warning?: string | undefined;
                backgroundPrimary?: string | undefined;
                backgroundSecondary?: string | undefined;
                backgroundElement?: string | undefined;
                backgroundBorder?: string | undefined;
                textPrimary?: string | undefined;
                textInverted?: string | undefined;
                shadow?: string | undefined;
                focus?: string | undefined;
                transparent?: string | undefined;
                onFocus?: string | undefined;
                onPrimary?: string | undefined;
                onSecondary?: string | undefined;
                onSuccess?: string | undefined;
                onInfo?: string | undefined;
                onDanger?: string | undefined;
                onWarning?: string | undefined;
                onBackgroundPrimary?: string | undefined;
                onBackgroundSecondary?: string | undefined;
                onBackgroundElement?: string | undefined;
                onBackgroundBorder?: string | undefined;
                onTextPrimary?: string | undefined;
                onTextInverted?: string | undefined;
                onShadow?: string | undefined;
                onTransparent?: string | undefined;
            } | undefined;
            light?: {
                [x: string & Record<never, never>]: string | undefined;
                primary?: string | undefined;
                secondary?: string | undefined;
                success?: string | undefined;
                info?: string | undefined;
                danger?: string | undefined;
                warning?: string | undefined;
                backgroundPrimary?: string | undefined;
                backgroundSecondary?: string | undefined;
                backgroundElement?: string | undefined;
                backgroundBorder?: string | undefined;
                textPrimary?: string | undefined;
                textInverted?: string | undefined;
                shadow?: string | undefined;
                focus?: string | undefined;
                transparent?: string | undefined;
                onFocus?: string | undefined;
                onPrimary?: string | undefined;
                onSecondary?: string | undefined;
                onSuccess?: string | undefined;
                onInfo?: string | undefined;
                onDanger?: string | undefined;
                onWarning?: string | undefined;
                onBackgroundPrimary?: string | undefined;
                onBackgroundSecondary?: string | undefined;
                onBackgroundElement?: string | undefined;
                onBackgroundBorder?: string | undefined;
                onTextPrimary?: string | undefined;
                onTextInverted?: string | undefined;
                onShadow?: string | undefined;
                onTransparent?: string | undefined;
            } | undefined;
            dark?: {
                [x: string & Record<never, never>]: string | undefined;
                primary?: string | undefined;
                secondary?: string | undefined;
                success?: string | undefined;
                info?: string | undefined;
                danger?: string | undefined;
                warning?: string | undefined;
                backgroundPrimary?: string | undefined;
                backgroundSecondary?: string | undefined;
                backgroundElement?: string | undefined;
                backgroundBorder?: string | undefined;
                textPrimary?: string | undefined;
                textInverted?: string | undefined;
                shadow?: string | undefined;
                focus?: string | undefined;
                transparent?: string | undefined;
                onFocus?: string | undefined;
                onPrimary?: string | undefined;
                onSecondary?: string | undefined;
                onSuccess?: string | undefined;
                onInfo?: string | undefined;
                onDanger?: string | undefined;
                onWarning?: string | undefined;
                onBackgroundPrimary?: string | undefined;
                onBackgroundSecondary?: string | undefined;
                onBackgroundElement?: string | undefined;
                onBackgroundBorder?: string | undefined;
                onTextPrimary?: string | undefined;
                onTextInverted?: string | undefined;
                onShadow?: string | undefined;
                onTransparent?: string | undefined;
            } | undefined;
        } | undefined;
        currentPresetName?: string | undefined;
    } | undefined;
    icons?: ({
        name?: {
            exec?: {} | undefined;
            test?: {} | undefined;
            readonly source?: string | undefined;
            readonly global?: boolean | undefined;
            readonly ignoreCase?: boolean | undefined;
            readonly multiline?: boolean | undefined;
            lastIndex?: number | undefined;
            compile?: {} | undefined;
            readonly flags?: string | undefined;
            readonly sticky?: boolean | undefined;
            readonly unicode?: boolean | undefined;
            readonly dotAll?: boolean | undefined;
            readonly hasIndices?: boolean | undefined;
            [Symbol.match]?: {} | undefined;
            [Symbol.replace]?: {} | undefined;
            [Symbol.search]?: {} | undefined;
            [Symbol.split]?: {} | undefined;
            [Symbol.matchAll]?: {} | undefined;
        } | undefined;
        resolveFromRegex?: {} | undefined;
        attrs?: {
            [x: string]: string | {} | undefined;
        } | undefined;
        component?: any;
        content?: string | undefined;
        class?: string | undefined;
        tag?: string | undefined;
        color?: string | undefined;
        rotation?: string | number | undefined;
        spin?: boolean | "clockwise" | "counter-clockwise" | undefined;
        to?: string | undefined;
    } | {
        name?: string | undefined;
        resolve?: {} | undefined;
        attrs?: {
            [x: string]: string | {} | undefined;
        } | undefined;
        component?: any;
        content?: string | undefined;
        class?: string | undefined;
        tag?: string | undefined;
        color?: string | undefined;
        rotation?: string | number | undefined;
        spin?: boolean | "clockwise" | "counter-clockwise" | undefined;
        to?: string | undefined;
    } | undefined)[] | undefined;
    components?: Partial<import("../component-config").VuesticComponentPropsMap & {
        all: import("../component-config").Props;
        presets: import("../component-config").Presets;
    }> | undefined;
    breakpoint?: {
        enabled?: boolean | undefined;
        bodyClass?: boolean | undefined;
        thresholds?: {
            xs?: number | undefined;
            sm?: number | undefined;
            md?: number | undefined;
            lg?: number | undefined;
            xl?: number | undefined;
        } | undefined;
    } | undefined;
    i18n?: {
        [x: string]: string | undefined;
        progress?: string | undefined;
        search?: string | undefined;
        select?: string | undefined;
        cancel?: string | undefined;
        close?: string | undefined;
        reset?: string | undefined;
        color?: string | undefined;
        carousel?: string | undefined;
        pagination?: string | undefined;
        breadcrumbs?: string | undefined;
        step?: string | undefined;
        noOptions?: string | undefined;
        ok?: string | undefined;
        uploadFile?: string | undefined;
        undo?: string | undefined;
        dropzone?: string | undefined;
        fileDeleted?: string | undefined;
        closeAlert?: string | undefined;
        backToTop?: string | undefined;
        toggleDropdown?: string | undefined;
        goPreviousSlide?: string | undefined;
        goNextSlide?: string | undefined;
        goSlide?: string | undefined;
        slideOf?: string | undefined;
        openColorPicker?: string | undefined;
        colorSelection?: string | undefined;
        colorName?: string | undefined;
        decreaseCounter?: string | undefined;
        increaseCounter?: string | undefined;
        selectAllRows?: string | undefined;
        sortColumnBy?: string | undefined;
        selectRowByIndex?: string | undefined;
        resetDate?: string | undefined;
        nextPeriod?: string | undefined;
        switchView?: string | undefined;
        previousPeriod?: string | undefined;
        removeFile?: string | undefined;
        goToTheFirstPage?: string | undefined;
        goToPreviousPage?: string | undefined;
        goToSpecificPage?: string | undefined;
        goToSpecificPageInput?: string | undefined;
        goNextPage?: string | undefined;
        goLastPage?: string | undefined;
        currentRating?: string | undefined;
        voteRating?: string | undefined;
        optionsFilter?: string | undefined;
        splitPanels?: string | undefined;
        movePaginationLeft?: string | undefined;
        movePaginationRight?: string | undefined;
        resetTime?: string | undefined;
        closeToast?: string | undefined;
        selectedOption?: string | undefined;
        noSelectedOption?: string | undefined;
        counterValue?: string | undefined;
        selectedDate?: string | undefined;
        selectedTime?: string | undefined;
        progressState?: string | undefined;
        next?: string | undefined;
        back?: string | undefined;
        finish?: string | undefined;
        loading?: string | undefined;
        sliderValue?: string | undefined;
        switch?: string | undefined;
        inputField?: string | undefined;
        fileTypeIncorrect?: string | undefined;
    } | undefined;
    colorsClasses?: ({
        prefix?: string | undefined;
        postfix?: string | undefined;
        property?: string | (string | undefined)[] | undefined;
        value?: string | undefined;
    } | undefined)[] | undefined;
    routerComponent?: {
        [x: string]: any;
        setup?: {} | undefined;
        name?: string | undefined;
        template?: string | object | undefined;
        render?: {
            apply?: {} | undefined;
            call?: {} | undefined;
            bind?: {} | undefined;
            toString?: {} | undefined;
            prototype?: any;
            readonly length?: number | undefined;
            arguments?: any;
            caller?: any | undefined;
            readonly name?: string | undefined;
            [Symbol.hasInstance]?: {} | undefined;
            [Symbol.metadata]?: {
                [x: string]: unknown;
                [x: number]: unknown;
                [x: symbol]: unknown;
            } | null | undefined;
        } | undefined;
        components?: Record<string, Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions, {}, any>> | undefined;
        directives?: {
            [x: string]: {
                created?: {} | undefined;
                beforeMount?: {} | undefined;
                mounted?: {} | undefined;
                beforeUpdate?: {} | undefined;
                updated?: {} | undefined;
                beforeUnmount?: {} | undefined;
                unmounted?: {} | undefined;
                getSSRProps?: {} | undefined;
                deep?: boolean | undefined;
            } | {} | undefined;
        } | undefined;
        inheritAttrs?: boolean | undefined;
        emits?: any;
        slots?: {} | undefined;
        expose?: (string | undefined)[] | undefined;
        serverPrefetch?: {} | undefined;
        compilerOptions?: {
            isCustomElement?: {} | undefined;
            whitespace?: "preserve" | "condense" | undefined;
            comments?: boolean | undefined;
            delimiters?: [(string | undefined)?, (string | undefined)?] | undefined;
        } | undefined;
        call?: {} | undefined;
        __isFragment?: undefined;
        __isTeleport?: undefined;
        __isSuspense?: undefined;
        __defaults?: any;
        compatConfig?: {
            GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
            GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
            GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
            GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
            GLOBAL_SET?: boolean | "suppress-warning" | undefined;
            GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
            GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
            GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
            CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
            CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
            CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
            CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
            CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
            CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
            CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
            INSTANCE_SET?: boolean | "suppress-warning" | undefined;
            INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
            INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
            INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
            INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
            INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
            INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
            INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
            INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
            OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
            OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
            OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
            OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
            WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
            PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
            V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
            CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
            ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
            ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
            TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
            TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
            COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
            COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
            COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
            RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
            FILTERS?: boolean | "suppress-warning" | undefined;
            PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
            MODE?: 2 | 3 | {} | undefined;
        } | undefined;
        data?: {} | undefined;
        computed?: {
            [x: string]: {} | {
                get?: {} | undefined;
                set?: {} | undefined;
            } | undefined;
        } | undefined;
        methods?: {
            [x: string]: {
                apply?: {} | undefined;
                call?: {} | undefined;
                bind?: {} | undefined;
                toString?: {} | undefined;
                prototype?: any;
                readonly length?: number | undefined;
                arguments?: any;
                caller?: any | undefined;
                readonly name?: string | undefined;
                [Symbol.hasInstance]?: {} | undefined;
                [Symbol.metadata]?: {
                    [x: string]: unknown;
                    [x: number]: unknown;
                    [x: symbol]: unknown;
                } | null | undefined;
            } | undefined;
        } | undefined;
        watch?: {
            [x: string]: string | {} | {
                handler?: string | {} | undefined;
                immediate?: boolean | undefined;
                deep?: boolean | undefined;
                once?: boolean | undefined;
                flush?: "pre" | "sync" | "post" | undefined;
                onTrack?: {} | undefined;
                onTrigger?: {} | undefined;
            } | (string | {} | {
                handler?: string | {} | undefined;
                immediate?: boolean | undefined;
                deep?: boolean | undefined;
                once?: boolean | undefined;
                flush?: "pre" | "sync" | "post" | undefined;
                onTrack?: {} | undefined;
                onTrigger?: {} | undefined;
            } | undefined)[] | undefined;
        } | undefined;
        provide?: {
            apply?: {} | undefined;
            call?: {} | undefined;
            bind?: {} | undefined;
            toString?: {} | undefined;
            prototype?: any;
            readonly length?: number | undefined;
            arguments?: any;
            caller?: any | undefined;
            readonly name?: string | undefined;
            [Symbol.hasInstance]?: {} | undefined;
            [Symbol.metadata]?: {
                [x: string]: unknown;
                [x: number]: unknown;
                [x: symbol]: unknown;
            } | null | undefined;
        } | {
            [x: string]: unknown;
            [x: symbol]: unknown;
        } | undefined;
        inject?: (string | undefined)[] | {} | undefined;
        filters?: {
            [x: string]: {
                apply?: {} | undefined;
                call?: {} | undefined;
                bind?: {} | undefined;
                toString?: {} | undefined;
                prototype?: any;
                readonly length?: number | undefined;
                arguments?: any;
                caller?: any | undefined;
                readonly name?: string | undefined;
                [Symbol.hasInstance]?: {} | undefined;
                [Symbol.metadata]?: {
                    [x: string]: unknown;
                    [x: number]: unknown;
                    [x: symbol]: unknown;
                } | null | undefined;
            } | undefined;
        } | undefined;
        mixins?: any[] | undefined;
        extends?: any;
        beforeCreate?: {} | undefined;
        created?: {} | undefined;
        beforeMount?: {} | undefined;
        mounted?: {} | undefined;
        beforeUpdate?: {} | undefined;
        updated?: {} | undefined;
        activated?: {} | undefined;
        deactivated?: {} | undefined;
        beforeDestroy?: {} | undefined;
        beforeUnmount?: {} | undefined;
        destroyed?: {} | undefined;
        unmounted?: {} | undefined;
        renderTracked?: {} | undefined;
        renderTriggered?: {} | undefined;
        errorCaptured?: {} | undefined;
        delimiters?: [(string | undefined)?, (string | undefined)?] | undefined;
        __differentiator?: string | number | symbol | undefined;
        __isBuiltIn?: boolean | undefined;
        __file?: string | undefined;
        __name?: string | undefined;
    } | {
        props?: (string | undefined)[] | {
            [x: string]: {} | {} | {
                readonly prototype?: any;
            } | ({} | {} | {
                readonly prototype?: any;
            } | undefined)[] | {
                type?: true | {} | {} | {
                    readonly prototype?: any;
                } | ({} | {} | {
                    readonly prototype?: any;
                } | undefined)[] | null | undefined;
                required?: boolean | undefined;
                default?: any;
                validator?: {} | undefined;
            } | null | undefined;
        } | undefined;
        emits?: undefined[] | {} | undefined;
        slots?: {
            readonly [x: string]: {} | undefined;
        } | undefined;
        inheritAttrs?: boolean | undefined;
        displayName?: string | undefined;
        compatConfig?: {
            GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
            GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
            GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
            GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
            GLOBAL_SET?: boolean | "suppress-warning" | undefined;
            GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
            GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
            GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
            CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
            CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
            CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
            CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
            CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
            CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
            CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
            INSTANCE_SET?: boolean | "suppress-warning" | undefined;
            INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
            INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
            INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
            INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
            INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
            INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
            INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
            INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
            OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
            OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
            OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
            OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
            WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
            PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
            V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
            CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
            ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
            ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
            TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
            TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
            COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
            COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
            COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
            RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
            FILTERS?: boolean | "suppress-warning" | undefined;
            PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
            MODE?: 2 | 3 | {} | undefined;
        } | undefined;
        __isBuiltIn?: boolean | undefined;
        __file?: string | undefined;
        __name?: string | undefined;
    } | {
        __isFragment?: undefined;
        __isTeleport?: undefined;
        __isSuspense?: undefined;
    } | undefined;
}>(config: Config) => Config;
