UNPKG

ssr-keycloak

Version:

SSR compatible Keycloak authentication library for React applications

44 lines (43 loc) 1.58 kB
import { KeycloakClientContext, KeycloakProviderProps, KeycloakUser, KeycloakSession, LoginOptions } from '../types'; /** * Keycloak Provider - Client-side */ export declare function KeycloakProvider({ config, children, onAuthSuccess, onAuthError, onAuthLogout, autoRefreshToken, refreshTokenInterval, enableLogging }: KeycloakProviderProps): import("react/jsx-runtime").JSX.Element; /** * useKeycloak hook */ export declare function useKeycloak(): KeycloakClientContext; /** * useKeycloakSession hook - Sadece session bilgileri için */ export declare function useKeycloakSession(): { session: KeycloakSession | null; isAuthenticated: boolean; isLoading: boolean; }; /** * useKeycloakUser hook - Sadece kullanıcı bilgileri için */ export declare function useKeycloakUser(): { user: KeycloakUser | null; isAuthenticated: boolean; isLoading: boolean; }; /** * useKeycloakAuth hook - Sadece authentication fonksiyonları için */ export declare function useKeycloakAuth(): { login: (options?: LoginOptions) => Promise<void>; logout: (redirectUri?: string) => Promise<void>; refreshToken: () => Promise<boolean>; updateToken: (minValidity: number) => Promise<boolean>; }; /** * useKeycloakRoles hook - Sadece rol kontrolleri için */ export declare function useKeycloakRoles(): { hasRole: (role: string, resource?: string) => boolean; hasAnyRole: (roles: string[], resource?: string) => boolean; hasAllRoles: (roles: string[], resource?: string) => boolean; getUserRoles: (resource?: string) => string[]; };