Skip to content

Latest commit

 

History

History
1219 lines (1140 loc) · 38.8 KB

File metadata and controls

1219 lines (1140 loc) · 38.8 KB

API Report File for "oidc-client-ts"

Do not edit this file. It is a report generated by API Extractor.

// @public (undocumented)
export type AccessTokenCallback = (...ev: unknown[]) => (Promise<void> | void);

// @public (undocumented)
export class AccessTokenEvents {
    constructor(args: {
        expiringNotificationTimeInSeconds: number;
    });
    addAccessTokenExpired(cb: AccessTokenCallback): () => void;
    addAccessTokenExpiring(cb: AccessTokenCallback): () => void;
    // (undocumented)
    load(container: User): void;
    // (undocumented)
    protected readonly _logger: Logger;
    removeAccessTokenExpired(cb: AccessTokenCallback): void;
    removeAccessTokenExpiring(cb: AccessTokenCallback): void;
    // (undocumented)
    unload(): void;
}

// @public (undocumented)
export interface AsyncStorage {
    clear(): Promise<void>;
    getItem(key: string): Promise<string | null>;
    key(index: number): Promise<string | null>;
    readonly length: Promise<number>;
    removeItem(key: string): Promise<void>;
    setItem(key: string, value: string): Promise<void>;
}

// @internal (undocumented)
export class CheckSessionIFrame {
    constructor(_callback: () => Promise<void>, _client_id: string, url: string, _intervalInSeconds: number, _stopOnError: boolean);
    // (undocumented)
    load(): Promise<void>;
    // (undocumented)
    start(session_state: string): void;
    // (undocumented)
    stop(): void;
}

// @public (undocumented)
export interface CreateSigninRequestArgs extends Omit<SigninRequestCreateArgs, "url" | "authority" | "client_id" | "redirect_uri" | "response_type" | "scope" | "state_data"> {
    // (undocumented)
    dpopJkt?: string;
    // (undocumented)
    redirect_uri?: string;
    // (undocumented)
    response_type?: string;
    // (undocumented)
    scope?: string;
    state?: unknown;
}

// @public (undocumented)
export type CreateSignoutRequestArgs = Omit<SignoutRequestArgs, "url" | "state_data"> & {
    state?: unknown;
};

// @public (undocumented)
export class DPoPState {
    constructor(keys: CryptoKeyPair, nonce?: string | undefined);
    // (undocumented)
    readonly keys: CryptoKeyPair;
    // (undocumented)
    nonce?: string | undefined;
}

// @public
export class ErrorResponse extends Error {
    constructor(args: {
        error?: string | null;
        error_description?: string | null;
        error_uri?: string | null;
        userState?: unknown;
        session_state?: string | null;
        url_state?: string;
    },
    form?: URLSearchParams | undefined);
    readonly error: string | null;
    readonly error_description: string | null;
    readonly error_uri: string | null;
    readonly form?: URLSearchParams | undefined;
    readonly name: string;
    // (undocumented)
    readonly session_state: string | null;
    state?: unknown;
    // (undocumented)
    url_state?: string;
}

// @public
export class ErrorTimeout extends Error {
    constructor(message?: string);
    readonly name: string;
}

// @public (undocumented)
export type ExtraHeader = string | (() => string);

// @public (undocumented)
export type ExtraSigninRequestArgs = Pick<CreateSigninRequestArgs, "nonce" | "extraQueryParams" | "extraTokenParams" | "state" | "redirect_uri" | "prompt" | "acr_values" | "login_hint" | "scope" | "max_age" | "ui_locales" | "resource" | "url_state">;

// @public (undocumented)
export type ExtraSignoutRequestArgs = Pick<CreateSignoutRequestArgs, "extraQueryParams" | "state" | "id_token_hint" | "post_logout_redirect_uri">;

// Warning: (ae-forgotten-export) The symbol "Mandatory" needs to be exported by the entry point index.d.ts
//
// @public
export interface IdTokenClaims extends Mandatory<OidcStandardClaims, "sub">, Mandatory<JwtClaims, "iss" | "sub" | "aud" | "exp" | "iat">, Pick<JwtClaims, "nbf" | "jti"> {
    // (undocumented)
    [claim: string]: unknown;
    acr?: string;
    amr?: unknown;
    auth_time?: number;
    azp?: string;
    nonce?: string;
    sid?: string;
}

// @public (undocumented)
export interface IFrameWindowParams {
    // (undocumented)
    silentRequestTimeoutInSeconds?: number;
}

// @public
export interface ILogger {
    // (undocumented)
    debug(...args: unknown[]): void;
    // (undocumented)
    error(...args: unknown[]): void;
    // (undocumented)
    info(...args: unknown[]): void;
    // (undocumented)
    warn(...args: unknown[]): void;
}

// @public (undocumented)
export interface INavigator {
    // (undocumented)
    callback(url: string, params?: unknown): Promise<void>;
    // (undocumented)
    prepare(params: unknown): Promise<IWindow>;
}

