@better-auth/sso 1.7.0-beta.3 → 1.7.0-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/client.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { t as SSOPlugin } from "./index-CagV4mMx.mjs";
1
+ import { t as SSOPlugin } from "./index-DCkGGu_2.mjs";
2
2
 
3
3
  //#region src/client.d.ts
4
4
  interface SSOClientOptions {
package/dist/client.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { t as PACKAGE_VERSION } from "./version-CLqkeI3u.mjs";
1
+ import { t as PACKAGE_VERSION } from "./version-DzWb5tB_.mjs";
2
2
  //#region src/client.ts
3
3
  const ssoClient = (options) => {
4
4
  return {
@@ -79,6 +79,15 @@ interface OIDCConfig {
79
79
  privateKeyAlgorithm?: string | undefined;
80
80
  jwksEndpoint?: string | undefined;
81
81
  mapping?: OIDCMapping | undefined;
82
+ /**
83
+ * Accept callbacks from OIDC providers that initiate the OAuth flow
84
+ * without sending a `state` parameter. When enabled, stateless callbacks
85
+ * restart the OAuth flow server-side with a fresh `state` and PKCE
86
+ * verifier. See the SSO docs for details.
87
+ *
88
+ * @default false
89
+ */
90
+ allowIdpInitiated?: boolean | undefined;
82
91
  }
83
92
  interface SAMLConfig {
84
93
  /**
@@ -94,17 +103,24 @@ interface SAMLConfig {
94
103
  */
95
104
  entryPoint: string;
96
105
  /**
97
- * IdP signing certificate. Used to verify SAML response signatures
98
- * when `idpMetadata.metadata` is not provided. Ignored when IdP
99
- * metadata XML is set (the certificate is extracted from the XML).
100
- * When both this and `idpMetadata.cert` are set, `idpMetadata.cert` takes precedence.
106
+ * IdP signing certificate(s). Used to verify SAML response signatures when
107
+ * `idpMetadata.metadata` is not provided. Ignored when IdP metadata XML is
108
+ * set (the certificate is extracted from the XML). When both this and
109
+ * `idpMetadata.cert` are set, `idpMetadata.cert` takes precedence. Pass an
110
+ * array of PEM strings for rolling rotation; responses signed by any
111
+ * listed cert are accepted.
101
112
  */
102
- cert: string;
113
+ cert?: string | string[];
103
114
  audience?: string | undefined;
104
115
  idpMetadata?: {
105
116
  metadata?: string;
106
117
  entityID?: string;
107
- cert?: string;
118
+ /**
119
+ * IdP signing certificate(s). Pass a single PEM string or an array
120
+ * for rolling rotation. Takes precedence over the top-level `cert`
121
+ * when both are set. Omit when `metadata` XML is supplied.
122
+ */
123
+ cert?: string | string[];
108
124
  privateKey?: string;
109
125
  privateKeyPass?: string;
110
126
  isAssertionEncrypted?: boolean;
@@ -576,7 +592,19 @@ declare const verifyDomain: (options: SSOOptions) => better_call0.StrictEndpoint
576
592
  }>)[];
577
593
  }, void>;
578
594
  //#endregion
595
+ //#region src/utils.d.ts
596
+ declare function parseCertificate(certPem: string): {
597
+ fingerprintSha256: string;
598
+ notBefore: string;
599
+ notAfter: string;
600
+ publicKeyAlgorithm: string;
601
+ };
602
+ //#endregion
579
603
  //#region src/routes/providers.d.ts
604
+ type ParsedCert = ReturnType<typeof parseCertificate>;
605
+ type SanitizedCert = ParsedCert | {
606
+ error: string;
607
+ };
580
608
  declare const listSSOProviders: () => better_call0.StrictEndpoint<"/sso/providers", {
581
609
  method: "GET";
582
610
  use: ((inputContext: better_call0.MiddlewareInputContext<better_call0.MiddlewareOptions>) => Promise<{
@@ -641,14 +669,7 @@ declare const listSSOProviders: () => better_call0.StrictEndpoint<"/sso/provider
641
669
  identifierFormat: string | undefined;
642
670
  signatureAlgorithm: string | undefined;
643
671
  digestAlgorithm: string | undefined;
644
- certificate: {
645
- fingerprintSha256: string;
646
- notBefore: string;
647
- notAfter: string;
648
- publicKeyAlgorithm: string;
649
- } | {
650
- error: string;
651
- };
672
+ certificate: SanitizedCert[] | undefined;
652
673
  } | undefined;
653
674
  spMetadataUrl: string;
654
675
  }[];
@@ -725,14 +746,7 @@ declare const getSSOProvider: () => better_call0.StrictEndpoint<"/sso/get-provid
725
746
  identifierFormat: string | undefined;
726
747
  signatureAlgorithm: string | undefined;
727
748
  digestAlgorithm: string | undefined;
728
- certificate: {
729
- fingerprintSha256: string;
730
- notBefore: string;
731
- notAfter: string;
732
- publicKeyAlgorithm: string;
733
- } | {
734
- error: string;
735
- };
749
+ certificate: SanitizedCert[] | undefined;
736
750
  } | undefined;
737
751
  spMetadataUrl: string;
738
752
  }>;
@@ -766,39 +780,40 @@ declare const updateSSOProvider: (options: SSOOptions) => better_call0.StrictEnd
766
780
  domain: z.ZodOptional<z.ZodString>;
767
781
  oidcConfig: z.ZodOptional<z.ZodObject<{
768
782
  clientId: z.ZodOptional<z.ZodString>;
769
- clientSecret: z.ZodOptional<z.ZodString>;
770
- authorizationEndpoint: z.ZodOptional<z.ZodString>;
771
- tokenEndpoint: z.ZodOptional<z.ZodString>;
772
- userInfoEndpoint: z.ZodOptional<z.ZodString>;
773
- tokenEndpointAuthentication: z.ZodOptional<z.ZodEnum<{
783
+ clientSecret: z.ZodOptional<z.ZodOptional<z.ZodString>>;
784
+ authorizationEndpoint: z.ZodOptional<z.ZodOptional<z.ZodString>>;
785
+ tokenEndpoint: z.ZodOptional<z.ZodOptional<z.ZodString>>;
786
+ userInfoEndpoint: z.ZodOptional<z.ZodOptional<z.ZodString>>;
787
+ tokenEndpointAuthentication: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
774
788
  client_secret_post: "client_secret_post";
775
789
  client_secret_basic: "client_secret_basic";
776
790
  private_key_jwt: "private_key_jwt";
777
- }>>;
778
- privateKeyId: z.ZodOptional<z.ZodString>;
779
- privateKeyAlgorithm: z.ZodOptional<z.ZodString>;
780
- jwksEndpoint: z.ZodOptional<z.ZodString>;
781
- discoveryEndpoint: z.ZodOptional<z.ZodString>;
782
- scopes: z.ZodOptional<z.ZodArray<z.ZodString>>;
783
- pkce: z.ZodOptional<z.ZodBoolean>;
784
- overrideUserInfo: z.ZodOptional<z.ZodBoolean>;
785
- mapping: z.ZodOptional<z.ZodObject<{
786
- id: z.ZodOptional<z.ZodString>;
787
- email: z.ZodOptional<z.ZodString>;
791
+ }>>>;
792
+ privateKeyId: z.ZodOptional<z.ZodOptional<z.ZodString>>;
793
+ privateKeyAlgorithm: z.ZodOptional<z.ZodOptional<z.ZodString>>;
794
+ jwksEndpoint: z.ZodOptional<z.ZodOptional<z.ZodString>>;
795
+ discoveryEndpoint: z.ZodOptional<z.ZodOptional<z.ZodString>>;
796
+ skipDiscovery: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
797
+ scopes: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodString>>>;
798
+ pkce: z.ZodOptional<z.ZodOptional<z.ZodDefault<z.ZodBoolean>>>;
799
+ overrideUserInfo: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
800
+ mapping: z.ZodOptional<z.ZodOptional<z.ZodObject<{
801
+ id: z.ZodString;
802
+ email: z.ZodString;
788
803
  emailVerified: z.ZodOptional<z.ZodString>;
789
- name: z.ZodOptional<z.ZodString>;
804
+ name: z.ZodString;
790
805
  image: z.ZodOptional<z.ZodString>;
791
806
  extraFields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
792
- }, z.core.$strip>>;
807
+ }, z.core.$strip>>>;
793
808
  }, z.core.$strip>>;
