import { type Dispatch, type SetStateAction } from "react";
import { type IAutomationMetadataObjectDefinition, type IdentifierRef, type ObjRef } from "@gooddata/sdk-model";
import { type IAutomationParameter } from "./automationParameters.js";
/**
 * @internal
 */
export interface IUseAutomationAlertParameters {
    /**
     * The parameter chips to render. Empty when the `enableParameters` feature is off.
     */
    automationParameters: IAutomationParameter[];
    /**
     * Workspace parameters addable via the "+" menu (catalog minus the selected set and minus
     * dashboard-`hidden`/`readonly` parameters). Empty when the feature is off.
     */
    availableParameters: IAutomationParameter[];
    onParameterAdd: (ref: IdentifierRef) => void;
    onParameterChange: (ref: IdentifierRef, value: number) => void;
    onParameterDelete: (ref: IdentifierRef) => void;
    /**
     * Surgically drops stored parameters whose `ref` left the workspace catalog, keeping every
     * other override. Used to repair an alert when "apply current filters" resolves staleness.
     */
    dropStaleParameters: () => void;
}
/**
 * Parameter editing for the alert dialog. The single source of truth is the edited automation's
 * `alert.execution.parameters` ({ref, value} wire shape); the display-ready set is derived per render.
 *
 * @internal
 */
export declare function useAutomationAlertParameters({ editedAutomation, setEditedAutomation, widgetRef }: {
    editedAutomation: IAutomationMetadataObjectDefinition | undefined;
    setEditedAutomation: Dispatch<SetStateAction<IAutomationMetadataObjectDefinition | undefined>>;
    widgetRef?: ObjRef;
}): IUseAutomationAlertParameters;
//# sourceMappingURL=useAutomationAlertParameters.d.ts.map