export interface ImageViewerLabels {
    preview?: string;
    zoomIn?: string;
    zoomOut?: string;
    fit?: string;
    actualSize?: string;
    reset?: string;
    rotateLeft?: string;
    rotateRight?: string;
    fullscreen?: string;
    download?: string;
    openInNewTab?: string;
    close?: string;
    imageAltFallback?: string;
    downloadSuccess?: string;
    downloadError?: string;
    fullscreenError?: string;
    openInNewTabError?: string;
    imageLoadError?: string;
}
export interface ImageViewerConfig {
    enabled?: boolean;
    labels?: ImageViewerLabels;
}
export interface SyntaxHighlightConfig {
    langs?: string[];
    lightTheme?: string;
    darkTheme?: string;
}
export interface SiteConfig {
    site: {
        logo: string | {
            light: string;
            dark: string;
        };
        title: string;
        description: string;
    };
    navbar: {
        showLogo?: boolean;
        showTitle?: boolean;
        showLanguageSwitcher?: boolean;
        items: {
            title: string;
            link: string;
            external?: boolean;
            visible?: boolean;
        }[];
        actions?: {
            type?: string;
            title?: string;
            link: string;
            icon?: string;
            enabled?: boolean;
        }[];
    };
    sidebar: {
        enabled?: boolean;
        sections?: {
            title: string;
            path?: string;
            children?: {
                title: string;
                path: string;
            }[];
        }[];
        collections?: Record<string, {
            sections: {
                title: string;
                path: string;
                children?: {
                    title: string;
                    path: string;
                }[];
            }[];
        }>;
    };
    theme?: {
        allowToggle?: boolean;
    };
    footer?: {
        enabled?: boolean;
        copyright?: string;
        repository?: {
            url?: string;
            branch?: string;
        };
        lastUpdated?: string;
        version?: string;
        groups?: {
            title: string;
            items: {
                title: string;
                link: string;
                external?: boolean;
            }[];
        }[];
        links?: {
            title: string;
            link: string;
            external?: boolean;
        }[];
        social?: {
            name: string;
            url?: string;
            link?: string;
            icon?: string;
        }[];
        builtWith?: {
            name: string;
            url?: string;
        }[];
    };
    pwa?: {
        enabled?: boolean;
        name?: string;
        shortName?: string;
        description?: string;
        themeColor?: string;
        backgroundColor?: string;
    };
    contextMenu?: {
        enabled?: boolean;
        page?: {
            copyUrl?: boolean;
            copyTitle?: boolean;
            copyMarkdownLink?: boolean;
            copySelectedText?: boolean;
            openInNewTab?: boolean;
            reload?: boolean;
            printPage?: boolean;
            scrollToTop?: boolean;
            scrollToBottom?: boolean;
        };
        site?: {
            goHome?: boolean;
            quickNav?: boolean;
            language?: boolean;
        };
        appearance?: {
            theme?: boolean;
            resetThemePref?: boolean;
        };
    };
    mdx?: {
        componentsPath?: string;
        enabled?: boolean;
        components?: {
            [componentName: string]: string;
        };
    };
    toc?: {
        enabled?: boolean;
        maxLevel?: number;
        title?: string;
    };
    ai?: {
        enabled?: boolean;
    };
    fonts?: {
        fontFamilyZhCn?: string;
        fontFamilyEn?: string;
        downloadFonts?: string[];
    };
    codeHighlight?: SyntaxHighlightConfig;
    search?: {
        enabled?: boolean;
        placeholder?: string;
        maxResults?: number;
    };
    export?: {
        enabled?: boolean;
        markdown?: boolean;
        pdf?: boolean;
        word?: boolean;
        allDocs?: boolean;
        pdfServer?: {
            enabled?: boolean;
            url?: string;
        };
    };
    imageViewer?: ImageViewerConfig;
}
export declare function getConfig(lang?: string): Promise<SiteConfig | null>;
//# sourceMappingURL=config.d.ts.map