794
809
  samlConfig: z.ZodOptional<z.ZodObject<{
795
810
  entryPoint: z.ZodOptional<z.ZodString>;
796
- cert: z.ZodOptional<z.ZodString>;
797
- audience: z.ZodOptional<z.ZodString>;
798
- idpMetadata: z.ZodOptional<z.ZodObject<{
811
+ cert: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>>;
812
+ audience: z.ZodOptional<z.ZodOptional<z.ZodString>>;
813
+ idpMetadata: z.ZodOptional<z.ZodOptional<z.ZodObject<{
799
814
  metadata: z.ZodOptional<z.ZodString>;
800
815
  entityID: z.ZodOptional<z.ZodString>;
801
- cert: z.ZodOptional<z.ZodString>;
816
+ cert: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
802
817
  privateKey: z.ZodOptional<z.ZodString>;
803
818
  privateKeyPass: z.ZodOptional<z.ZodString>;
804
819
  isAssertionEncrypted: z.ZodOptional<z.ZodBoolean>;
@@ -808,8 +823,12 @@ declare const updateSSOProvider: (options: SSOOptions) => better_call0.StrictEnd
808
823
  Binding: z.ZodString;
809
824
  Location: z.ZodString;
810
825
  }, z.core.$strip>>>;
811
- }, z.core.$strip>>;
812
- spMetadata: z.ZodOptional<z.ZodObject<{
826
+ singleLogoutService: z.ZodOptional<z.ZodArray<z.ZodObject<{
827
+ Binding: z.ZodString;
828
+ Location: z.ZodString;
829
+ }, z.core.$strip>>>;
830
+ }, z.core.$strip>>>;
831
+ spMetadata: z.ZodOptional<z.ZodOptional<z.ZodObject<{
813
832
  metadata: z.ZodOptional<z.ZodString>;
814
833
  entityID: z.ZodOptional<z.ZodString>;
815
834
  binding: z.ZodOptional<z.ZodString>;
@@ -818,22 +837,22 @@ declare const updateSSOProvider: (options: SSOOptions) => better_call0.StrictEnd
818
837
  isAssertionEncrypted: z.ZodOptional<z.ZodBoolean>;
819
838
  encPrivateKey: z.ZodOptional<z.ZodString>;
820
839
  encPrivateKeyPass: z.ZodOptional<z.ZodString>;
821
- }, z.core.$strip>>;
822
- wantAssertionsSigned: z.ZodOptional<z.ZodBoolean>;
823
- authnRequestsSigned: z.ZodOptional<z.ZodBoolean>;
824
- signatureAlgorithm: z.ZodOptional<z.ZodString>;
825
- digestAlgorithm: z.ZodOptional<z.ZodString>;
826
- identifierFormat: z.ZodOptional<z.ZodString>;
827
- privateKey: z.ZodOptional<z.ZodString>;
828
- mapping: z.ZodOptional<z.ZodObject<{
829
- id: z.ZodOptional<z.ZodString>;
830
- email: z.ZodOptional<z.ZodString>;
840
+ }, z.core.$strip>>>;
841
+ wantAssertionsSigned: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
842
+ authnRequestsSigned: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
843
+ signatureAlgorithm: z.ZodOptional<z.ZodOptional<z.ZodString>>;
844
+ digestAlgorithm: z.ZodOptional<z.ZodOptional<z.ZodString>>;
845
+ identifierFormat: z.ZodOptional<z.ZodOptional<z.ZodString>>;
846
+ privateKey: z.ZodOptional<z.ZodOptional<z.ZodString>>;
847
+ mapping: z.ZodOptional<z.ZodOptional<z.ZodObject<{
848
+ id: z.ZodString;
849
+ email: z.ZodString;
831
850
  emailVerified: z.ZodOptional<z.ZodString>;
832
- name: z.ZodOptional<z.ZodString>;
851
+ name: z.ZodString;
833
852
  firstName: z.ZodOptional<z.ZodString>;
834
853
  lastName: z.ZodOptional<z.ZodString>;
835
854
  extraFields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
836
- }, z.core.$strip>>;
855
+ }, z.core.$strip>>>;
837
856
  }, z.core.$strip>>;
