/**
 * Copyright (c) OpenLens Maintainers. All rights reserved.
 * Licensed under MIT License. See LICENSE in root directory for more information.
 */
import "./drawer.scss";
import React from "react";
import type { StrictReactNode } from "@openlens/utilities";
import type { AnimateName } from "../animate";
import { ResizeDirection, ResizeGrowthDirection, ResizeSide } from "@openlens/resizing-anchor";
export type DrawerPosition = "top" | "left" | "right" | "bottom";
export interface DrawerProps {
    open: boolean;
    title: StrictReactNode;
    /**
     * The width or heigh (depending on `position`) of the Drawer.
     *
     * If not set then the Drawer will be resizable.
     */
    size?: string;
    usePortal?: boolean;
    className?: string | object;
    contentClass?: string | object;
    position?: DrawerPosition;
    animation?: AnimateName;
    onClose?: () => void;
    toolbar?: StrictReactNode;
    children?: StrictReactNode;
    "data-testid"?: string;
    testIdForClose?: string;
}
export declare const resizingAnchorProps: Record<DrawerPosition, [ResizeDirection, ResizeSide, ResizeGrowthDirection]>;
export declare const Drawer: React.FunctionComponent<DrawerProps>;