// Warning: (ae-forgotten-export) The symbol "DPoPStore" needs to be exported by the entry point index.d.ts
//
// @public
export class IndexedDbDPoPStore implements DPoPStore {
    // (undocumented)
    createStore<T>(dbName: string, storeName: string): Promise<(txMode: IDBTransactionMode, callback: (store: IDBObjectStore) => T | PromiseLike<T>) => Promise<T>>;
    // (undocumented)
    readonly _dbName: string;
    // (undocumented)
    get(key: string): Promise<DPoPState>;
    // (undocumented)
    getAllKeys(): Promise<string[]>;
    // (undocumented)
    promisifyRequest<T = undefined>(request: IDBRequest<T> | IDBTransaction): Promise<T>;
    // (undocumented)
    remove(key: string): Promise<DPoPState>;
    // (undocumented)
    set(key: string, value: DPoPState): Promise<void>;
    // (undocumented)
    readonly _storeName: string;
}

// @public (undocumented)
export class InMemoryWebStorage implements Storage {
    // (undocumented)
    clear(): void;
    // (undocumented)
    getItem(key: string): string;
    // (undocumented)
    key(index: number): string;
    // (undocumented)
    get length(): number;
    // (undocumented)
    removeItem(key: string): void;
    // (undocumented)
    setItem(key: string, value: string): void;
}

// @public (undocumented)
export interface IWindow {
    // (undocumented)
    close(): void;
    // (undocumented)
    navigate(params: NavigateParams): Promise<NavigateResponse>;
}

// @public
export interface JwtClaims {
    // (undocumented)
    [claim: string]: unknown;
    aud?: string | string[];
    exp?: number;
    iat?: number;
    iss?: string;
    jti?: string;
    nbf?: number;
    sub?: string;
}

// @public
export enum Log {
    // (undocumented)
    DEBUG = 4,
    // (undocumented)
    ERROR = 1,
    // (undocumented)
    INFO = 3,
    // (undocumented)
    NONE = 0,
    // (undocumented)
    WARN = 2
}

// @public
export namespace Log {
    // (undocumented)
    export function reset(): void;
    // (undocumented)
    export function setLevel(value: Log): void;
    // (undocumented)
    export function setLogger(value: ILogger): void;
}

// @public
export class Logger {
    constructor(_name: string);
    // (undocumented)
    create(method: string): Logger;
    // (undocumented)
    static createStatic(name: string, staticMethod: string): Logger;
    // (undocumented)
    debug(...args: unknown[]): void;
    // (undocumented)
    static debug(name: string, ...args: unknown[]): void;
    // (undocumented)
    error(...args: unknown[]): void;
    // (undocumented)
    static error(name: string, ...args: unknown[]): void;
    // (undocumented)
    info(...args: unknown[]): void;
    // (undocumented)
    static info(name: string, ...args: unknown[]): void;
    // (undocumented)
    throw(err: Error): never;
    // (undocumented)
    warn(...args: unknown[]): void;
    // (undocumented)
    static warn(name: string, ...args: unknown[]): void;
}

// @public (undocumented)
export class MetadataService {
    constructor(_settings: OidcClientSettingsStore);
    // (undocumented)
    getAuthorizationEndpoint(): Promise<string>;
    // (undocumented)
    getCheckSessionIframe(): Promise<string | undefined>;
    // (undocumented)
    getEndSessionEndpoint(): Promise<string | undefined>;
    // (undocumented)
    getIssuer(): Promise<string>;
    // (undocumented)
    getKeysEndpoint(optional: false): Promise<string>;
    // (undocumented)
    getKeysEndpoint(optional?: true): Promise<string | undefined>;
    // (undocumented)
    getMetadata(): Promise<Partial<OidcMetadata>>;
    // (undocumented)
    protected _getMetadataProperty(name: keyof OidcMetadata, optional?: boolean): Promise<string | boolean | string[] | undefined>;
    // (undocumented)
    getRevocationEndpoint(optional: false): Promise<string>;
    // (undocumented)
    getRevocationEndpoint(optional?: true): Promise<string | undefined>;
    // (undocumented)
    getSigningKeys(): Promise<SigningKey[] | null>;
    // (undocumented)
    getTokenEndpoint(optional: false): Promise<string>;
    // (undocumented)
    getTokenEndpoint(optional?: true): Promise<string | undefined>;
    // (undocumented)
    getUserInfoEndpoint(): Promise<string>;
    // (undocumented)
    resetSigningKeys(): void;
}

// @public (undocumented)
export interface NavigateParams {
    nonce?: string;
    // (undocumented)
    response_mode?: "query" | "fragment";
    // (undocumented)
    scriptOrigin?: string;
    state?: string;
    // (undocumented)
    url: string;
}

// @public (undocumented)
export interface NavigateResponse {
    // (undocumented)
    url: string;
}

// @public
export interface OidcAddressClaim {
    country?: string;
    formatted?: string;
    locality?: string;
    postal_code?: string;
    region?: string;
    street_address?: string;
}

