import * as react_jsx_runtime from 'react/jsx-runtime'; import * as React from 'react'; /** * Financial drawer shells — WealthX DS (Level 5) * * These are the outermost drawer containers. They compose the Level 4 sections * into full-screen right-side panels used across backoffice. * * ``` * Level 2 → FinancialDetailField, FinancialLvrBar … (financial-primitives) * Level 3 → PropertyCard, DebtCard, AlertCard … (financial-cards) * Level 4 → PropertyHoldingsSection, DebtSection … (financial-sections) * Level 5 → SummaryReportDrawer, OpportunityDetailsDrawer … ← here * ``` * * Both components are **visual shells** — they own the chrome (header, tabs, * scrollable viewport) but delegate all data and content to the consuming app * via slot props. */ type SummaryViewMode = "individual" | "joint"; type SummaryJointSubTab = "joint" | "userA" | "userB"; interface SummaryReportDrawerProps { open: boolean; onOpenChange: (open: boolean) => void; /** Primary contact name shown in the header. */ contactName?: string; /** Whether a secondary contact has been added for joint view. */ hasJointView?: boolean; /** Active view mode — individual or joint. */ viewMode?: SummaryViewMode; onViewModeChange?: (mode: SummaryViewMode) => void; /** Active sub-tab when in joint + joint mode. */ jointSubTab?: SummaryJointSubTab; onJointSubTabChange?: (tab: SummaryJointSubTab) => void; /** Display name for the primary applicant in joint view. */ jointMainUserName?: string; /** Display name for the secondary applicant in joint view. */ jointCoApplicantName?: string; /** Called when "Create Joint View" is clicked (no joint view yet). */ onCreateJointView?: () => void; /** Called when "Remove Joint View" is clicked. */ onRemoveJointView?: () => void; /** * Row of action buttons rendered below the header chrome. * Typically: Export button, Send Report button, etc. */ actionButtons?: React.ReactNode; /** * Alert accordion shown below the action buttons row. * Pass an `` from financial-sections when alerts exist. */ alerts?: React.ReactNode; /** * When true, hides `children` and `actionButtons`/`alerts` and shows a * centered `` instead. */ isLoading?: boolean; /** * The scrollable financial content — stack Level 4 sections and charts here. * Recommended order (mirrors backoffice): charts → PropertyHoldings → Debt → * OtherLiabilities → IncomeExpense → AlertAccordion. */ children?: React.ReactNode; } /** * Right-side sheet shell for the Summary Report Drawer. * * Handles the header chrome (contact name, Individual/Joint view toggle, * joint sub-tabs, close button) and a scrollable content viewport. * All financial content is passed as `children`. */ declare function SummaryReportDrawer({ open, onOpenChange, contactName, hasJointView, viewMode, onViewModeChange, jointSubTab, onJointSubTabChange, jointMainUserName, jointCoApplicantName, onCreateJointView, onRemoveJointView, actionButtons, alerts, isLoading, children, }: SummaryReportDrawerProps): react_jsx_runtime.JSX.Element; type OpportunityTab = "summary" | "tasks" | "bankStatement" | "policyAI" | "runServicing" | "emailAndNotes" | "syncLoanApp"; interface OpportunityDetailsDrawerProps { open: boolean; onOpenChange: (open: boolean) => void; /** Default active tab on open. Defaults to "summary". */ defaultTab?: OpportunityTab; /** * Content slots keyed by tab value. * Pass only the tabs you want to render content for — unset tabs show nothing. * * ```tsx * , * tasks: , * }} * /> * ``` */ tabs?: Partial>; } /** * Right-side sheet shell for the Opportunity Details Drawer. * * Renders a line-variant tab bar (Summary · Tasks · Reports & Statements · * Policy AI · Run Servicing · Email & Notes · Sync Loan App) with a close * button, and a scrollable `TabsContent` panel for each active tab. * * Uses the shadcn `Tabs` component internally so each tab's content panel * is properly connected to its trigger via Base UI's Tabs.Root context. */ declare function OpportunityDetailsDrawer({ open, onOpenChange, defaultTab, tabs, }: OpportunityDetailsDrawerProps): react_jsx_runtime.JSX.Element; export { OpportunityDetailsDrawer, type OpportunityDetailsDrawerProps, type OpportunityTab, type SummaryJointSubTab, SummaryReportDrawer, type SummaryReportDrawerProps, type SummaryViewMode };