/** * Forgot Password DTO * * Request a password reset code for a user account. * * Security: * - This endpoint should not reveal whether an account exists. * - Identifier is sanitized (trimmed, email lowercased when detected). * * @example * ```typescript * await authService.forgotPassword({ identifier: 'user@example.com' }); * * // With link support * await authService.forgotPassword({ * identifier: 'user@example.com', * baseUrl: 'https://myapp.com/reset-password' * }); * ``` */ export declare class ForgotPasswordDTO { /** * User identifier used to locate the account. * * Accepts email, username, or phone depending on application login policy. * * Sanitization: * - Trimmed * - Lowercased when email format detected (contains '@') */ identifier: string; /** * Base URL for building reset link * * Validation: * - Must be valid URL with http:// or https:// * - Supports localhost URLs (e.g., http://localhost:4200) * - Max 2048 characters * - Optional * * Sanitization: * - Trimmed * * WHY: Allows consumer apps to build custom reset UI (e.g., myapp.com/reset-password?token=xxx) * Like email verification and admin reset, supports both code AND link delivery * * @example "https://myapp.com/reset-password" * @example "http://localhost:4200" */ baseUrl?: string; } /** * Forgot Password Response DTO * * Response for a password reset request. * * Security: * - `success` should be true even when the identifier does not map to any user, * to prevent account enumeration. * * @example * ```typescript * { * success: true, * destination: "j***@example.com", * deliveryMedium: "email", * expiresIn: 900 * } * ``` */ export declare class ForgotPasswordResponseDTO { /** * Always true when request accepted (regardless of account existence). */ success: boolean; /** * Masked delivery destination (email or phone) when available. * * Examples: * - `j***@example.com` * - `+1***1234` */ destination?: string; /** * Delivery channel used. */ deliveryMedium?: 'email' | 'sms'; /** * Code expiry in seconds. */ expiresIn?: number; } //# sourceMappingURL=forgot-password.dto.d.ts.map