// @public
export class OidcClient {
    constructor(settings: OidcClientSettings);
    constructor(settings: OidcClientSettingsStore, metadataService: MetadataService);
    // Warning: (ae-forgotten-export) The symbol "ClaimsService" needs to be exported by the entry point index.d.ts
    //
    // (undocumented)
    protected readonly _claimsService: ClaimsService;
    // (undocumented)
    clearStaleState(): Promise<void>;
    // (undocumented)
    createSigninRequest({ state, request, request_uri, request_type, id_token_hint, login_hint, skipUserInfo, nonce, url_state, response_type, scope, redirect_uri, prompt, display, max_age, ui_locales, acr_values, resource, response_mode, extraQueryParams, extraTokenParams, dpopJkt, omitScopeWhenRequesting, }: CreateSigninRequestArgs): Promise<SigninRequest>;
    // (undocumented)
    createSignoutRequest({ state, id_token_hint, client_id, request_type, post_logout_redirect_uri, extraQueryParams, }?: CreateSignoutRequestArgs): Promise<SignoutRequest>;
    // (undocumented)
    getDpopProof(dpopStore: DPoPStore, nonce?: string): Promise<string>;
    // (undocumented)
    protected readonly _logger: Logger;
    // (undocumented)
    readonly metadataService: MetadataService;
    // (undocumented)
    processResourceOwnerPasswordCredentials({ username, password, skipUserInfo, extraTokenParams, }: ProcessResourceOwnerPasswordCredentialsArgs): Promise<SigninResponse>;
    // (undocumented)
    processSigninResponse(url: string, extraHeaders?: Record<string, ExtraHeader>, removeState?: boolean): Promise<SigninResponse>;
    // (undocumented)
    processSignoutResponse(url: string): Promise<SignoutResponse>;
    // (undocumented)
    readSigninResponseState(url: string, removeState?: boolean): Promise<{
        state: SigninState;
        response: SigninResponse;
    }>;
    // (undocumented)
    readSignoutResponseState(url: string, removeState?: boolean): Promise<{
        state: State | undefined;
        response: SignoutResponse;
    }>;
    // (undocumented)
    revokeToken(token: string, type?: "access_token" | "refresh_token"): Promise<void>;
    // (undocumented)
    readonly settings: OidcClientSettingsStore;
    // Warning: (ae-forgotten-export) The symbol "TokenClient" needs to be exported by the entry point index.d.ts
    //
    // (undocumented)
    protected readonly _tokenClient: TokenClient;
    // (undocumented)
    useRefreshToken({ state, redirect_uri, resource, timeoutInSeconds, extraHeaders, extraTokenParams, }: UseRefreshTokenArgs): Promise<SigninResponse>;
    // Warning: (ae-forgotten-export) The symbol "ResponseValidator" needs to be exported by the entry point index.d.ts
    //
    // (undocumented)
    protected readonly _validator: ResponseValidator;
}

// @public
export interface OidcClientSettings {
    acr_values?: string;
    authority: string;
    client_authentication?: "client_secret_basic" | "client_secret_post";
    client_id: string;
    // (undocumented)
    client_secret?: string;
    disablePKCE?: boolean;
    display?: string;
    // Warning: (ae-forgotten-export) The symbol "DPoPSettings" needs to be exported by the entry point index.d.ts
    dpop?: DPoPSettings | undefined;
    extraHeaders?: Record<string, ExtraHeader>;
    extraQueryParams?: Record<string, string | number | boolean>;
    // (undocumented)
    extraTokenParams?: Record<string, unknown>;
    fetchRequestCredentials?: RequestCredentials;
    filterProtocolClaims?: boolean | string[];
    loadUserInfo?: boolean;
    max_age?: number;
    mergeClaimsStrategy?: {
        array: "replace" | "merge";
    };
    metadata?: Partial<OidcMetadata>;
    metadataSeed?: Partial<OidcMetadata>;
    // (undocumented)
    metadataUrl?: string;
    omitScopeWhenRequesting?: boolean;
    post_logout_redirect_uri?: string;
    prompt?: string;
    redirect_uri: string;
    refreshTokenAllowedScope?: string | undefined;
    requestTimeoutInSeconds?: number | undefined;
    resource?: string | string[];
    response_mode?: "query" | "fragment";
    response_type?: string;
    revokeTokenAdditionalContentTypes?: string[];
    scope?: string;
    signingKeys?: SigningKey[];
    staleStateAgeInSeconds?: number;
    stateStore?: StateStore;
    ui_locales?: string;
}

