import type { App, Component, InjectionKey, ShallowRef } from 'vue';
export interface ProvidersInstance {
    providers: ShallowRef<Record<string, Component>>;
    get: (key: string) => Component;
    set: (key: string, value: Component) => void;
    createRootProvider: () => Component;
}
export declare const ProvidersKey: InjectionKey<ProvidersInstance>;
export declare function createProviders(app: App, options?: Record<string, Component>): ProvidersInstance;
export declare function useProviders(): ProvidersInstance;
