import type { TurboModule } from 'react-native'; export type ControlLine = 'RTS' | 'CTS' | 'DTR' | 'DSR' | 'CD' | 'RI'; export type FlowControl = 'NONE' | 'RTS_CTS' | 'DTR_DSR' | 'XON_XOFF' | 'XON_XOFF_INLINE'; export type PortId = { deviceId: number; portNumber: number; usbVendorId: number; usbProductId: number; /** * Whether the app currently holds Android USB permission to access this * device (via the system attach dialog or a prior permission request). */ hasPermission: boolean; }; export type PortPickerLabels = { titleSelectPort?: string; titleNoPortsAvailable?: string; messageNoPortsAvailable?: string; }; export type PortFilter = { usbVendorId?: number; usbProductId?: number; }; export interface Spec extends TurboModule { findAllDrivers(): Promise>; showPortPicker(filters: ReadonlyArray, labels?: PortPickerLabels): Promise; open(deviceId: number, portNumber: number, baudRate: number, dataBits: number, stopBits: number, parity: number): Promise; close(deviceId: number, portNumber: number): Promise; isOpen(deviceId: number, portNumber: number): boolean; write(deviceId: number, portNumber: number, data: ReadonlyArray, timeout: number): Promise; startReading(deviceId: number, portNumber: number): Promise; stopReading(deviceId: number, portNumber: number): Promise; setParameters(deviceId: number, portNumber: number, baudRate: number, dataBits: number, stopBits: number, parity: number): Promise; setDTR(deviceId: number, portNumber: number, value: boolean): Promise; setRTS(deviceId: number, portNumber: number, value: boolean): Promise; getDTR(deviceId: number, portNumber: number): Promise; getRTS(deviceId: number, portNumber: number): Promise; getCD(deviceId: number, portNumber: number): Promise; getCTS(deviceId: number, portNumber: number): Promise; getDSR(deviceId: number, portNumber: number): Promise; getRI(deviceId: number, portNumber: number): Promise; getControlLines(deviceId: number, portNumber: number): Promise>; getSupportedControlLines(deviceId: number, portNumber: number): Promise>; setFlowControl(deviceId: number, portNumber: number, flowControl: string): Promise; getFlowControl(deviceId: number, portNumber: number): Promise; getSupportedFlowControl(deviceId: number, portNumber: number): Promise>; setBreak(deviceId: number, portNumber: number, value: boolean): Promise; purgeHwBuffers(deviceId: number, portNumber: number, purgeWriteBuffers: boolean, purgeReadBuffers: boolean): Promise; getSerial(deviceId: number, portNumber: number): Promise; requestPermission(deviceId: number): Promise; addListener(eventName: string): void; removeListeners(count: number): void; } declare const _default: Spec | null; export default _default; //# sourceMappingURL=NativeUsbSerial.d.ts.map