ssr-keycloak
Version:
SSR compatible Keycloak authentication library for React applications
44 lines (43 loc) • 1.58 kB
TypeScript
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[];
};