import { type OidcConfigResponse, Prompt } from '@logto/js'; import { type Nullable } from '@silverhand/essentials'; import nock from 'nock'; import { type Mock } from 'vitest'; import type { Storage } from './adapter/index.js'; import type { AccessToken, LogtoConfig, LogtoSignInSessionItem } from './index.js'; import LogtoClient from './index.js'; export declare const appId = "app_id_value"; export declare const endpoint = "https://logto.dev"; export declare class MockedStorage implements Storage { private storage; constructor(values?: Record); getItem(key: string): Promise; setItem(key: string, value: string): Promise; removeItem(key: string): Promise; reset(values: Record): void; } export declare const authorizationEndpoint = "https://logto.dev/oidc/auth"; export declare const userinfoEndpoint = "https://logto.dev/oidc/me"; export declare const tokenEndpoint = "https://logto.dev/oidc/token"; export declare const endSessionEndpoint = "https://logto.dev/oidc/session/end"; export declare const revocationEndpoint = "https://logto.dev/oidc/token/revocation"; export declare const jwksUri = "https://logto.dev/oidc/jwks"; export declare const issuer = "http://localhost:443/oidc"; export declare const redirectUri = "http://localhost:3000/callback"; export declare const postSignOutRedirectUri = "http://localhost:3000"; export declare const mockCodeChallenge = "code_challenge_value"; export declare const mockedCodeVerifier = "code_verifier_value"; export declare const mockedState = "state_value"; export declare const mockedUserHint = "johndoe@example.com"; export declare const mockedSignInUri: string; export declare const mockedSignInUriWithLoginPrompt: string; export declare const mockedSignUpUri: string; export declare const mockedSignInUriWithLoginHint: string; export declare const mockedSignInUriWithoutReservedScopes: string; export declare const accessToken = "access_token_value"; export declare const refreshToken = "new_refresh_token_value"; export declare const idToken = "id_token_value"; export declare const currentUnixTimeStamp: number; export declare const mockFetchOidcConfig: (delay?: number) => Mock<() => Promise>; export declare const fetchOidcConfig: Mock<() => Promise>; export declare const requester: Mock<(...args: any[]) => any>; export declare const failingRequester: Mock<(...args: any[]) => any>; export declare const navigate: Mock<(...args: any[]) => any>; export declare const generateCodeChallenge: Mock<() => Promise>; export declare const generateCodeVerifier: Mock<() => string>; export declare const generateState: Mock<() => string>; export declare const createAdapters: (withCache?: boolean) => { requester: Mock<(...args: any[]) => any>; storage: MockedStorage; unstable_cache: import("@silverhand/essentials").Optional; navigate: Mock<(...args: any[]) => any>; generateCodeChallenge: Mock<() => Promise>; generateCodeVerifier: Mock<() => string>; generateState: Mock<() => string>; }; export declare const createClient: (prompt?: Prompt, storage?: MockedStorage, withCache?: boolean, scopes?: string[], includeReservedScopes?: boolean) => LogtoClientWithAccessors; /** * Make protected fields accessible for test */ export declare class LogtoClientWithAccessors extends LogtoClient { runGetOidcConfig(): Promise; getLogtoConfig(): Nullable; getSignInSession(): Promise>; setSignInSessionItem(item: Nullable): Promise; getAccessTokenMap(): Map; } export declare const nocked: nock.Scope;