import * as react_jsx_runtime from 'react/jsx-runtime'; /** * Mobile bottom-sheet organism for creating or editing a borrowing scenario. * * Sections (top-to-bottom): * - Header: editable scenario name + close button * - Content (scrollable): * - Objective selector (Buy a Home / Buy an Investment / Refinance) * - Applicants selector (1 / 2) * - Dependants selector (0 – 3) * - MoneyInputWithSlider fields (income, expenses, debt, desired loan) * - Footer: Cancel + Create/Update Scenario buttons * * On mobile the sheet fills the viewport width. On larger screens it is * capped at max-w-2xl and the slider fields flow in a 2-column grid so * the drawer does not stretch the page layout. */ type ScenarioObjective = "buy-home" | "buy-investment" | "refinance"; interface ScenarioDrawerValues { name: string; objective: ScenarioObjective; /** 1 = sole applicant, 2 = two applicants */ applicants: 1 | 2; /** Number of dependants (0–3) */ dependants: number; /** Main applicant after-tax monthly income in dollars */ mainApplicantMonthlyIncome: number; /** Main applicant monthly rental income in dollars */ mainApplicantMonthlyRentalIncome: number; /** Co-applicant after-tax monthly income in dollars (applicants = 2 only) */ coApplicantMonthlyIncome: number; /** Co-applicant monthly rental income in dollars (applicants = 2 only) */ coApplicantMonthlyRentalIncome: number; /** Combined essential expenses per month in dollars */ monthlyExpense: number; /** Combined debt repayments per month in dollars */ monthlyDebtRepayment: number; /** Estimated rental income (buy-investment objective only) */ estimatedRentalIncome: number; /** Target loan amount in dollars */ desiredLoanAmount: number; } interface ScenarioDrawerProps { open: boolean; onOpenChange: (open: boolean) => void; /** Initial field values — re-applied whenever the drawer opens */ defaultValues?: Partial; /** true = show "Update Scenario" footer button, false = "Create Scenario" */ isEditMode?: boolean; /** Called with the final values when the user clicks Save */ onSave: (values: ScenarioDrawerValues) => void; /** Called when the user clicks Cancel or the close button */ onCancel?: () => void; className?: string; } declare function ScenarioDrawer({ open, onOpenChange, defaultValues, isEditMode, onSave, onCancel, className, }: ScenarioDrawerProps): react_jsx_runtime.JSX.Element; export { ScenarioDrawer, type ScenarioDrawerProps, type ScenarioDrawerValues, type ScenarioObjective };