import { type InjectionKey, type PropType, type Ref } from 'vue';
export type Direction = 'ltr' | 'rtl';
export interface DirectionContextValue {
    dir: Ref<Direction>;
    setDirection: (dir: Direction) => void;
    toggleDirection: () => void;
}
export declare const DirectionContextKey: InjectionKey<DirectionContextValue>;
export declare function useDirection(): DirectionContextValue;
export declare const DirectionProvider: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    initialDirection: {
        type: PropType<Direction>;
        default: string;
    };
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
    [key: string]: any;
}>[] | undefined, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    initialDirection: {
        type: PropType<Direction>;
        default: string;
    };
}>> & Readonly<{}>, {
    initialDirection: Direction;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
