@josempgon/vue-keycloak
Version:
Keycloak plugin for Vue 3 with Composition API
20 lines (19 loc) • 729 B
TypeScript
import type { KeycloakTokenParsed } from 'keycloak-js';
import type { ShallowRef, Ref } from 'vue';
import type { KeycloakInstance } from './keycloak';
export interface KeycloakComposable {
keycloak: ShallowRef<KeycloakInstance>;
isAuthenticated: Ref<boolean>;
hasFailed: Ref<boolean>;
error: Ref<Error | null>;
isPending: Ref<boolean>;
token: Ref<string>;
decodedToken: Ref<KeycloakTokenParsed>;
username: Ref<string>;
userId: Ref<string>;
roles: Ref<string[]>;
resourceRoles: Ref<Record<string, string[]>>;
hasRoles: (roles: string[]) => boolean;
hasResourceRoles: (roles: string[], resource: string) => boolean;
}
export declare const useKeycloak: () => KeycloakComposable;