import { d as Ui, g as WithClerkProp, t as ClerkProviderProps } from "./types-UA5O1wO1.cjs";
import { c as MultisessionAppSupport, n as useDerivedAuth } from "./useAuth-Ddmqlg2P.cjs";
import { ErrorThrowerOptions } from "@clerk/shared/error";
import { InternalClerkScriptProps, InternalClerkScriptProps as InternalClerkScriptProps$1, RoutingOptions } from "@clerk/shared/types";
import React from "react";
import { useOAuthConsent as useOAuthConsent$1 } from "@clerk/shared/react";
import { publishableKeyFromHost } from "@clerk/shared/keys";
import { buildClerkJSScriptAttributes, buildClerkJsScriptAttributes, buildClerkUIScriptAttributes, clerkJSScriptUrl, clerkJsScriptUrl, clerkUIScriptUrl, setClerkJSLoadingErrorPackageName, setClerkJsLoadingErrorPackageName } from "@clerk/shared/loadClerkJsScript";

//#region src/errors/errorThrower.d.ts
/**
 * Overrides options of the internal errorThrower (eg setting packageName prefix).
 *
 * @internal
 */
declare function setErrorThrowerOptions(options: ErrorThrowerOptions): void;
//#endregion
//#region src/hooks/useRoutingProps.d.ts
declare function useRoutingProps<T extends RoutingOptions>(componentName: string, props: T, routingOptions?: RoutingOptions): T;
//#endregion
//#region src/utils/versionCheck.d.ts
/**
 * Whether the host React version is compatible with the shared @clerk/ui variant.
 * This is computed once at module load time for optimal performance.
 */
declare const IS_REACT_SHARED_VARIANT_COMPATIBLE: boolean;
//#endregion
//#region src/internal.d.ts
/**
 * @deprecated Import `useOAuthConsent` from `@clerk/react` instead.
 */
declare const useOAuthConsent: typeof useOAuthConsent$1;
/**
 * @deprecated Import `OAuthConsent` from `@clerk/react` instead.
 */
declare const OAuthConsent: {
  (props: import("@clerk/shared/types").Without<WithClerkProp<import("@clerk/shared/types").OAuthConsentProps & {
    fallback?: React.ReactNode;
  }>, "clerk">): React.JSX.Element | null;
  displayName: string;
};
/**
 * A wider-typed version of ClerkProvider that accepts internal script props.
 * Framework SDKs should use this instead of the public ClerkProvider.
 */
declare const InternalClerkProvider: (<TUi extends Ui = Ui>(props: ClerkProviderProps<TUi> & InternalClerkScriptProps$1) => React.JSX.Element) & {
  displayName: string;
};
//#endregion
export { IS_REACT_SHARED_VARIANT_COMPATIBLE, InternalClerkProvider, type InternalClerkScriptProps, MultisessionAppSupport, OAuthConsent, type Ui, buildClerkJSScriptAttributes, buildClerkJsScriptAttributes, buildClerkUIScriptAttributes, clerkJSScriptUrl, clerkJsScriptUrl, clerkUIScriptUrl, publishableKeyFromHost, setClerkJSLoadingErrorPackageName, setClerkJsLoadingErrorPackageName, setErrorThrowerOptions, useDerivedAuth, useOAuthConsent, useRoutingProps };
//# sourceMappingURL=internal.d.cts.map