import React, { type FC, ReactNode } from "react";
import './index.less';
import { AffixProps, BreadcrumbProps, SpinProps, TabsProps, WatermarkProps, TabPaneProps } from "antd";
import { BitzPageHeaderProps } from "@/components/BitzPageHeader";
export type WithFalse<T> = T | false;
export interface BitzPageHeaderTabConfig {
    /** @name tabs 的列表 */
    tabList?: (TabPaneProps & {
        key?: React.Key;
    })[];
    /** @name tabActiveKey 当前选中 tab 的 key */
    tabActiveKey?: TabsProps['activeKey'];
    /** @name tab 修改时触发 */
    onTabChange?: TabsProps['onChange'];
    /** @name tab 上额外的区域 */
    tabBarExtraContent?: TabsProps['tabBarExtraContent'];
    /** @name tabs 的其他配置 */
    tabProps?: TabsProps;
    /**
     * @deprecated 请使用 fixedHeader
     * @name fixHeader 固定 PageHeader 到页面顶部
     */
    fixHeader?: boolean;
    /** @name fixedHeader 固定 PageHeader 到页面顶部 */
    fixedHeader?: boolean;
}
export type BitzContainerProps = {
    title?: React.ReactNode | false;
    content?: React.ReactNode;
    extraContent?: React.ReactNode;
    prefixCls?: string;
    footer?: ReactNode[];
    /**
     * 与 antd 完全相同
     *
     * @name PageHeader 的配置
     */
    header?: Partial<BitzPageHeaderProps> & {
        children?: React.ReactNode;
    };
    /** @name pageHeaderRender 自定义 pageHeader */
    pageHeaderRender?: WithFalse<(props: BitzPageHeaderProps) => React.ReactNode>;
    /**
     * 与 antd 完全相同
     *
     * @name affixProps 固钉的配置
     */
    affixProps?: Omit<AffixProps, 'children'>;
    /**
     * 只加载内容区域
     *
     * @name loading 是否加载
     */
    loading?: boolean | SpinProps | React.ReactNode;
    /**
     * 自定义 breadcrumb,
     * @name breadcrumbRender 返回false不展示
     */
    breadcrumbRender?: BitzPageHeaderProps['breadcrumbRender'] | false;
    /** @name WaterMarkProps 水印的配置 */
    waterMarkProps?: WatermarkProps;
    /** @name BreadcrumbProps 配置面包屑 */
    breadcrumb?: BreadcrumbProps;
    children?: React.ReactNode;
} & BitzPageHeaderTabConfig & Omit<BitzPageHeaderProps, 'title' | 'footer' | 'breadcrumbRender' | 'breadcrumb'>;
declare const BitzPageContainer: FC<BitzContainerProps>;
export default BitzPageContainer;