838
857
  providerId: z.ZodString;
839
858
  }, z.core.$strip>;
@@ -881,14 +900,7 @@ declare const updateSSOProvider: (options: SSOOptions) => better_call0.StrictEnd
881
900
  identifierFormat: string | undefined;
882
901
  signatureAlgorithm: string | undefined;
883
902
  digestAlgorithm: string | undefined;
884
- certificate: {
885
- fingerprintSha256: string;
886
- notBefore: string;
887
- notAfter: string;
888
- publicKeyAlgorithm: string;
889
- } | {
890
- error: string;
891
- };
903
+ certificate: SanitizedCert[] | undefined;
892
904
  } | undefined;
893
905
  spMetadataUrl: string;
894
906
  }>;
@@ -985,6 +997,7 @@ declare const registerSSOProvider: <O extends SSOOptions>(options: O) => better_
985
997
  skipDiscovery: z.ZodOptional<z.ZodBoolean>;
986
998
  scopes: z.ZodOptional<z.ZodArray<z.ZodString>>;
987
999
  pkce: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
1000
+ overrideUserInfo: z.ZodOptional<z.ZodBoolean>;
988
1001
  mapping: z.ZodOptional<z.ZodObject<{
989
1002
  id: z.ZodString;
990
1003
  email: z.ZodString;
@@ -996,12 +1009,12 @@ declare const registerSSOProvider: <O extends SSOOptions>(options: O) => better_
996
1009
  }, z.core.$strip>>;
