FileHandle.d.ts 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import type * as opts from './types/options';
  2. import type { IFileHandle, IReadStream, IWriteStream, 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. createReadStream(options: opts.IFileHandleReadStreamOptions): IReadStream;
  14. createWriteStream(options: opts.IFileHandleWriteStreamOptions): IWriteStream;
  15. readableWebStream(options?: opts.IReadableWebStreamOptions): ReadableStream;
  16. read(buffer: Buffer | Uint8Array, offset: number, length: number, position: number): Promise<TFileHandleReadResult>;
  17. readv(buffers: ArrayBufferView[], position?: number | null | undefined): Promise<TFileHandleReadvResult>;
  18. readFile(options?: opts.IReadFileOptions | string): Promise<TDataOut>;
  19. stat(options?: opts.IFStatOptions): Promise<IStats>;
  20. sync(): Promise<void>;
  21. truncate(len?: number): Promise<void>;
  22. utimes(atime: TTime, mtime: TTime): Promise<void>;
  23. write(buffer: Buffer | Uint8Array, offset?: number, length?: number, position?: number): Promise<TFileHandleWriteResult>;
  24. writev(buffers: ArrayBufferView[], position?: number | null | undefined): Promise<TFileHandleWritevResult>;
  25. writeFile(data: TData, options?: opts.IWriteFileOptions): Promise<void>;
  26. }
  27. export interface TFileHandleReadResult {
  28. bytesRead: number;
  29. buffer: Buffer | Uint8Array;
  30. }
  31. export interface TFileHandleWriteResult {
  32. bytesWritten: number;
  33. buffer: Buffer | Uint8Array;
  34. }
  35. export interface TFileHandleReadvResult {
  36. bytesRead: number;
  37. buffers: ArrayBufferView[];
  38. }
  39. export interface TFileHandleWritevResult {
  40. bytesWritten: number;
  41. buffers: ArrayBufferView[];
  42. }