FileHandle.d.ts 2.3 KB

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