import { type DataViewFacade, type GoodDataSdkError, type IExecutionConfiguration, type UseCancelablePromiseCallbacks, type UseCancelablePromiseState } from "@gooddata/sdk-ui";
import { type ICustomWidget } from "../../../model/types/layoutTypes.js";
/**
 * Configuration options for the {@link useCustomWidgetExecutionDataView} hook.
 *
 * @public
 */
export interface IUseCustomWidgetExecutionDataViewConfig {
    /**
     * Custom widget in the context of which the execution should be run. This affects which filters will be used.
     */
    widget: ICustomWidget;
    /**
     * Definition of the execution to execute (without filters). The filters will be filled automatically.
     *
     * @remarks
     * Note: When the execution is not provided, hook is locked in a "pending" state.
     */
    execution?: Exclude<IExecutionConfiguration, "filters">;
    /**
     * Enable or disable real execution cancellation.
     *
     * This means that if the execution request is not yet finished and the execution changes,
     * the request will be cancelled and the new execution will be started.
     */
    enableExecutionCancelling?: boolean;
}
/**
 * Callbacks for {@link useCustomWidgetExecutionDataView} hook.
 *
 * @public
 */
export type UseCustomWidgetExecutionDataViewCallbacks = UseCancelablePromiseCallbacks<DataViewFacade, GoodDataSdkError>;
/**
 * This hook provides an easy way to read a data view from a custom widget. It resolves the appropriate filters
 * for the widget based on the filters currently set on the whole dashboard.
 *
 * @public
 */
export declare function useCustomWidgetExecutionDataView({ enableExecutionCancelling, widget, execution, onCancel, onError, onLoading, onPending, onSuccess }: IUseCustomWidgetExecutionDataViewConfig & UseCustomWidgetExecutionDataViewCallbacks): UseCancelablePromiseState<DataViewFacade, GoodDataSdkError>;
//# sourceMappingURL=useCustomWidgetExecutionDataView.d.ts.map