import type { PropType, VNode, VNodeChild } from 'vue';
import type { ExtractPublicPropTypes } from '../_util/interface';
import type { StorageType } from '../_util/storage';
export interface PanePosition {
    top?: string;
    right?: string;
    bottom?: string;
    left?: string;
}
export declare const floatPaneProps: {
    readonly visible: BooleanConstructor;
    readonly displayDirective: {
        readonly type: PropType<"show" | "if">;
        readonly default: "show";
    };
    readonly draggable: {
        readonly type: BooleanConstructor;
        readonly default: true;
    };
    readonly title: PropType<string | VNode<import("vue").RendererNode, import("vue").RendererElement, {
        [key: string]: any;
    }> | (() => VNodeChild)>;
    readonly width: {
        readonly type: PropType<string | number>;
        readonly default: 520;
    };
    readonly zIndex: {
        readonly type: NumberConstructor;
        readonly default: 3000;
    };
    readonly defaultPosition: {
        readonly type: PropType<PanePosition>;
        readonly default: () => PanePosition;
    };
    readonly cachePosition: {
        readonly type: PropType<StorageType>;
        readonly default: "local";
    };
    readonly cachePositionKey: {
        readonly type: StringConstructor;
        readonly default: "float-pane";
    };
    readonly getContainer: {
        readonly type: PropType<() => HTMLElement>;
    };
    readonly contentClass: StringConstructor;
};
export type FloatPaneProps = ExtractPublicPropTypes<typeof floatPaneProps>;
