import type { ComponentType, ReactNode } from 'react'; import type { Dictionary, Fn } from '../@aileron/declare/index.js'; import type { BaseModal, ContentComponentProps, FooterOptions } from './base.js'; export type AlertFooterRender = Fn<[ props: { onConfirm: Fn; context: Context; } ], ReactNode>; export type AlertContentProps = Pick, 'onConfirm'>; export interface AlertModal extends BaseModal { type: 'alert'; subtype?: 'info' | 'success' | 'warning' | 'error'; content?: ReactNode | ComponentType>; footer?: AlertFooterRender | Pick | false; }