import React from 'react';
import './SideBarWindow.css';
declare type IArray = {
    id: string;
    tabLabel?: string;
    tabIcon?: React.ReactNode;
    hasNotification?: Boolean;
    notifTabIcon?: React.ReactNode;
    data?: React.ReactNode;
    windowTitle?: string | React.ReactNode;
    width?: string;
    discussionPanelClassName?: string;
    disableSidebar?: boolean;
    enableTab?: boolean;
    enableInEntryCreatePage?: boolean;
    isIndependentlyActive?: boolean;
    onClick: () => void;
    tabTestId?: string;
};
interface SideBarWindowProps {
    /**
     * An array of tab info objects(id, tabLabel, tabIcon, data)
     */
    tabsInfo?: Array<IArray>;
    windowData?: {
        tabLabel?: string;
        tabIcon?: React.ReactNode;
        data?: React.ReactNode;
        windowTitle?: string | React.ReactNode;
        tabTestId?: string;
    };
    isInsideEntryCreatePage?: boolean;
    onSelect?: (data?: any) => void;
    onClose?: (data?: any) => void;
    borderOpen?: boolean;
    borderClose?: boolean;
    isResizable?: boolean;
    defaultSelectedIndex?: number;
    onKeyDownCallback?: Function;
}
interface WindowContentProps {
    data?: React.ReactNode;
    windowTitle?: string | React.ReactNode;
    width?: string;
    discussionPanelClassName?: string;
    isResizable?: boolean;
}
export declare const GetWindowContent: (props: WindowContentProps) => React.JSX.Element;
declare const SideBarWindow: {
    (props: SideBarWindowProps): React.JSX.Element;
    defaultProps: Partial<SideBarWindowProps>;
};
export default SideBarWindow;