// @public
export class OidcClientSettingsStore {
    constructor({ authority, metadataUrl, metadata, signingKeys, metadataSeed, client_id, client_secret, response_type, scope, redirect_uri, post_logout_redirect_uri, client_authentication, prompt, display, max_age, ui_locales, acr_values, resource, response_mode, filterProtocolClaims, loadUserInfo, requestTimeoutInSeconds, staleStateAgeInSeconds, mergeClaimsStrategy, disablePKCE, stateStore, revokeTokenAdditionalContentTypes, fetchRequestCredentials, refreshTokenAllowedScope, extraQueryParams, extraTokenParams, extraHeaders, dpop, omitScopeWhenRequesting, }: OidcClientSettings);
    // (undocumented)
    readonly acr_values: string | undefined;
    // (undocumented)
    readonly authority: string;
    // (undocumented)
    readonly client_authentication: "client_secret_basic" | "client_secret_post";
    // (undocumented)
    readonly client_id: string;
    // (undocumented)
    readonly client_secret: string | undefined;
    // (undocumented)
    readonly disablePKCE: boolean;
    // (undocumented)
    readonly display: string | undefined;
    // (undocumented)
    readonly dpop: DPoPSettings | undefined;
    // (undocumented)
    readonly extraHeaders: Record<string, ExtraHeader>;
    // (undocumented)
    readonly extraQueryParams: Record<string, string | number | boolean>;
    // (undocumented)
    readonly extraTokenParams: Record<string, unknown>;
    // (undocumented)
    readonly fetchRequestCredentials: RequestCredentials;
    // (undocumented)
    readonly filterProtocolClaims: boolean | string[];
    // (undocumented)
    readonly loadUserInfo: boolean;
    // (undocumented)
    readonly max_age: number | undefined;
    // (undocumented)
    readonly mergeClaimsStrategy: {
        array: "replace" | "merge";
    };
    // (undocumented)
    readonly metadata: Partial<OidcMetadata> | undefined;
    // (undocumented)
    readonly metadataSeed: Partial<OidcMetadata> | undefined;
    // (undocumented)
    readonly metadataUrl: string;
    // (undocumented)
    readonly omitScopeWhenRequesting: boolean;
    // (undocumented)
    readonly post_logout_redirect_uri: string | undefined;
    // (undocumented)
    readonly prompt: string | undefined;
    // (undocumented)
    readonly redirect_uri: string;
    // (undocumented)
    readonly refreshTokenAllowedScope: string | undefined;
    // (undocumented)
    readonly requestTimeoutInSeconds: number | undefined;
    // (undocumented)
    readonly resource: string | string[] | undefined;
    // (undocumented)
    readonly response_mode: "query" | "fragment" | undefined;
    // (undocumented)
    readonly response_type: string;
    // (undocumented)
    readonly revokeTokenAdditionalContentTypes?: string[];
    // (undocumented)
    readonly scope: string;
    // (undocumented)
    readonly signingKeys: SigningKey[] | undefined;
    // (undocumented)
    readonly staleStateAgeInSeconds: number;
    // (undocumented)
    readonly stateStore: StateStore;
    // (undocumented)
    readonly ui_locales: string | undefined;
}

// @public
export interface OidcMetadata {
    acr_values_supported: string[];
    authorization_endpoint: string;
    backchannel_logout_session_supported: boolean;
    backchannel_logout_supported: boolean;
    check_session_iframe: string;
    claim_types_supported: string[];
    claims_parameter_supported: boolean;
    claims_supported: string[];
    code_challenge_methods_supported: string[];
    display_values_supported: string[];
    end_session_endpoint: string;
    frontchannel_logout_session_supported: boolean;
    frontchannel_logout_supported: boolean;
    grant_types_supported: string[];
    introspection_endpoint: string;
    issuer: string;
    jwks_uri: string;
    registration_endpoint: string;
    request_object_signing_alg_values_supported: string[];
    response_modes_supported: string[];
    response_types_supported: string[];
    revocation_endpoint: string;
    scopes_supported: string[];
    service_documentation: string;
    subject_types_supported: string[];
    token_endpoint: string;
    token_endpoint_auth_methods_supported: string[];
    token_endpoint_auth_signing_alg_values_supported: string[];
    ui_locales_supported: string[];
    userinfo_endpoint: string;
}

// @public
export interface OidcStandardClaims {
    address?: OidcAddressClaim;
    birthdate?: string;
    email?: string;
    email_verified?: boolean;
    family_name?: string;
    gender?: string;
    given_name?: string;
    locale?: string;
    middle_name?: string;
    name?: string;
    nickname?: string;
    phone_number?: string;
    phone_number_verified?: boolean;
    picture?: string;
    preferred_username?: string;
    profile?: string;
    sub?: string;
    updated_at?: number;
    website?: string;
    zoneinfo?: string;
}

// @public (undocumented)
export interface PopupWindowFeatures {
    // (undocumented)
    [k: string]: boolean | string | number | undefined;
    closePopupWindowAfterInSeconds?: number;
    // (undocumented)
    height?: number;
    // (undocumented)
    left?: number;
    // (undocumented)
    location?: boolean | string;
    // (undocumented)
    menubar?: boolean | string;
    // (undocumented)
    resizable?: boolean | string;
    // (undocumented)
    scrollbars?: boolean | string;
    // (undocumented)
    status?: boolean | string;
    // (undocumented)
    toolbar?: boolean | string;
    // (undocumented)
    top?: number;
    // (undocumented)
    width?: number;
}

// @public (undocumented)
export interface PopupWindowParams {
    popupSignal?: AbortSignal | null;
    // (undocumented)
    popupWindowFeatures?: PopupWindowFeatures;
    // (undocumented)
    popupWindowTarget?: string;
}

// @public (undocumented)
export type ProcessResourceOwnerPasswordCredentialsArgs = {
    username: string;
    password: string;
    skipUserInfo?: boolean;
    extraTokenParams?: Record<string, unknown>;
};

