/** * Copyright (c) 2026, WSO2 LLC. (https://www.wso2.com). * * WSO2 LLC. licenses this file to you under the Apache License, * Version 2.0 (the "License"); you may not use this file except * in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ import { EmbeddedFlowExecuteRequestPayload, EmbeddedFlowExecuteResponse, Preferences, FlowMetadataResponse } from '@asgardeo/browser'; import { FC, ReactNode } from 'react'; import { CardProps } from '../../../../primitives/Card/Card'; /** * Render props for custom UI rendering. */ export interface BaseRecoveryRenderProps { components: any[]; error?: Error | null; fieldErrors: Record; handleInputChange: (name: string, value: string) => void; handleSubmit: (component: any, data?: Record) => Promise; isLoading: boolean; isValid: boolean; messages: Array<{ message: string; type: string; }>; meta: FlowMetadataResponse | null; subtitle: string; title: string; touched: Record; validateForm: () => { fieldErrors: Record; isValid: boolean; }; values: Record; } /** * Props for the BaseRecovery component. */ export interface BaseRecoveryProps { afterRecoveryUrl?: string; buttonClassName?: string; /** * Render props function for custom UI or static content */ children?: ((props: BaseRecoveryRenderProps) => ReactNode) | ReactNode; className?: string; error?: Error | null; errorClassName?: string; inputClassName?: string; isInitialized?: boolean; messageClassName?: string; onComplete?: (response: EmbeddedFlowExecuteResponse) => void; onError?: (error: Error) => void; onFlowChange?: (response: EmbeddedFlowExecuteResponse) => void; onInitialize?: (payload?: EmbeddedFlowExecuteRequestPayload) => Promise; onSubmit?: (payload: EmbeddedFlowExecuteRequestPayload) => Promise; /** * Component-level preferences to override global i18n and theme settings. */ preferences?: Preferences; showLogo?: boolean; showSubtitle?: boolean; showTitle?: boolean; size?: 'small' | 'medium' | 'large'; variant?: CardProps['variant']; } /** * BaseRecovery component for AsgardeoV2 that provides an embedded account/password recovery flow. * Accepts API functions as props to maintain framework independence. */ declare const BaseRecovery: FC; export default BaseRecovery; //# sourceMappingURL=BaseRecovery.d.ts.map