997
1010
  samlConfig: z.ZodOptional<z.ZodObject<{
998
1011
  entryPoint: z.ZodString;
999
- cert: z.ZodString;
1012
+ cert: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
1000
1013
  audience: z.ZodOptional<z.ZodString>;
1001
1014
  idpMetadata: z.ZodOptional<z.ZodObject<{
1002
1015
  metadata: z.ZodOptional<z.ZodString>;
1003
1016
  entityID: z.ZodOptional<z.ZodString>;
1004
- cert: z.ZodOptional<z.ZodString>;
1017
+ cert: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
1005
1018
  privateKey: z.ZodOptional<z.ZodString>;
1006
1019
  privateKeyPass: z.ZodOptional<z.ZodString>;
1007
1020
  isAssertionEncrypted: z.ZodOptional<z.ZodBoolean>;
@@ -1011,6 +1024,10 @@ declare const registerSSOProvider: <O extends SSOOptions>(options: O) => better_
1011
1024
  Binding: z.ZodString;
1012
1025
  Location: z.ZodString;
1013
1026
  }, z.core.$strip>>>;
1027
+ singleLogoutService: z.ZodOptional<z.ZodArray<z.ZodObject<{
1028
+ Binding: z.ZodString;
1029
+ Location: z.ZodString;
1030
+ }, z.core.$strip>>>;
1014
1031
  }, z.core.$strip>>;
