import React, { type ReactNode } from 'react';
interface SourceListProps {
    preferred: ReactNode[];
    moreSources: ReactNode[];
    unavailable: ReactNode[];
    isFallback: boolean;
    /**
     * Pre-rendered Native fast-path row, threaded through to
     * `buildSourceGroups`. Caller (SourceChange) owns the row's click
     * handler since it depends on the modal's `onNext` callback.
     */
    nativeRow?: ReactNode;
    testId?: string;
}
/**
 * Contextual composer for the source-change payment-method list.
 * Reads translation, funkit config, and the source-list-relevant
 * Statsig flags directly; runs `buildSourceGroups`; dispatches to the
 * matching layout primitive — `FlatList` for the non-Swapped path
 * (with a PayPal footer + "more" divider label) or `GroupedList` for
 * the Swapped path (with optional section labels).
 *
 * `SourceList` has no DOM of its own; the primitive it returns owns
 * the outer `data-testid` element.
 */
export declare function SourceList({ preferred, moreSources, unavailable, isFallback, nativeRow, testId, }: SourceListProps): React.JSX.Element;
export {};
