UNPKG

kawkab-frontend

Version:

Kawkab frontend is a frontend library for the Kawkab framework

57 lines (56 loc) 3.27 kB
import { ApiClient } from './core/ApiClient'; import { AuthManager } from './core/AuthManager'; import { SocketClient } from './core/SocketClient'; import { ClientStorage } from './core/ClientStorage'; export interface KawkabClientConfig { apiBaseUrl: string; socketUrl?: string; storageType?: 'localStorage' | 'sessionStorage'; auth?: { tokenKey?: string; }; } declare let apiInstance: ApiClient; declare let authInstance: AuthManager; declare let socketInstance: SocketClient | null; declare let storageInstance: ClientStorage; declare function init(config: KawkabClientConfig): void; export { init, apiInstance as api, authInstance as auth, socketInstance as socket, storageInstance as storage, }; export { ApiClient, type ApiClientConfig } from './core/ApiClient'; export { AuthManager } from './core/AuthManager'; export { SocketClient } from './core/SocketClient'; export { ClientStorage } from './core/ClientStorage'; export { BaseRepository } from './core/BaseRepository'; export { BaseModel } from './core/BaseModel'; export { createStore, defineStore, persistStore } from './core/createStore'; export { rule } from './validation/zod'; export { env, setEnv } from './env/env'; export { collect } from './utils/collect'; export { Str as str } from './utils/string'; export { Time as time } from './utils/time'; export { Num as num } from './utils/number'; export { formatTranslations } from './utils/translation'; export { Cookie as cookie } from './utils/cookie'; export { LocalStorage as localStorage } from './utils/localStorage'; export { SessionStorage as sessionStorage } from './utils/sessionStorage'; export { translator, t, changeLanguage, getCurrentLanguage, getLanguageDirection, isRTL, isLTR, } from './utils/translator'; export { translate, getI18nInstance, setCurrentLanguage, detectLanguageFromCookies, detectLanguageFromHeader, initLanguageFromRequest, hydrateLanguage, updateDocumentLanguage, initI18n, getI18nDebugInfo, onLanguageChange, } from './utils/i18n'; export { useApi } from './hooks/useApi'; export { useAuth } from './hooks/useAuth'; export { useSocket } from './hooks/useSocket'; export { useForm } from './hooks/useForm'; export { useRouteParams, useQuery } from './hooks/useRouter'; export { useTranslation } from './hooks/useTranslation'; export { useCookie } from './hooks/useCookie'; export { useLocalStorage } from './hooks/useLocalStorage'; export { useSessionStorage } from './hooks/useSessionStorage'; export { TranslationProvider } from './components/TranslationProvider'; export { Meta } from './components/meta/Meta'; export { Links } from './components/meta/Links'; export { Scripts } from './components/meta/Scripts'; export { Kawkab } from './components/Kawkab'; export { Image } from './components/Image'; export { Outlet, Link, NavLink, Form, ScrollRestoration, useNavigate, useNavigation, useParams, useLocation, useFetcher, useLoaderData, useActionData, isRouteErrorResponse, redirect, type RouteObject, type NavLinkProps, type LinkProps, type FormProps, type ActionFunctionArgs, type LoaderFunctionArgs, type ErrorResponse, } from 'react-router-dom'; export type { Collection } from 'collect.js'; export type { Dayjs } from 'dayjs'; export type { ApiError } from './core/ApiClient';