import { GetEmojiUrl } from '../components/emoji/Emoji';
import { EmojiClickData, EmojiStyle, SkinTonePickerLocation, SkinTones, SuggestionMode, Theme } from '../types/exposedTypes';
import { CategoriesConfig } from './categoryConfig';
export declare function mergeConfig(userConfig?: PickerConfig): PickerConfigInternal;
export declare function basePickerConfig(): PickerConfigInternal;
export declare type PickerConfigInternal = {
    emojiVersion: string | null;
    searchPlaceHolder: string;
    defaultSkinTone: SkinTones;
    skinTonesDisabled: boolean;
    autoFocusSearch: boolean;
    emojiStyle: EmojiStyle;
    categories: CategoriesConfig;
    onEmojiClick: (emoji: EmojiClickData, event: MouseEvent) => void;
    theme: Theme;
    suggestedEmojisMode: SuggestionMode;
    lazyLoadEmojis: boolean;
    previewConfig: PreviewConfig;
    height: PickerDimensions;
    width: PickerDimensions;
    getEmojiUrl: GetEmojiUrl;
    searchDisabled: boolean;
    skinTonePickerLocation: SkinTonePickerLocation;
};
export declare type PreviewConfig = {
    defaultEmoji: string;
    defaultCaption: string;
    showPreview: boolean;
};
declare type ConfigExternal = {
    previewConfig: Partial<PreviewConfig>;
} & Omit<PickerConfigInternal, 'previewConfig'>;
export declare type PickerConfig = Partial<ConfigExternal>;
export declare type PickerDimensions = string | number;
export {};
