import { h } from 'preact'; import { DXCOption } from '../types/DXCUserInteraction'; import { DXCInputField } from '../types/DXCInputField'; import { DXCAlert } from '../types/DXCAlert'; /** Props for LoginDialog - accepts any user interaction */ interface LoginDialogProps { title: string; alerts: DXCAlert[]; fields: { [name: string]: DXCInputField; }; options?: DXCOption[]; submitLabel?: string; cancelLabel?: string | null; onSubmit: (params: { [paramName: string]: string; }) => void; onCancel: () => void; } /** * Generic dialog that can render: * - Form fields (text inputs) * - Selectable options (buttons) * - Or both together * * When an option is clicked, calls onSubmit({ [option.name]: option.value }). * This unified approach means the same callback handles both form submission * and option selection. */ export declare function LoginDialog({ title, alerts, fields, options, submitLabel, cancelLabel, onCancel, onSubmit, }: LoginDialogProps): h.JSX.Element; export {};