import { type HTMLAttributes } from 'react'; /** * Gate for the URLs the terminal will navigate to. Allows only same-origin * relative paths (`/…`) and explicit `http(s)` absolute URLs; rejects * `javascript:` / `data:` / `vbscript:` and any other scheme. * * This terminal lives on public signing pages where `redirectUrl` may flow * from a URL parameter, so a hostile `javascript:…` value must never reach * `window.location.assign` (it would execute in the page). Exported for unit * testing — it is NOT part of the public component API (`index.ts` does not * re-export it). */ export declare function isNavigableUrl(url: string): boolean; export interface FinishedTerminalProps extends Omit, 'title'> { /** Completion headline — consumer-provided, already translated. */ title: string; /** Completion sub-message — consumer-provided, already translated. */ body: string; /** * Auto-close countdown, in seconds. Default `10`. Set `0` to disable the * countdown entirely (a static success screen with no next-step). */ autoCloseSeconds?: number; /** * Where to send the signer when the countdown elapses / "Close now" is * pressed. When omitted, the terminal does a best-effort `window.close()` * and falls back to `brandUrl`. * * @security Navigated to via `window.location.assign`. Only same-origin * relative paths and `http(s)` absolute URLs are honoured — `javascript:` / * `data:` values are dropped. Pass a value from trusted backend config. */ redirectUrl?: string; /** * Brand-site fallback used when there is no `redirectUrl` and the * best-effort `window.close()` is blocked. Default `https://www.alfadocs.com`. * * @security Same navigation gate as `redirectUrl`. */ brandUrl?: string; /** * Override the default close/redirect behaviour (e.g. SPA routing, analytics, * or a no-op in stories). When provided, the terminal does NO browser * navigation of its own — it just calls this. */ onClose?: () => void; /** Override the countdown line (default `ui.finishedTerminal.autoClose`). */ countdownLabel?: (seconds: number) => string; /** Override the "Close now" label (default `ui.finishedTerminal.closeNow`). */ closeNowLabel?: string; /** Override the post-close line (default `ui.finishedTerminal.redirecting`). */ redirectingLabel?: string; } export declare const FinishedTerminal: import("react").ForwardRefExoticComponent>; //# sourceMappingURL=finished-terminal.d.ts.map