NodeFileSystemSyncAccessHandle.d.ts 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import type { FileSystemReadWriteOptions, IFileSystemSyncAccessHandle } from '../fsa/types';
  2. import type { NodeFsaContext, NodeFsaFs } from './types';
  3. /**
  4. * @see https://developer.mozilla.org/en-US/docs/Web/API/FileSystemSyncAccessHandle
  5. */
  6. export declare class NodeFileSystemSyncAccessHandle implements IFileSystemSyncAccessHandle {
  7. protected readonly fs: NodeFsaFs;
  8. protected readonly path: string;
  9. protected readonly ctx: NodeFsaContext;
  10. protected readonly fd: number;
  11. constructor(fs: NodeFsaFs, path: string, ctx: NodeFsaContext);
  12. /**
  13. * @see https://developer.mozilla.org/en-US/docs/Web/API/FileSystemSyncAccessHandle/close
  14. */
  15. close(): Promise<void>;
  16. /**
  17. * @see https://developer.mozilla.org/en-US/docs/Web/API/FileSystemSyncAccessHandle/flush
  18. */
  19. flush(): Promise<void>;
  20. /**
  21. * @see https://developer.mozilla.org/en-US/docs/Web/API/FileSystemSyncAccessHandle/getSize
  22. */
  23. getSize(): Promise<number>;
  24. /**
  25. * @see https://developer.mozilla.org/en-US/docs/Web/API/FileSystemSyncAccessHandle/read
  26. */
  27. read(buffer: ArrayBuffer | ArrayBufferView, options?: FileSystemReadWriteOptions): Promise<number>;
  28. /**
  29. * @see https://developer.mozilla.org/en-US/docs/Web/API/FileSystemSyncAccessHandle/truncate
  30. * @param newSize The number of bytes to resize the file to.
  31. */
  32. truncate(newSize: number): Promise<void>;
  33. /**
  34. * Writes the content of a specified buffer to the file associated with the
  35. * handle, optionally at a given offset.
  36. *
  37. * @see https://developer.mozilla.org/en-US/docs/Web/API/FileSystemSyncAccessHandle/write
  38. * @param buffer
  39. * @param options
  40. */
  41. write(buffer: ArrayBuffer | ArrayBufferView | DataView, options?: FileSystemReadWriteOptions): Promise<number>;
  42. }