import React, { PropsWithChildren } from 'react';
import { ActionIconProps } from '../ActionIcon';
import { HeaderProps } from '../Header';
import { ChatProps } from '../Chat';
import { SymbolCodepoints } from '@/core/icons/types';
interface BreadcrumbItem {
    name: string;
    link: string;
}
export interface SideBarItem extends ActionIconProps {
    tooltip?: string;
}
export interface ChatWindowStatus {
    isOpen: boolean;
    windowType: 'minimize' | 'maximize';
}
export interface PageContentProps extends PropsWithChildren {
    breadcrumbsItems: BreadcrumbItem[];
    sideBarItems: SideBarItem[];
    headerProps: HeaderProps;
    heightViewportContent?: number;
    chatProps: Omit<ChatProps, 'isRunTour' | 'onMaximizeOrMinimizeChat' | 'onCloseChat' | 'windowChatType'> & {
        /** Estado inicial da janela; após o mount o PageContent controla minimize/maximize */
        windowChatType?: 'minimize' | 'maximize';
    };
    isOpenChatDefault?: boolean;
    /** Disparado quando o usuário fecha o chat pelo botão X. */
    onCloseChat?: (status: ChatWindowStatus) => void;
    /** Disparado quando o usuário alterna minimize/maximize. */
    onMaximizeOrMinimizeChat?: (status: ChatWindowStatus) => void;
    /** Disparado quando o usuário abre o chat pelo NAIButton. */
    onOpenChat?: (status: ChatWindowStatus) => void;
    auxiliarText?: {
        text: string;
        icon?: SymbolCodepoints;
        fillIcon?: boolean;
        onClick: () => void;
    };
    getSnackbarContainer?: (element: HTMLElement | null) => void;
    backgroundType?: 'gradient' | 'solid';
    className?: string;
}
export declare const PageContent: React.FC<PageContentProps>;
export {};