// @public (undocumented)
export type QuerySessionStatusArgs = IFrameWindowParams & ExtraSigninRequestArgs;

// @public (undocumented)
export interface RedirectParams {
    // (undocumented)
    redirectMethod?: "replace" | "assign";
    // (undocumented)
    redirectTarget?: "top" | "self";
}

// @public
export class RefreshState {
    constructor(args: {
        refresh_token: string;
        id_token?: string;
        session_state: string | null;
        scope?: string;
        profile: UserProfile;
        state?: unknown;
    });
    readonly data?: unknown;
    // (undocumented)
    readonly id_token?: string;
    // (undocumented)
    readonly profile: UserProfile;
    // (undocumented)
    readonly refresh_token: string;
    // (undocumented)
    readonly scope?: string;
    // (undocumented)
    readonly session_state: string | null;
}

// @public (undocumented)
export type RevokeTokensTypes = UserManagerSettings["revokeTokenTypes"];

// @public (undocumented)
export class SessionMonitor {
    constructor(_userManager: UserManager);
    // (undocumented)
    protected _callback: () => Promise<void>;
    // (undocumented)
    protected _init(): Promise<void>;
    // (undocumented)
    protected _start: (user: User | {
        session_state: string;
        profile: {
            sub: string;
        } | null;
    }) => Promise<void>;
    // (undocumented)
    protected _stop: () => void;
}

// @public (undocumented)
export interface SessionStatus {
    session_state: string;
    sub?: string;
}

// @public (undocumented)
export type SigningKey = Record<string, string | string[]>;

// @public (undocumented)
export type SigninPopupArgs = PopupWindowParams & ExtraSigninRequestArgs;

// @public (undocumented)
export type SigninRedirectArgs = RedirectParams & ExtraSigninRequestArgs;

// @public (undocumented)
export class SigninRequest {
    // (undocumented)
    static create({ url, authority, client_id, redirect_uri, response_type, scope, state_data, response_mode, request_type, client_secret, nonce, url_state, resource, skipUserInfo, extraQueryParams, extraTokenParams, disablePKCE, dpopJkt, omitScopeWhenRequesting, ...optionalParams }: SigninRequestCreateArgs): Promise<SigninRequest>;
    // (undocumented)
    readonly state: SigninState;
    // (undocumented)
    readonly url: string;
}

// @public (undocumented)
export interface SigninRequestCreateArgs {
    // (undocumented)
    acr_values?: string;
    // (undocumented)
    authority: string;
    // (undocumented)
    client_id: string;
    // (undocumented)
    client_secret?: string;
    // (undocumented)
    disablePKCE?: boolean;
    // (undocumented)
    display?: string;
    // (undocumented)
    dpopJkt?: string;
    // (undocumented)
    extraQueryParams?: Record<string, string | number | boolean>;
    // (undocumented)
    extraTokenParams?: Record<string, unknown>;
    // (undocumented)
    id_token_hint?: string;
    // (undocumented)
    login_hint?: string;
    // (undocumented)
    max_age?: number;
    // (undocumented)
    nonce?: string;
    // (undocumented)
    omitScopeWhenRequesting?: boolean;
    // (undocumented)
    prompt?: string;
    // (undocumented)
    redirect_uri: string;
    // (undocumented)
    request?: string;
    // (undocumented)
    request_type?: string;
    // (undocumented)
    request_uri?: string;
    // (undocumented)
    resource?: string | string[];
    // (undocumented)
    response_mode?: "query" | "fragment";
    // (undocumented)
    response_type: string;
    // (undocumented)
    scope: string;
    // (undocumented)
    skipUserInfo?: boolean;
    state_data?: unknown;
    // (undocumented)
    ui_locales?: string;
    // (undocumented)
    url: string;
    // (undocumented)
    url_state?: string;
}

// @public (undocumented)
export type SigninResourceOwnerCredentialsArgs = ProcessResourceOwnerPasswordCredentialsArgs;

// @public (undocumented)
export class SigninResponse {
    constructor(params: URLSearchParams);
    // (undocumented)
    access_token: string;
    // (undocumented)
    readonly code: string | null;
    // (undocumented)
    readonly error: string | null;
    // (undocumented)
    readonly error_description: string | null;
    // (undocumented)
    readonly error_uri: string | null;
    // (undocumented)
    expires_at?: number;
    // (undocumented)
    get expires_in(): number | undefined;
    set expires_in(value: number | undefined);
    // (undocumented)
    id_token?: string;
    // (undocumented)
    get isOpenId(): boolean;
    // (undocumented)
    profile: UserProfile;
    // (undocumented)
    refresh_token?: string;
    // (undocumented)
    scope?: string;
    // (undocumented)
    session_state: string | null;
    // (undocumented)
    readonly state: string | null;
    // (undocumented)
    token_type: string;
    // (undocumented)
    url_state?: string;
    userState: unknown;
}

// @public (undocumented)
export type SigninSilentArgs = IFrameWindowParams & ExtraSigninRequestArgs;

