import { ComponentType, PropsWithChildren } from 'react';
import { DeviceListItem } from '../../hooks';
export type DeviceSelectorType = 'audioinput' | 'audiooutput' | 'videoinput';
export type PreviewItemProps = {
    device: DeviceListItem;
    onSelect: (deviceId: string) => void;
};
export declare const DeviceSelector: (props: PropsWithChildren<{
    devices: MediaDeviceInfo[];
    icon: string;
    type: DeviceSelectorType;
    selectedDeviceId?: string;
    title?: string;
    onChange?: (deviceId: string) => void;
}> & ({
    visualType?: "list" | "dropdown";
} | {
    visualType: "preview";
    PreviewItem: ComponentType<PreviewItemProps>;
})) => import("react/jsx-runtime").JSX.Element;
