import { ReactNode, ReactElement } from 'react';
import type { LLMCopyButtonProps, LLMCopyButton } from '@third-ui/fuma/mdx/toc-base';
interface FumaPageParams {
    sourceKey: string;
    mdxContentSource: any;
    getMDXComponents: () => any;
    mdxSourceDir: string;
    githubBaseUrl?: string;
    copyButtonComponent?: ReactElement<LLMCopyButtonProps, typeof LLMCopyButton>;
    siteIcon: ReactNode;
    FallbackPage: React.ComponentType<{
        siteIcon: ReactNode;
    }>;
    supportedLocales?: string[];
    showBreadcrumb?: boolean;
    showTableOfContent?: boolean;
    showTableOfContentPopover?: boolean;
    localePrefixAsNeeded?: boolean;
    defaultLocale?: string;
}
export declare function createFumaPage({ sourceKey, mdxContentSource, getMDXComponents, mdxSourceDir, githubBaseUrl, copyButtonComponent, siteIcon, FallbackPage, supportedLocales, showBreadcrumb, showTableOfContent, showTableOfContentPopover, localePrefixAsNeeded, defaultLocale, }: FumaPageParams): {
    Page: ({ params }: {
        params: Promise<{
            locale: string;
            slug?: string[];
        }>;
    }) => Promise<import("react/jsx-runtime").JSX.Element>;
    generateStaticParams: () => any;
    generateMetadata: (props: {
        params: Promise<{
            slug?: string[];
            locale?: string;
        }>;
    }) => Promise<{
        title: string;
        description: string;
        metadataBase?: undefined;
        alternates?: undefined;
    } | {
        metadataBase: URL;
        title: any;
        description: any;
        alternates: {
            canonical: string;
            languages: Record<string, string>;
        };
    }>;
};
export {};
