import type { SupabaseClient, AuthResponse, OAuthResponse, SSOResponse, SignInWithOAuthCredentials, SignInWithIdTokenCredentials, SignInWithPasswordCredentials, SignInWithPasswordlessCredentials, SignInWithSSO } from '@supabase/supabase-js'; import type { CurrentUser } from '@cedarjs/auth'; export type SignInWithOAuthOptions = SignInWithOAuthCredentials & { authMethod: 'oauth'; }; export type SignInWithIdTokenOptions = SignInWithIdTokenCredentials & { authMethod: 'id_token'; }; export type SignInWithPasswordOptions = SignInWithPasswordCredentials & { authMethod: 'password'; }; export type SignInWithPasswordlessOptions = SignInWithPasswordlessCredentials & { authMethod: 'otp'; }; export type SignInWithSSOOptions = SignInWithSSO & { authMethod: 'sso'; }; export declare function createAuth(supabaseClient: SupabaseClient, customProviderHooks?: { useCurrentUser?: () => Promise; useHasRole?: (currentUser: CurrentUser | null) => (rolesToCheck: string | string[]) => boolean; }): { AuthContext: import("react").Context> | undefined>; AuthProvider: ({ children }: import("@cedarjs/auth").AuthProviderProps) => import("react").JSX.Element; useAuth: () => import("@cedarjs/auth").AuthContextInterface>; }; //# sourceMappingURL=supabase.d.ts.map