import type { OidcSpaUtils, CreateValidateAndGetAccessTokenClaims, ParamsOfBootstrap } from "./types"; import type { DecodedAccessToken_RFC9068 as AccessTokenClaims_RFC9068 } from "../../server"; import type { Oidc as Oidc_core } from "../../core"; import type { ZodSchemaLike } from "../../tools/ZodSchemaLike"; export type OidcSpaUtilsBuilder = Oidc_core.Tokens.DecodedIdToken_OidcCoreSpec, AccessTokenClaims extends Record | undefined = undefined, ExcludedMethod extends "withAutoLogin" | "withExpectedDecodedIdTokenShape" | "withAccessTokenValidation" | "createUtils" = never> = Omit<{ withAutoLogin: () => OidcSpaUtilsBuilder; withExpectedDecodedIdTokenShape: >(params: { decodedIdTokenSchema: ZodSchemaLike; decodedIdToken_mock?: NoInfer; }) => OidcSpaUtilsBuilder; withAccessTokenValidation: { = AccessTokenClaims_RFC9068>(params: { type: "RFC 9068: JSON Web Token (JWT) Profile for OAuth 2.0 Access Tokens"; accessTokenClaimsSchema?: ZodSchemaLike; accessTokenClaims_mock?: NoInfer; expectedAudience?: (params: { paramsOfBootstrap: ParamsOfBootstrap.Real; process: { env: Record; }; }) => string; }): OidcSpaUtilsBuilder; >(params: { type: "custom"; createValidateAndGetAccessTokenClaims: CreateValidateAndGetAccessTokenClaims; }): OidcSpaUtilsBuilder; }; createUtils: () => OidcSpaUtils; }, ExcludedMethod>; export declare const oidcSpaUtilsBuilder: OidcSpaUtilsBuilder, undefined, never>;