/** @jsxImportSource @opentui/react */ /** * Masked secret entry (INPUT-009, CORE-002, V2-073). * * Docked above the composer — same chrome as confirmations (no full-screen * black wash). Keys are handled via `useKeyboard` (not a focus-trapped * 1-cell input) so click-away cannot freeze typing/Esc, and bullets always * reflect keystrokes. Value only leaves via onSubmit / answerSecret. */ import { type ReactNode } from "react"; import type { AppServices } from "../../../ui-core/bootstrap/composition-root.js"; import type { Theme } from "../../../ui-core/rendering/theme.js"; import type { SecretRequestView } from "../../../ui-core/controllers/overlay-controller.js"; export interface SecretModalProps { readonly services: AppServices; readonly theme: Theme; readonly request: SecretRequestView; readonly docked?: boolean | undefined; } export declare function SecretModal(props: SecretModalProps): ReactNode;