import { WalineEmojiInfo, WalineEmojiMaps, WalineEmojiPresets, WalineHighlighter, WalineImageUploader, WalineLocale, WalineProps, WalineSearchOptions, WalineTeXRenderer } from '../typings/index.js';
export interface WalineEmojiConfig {
    tabs: Pick<WalineEmojiInfo, 'name' | 'icon' | 'items'>[];
    map: WalineEmojiMaps;
}
export interface WalineConfig extends Required<Omit<WalineProps, 'emoji' | 'imageUploader' | 'highlighter' | 'texRenderer' | 'wordLimit' | 'reaction' | 'search'>> {
    locale: WalineLocale;
    wordLimit: [number, number] | false;
    emoji: (WalineEmojiInfo | WalineEmojiPresets)[] | null;
    highlighter: WalineHighlighter | null;
    imageUploader: WalineImageUploader | null;
    texRenderer: WalineTeXRenderer | null;
    search: WalineSearchOptions | null;
    reaction: string[] | null;
}
export declare const getServerURL: (serverURL: string) => string;
export declare const getConfig: ({ serverURL, path, lang, locale, meta, requiredMeta, dark, pageSize, wordLimit, noCopyright, login, recaptchaV3Key, turnstileKey, commentSorting, emoji, imageUploader, highlighter, texRenderer, search, reaction, ...more }: WalineProps) => WalineConfig;
