import type { RouteLocationNormalized } from "vue-router";
import type { IPrivilegesList } from '../types/routes';
import type { IPrivileges, ITenant, IUser } from '../services/api/common.models';
export declare const useAuthentication: import("pinia").StoreDefinition<"authentication", {
    isRecaptchaScriptAdded: boolean;
    isRecaptchaLoaded: boolean;
    user: import("@vueuse/shared").RemovableRef<IUser>;
    tenant: import("@vueuse/shared").RemovableRef<ITenant>;
    privileges: import("@vueuse/shared").RemovableRef<IPrivileges>;
    websocketUrl: import("@vueuse/shared").RemovableRef<string>;
}, {}, {
    clearSession(route?: RouteLocationNormalized): void;
    refreshWebsocketUrl(): Promise<void>;
    fetchUserInfo(): Promise<void>;
    hasPrivilege(privilege?: IPrivilegesList, every?: boolean): boolean;
}>;
