FileHandle.d.ts 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import type * as opts from './types/options';
  2. import type { IFileHandle, IStats, TData, TDataOut, TMode, TTime } from './types/misc';
  3. import type { FsCallbackApi } from './types';
  4. export declare class FileHandle implements IFileHandle {
  5. private fs;
  6. fd: number;
  7. constructor(fs: FsCallbackApi, fd: number);
  8. appendFile(data: TData, options?: opts.IAppendFileOptions | string): Promise<void>;
  9. chmod(mode: TMode): Promise<void>;
  10. chown(uid: number, gid: number): Promise<void>;
  11. close(): Promise<void>;
  12. datasync(): Promise<void>;
  13. readableWebStream(options?: opts.IReadableWebStreamOptions): ReadableStream;
  14. read(buffer: Buffer | Uint8Array, offset: number, length: number, position: number): Promise<TFileHandleReadResult>;
  15. readv(buffers: ArrayBufferView[], position?: number | null | undefined): Promise<TFileHandleReadvResult>;
  16. readFile(options?: opts.IReadFileOptions | string): Promise<TDataOut>;
  17. stat(options?: opts.IFStatOptions): Promise<IStats>;
  18. sync(): Promise<void>;
  19. truncate(len?: number): Promise<void>;
  20. utimes(atime: TTime, mtime: TTime): Promise<void>;
  21. write(buffer: Buffer | Uint8Array, offset?: number, length?: number, position?: number): Promise<TFileHandleWriteResult>;
  22. writev(buffers: ArrayBufferView[], position?: number | null | undefined): Promise<TFileHandleWritevResult>;
  23. writeFile(data: TData, options?: opts.IWriteFileOptions): Promise<void>;
  24. }
  25. export interface TFileHandleReadResult {
  26. bytesRead: number;
  27. buffer: Buffer | Uint8Array;
  28. }
  29. export interface TFileHandleWriteResult {
  30. bytesWritten: number;
  31. buffer: Buffer | Uint8Array;
  32. }
  33. export interface TFileHandleReadvResult {
  34. bytesRead: number;
  35. buffers: ArrayBufferView[];
  36. }
  37. export interface TFileHandleWritevResult {
  38. bytesWritten: number;
  39. buffers: ArrayBufferView[];
  40. }