import { ComputedRef, PropType, DefineComponent, ExtractPropTypes, VNode, RendererNode, RendererElement, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
import { Key } from '../_util/type';
export interface OverflowContextProviderValueType {
    prefixCls: string;
    responsive: boolean;
    order: number;
    registerSize: (key: Key, width: number | null) => void;
    display: boolean;
    invalidate: boolean;
    item?: any;
    itemKey?: Key;
    className?: string;
}
export declare const OverflowContextProvider: DefineComponent<ExtractPropTypes<{
    value: {
        type: PropType<OverflowContextProviderValueType>;
    };
}>, () => VNode<RendererNode, RendererElement, {
    [key: string]: any;
}>[] | undefined, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly< ExtractPropTypes<{
    value: {
        type: PropType<OverflowContextProviderValueType>;
    };
}>> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
export declare const useInjectOverflowContext: () => ComputedRef<OverflowContextProviderValueType | null>;
