win32.d.ts 1.3 KB

12345678910111213141516171819202122232425262728293031323334
  1. import { BindingPortInterface } from '.';
  2. import { BindingInterface, OpenOptions, PortStatus, SetOptions, UpdateOptions } from '@serialport/bindings-interface';
  3. export interface WindowsOpenOptions extends OpenOptions {
  4. /** Device parity defaults to none */
  5. parity?: 'none' | 'even' | 'odd' | 'mark' | 'space';
  6. /** RTS mode defaults to handshake */
  7. rtsMode?: 'handshake' | 'enable' | 'toggle';
  8. }
  9. export type WindowsBindingInterface = BindingInterface<WindowsPortBinding, WindowsOpenOptions>;
  10. export declare const WindowsBinding: WindowsBindingInterface;
  11. /**
  12. * The Windows binding layer
  13. */
  14. export declare class WindowsPortBinding implements BindingPortInterface {
  15. fd: null | number;
  16. writeOperation: Promise<void> | null;
  17. openOptions: Required<OpenOptions>;
  18. constructor(fd: number, options: Required<OpenOptions>);
  19. get isOpen(): boolean;
  20. close(): Promise<void>;
  21. read(buffer: Buffer, offset: number, length: number): Promise<{
  22. buffer: Buffer;
  23. bytesRead: number;
  24. }>;
  25. write(buffer: Buffer): Promise<void>;
  26. update(options: UpdateOptions): Promise<void>;
  27. set(options: SetOptions): Promise<void>;
  28. get(): Promise<PortStatus>;
  29. getBaudRate(): Promise<{
  30. baudRate: number;
  31. }>;
  32. flush(): Promise<void>;
  33. drain(): Promise<void>;
  34. }