import { ReactNode } from 'react';
import { StatusLabelProps } from '../status-label/StatusLabel.types';
export type LeadingDecoration = 'device' | 'app' | 'avatar' | 'icon';
export type DividerPosition = 'top' | 'bottom' | 'none';
export interface OptionalCopy {
    text: ReactNode;
    icon?: ReactNode;
    iconA11yLabel?: string;
}
export interface ListItemNavigationProps {
    /** Primary label text. */
    label: string;
    /** Unique ID for the label element. */
    labelId?: string;
    /** Optional body copy lines below the label. */
    body?: OptionalCopy[];
    /** Optional status label config rendered in main content. */
    status?: StatusLabelProps;
    /** Type of leading decoration. */
    leadingDecorationType?: LeadingDecoration;
    /** Image source for device/app/avatar leading decoration. */
    leadingImage?: string;
    /** Icon ReactNode for icon leading decoration. */
    leadingIcon?: ReactNode;
    /** Accessible label for the leading decoration. */
    leadingDecorationA11yLabel?: string;
    /** Position of the divider. Defaults to 'bottom'. */
    dividerPosition?: DividerPosition;
    /** Enable inverse (dark background) styling. */
    inverse?: boolean;
    /** Force focus state for snapshot testing. */
    focused?: boolean;
    /** Navigation URL (required). */
    navigationUrl: string;
    /** Additional CSS class names. */
    className?: string;
}
//# sourceMappingURL=ListItemNavigation.types.d.ts.map