import { ComponentType } from 'react'; import { Plugin } from '@tachybase/client'; import { Registry } from '@tego/client'; import { Authenticator as AuthenticatorType } from './authenticator'; export type AuthOptions = { components: Partial<{ SignInForm: ComponentType<{ authenticator: AuthenticatorType; }>; SignInButton: ComponentType<{ authenticator: AuthenticatorType; }>; SignUpForm: ComponentType<{ authenticatorName: string; }>; AdminSettingsForm: ComponentType; BindForm: ComponentType<{ authenticator: AuthenticatorType; }>; }>; }; export declare class PluginAuthClient extends Plugin { authTypes: Registry; registerType(authType: string, options: AuthOptions): void; load(): Promise; } export { AuthenticatorsContext, useAuthenticator } from './authenticator'; export type { Authenticator } from './authenticator'; export { useSignIn, useRedirect } from './basic'; export default PluginAuthClient;