import { LoginCallback, Oidc } from './oidc.js'; import { Tokens, ValidToken } from './parseTokens.js'; import { Fetch, OidcConfiguration, StringMap } from './types.js'; export interface EventSubscriber { (name: string, data: any): any; } export declare class VanillaOidc { private _oidc; constructor(oidc: Oidc); subscribeEvents(func: EventSubscriber): string; removeEventSubscription(id: string): void; publishEvent(eventName: string, data: any): void; static getOrCreate: (getFetch: () => Fetch) => (configuration: OidcConfiguration, name?: string) => VanillaOidc; static get(name?: string): VanillaOidc; static eventNames: { service_worker_not_supported_by_browser: string; token_aquired: string; logout_from_another_tab: string; logout_from_same_tab: string; token_renewed: string; token_timer: string; loginAsync_begin: string; loginAsync_error: string; loginCallbackAsync_begin: string; loginCallbackAsync_end: string; loginCallbackAsync_error: string; refreshTokensAsync_begin: string; refreshTokensAsync: string; refreshTokensAsync_end: string; refreshTokensAsync_error: string; refreshTokensAsync_silent_error: string; tryKeepExistingSessionAsync_begin: string; tryKeepExistingSessionAsync_end: string; tryKeepExistingSessionAsync_error: string; silentLoginAsync_begin: string; silentLoginAsync: string; silentLoginAsync_end: string; silentLoginAsync_error: string; syncTokensAsync_begin: string; syncTokensAsync_end: string; syncTokensAsync_error: string; }; tryKeepExistingSessionAsync(): Promise; loginAsync(callbackPath?: string, extras?: StringMap, isSilentSignin?: boolean, scope?: string, silentLoginOnly?: boolean): Promise; logoutAsync(callbackPathOrUrl?: string | null | undefined, extras?: StringMap): Promise; silentLoginCallbackAsync(): Promise; renewTokensAsync(extras?: StringMap): Promise; loginCallbackAsync(): Promise; get tokens(): Tokens; get configuration(): OidcConfiguration; getValidTokenAsync(waitMs?: number, numberWait?: number): Promise; userInfoAsync(noCache?: boolean): Promise; } export interface OidcUserInfo { sub: string; name?: string; given_name?: string; family_name?: string; middle_name?: string; nickname?: string; preferred_username?: string; profile?: string; picture?: string; website?: string; email?: string; email_verified?: boolean; gender?: string; birthdate?: string; zoneinfo?: string; locale?: string; phone_number?: string; phone_number_verified?: boolean; address?: OidcAddressClaim; updated_at?: number; groups?: string[]; } export interface OidcAddressClaim { formatted?: string; street_address?: string; locality?: string; region?: string; postal_code?: string; country?: string; } //# sourceMappingURL=vanillaOidc.d.ts.map