import { HTMLAttributes, ReactNode } from 'react';
export interface SwitchRowProps extends Omit<HTMLAttributes<HTMLButtonElement>, "onChange"> {
    /** Primary label. */
    title: string;
    /** Secondary line below the title. */
    subtitle?: string;
    /** Icon or image placed at the leading edge. */
    leading?: ReactNode;
    /** Controlled checked state. */
    checked?: boolean;
    /** Initial checked state when uncontrolled. Defaults to `false`. */
    defaultChecked?: boolean;
    /** Called when the checked state changes. */
    onCheckedChange?: (checked: boolean) => void;
    /** Disables the row. */
    disabled?: boolean;
}
/**
 * Activatable row with an integrated switch.
 *
 * The entire row is a button — clicking anywhere toggles the switch.
 * Mirrors `AdwSwitchRow`, which differs from `ActionRow + trailing Switch`
 * because the row itself is the interactive element.
 *
 * Supports both controlled (`checked`) and uncontrolled (`defaultChecked`) modes.
 *
 * @see https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/class.SwitchRow.html
 */
export declare function SwitchRow({ title, subtitle, leading, checked: controlledChecked, defaultChecked, onCheckedChange, disabled, className, onClick, ...props }: SwitchRowProps): import("react/jsx-runtime").JSX.Element;
