import type { authModels } from '@cloudbase/oauth'; import type { SignUpRes } from './type'; export declare class WeixinAuthProvider { constructor(_options: { authInstance: any; appid: string; scope: string; }); signInWithRedirect(): void; getRedirectResult(_options?: { createUser?: boolean; syncUserInfo?: boolean; }): Promise; getLinkRedirectResult(_options?: { withUnionId?: boolean; }): Promise; } export declare class CustomAuthProvider { private authInstance; constructor(options: { authInstance: any; }); signIn(ticket: string): Promise; } export declare class AnonymousAuthProvider { private authInstance; constructor(options: { authInstance: any; }); signIn(): Promise; } export declare abstract class AuthV1Compat { abstract readonly config: any; weixinAuthProvider(options: { appid: string; scope: string; }): WeixinAuthProvider; customAuthProvider(): CustomAuthProvider; anonymousAuthProvider(): AnonymousAuthProvider; signUpWithEmailAndPassword(email: string, password: string): Promise; signInWithEmailAndPassword(email: string, password: string): Promise; sendPasswordResetEmail(email: string): Promise; signInWithUsernameAndPassword(username: string, password: string): Promise; sendPhoneCode(phoneNumber: string): Promise; signUpWithPhoneCode(phoneNumber: string, phoneCode: string, password?: string): Promise; signInWithPhoneCodeOrPassword(params: { phoneNumber: string; phoneCode?: string; password?: string; }): Promise; forceResetPwdByPhoneCode(params: { phoneNumber: string; phoneCode: string; password: string; }): Promise; shouldRefreshAccessToken(_callback: () => boolean): void; onLoginStateExpired(callback: Function): void; onAccessTokenRefreshed(callback: Function): void; onAnonymousConverted(callback: Function): void; onLoginTypeChanged(callback: Function): void; abstract signIn(params: authModels.SignInRequest): Promise; abstract signUp(params: authModels.SignUpRequest & { phone?: string; }): Promise; abstract signInWithCustomTicket(getTickFn?: authModels.GetCustomSignTicketFn): Promise; abstract signInAnonymously(params: any): Promise; abstract getVerification(params: any, options?: any): Promise; abstract resetPassword(params: authModels.ResetPasswordRequest): Promise; abstract onLoginStateChanged(callback: Function): Promise; abstract onAuthStateChange(callback: any): any; abstract createLoginState(params?: any, options?: any): Promise; abstract signInWithOAuth(params: any): Promise; abstract grantProviderToken(params: authModels.GrantProviderTokenRequest): Promise; abstract bindWithProvider(params: authModels.BindWithProviderRequest): Promise; protected abstract formatPhone(phone: string): string; } export declare function applyUserV1Compat(UserClass: any): void;