import type { GetWidgetModelParams, WidgetModel } from '@sisense/sdk-ui-preact';
import type { MaybeRefOrWithRefs } from '../types';
/**
* A Vue composable function `useGetWidgetModel` for retrieving widget models from a Sisense dashboard.
* It is designed to fetch a specific widget model based on the provided dashboard and widget OIDs, handling the loading,
* success, and error states of the fetch operation. This composable is particularly useful for Vue applications that
* require detailed information about a Sisense widget for data visualization or analytics purposes.
*
* **Note:** Widget extensions based on JS scripts and add-ons in Fusion are not supported.
*
* @param {GetWidgetModelParams} params - The parameters for fetching the widget model, including the `dashboardOid`
* (the OID of the dashboard containing the widget) and the `widgetOid` (the OID of the widget to fetch). This allows for
* precise and dynamic fetching of widget models based on application needs.
*
* @example
* Retrieve a widget model and use it to populate a `Chart` component:
*
* ```vue
*
*
*
*
* ```
*
* The composable returns an object with reactive properties that represent the state of the widget model fetch operation:
* - `data`: The fetched widget model, which is `undefined` until the operation is successfully completed. The widget model
* contains detailed information about the widget, such as its configuration, data, and settings.
* - `isLoading`: A boolean indicating whether the fetch operation is currently in progress.
* - `isError`: A boolean indicating whether an error occurred during the fetch operation.
* - `isSuccess`: A boolean indicating whether the fetch operation was successfully completed without any errors.
* - `error`: An error object containing details about any errors that occurred during the fetch operation.
*
* This composable streamlines the process of fetching and managing Sisense widget models within Vue applications, providing
* developers with a reactive and efficient way to integrate Sisense data visualizations and analytics.
* @group Fusion Assets
* @fusionEmbed
*/
export declare const useGetWidgetModel: (params: MaybeRefOrWithRefs) => import("vue").ToRefs>;