1015
1032
  spMetadata: z.ZodOptional<z.ZodObject<{
1016
1033
  metadata: z.ZodOptional<z.ZodString>;
@@ -1251,6 +1268,7 @@ declare const signInSSO: (options?: SSOOptions) => better_call0.StrictEndpoint<"
1251
1268
  newUserCallbackURL: z.ZodOptional<z.ZodString>;
1252
1269
  scopes: z.ZodOptional<z.ZodArray<z.ZodString>>;
1253
1270
  loginHint: z.ZodOptional<z.ZodString>;
1271
+ additionalParams: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1254
1272
  requestSignUp: z.ZodOptional<z.ZodBoolean>;
1255
1273
  providerType: z.ZodOptional<z.ZodEnum<{
1256
1274
  saml: "saml";
@@ -1272,7 +1290,7 @@ declare const signInSSO: (options?: SSOOptions) => better_call0.StrictEndpoint<"
1272
1290
  type: string;
1273
1291
  description: string;
1274
1292
  };
1275
- issuer: {
1293
+ organizationSlug: {
1276
1294
  type: string;
1277
1295
  description: string;
1278
1296
  };
@@ -1280,6 +1298,10 @@ declare const signInSSO: (options?: SSOOptions) => better_call0.StrictEndpoint<"
1280
1298
  type: string;
1281
1299
  description: string;
1282
1300
  };
1301
+ domain: {
1302
+ type: string;
1303
+ description: string;
1304
+ };
1283
1305
  callbackURL: {
1284
1306
  type: string;
1285
1307
  description: string;
@@ -1292,10 +1314,33 @@ declare const signInSSO: (options?: SSOOptions) => better_call0.StrictEndpoint<"
1292
1314
  type: string;
1293
1315
  description: string;
1294
1316
  };
1317
+ scopes: {
1318
+ type: string;
1319
+ items: {
1320
+ type: string;
1321
+ };
1322
+ description: string;
1323
+ };
1295
1324
  loginHint: {
1296
1325
  type: string;
1297
1326
  description: string;
1298
1327
  };
1328
+ additionalParams: {
1329
+ type: string;
1330
+ additionalProperties: {
1331
+ type: string;
1332
+ };
1333
+ description: string;
1334
+ };
1335
+ requestSignUp: {
1336
+ type: string;
1337
+ description: string;
1338
+ };
1339
+ providerType: {
1340
+ type: string;
1341
+ enum: string[];
1342
+ description: string;
1343
+ };
1299
1344
  };
1300
1345
  required: string[];
1301
1346
  };
@@ -1337,7 +1382,7 @@ declare const callbackSSO: (options?: SSOOptions) => better_call0.StrictEndpoint
1337
1382
  method: "GET";
1338
1383
  query: z.ZodObject<{
1339
1384
  code: z.ZodOptional<z.ZodString>;
1340
- state: z.ZodString;
1385
+ state: z.ZodOptional<z.ZodString>;
1341
1386
  error: z.ZodOptional<z.ZodString>;
1342
1387
  error_description: z.ZodOptional<z.ZodString>;
1343
1388
  }, z.core.$strip>;
@@ -1378,7 +1423,7 @@ declare const callbackSSOShared: (options?: SSOOptions) => better_call0.StrictEn
1378
1423
  method: "GET";
1379
1424
  query: z.ZodObject<{
1380
1425
  code: z.ZodOptional<z.ZodString>;
1381
- state: z.ZodString;
1426
+ state: z.ZodOptional<z.ZodString>;
1382
1427
  error: z.ZodOptional<z.ZodString>;
1383
1428
  error_description: z.ZodOptional<z.ZodString>;
1384
1429
  }, z.core.$strip>;
