import type { Component as SocialLoginButtonComponent } from "../../auth-social-login-button/types/webcomponent.type"; export type Component = { id?: string; style?: string; type?: | "login" | "register" | "activate" | "recover" | "forgotpassword" | "mailrecoverinfo" | "otp" | "2fa_code" | "2fa_config"; email?: string; i18nlang?: string; sessionkey?: string; social_auth_server_url?: string; redirectonlogin?: string; redirectoncreate?: string; loginuri?: string; registeruri?: string; activateuri?: string; recoveruri?: string; requestmethod?: string; appendqueryparams?: string; appendbodyparams?: string; logouri?: string; oauth2providers?: SocialLoginButtonComponent["provider"][]; disableregister?: boolean; enable_recover_password?: boolean; passwordpattern?: string; recoverycode?: string; disablelocal?: boolean; }; export type Events = { login: { token?: string; email?: string; password?: string; rememberMe?: boolean; }; /** Server JSON when `registeruri` succeeds (arbitrary fields + optional `requestSent`), or `{ email, password }` when no URI is configured. */ register: Record & { email?: string; password?: string; requestSent?: { email: string; password: string }; }; recoverOrActivate: { password: string; recoverycode: string; email: string }; // only one good.. recoverPassword: { email: string }; oauthFlowInit: { token?: string; provider: SocialLoginButtonComponent["provider"]["name"]; tmpCode?: string; redirect_uri?: string; }; oauthFlowRedirectStart: { provider: SocialLoginButtonComponent["provider"]["name"]; }; oauthFlowSuccess: { token: string }; oauthFlowCustom: { provider: SocialLoginButtonComponent["provider"]["name"] }; };