import { type ReactElement } from "react";
import { type ObjRef } from "@gooddata/sdk-model";
import { type IStylingPickerItem, type StylingPickerItemContent } from "../../Dialog/StylingEditorDialog/StylingEditorDialog.js";
/**
 * @internal
 */
export interface IStylingSettingWidgetProps<T extends StylingPickerItemContent> {
    title: string;
    defaultItem: IStylingPickerItem<T>;
    customItems: IStylingPickerItem<T>[];
    itemToColorPreview: (itemContent: T) => string[];
    emptyMessage: () => ReactElement;
    selectedItemRef?: ObjRef;
    isLoading?: boolean;
    titleTooltip?: string;
    footerHelpLink?: string;
    footerHelpTitle?: string;
    footerMobileMessage?: string;
    className?: string;
    shouldDisableCancelButton?: boolean;
    shouldDisableApplyButton?: boolean;
    onApply?: (ref: ObjRef | null) => void;
    onCancel?: () => void;
    onListActionClick?: () => void;
    onItemEdit?: (modifiedItem: IStylingPickerItem<T>) => void;
    onItemDelete?: (ref: ObjRef) => void;
    locale?: string;
    onHelpClick?: () => void;
    onItemMenuToggle?: (ref: ObjRef) => void;
    onItemSelect?: (ref: ObjRef | null) => void;
    isEditingSupported?: boolean;
    isSavingActionInProgress?: boolean;
}
/**
 * @internal
 */
export declare function StylingSettingWidget<T extends StylingPickerItemContent>(props: IStylingSettingWidgetProps<T>): ReactElement;
//# sourceMappingURL=StylingSettingWidget.d.ts.map