@@ -1585,7 +1630,7 @@ interface OIDCDiscoveryDocument {
1585
1630
  /**
1586
1631
  * Error codes for OIDC discovery operations.
1587
1632
  */
1588
- type DiscoveryErrorCode = /** Request to discovery endpoint timed out */"discovery_timeout" /** Discovery endpoint returned 404 or similar */ | "discovery_not_found" /** Discovery endpoint returned invalid JSON */ | "discovery_invalid_json" /** Discovery URL is invalid or malformed */ | "discovery_invalid_url" /** Discovery URL is not trusted by the trusted origins configuration */ | "discovery_untrusted_origin" /** Discovery document issuer doesn't match configured issuer */ | "issuer_mismatch" /** Discovery document is missing required fields */ | "discovery_incomplete" /** IdP only advertises token auth methods that Better Auth doesn't currently support */ | "unsupported_token_auth_method" /** Catch-all for unexpected errors */ | "discovery_unexpected_error";
1633
+ type DiscoveryErrorCode = /** Request to discovery endpoint timed out */"discovery_timeout" /** Discovery endpoint returned 404 or similar */ | "discovery_not_found" /** Discovery endpoint returned invalid JSON */ | "discovery_invalid_json" /** OIDC endpoint URL (discovery or per-endpoint: authorization, token, userinfo, jwks) is invalid, malformed, or uses a non-`http(s)` scheme */ | "discovery_invalid_url" /** OIDC endpoint URL is not trusted by the trusted origins configuration */ | "discovery_untrusted_origin" /** OIDC endpoint URL (discovery or per-endpoint) points to a host that is not publicly routable (loopback, RFC 1918, link-local, cloud metadata FQDN, etc.) */ | "discovery_private_host" /** Discovery document issuer doesn't match configured issuer */ | "issuer_mismatch" /** Discovery document is missing required fields */ | "discovery_incomplete" /** IdP only advertises token auth methods that Better Auth doesn't currently support */ | "unsupported_token_auth_method" /** Catch-all for unexpected errors */ | "discovery_unexpected_error";
1589
1634
  /**
1590
1635
  * Custom error class for OIDC discovery failures.
1591
1636
  * Can be caught and mapped to APIError at the edge.
package/dist/index.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- import { A as DataEncryptionAlgorithm, C as DEFAULT_MAX_SAML_METADATA_SIZE, D as SSOOptions, E as SAMLConfig, M as DigestAlgorithm, N as KeyEncryptionAlgorithm, O as SSOProvider, P as SignatureAlgorithm, S as DEFAULT_CLOCK_SKEW_MS, T as OIDCConfig, _ as REQUIRED_DISCOVERY_FIELDS, a as fetchDiscoveryDocument, b as TimestampValidationOptions, c as normalizeUrl, d as validateDiscoveryUrl, f as DiscoverOIDCConfigParams, g as OIDCDiscoveryDocument, h as HydratedOIDCConfig, i as discoverOIDCConfig, j as DeprecatedAlgorithmBehavior, k as AlgorithmValidationOptions, l as selectTokenEndpointAuthMethod, m as DiscoveryErrorCode, n as sso, o as needsRuntimeDiscovery, p as DiscoveryError, r as computeDiscoveryUrl, s as normalizeDiscoveryUrls, t as SSOPlugin, u as validateDiscoveryDocument, v as RequiredDiscoveryField, w as DEFAULT_MAX_SAML_RESPONSE_SIZE, x as validateSAMLTimestamp, y as SAMLConditions } from "./index-CagV4mMx.mjs";
1
+ import { A as DataEncryptionAlgorithm, C as DEFAULT_MAX_SAML_METADATA_SIZE, D as SSOOptions, E as SAMLConfig, M as DigestAlgorithm, N as KeyEncryptionAlgorithm, O as SSOProvider, P as SignatureAlgorithm, S as DEFAULT_CLOCK_SKEW_MS, T as OIDCConfig, _ as REQUIRED_DISCOVERY_FIELDS, a as fetchDiscoveryDocument, b as TimestampValidationOptions, c as normalizeUrl, d as validateDiscoveryUrl, f as DiscoverOIDCConfigParams, g as OIDCDiscoveryDocument, h as HydratedOIDCConfig, i as discoverOIDCConfig, j as DeprecatedAlgorithmBehavior, k as AlgorithmValidationOptions, l as selectTokenEndpointAuthMethod, m as DiscoveryErrorCode, n as sso, o as needsRuntimeDiscovery, p as DiscoveryError, r as computeDiscoveryUrl, s as normalizeDiscoveryUrls, t as SSOPlugin, u as validateDiscoveryDocument, v as RequiredDiscoveryField, w as DEFAULT_MAX_SAML_RESPONSE_SIZE, x as validateSAMLTimestamp, y as SAMLConditions } from "./index-DCkGGu_2.mjs";
2
2
  export { AlgorithmValidationOptions, DEFAULT_CLOCK_SKEW_MS, DEFAULT_MAX_SAML_METADATA_SIZE, DEFAULT_MAX_SAML_RESPONSE_SIZE, DataEncryptionAlgorithm, DeprecatedAlgorithmBehavior, DigestAlgorithm, DiscoverOIDCConfigParams, DiscoveryError, DiscoveryErrorCode, HydratedOIDCConfig, KeyEncryptionAlgorithm, OIDCConfig, OIDCDiscoveryDocument, REQUIRED_DISCOVERY_FIELDS, RequiredDiscoveryField, SAMLConditions, SAMLConfig, SSOOptions, SSOPlugin, SSOProvider, SignatureAlgorithm, TimestampValidationOptions, computeDiscoveryUrl, discoverOIDCConfig, fetchDiscoveryDocument, needsRuntimeDiscovery, normalizeDiscoveryUrls, normalizeUrl, selectTokenEndpointAuthMethod, sso, validateDiscoveryDocument, validateDiscoveryUrl, validateSAMLTimestamp };