import { type ComponentType } from 'react'; import type { ApplicationLoginErrorV2, ApplicationLoginMethodDescriptorV2 } from 'openxiangda-contracts/browser'; export type ApplicationLoginSurfaceState = 'idle' | 'submitting' | 'redirecting' | 'recovering-identity'; export interface ApplicationLoginSurfaceProps { app: { code: string; name: string; }; device: 'desktop' | 'mobile'; methods: readonly ApplicationLoginMethodDescriptorV2[]; state: ApplicationLoginSurfaceState; error: ApplicationLoginErrorV2 | null; returnTo: string; passwordLogin(input: { username: string; password: string; rememberAccount?: boolean; challengeId?: string; challengeAnswer?: string; }): Promise; startSso(methodCode: string): Promise; startDingTalk(methodCode: string): Promise; clearError(): void; } export type ApplicationLoginSurfaceComponent = ComponentType; export interface GeneratedApplicationAuthenticationSurface { device: 'desktop' | 'mobile'; routeCode: string; path: string; defaultRouteCode: string; } export interface ApplicationAuthenticationSurfaceContribution { surface: Readonly; component: ApplicationLoginSurfaceComponent; } export interface ApplicationLoginControllerProps { app: { code: string; name: string; }; contribution: ApplicationAuthenticationSurfaceContribution; returnTo: string; onAuthenticated(redirectTo: string): Promise | void; } export declare function ApplicationLoginController({ app, contribution, returnTo, onAuthenticated, }: ApplicationLoginControllerProps): import("react/jsx-runtime").JSX.Element; export declare const DefaultDesktopApplicationLoginSurface: ApplicationLoginSurfaceComponent; export declare const DefaultMobileApplicationLoginSurface: ApplicationLoginSurfaceComponent; //# sourceMappingURL=authentication.d.ts.map