// @public (undocumented)
export class SigninState extends State {
    // (undocumented)
    readonly authority: string;
    // (undocumented)
    readonly client_id: string;
    // (undocumented)
    readonly client_secret: string | undefined;
    readonly code_challenge: string | undefined;
    readonly code_verifier: string | undefined;
    // (undocumented)
    static create(args: SigninStateCreateArgs): Promise<SigninState>;
    // (undocumented)
    readonly extraTokenParams: Record<string, unknown> | undefined;
    // (undocumented)
    static fromStorageString(storageString: string): Promise<SigninState>;
    // (undocumented)
    readonly redirect_uri: string;
    // (undocumented)
    readonly response_mode: "query" | "fragment" | undefined;
    // (undocumented)
    readonly scope: string;
    // (undocumented)
    readonly skipUserInfo: boolean | undefined;
    // (undocumented)
    toStorageString(): string;
}

// @public (undocumented)
export interface SigninStateArgs {
    // (undocumented)
    authority: string;
    // (undocumented)
    client_id: string;
    // (undocumented)
    client_secret?: string;
    // (undocumented)
    code_challenge?: string;
    // (undocumented)
    code_verifier?: string;
    // (undocumented)
    created?: number;
    // (undocumented)
    data?: unknown;
    // (undocumented)
    extraTokenParams?: Record<string, unknown>;
    // (undocumented)
    id?: string;
    // (undocumented)
    redirect_uri: string;
    // (undocumented)
    request_type?: string;
    // (undocumented)
    response_mode?: "query" | "fragment";
    // (undocumented)
    scope: string;
    // (undocumented)
    skipUserInfo?: boolean;
    // (undocumented)
    url_state?: string;
}

// @public (undocumented)
export type SigninStateCreateArgs = Omit<SigninStateArgs, "code_verifier"> & {
    code_verifier?: string | boolean;
};

// @public (undocumented)
export type SignoutPopupArgs = PopupWindowParams & ExtraSignoutRequestArgs;

// @public (undocumented)
export type SignoutRedirectArgs = RedirectParams & ExtraSignoutRequestArgs;

// @public (undocumented)
export class SignoutRequest {
    constructor({ url, state_data, id_token_hint, post_logout_redirect_uri, extraQueryParams, request_type, client_id, }: SignoutRequestArgs);
    // (undocumented)
    readonly state?: State;
    // (undocumented)
    readonly url: string;
}

// @public (undocumented)
export interface SignoutRequestArgs {
    // (undocumented)
    client_id?: string;
    // (undocumented)
    extraQueryParams?: Record<string, string | number | boolean>;
    // (undocumented)
    id_token_hint?: string;
    // (undocumented)
    post_logout_redirect_uri?: string;
    // (undocumented)
    request_type?: string;
    state_data?: unknown;
    // (undocumented)
    url: string;
}

// @public (undocumented)
export class SignoutResponse {
    constructor(params: URLSearchParams);
    // (undocumented)
    error: string | null;
    // (undocumented)
    error_description: string | null;
    // (undocumented)
    error_uri: string | null;
    // (undocumented)
    readonly state: string | null;
    userState: unknown;
}

// @public (undocumented)
export type SignoutSilentArgs = IFrameWindowParams & ExtraSignoutRequestArgs;

// @public (undocumented)
export type SilentRenewErrorCallback = (error: Error) => Promise<void> | void;

// @public (undocumented)
export class State {
    constructor(args: {
        id?: string;
        data?: unknown;
        created?: number;
        request_type?: string;
        url_state?: string;
    });
    // (undocumented)
    static clearStaleState(storage: StateStore, age: number): Promise<void>;
    // (undocumented)
    readonly created: number;
    readonly data?: unknown;
    // (undocumented)
    static fromStorageString(storageString: string): Promise<State>;
    // (undocumented)
    readonly id: string;
    // (undocumented)
    readonly request_type: string | undefined;
    // (undocumented)
    toStorageString(): string;
    // (undocumented)
    readonly url_state: string | undefined;
}

// @public (undocumented)
export interface StateStore {
    // (undocumented)
    get(key: string): Promise<string | null>;
    // (undocumented)
    getAllKeys(): Promise<string[]>;
    // (undocumented)
    remove(key: string): Promise<string | null>;
    // (undocumented)
    set(key: string, value: string): Promise<void>;
}

// @public (undocumented)
export class User {
    constructor(args: {
        id_token?: string;
        session_state?: string | null;
        access_token: string;
        refresh_token?: string;
        token_type: string;
        scope?: string;
        profile: UserProfile;
        expires_at?: number;
        userState?: unknown;
        url_state?: string;
    });
    access_token: string;
    get expired(): boolean | undefined;
    expires_at?: number;
    get expires_in(): number | undefined;
    set expires_in(value: number | undefined);
    // (undocumented)
    static fromStorageString(storageString: string): User;
    id_token?: string;
    profile: UserProfile;
    refresh_token?: string;
    scope?: string;
    get scopes(): string[];
    session_state: string | null;
    readonly state: unknown;
    token_type: string;
    // (undocumented)
    toStorageString(): string;
    // (undocumented)
    readonly url_state?: string;
}

