import { WidgetMessage } from '../../../internal/plugins/widget/interfaces';
export interface OnChangeParams {
  initiatedByUserAction: boolean;
}
interface UseDrawersProps {
  onAiDrawerFocus: () => void;
  expandedDrawerId: string | null;
  setExpandedDrawerId: (value: string | null) => void;
  getMaxAiDrawerSize: () => number;
}
export declare function useAiDrawer({
  onAiDrawerFocus,
  expandedDrawerId,
  setExpandedDrawerId,
  getMaxAiDrawerSize
}: UseDrawersProps): {
  aiDrawer: (import("../..").AppLayoutProps.Drawer & {
    orderPriority?: number;
    onToggle?: import("../../../internal/events").NonCancelableEventHandler<import("../../../internal/plugins/controllers/drawers").DrawerStateChangeParams>;
    headerActions?: ReadonlyArray<import("../../..").ButtonGroupProps.Item>;
    exitExpandedModeTrigger?: React.ReactNode;
    onToggleFocusMode?: import("../../../internal/events").NonCancelableEventHandler<{
      isExpanded: boolean;
    }>;
  }) | null;
  aiDrawerMessageHandler: (event: WidgetMessage) => void;
  onActiveAiDrawerChange: (newDrawerId: string | null, {
    initiatedByUserAction
  }?: OnChangeParams) => void;
  activeAiDrawer: (import("../..").AppLayoutProps.Drawer & {
    orderPriority?: number;
    onToggle?: import("../../../internal/events").NonCancelableEventHandler<import("../../../internal/plugins/controllers/drawers").DrawerStateChangeParams>;
    headerActions?: ReadonlyArray<import("../../..").ButtonGroupProps.Item>;
    exitExpandedModeTrigger?: React.ReactNode;
    onToggleFocusMode?: import("../../../internal/events").NonCancelableEventHandler<{
      isExpanded: boolean;
    }>;
  }) | null;
  activeAiDrawerId: string | null;
  activeAiDrawerSize: number;
  minAiDrawerSize: number;
  onActiveAiDrawerResize: (size: number) => void;
};
export {};