import { type IExecutionResultLimitBreak, type ObjRef } from "@gooddata/sdk-model";
import { type DashboardSelector, type DashboardState } from "../types.js";
import { type IExecutionResultEnvelope } from "./types.js";
/**
 * @alpha
 */
export declare const selectExecutionResultEntities: (state: DashboardState) => Record<import("@reduxjs/toolkit").EntityId, IExecutionResultEnvelope>;
/**
 * @alpha
 */
export declare const selectExecutionResult: (state: DashboardState, id: import("@reduxjs/toolkit").EntityId) => {
    id: string;
    isLoading: boolean;
    executionResult?: import("@gooddata/sdk-backend-spi").IExecutionResult | undefined;
    error?: import("@gooddata/sdk-ui").GoodDataSdkError | undefined;
    warnings?: import("@gooddata/sdk-model").IResultWarning[] | undefined;
    limitBreaks?: IExecutionResultLimitBreak<import("@gooddata/sdk-model").ExecutionResultLimitType | (string & {})>[] | undefined;
};
/**
 * @alpha
 */
export declare const selectHasSomeExecutionResult: DashboardSelector<boolean>;
/**
 * @alpha
 */
export declare const selectExecutionResultByRef: (ref: ObjRef | undefined) => DashboardSelector<IExecutionResultEnvelope | undefined>;
/**
 * Selects the execution result limit breaks for the widget with the given ref.
 *
 * @remarks
 * Limit breaks indicate that the widget's execution hit a row/column/cell limit and only partial
 * data was returned. Returns an empty array when there are no limit breaks or the result is not available.
 *
 * @alpha
 */
export declare const selectExecutionResultLimitBreaksByRef: (ref: ObjRef | undefined) => DashboardSelector<IExecutionResultLimitBreak[]>;
/**
 * Selects whether the widget with the given ref returned partial data because an execution limit was reached.
 *
 * @alpha
 */
export declare const selectHasExecutionResultLimitBreaksByRef: (ref: ObjRef | undefined) => DashboardSelector<boolean>;
/**
 * Selects whether at least one widget currently on the dashboard returned partial data because an
 * execution limit was reached.
 *
 * @remarks
 * Only execution results of widgets still present on the dashboard layout are considered. Execution results
 * keyed by anything else - removed widgets that left a stale entry behind, or the drill dialog's pseudo
 * ref `@@GDC_DRILL_MODAL` - are ignored, so they cannot keep the dashboard partial-results warning visible.
 *
 * @alpha
 */
export declare const selectHasAnyExecutionResultLimitBreaks: DashboardSelector<boolean>;
/**
 * @alpha
 */
export declare const selectIsExecutionResultReadyForExportByRef: (ref: ObjRef) => DashboardSelector<boolean>;
/**
 * @alpha
 */
export declare const selectIsExecutionResultExportableToCsvByRef: (ref: ObjRef) => DashboardSelector<boolean>;
/**
 * @alpha
 */
export declare const selectIsExecutionResultExportableToXlsxByRef: (ref: ObjRef) => DashboardSelector<boolean>;
/**
 * @alpha
 */
export declare const selectIsExecutionResultExportableToPdfByRef: (ref: ObjRef) => DashboardSelector<boolean>;
/**
 * @alpha
 */
export declare const selectIsExecutionResultReadyForExportRawByRef: (ref: ObjRef) => DashboardSelector<boolean>;
/**
 * @alpha
 */
export declare const selectIsExecutionResultExportableToCsvRawByRef: (ref: ObjRef) => DashboardSelector<boolean>;
//# sourceMappingURL=executionResultsSelectors.d.ts.map