// @public (undocumented)
export interface UseRefreshTokenArgs {
    // (undocumented)
    extraHeaders?: Record<string, ExtraHeader>;
    // (undocumented)
    extraTokenParams?: Record<string, unknown>;
    // (undocumented)
    redirect_uri?: string;
    // (undocumented)
    resource?: string | string[];
    // (undocumented)
    state: RefreshState;
    // (undocumented)
    timeoutInSeconds?: number;
}

// @public (undocumented)
export type UserLoadedCallback = (user: User) => Promise<void> | void;

// @public
export class UserManager {
    constructor(settings: UserManagerSettings, redirectNavigator?: INavigator, popupNavigator?: INavigator, iframeNavigator?: INavigator);
    // (undocumented)
    protected _buildUser(signinResponse: SigninResponse, verifySub?: string): Promise<User>;
    clearStaleState(): Promise<void>;
    // (undocumented)
    protected readonly _client: OidcClient;
    dpopProof(url: string, user: User, httpMethod?: string, nonce?: string): Promise<string | undefined>;
    get events(): UserManagerEvents;
    // (undocumented)
    protected readonly _events: UserManagerEvents;
    // (undocumented)
    generateDPoPJkt(dpopSettings: DPoPSettings): Promise<string | undefined>;
    getUser(): Promise<User | null>;
    // (undocumented)
    protected readonly _iframeNavigator: INavigator;
    // (undocumented)
    protected _loadUser(): Promise<User | null>;
    // (undocumented)
    protected readonly _logger: Logger;
    get metadataService(): MetadataService;
    // (undocumented)
    protected readonly _popupNavigator: INavigator;
    querySessionStatus(args?: QuerySessionStatusArgs): Promise<SessionStatus | null>;
    // (undocumented)
    protected readonly _redirectNavigator: INavigator;
    removeUser(): Promise<void>;
    // (undocumented)
    protected _revokeInternal(user: User | null, types?: ("access_token" | "refresh_token")[]): Promise<void>;
    // (undocumented)
    revokeTokens(types?: RevokeTokensTypes): Promise<void>;
    // (undocumented)
    protected readonly _sessionMonitor: SessionMonitor | null;
    readonly settings: UserManagerSettingsStore;
    // (undocumented)
    protected _signin(args: CreateSigninRequestArgs, handle: IWindow, verifySub?: string): Promise<User>;
    signinCallback(url?: string): Promise<User | undefined>;
    // (undocumented)
    protected _signinEnd(url: string, verifySub?: string): Promise<User>;
    signinPopup(args?: SigninPopupArgs): Promise<User>;
    signinPopupCallback(url?: string, keepOpen?: boolean): Promise<void>;
    signinRedirect(args?: SigninRedirectArgs): Promise<void>;
    signinRedirectCallback(url?: string): Promise<User>;
    signinResourceOwnerCredentials({ username, password, skipUserInfo, }: SigninResourceOwnerCredentialsArgs): Promise<User>;
    signinSilent(args?: SigninSilentArgs): Promise<User | null>;
    signinSilentCallback(url?: string): Promise<void>;
    // (undocumented)
    protected _signinStart(args: CreateSigninRequestArgs, handle: IWindow): Promise<NavigateResponse>;
    // (undocumented)
    protected _signout(args: CreateSignoutRequestArgs, handle: IWindow): Promise<SignoutResponse>;
    signoutCallback(url?: string, keepOpen?: boolean): Promise<SignoutResponse | undefined>;
    // (undocumented)
    protected _signoutEnd(url: string): Promise<SignoutResponse>;
    signoutPopup(args?: SignoutPopupArgs): Promise<void>;
    signoutPopupCallback(url?: string, keepOpen?: boolean): Promise<void>;
    signoutRedirect(args?: SignoutRedirectArgs): Promise<void>;
    signoutRedirectCallback(url?: string): Promise<SignoutResponse>;
    signoutSilent(args?: SignoutSilentArgs): Promise<void>;
    signoutSilentCallback(url?: string): Promise<void>;
    // (undocumented)
    protected _signoutStart(args: CreateSignoutRequestArgs | undefined, handle: IWindow): Promise<NavigateResponse>;
    // Warning: (ae-forgotten-export) The symbol "SilentRenewService" needs to be exported by the entry point index.d.ts
    //
    // (undocumented)
    protected readonly _silentRenewService: SilentRenewService;
    startSilentRenew(): void;
    stopSilentRenew(): void;
    // (undocumented)
    storeUser(user: User | null): Promise<void>;
    // (undocumented)
    protected _useRefreshToken(args: UseRefreshTokenArgs): Promise<User>;
    // (undocumented)
    protected get _userStoreKey(): string;
}

