import type { AutoDetectTypes, SetOptions, UpdateOptions } from '@serialport/bindings-cpp'; import type { SerialPortOpenOptions } from 'serialport'; export type OverwriteOptions = { overwrite?: boolean; settingsLocked?: boolean; }; type OnDataReceived = (data: unknown) => void; type OnDataWritten = (data: string | number[] | Buffer) => void; type OnClosed = () => void; type OnUpdate = (newOptions: UpdateOptions) => void; type OnSet = (newOptions: SetOptions) => void; type OnChanged = (newOptions: SerialPortOpenOptions) => void; export declare const inRenderer: { broadcastChanged: (subChannel: string, targets?: Pick[], newOptions: SerialPortOpenOptions) => void; broadcastClosed: (subChannel: string, targets?: Pick[]) => void; broadcastDataReceived: (subChannel: string, targets?: Pick[], data: unknown) => void; broadcastDataWritten: (subChannel: string, targets?: Pick[], data: string | Buffer | number[]) => void; broadcastSet: (subChannel: string, targets?: Pick[], newOptions: SetOptions) => void; broadcastUpdated: (subChannel: string, targets?: Pick[], newOptions: UpdateOptions) => void; }; export declare const forRenderer: { registerClose: (handler: ((sender: Electron.CrossProcessExports.WebContents, path: string) => void) | ((sender: Electron.CrossProcessExports.WebContents, path: string) => Promise)) => void; registerGetOptions: (handler: ((path: string) => SerialPortOpenOptions | undefined) | ((path: string) => Promise | undefined>)) => void; registerIsOpen: (handler: ((path: string) => boolean) | ((path: string) => Promise)) => void; registerOpen: (handler: ((sender: Electron.CrossProcessExports.WebContents, options: SerialPortOpenOptions, overwriteOptions: OverwriteOptions) => void) | ((sender: Electron.CrossProcessExports.WebContents, options: SerialPortOpenOptions, overwriteOptions: OverwriteOptions) => Promise)) => void; registerSet: (handler: ((path: string, set: SetOptions) => void) | ((path: string, set: SetOptions) => Promise)) => void; registerUpdate: (handler: ((path: string, options: UpdateOptions) => void) | ((path: string, options: UpdateOptions) => Promise)) => void; registerWrite: (handler: ((path: string, data: string | Buffer | number[]) => void) | ((path: string, data: string | Buffer | number[]) => Promise)) => void; }; export declare const inMain: { open: (options: SerialPortOpenOptions, overwriteOptions: OverwriteOptions) => Promise; close: (path: string) => Promise; write: (path: string, data: string | Buffer | number[]) => Promise; update: (path: string, options: UpdateOptions) => Promise; set: (path: string, set: SetOptions) => Promise; isOpen: (path: string) => Promise; getOptions: (path: string) => Promise | undefined>; }; export declare const forMain: { registerOnDataReceived: (path: string) => (handler: OnDataReceived) => Electron.IpcRenderer; registerOnDataWritten: (path: string) => (handler: OnDataWritten) => Electron.IpcRenderer; registerOnClosed: (path: string) => (handler: OnClosed) => Electron.IpcRenderer; registerOnUpdated: (path: string) => (handler: OnUpdate) => Electron.IpcRenderer; registerOnSet: (path: string) => (handler: OnSet) => Electron.IpcRenderer; registerOnChanged: (path: string) => (handler: OnChanged) => Electron.IpcRenderer; }; export {}; //# sourceMappingURL=serialPort.d.ts.map