/** Props for Loading, a full-viewport (or container-scoped) blocking overlay gated on `isLoading`. */ export type LoadingProps = { /** Label under the spinner; without it the spinner is named "Loading". With `onlytext` it is the heading. */ text?: string; /** Shows the overlay; renders nothing when false. */ isLoading: boolean; /** Swaps the spinner+label for a large pulsing 50px uppercase heading — a different treatment, not just "no spinner". */ onlytext?: boolean; /** Scope the overlay to the nearest positioned ancestor instead of full-viewport. */ container?: boolean; /** "dim" renders through Backdrop: lighter scrim, no blur, fades in. Defaults to "frosted" so existing screens are unchanged. */ variant?: "frosted" | "dim"; /** Only with `variant="dim"` — lets clicks reach the page behind the scrim. */ allowBackgroundInteraction?: boolean; };