import { type ICatalogAttributeHierarchy, type ICatalogDateAttributeHierarchy, type IDrillDownReference, type InsightDrillDefinition, type ObjRef } from "@gooddata/sdk-model";
import { type IDrillConfigItem, type IDrillDownAttributeHierarchyConfig, type IDrillDownAttributeHierarchyDefinition } from "../../../../drill/types.js";
/**
 * @internal
 */
export interface IUseDrillConfigPanelProps {
    widgetRef: ObjRef;
}
/**
 * hook for DrillConfigPanel component
 * @internal
 */
export declare const useInsightDrillConfigPanel: (props: IUseDrillConfigPanelProps) => {
    widget: import("@gooddata/sdk-model").IInsightWidget;
    insight: import("@gooddata/sdk-model").IInsight | undefined;
    drillConfigItems: IDrillConfigItem[];
    selectedDrillItem: IDrillConfigItem | undefined;
    originSelectorItems: {
        measures: import("@gooddata/sdk-ui").IAvailableDrillTargetMeasure[] | undefined;
        attributes: import("@gooddata/sdk-ui").IAvailableDrillTargetAttribute[] | undefined;
    };
    isOriginSelectorVisible: boolean;
    isLoaded: boolean;
    onChangeItem: (changedItem: IDrillConfigItem) => void;
    onOriginSelect: (selectedItem: import("../../../../drill/DrillSelect/types.js").IAvailableDrillTargetItem, widgetRef: ObjRef) => void;
    onSetupItem: (drill: IDrillDownAttributeHierarchyDefinition | InsightDrillDefinition, changedItem: IDrillConfigItem, isIgnoredDrillDownInteresectionAttributesChange?: boolean | undefined) => void;
    onUpdateDrillItem: (drill: IDrillDownAttributeHierarchyDefinition | InsightDrillDefinition, changedItem: IDrillConfigItem) => void;
    onDeleteItem: (item: IDrillConfigItem) => void;
};
export declare function buildBlacklistHierarchies(item: IDrillDownAttributeHierarchyDefinition | IDrillDownAttributeHierarchyConfig, attributeHierarchies: (ICatalogAttributeHierarchy | ICatalogDateAttributeHierarchy)[]): IDrillDownReference[];
//# sourceMappingURL=useInsightDrillConfigPanel.d.ts.map