import type { App, MaybeRef, MaybeRefOrGetter } from 'vue';
import LibConfig from '../node_modules/primevue/config';
import TSToastService from '../node_modules/primevue/toastservice';
import AssetsServices from './services/assets.service';
import AssetNameService from './services/assetName.service';
import AssetBrandService from './services/assetBrand.service';
import DataLockService from './services/dataLock.service';
import DisposalServices, { API as DisposalAPI } from './services/disposal.service';
import { FilterMatchMode } from '../node_modules/primevue/api';
import { API as TreeAPI } from './services/tree.service';
import RoutineServices, { API as RoutineAPI } from './services/routine.service';
import { FormContext, FieldContext, RuleExpression, FieldOptions } from 'vee-validate';
interface TSFormContext<T> {
    values: T;
    handleSubmit: FormContext['handleSubmit'];
    setValues: FormContext['setValues'];
    setFieldValue: FormContext['setFieldValue'];
    errors: FormContext['errors'];
}
declare const useForm: <T>() => TSFormContext<T>;
declare const useField: <T>(path: MaybeRefOrGetter<string>, rules?: MaybeRef<RuleExpression<T>>, opts?: Partial<FieldOptions<T>> | undefined) => FieldContext<T>;
import Presets from './presets';
import { handleTokenExpiration, exportToExcel, formatGoDate, formatDate, getUserLocale, formatDateReadable, formatUserName, formatVowelSoundLabel, getImageURL, downloadFile, isObjectEmpty, useToast, listenSidebarChanges, unListenSidebarChanges, getCurrency, formatCurrency, getHostName, getBaseURL, useI18n, getNestedProperyValue, getSeverityByAssetStatus, clearStorage, forceLogout, reLogin, isValidJSONString, buildBodyParams, formatLogResponseData, googleMapLoader, getVisibleColumns, getTransactionRole, getSystemRole, hasSystemRole, hasTransactionRole, checkRouteAccess, hasApprovalRole, hasManagerRole, hasAnyManagerRole, hasMonitoringReportRole, hasAnyMonitoringReportRole, hasStaffRole, hasAccessToAssetDetail } from './utils';
import { default as eventBus, extendEventBus } from './event-bus';
import { flattenTreeNodeChildren, parseNodeKeys, filterNodeKeys } from './components/v2/Tree/helpers';
import useLoadingStore from './components/v2/Loading/store/loading.store';
import { useAssetTableStore } from './components/v2/AssetTable/store';
import Tooltip from '../node_modules/primevue/tooltip';
import Focus from './directives/v-focus';
import VueHtmlToPaper from './plugins/VueHtmlToPaper';
import { ASSET_COL_FIELDS, assetValueColumns, assetValueColumnsWithDefault, customFieldColumns, defaultAssetColumns } from './components/v2/AssetTable/columns/assetColumns';
import { parseAssetStaticFilter, formatAssetValue } from './components/v2/AssetTable/helpers';
import { DialogDamageLog, DialogMissingLog, DialogTransferLog, TSAnimation, TSAssetInfo, TSApproverInfo, TSBadge, TSBadgeGroup, TSBreadcrumb, TSButton, TSButtonAddByScan, TSButtonBulkAction, TSButtonCopy, TSButtonDownload, TSButtonFilter, TSButtonLogHistory, TSButtonRadio, TSButtonViewLog, TSButtonScan, TSButtonSearchByScan, TSButtonSearch, TSButtonSync, TSButtonSelectTree, TSButtonSelectUser, TSButtonToggle, TSCalendar, TSCard, TSCarousel, TSCheckbox, TSCustomColumn, TSDataTable, TSDatePicker, TSDayPicker, TSDayOfYearPicker, TSDialog, TSDialogApprovalList, TSDialogAssetNameDetail, TSDialogConfirm, TSDialogCoordinate, TSDialogDataLocked, TSDialogForm, TSDialogLinkedAsset, TSDialogPrintQR, TSDialogReportDamage, TSDialogReportMissing, TSDialogReportTag, TSDialogSelectAssetName, TSDialogSelectTree, TSDialogSelectAsset, TSDialogSelectUser, TSDisposalReport, TSDropdown, TSFailedLoad, TSFilterContainer, TSAssetFilters, TSFileUpload, TSForm, TSIcon, TSImage, TSImageCompressor, TSInlineMessage, TSInputBadge, TSInputCurrency, TSInputCurrencyReference, TSInputCoordinate, TSInputEmail, TSInputNumber, TSInputOTP, TSInputPassword, TSInputPhoneNumber, TSInputRangeNumber, TSInputSearch, TSInputText, TSInputURL, TSLoading, TSMenu, TSMultiSelect, TSOverlayPanel, TSPaginator, TSProgressBar, TSSteps, TSTabMenu, TSTagType, TSTextarea, TSTimeline, TSToast, TSTransactionRoles, TSTree, TSTreeSearchInput, TSUserWithIcon, TSValidatorMessage } from './components/v2';
declare const TSi18n: import("vue-i18n").I18n<{}, {}, {}, string, false>;
declare const _default: {
    install: (app: App) => void;
};
export default _default;
export { LibConfig, TSToastService, TSi18n, VueHtmlToPaper, Tooltip, Focus, DialogDamageLog, DialogMissingLog, DialogTransferLog, TSAnimation, TSAssetInfo, TSApproverInfo, TSBadge, TSBadgeGroup, TSBreadcrumb, TSButton, TSButtonAddByScan, TSButtonBulkAction, TSButtonCopy, TSButtonDownload, TSButtonFilter, TSButtonLogHistory, TSButtonRadio, TSButtonViewLog, TSButtonScan, TSButtonSearch, TSButtonSearchByScan, TSButtonSelectTree, TSButtonSelectUser, TSButtonSync, TSButtonToggle, TSCalendar, TSCard, TSCarousel, TSCheckbox, TSCustomColumn, TSDatePicker, TSDataTable, TSDayPicker, TSDayOfYearPicker, TSDialog, TSDialogApprovalList, TSDialogAssetNameDetail, TSDialogConfirm, TSDialogCoordinate, TSDialogDataLocked, TSDialogForm, TSDialogLinkedAsset, TSDialogPrintQR, TSDialogReportDamage, TSDialogReportMissing, TSDialogReportTag, TSDialogSelectAssetName, TSDialogSelectTree, TSDialogSelectAsset, TSDialogSelectUser, TSDisposalReport, TSDropdown, TSFailedLoad, TSFilterContainer, TSAssetFilters, TSFileUpload, TSForm, TSIcon, TSImage, TSImageCompressor, TSInlineMessage, TSInputBadge, TSInputCurrency, TSInputCurrencyReference, TSInputCoordinate, TSInputEmail, TSInputNumber, TSInputOTP, TSInputPassword, TSInputPhoneNumber, TSInputRangeNumber, TSInputText, TSInputSearch, TSInputURL, TSLoading, TSMenu, TSMultiSelect, TSOverlayPanel, TSPaginator, TSProgressBar, TSSteps, TSTabMenu, TSTagType, TSTextarea, TSTimeline, TSToast, TSTransactionRoles, TSTree, TSTreeSearchInput, TSUserWithIcon, TSValidatorMessage, handleTokenExpiration, exportToExcel, formatGoDate, formatDate, getUserLocale, formatAssetValue, formatDateReadable, formatUserName, formatVowelSoundLabel, getImageURL, downloadFile, isObjectEmpty, useToast, listenSidebarChanges, unListenSidebarChanges, getCurrency, formatCurrency, getHostName, getBaseURL, useI18n, useForm, useField, getNestedProperyValue, getSeverityByAssetStatus, clearStorage, forceLogout, reLogin, isValidJSONString, buildBodyParams, formatLogResponseData, googleMapLoader, getVisibleColumns, getTransactionRole, getSystemRole, hasSystemRole, hasTransactionRole, checkRouteAccess, hasApprovalRole, hasManagerRole, hasAnyManagerRole, hasMonitoringReportRole, hasAnyMonitoringReportRole, hasStaffRole, hasAccessToAssetDetail, flattenTreeNodeChildren, parseNodeKeys, filterNodeKeys, TreeAPI, RoutineAPI, DisposalAPI, RoutineServices, AssetsServices, AssetNameService, AssetBrandService, DataLockService, DisposalServices, FilterMatchMode, useLoadingStore, useAssetTableStore, eventBus, extendEventBus, Presets, ASSET_COL_FIELDS, assetValueColumns, assetValueColumnsWithDefault, customFieldColumns, defaultAssetColumns, parseAssetStaticFilter, };
