import type { MaybeRef } from '@vueuse/core';
import type { App, Ref } from 'vue';
import type { ConfigProviderContext } from 'element-ps/es/tokens';
export declare function useGlobalConfig<K extends keyof ConfigProviderContext, D extends ConfigProviderContext[K]>(key: K, defaultValue?: D): Ref<Exclude<ConfigProviderContext[K], undefined> | D>;
export declare function useGlobalConfig(): Ref<ConfigProviderContext>;
export declare const provideGlobalConfig: (config: MaybeRef<ConfigProviderContext>, app?: App<any> | undefined, global?: boolean) => import("vue").ComputedRef<Partial<import("vue").ExtractPropTypes<{
    readonly a11y: import("element-ps/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
    readonly locale: import("element-ps/es/utils").BuildPropReturn<import("element-ps/es/utils").PropWrapper<import("../../locale").Language>, unknown, unknown, unknown, unknown>;
    readonly size: import("element-ps/es/utils").BuildPropReturn<StringConstructor, "", unknown, "" | "default" | "small" | "large", unknown>;
    readonly button: import("element-ps/es/utils").BuildPropReturn<import("element-ps/es/utils").PropWrapper<import("../..").ButtonConfigContext>, unknown, unknown, unknown, unknown>;
    readonly experimentalFeatures: import("element-ps/es/utils").BuildPropReturn<import("element-ps/es/utils").PropWrapper<import("element-ps/es/tokens").ExperimentalFeatures>, unknown, unknown, unknown, unknown>;
    readonly keyboardNavigation: import("element-ps/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
    readonly zIndex: import("element-ps/es/utils").BuildPropReturn<NumberConstructor, unknown, unknown, unknown, unknown>;
    readonly namespace: import("element-ps/es/utils").BuildPropReturn<StringConstructor, "el", unknown, unknown, unknown>;
}>>> | undefined;