// @public (undocumented)
export class UserManagerEvents extends AccessTokenEvents {
    constructor(settings: UserManagerSettingsStore);
    addSilentRenewError(cb: SilentRenewErrorCallback): () => void;
    addUserLoaded(cb: UserLoadedCallback): () => void;
    addUserSessionChanged(cb: UserSessionChangedCallback): () => void;
    addUserSignedIn(cb: UserSignedInCallback): () => void;
    addUserSignedOut(cb: UserSignedOutCallback): () => void;
    addUserUnloaded(cb: UserUnloadedCallback): () => void;
    // (undocumented)
    load(user: User, raiseEvent?: boolean): Promise<void>;
    // (undocumented)
    protected readonly _logger: Logger;
    // @internal (undocumented)
    _raiseSilentRenewError(e: Error): Promise<void>;
    // @internal (undocumented)
    _raiseUserSessionChanged(): Promise<void>;
    // @internal (undocumented)
    _raiseUserSignedIn(): Promise<void>;
    // @internal (undocumented)
    _raiseUserSignedOut(): Promise<void>;
    removeSilentRenewError(cb: SilentRenewErrorCallback): void;
    removeUserLoaded(cb: UserLoadedCallback): void;
    removeUserSessionChanged(cb: UserSessionChangedCallback): void;
    removeUserSignedIn(cb: UserSignedInCallback): void;
    removeUserSignedOut(cb: UserSignedOutCallback): void;
    removeUserUnloaded(cb: UserUnloadedCallback): void;
    // (undocumented)
    unload(): Promise<void>;
}

// @public
export interface UserManagerSettings extends OidcClientSettings {
    accessTokenExpiringNotificationTimeInSeconds?: number;
    automaticSilentRenew?: boolean;
    checkSessionIntervalInSeconds?: number;
    iframeNotifyParentOrigin?: string;
    iframeScriptOrigin?: string;
    includeIdTokenInSilentRenew?: boolean;
    includeIdTokenInSilentSignout?: boolean;
    // (undocumented)
    monitorAnonymousSession?: boolean;
    monitorSession?: boolean;
    // (undocumented)
    popup_post_logout_redirect_uri?: string;
    popup_redirect_uri?: string;
    popupWindowFeatures?: PopupWindowFeatures;
    popupWindowTarget?: string;
    // (undocumented)
    query_status_response_type?: string;
    redirectMethod?: "replace" | "assign";
    redirectTarget?: "top" | "self";
    revokeTokensOnSignout?: boolean;
    revokeTokenTypes?: ("access_token" | "refresh_token")[];
    silent_redirect_uri?: string;
    silentRequestTimeoutInSeconds?: number;
    // (undocumented)
    stopCheckSessionOnError?: boolean;
    userStore?: WebStorageStateStore;
    validateSubOnSilentRenew?: boolean;
}

// @public
export class UserManagerSettingsStore extends OidcClientSettingsStore {
    constructor(args: UserManagerSettings);
    // (undocumented)
    readonly accessTokenExpiringNotificationTimeInSeconds: number;
    // (undocumented)
    readonly automaticSilentRenew: boolean;
    // (undocumented)
    readonly checkSessionIntervalInSeconds: number;
    // (undocumented)
    readonly iframeNotifyParentOrigin: string | undefined;
    // (undocumented)
    readonly iframeScriptOrigin: string | undefined;
    // (undocumented)
    readonly includeIdTokenInSilentRenew: boolean;
    // (undocumented)
    readonly includeIdTokenInSilentSignout: boolean;
    // (undocumented)
    readonly monitorAnonymousSession: boolean;
    // (undocumented)
    readonly monitorSession: boolean;
    // (undocumented)
    readonly popup_post_logout_redirect_uri: string | undefined;
    // (undocumented)
    readonly popup_redirect_uri: string;
    // (undocumented)
    readonly popupWindowFeatures: PopupWindowFeatures;
    // (undocumented)
    readonly popupWindowTarget: string;
    // (undocumented)
    readonly query_status_response_type: string;
    // (undocumented)
    readonly redirectMethod: "replace" | "assign";
    // (undocumented)
    readonly redirectTarget: "top" | "self";
    // (undocumented)
    readonly revokeTokensOnSignout: boolean;
    // (undocumented)
    readonly revokeTokenTypes: ("access_token" | "refresh_token")[];
    // (undocumented)
    readonly silent_redirect_uri: string;
    // (undocumented)
    readonly silentRequestTimeoutInSeconds: number;
    // (undocumented)
    readonly stopCheckSessionOnError: boolean;
    // (undocumented)
    readonly userStore: WebStorageStateStore;
    // (undocumented)
    readonly validateSubOnSilentRenew: boolean;
}

// @public
export type UserProfile = IdTokenClaims;

// @public (undocumented)
export type UserSessionChangedCallback = () => Promise<void> | void;

// @public (undocumented)
export type UserSignedInCallback = () => Promise<void> | void;

// @public (undocumented)
export type UserSignedOutCallback = () => Promise<void> | void;

// @public (undocumented)
export type UserUnloadedCallback = () => Promise<void> | void;

// @public (undocumented)
export const Version: string;

// @public (undocumented)
export class WebStorageStateStore implements StateStore {
    constructor({ prefix, store, }?: {
        prefix?: string;
        store?: AsyncStorage | Storage;
    });
    // (undocumented)
    get(key: string): Promise<string | null>;
    // (undocumented)
    getAllKeys(): Promise<string[]>;
    // (undocumented)
    remove(key: string): Promise<string | null>;
    // (undocumented)
    set(key: string, value: string): Promise<void>;
}

// (No @packageDocumentation comment for this package)