import * as React from 'react'; interface SettingsRowProps { /** Leading icon slot. Consumer provides the icon node — the library is icon-agnostic. */ icon?: React.ReactNode; /** Primary row label. */ label: string; /** Secondary text rendered beneath the label. */ sub?: string; /** * Trailing slot — typically a chevron, external-link icon, badge, or a value * `` (e.g. app version). Consumer provides the node. */ rightSlot?: React.ReactNode; /** * Tap handler. When omitted the row renders as a plain, non-interactive * `View` with the same layout (used for read-only rows like "App version"). */ onPress?: () => void; /** Forwarded to the underlying Button when `onPress` is set. */ disabled?: boolean; /** Extra classes merged onto the row wrapper. */ className?: string; /** Extra classes merged onto the label `` (e.g. `text-destructive` for a destructive row). */ labelClassName?: string; /** Extra classes merged onto the sub-label ``. */ subClassName?: string; } /** * Single row inside a `SettingsGroup` — leading icon, label (with optional * sub-label), and a trailing slot. Purely presentational: the consumer * supplies the icon node, strings, and tap handler. * * With `onPress`, renders a ghost `Button` so the full row gets press * feedback. Without, renders a plain `View` for read-only rows (e.g. a * version display where `rightSlot` is just a value ``). */ declare function SettingsRow({ icon, label, sub, rightSlot, onPress, disabled, className, labelClassName, subClassName, }: SettingsRowProps): import("react/jsx-runtime").JSX.Element; export { SettingsRow }; export type { SettingsRowProps }; //# sourceMappingURL=settings-row.d.ts.map