]> git.kaiwu.me - njs.git/commitdiff
Types: fixed description for fs.mkdir() and fs.rmdir() methods.
authorDmitry Volyntsev <xeioex@nginx.com>
Mon, 7 Nov 2022 22:22:41 +0000 (14:22 -0800)
committerDmitry Volyntsev <xeioex@nginx.com>
Mon, 7 Nov 2022 22:22:41 +0000 (14:22 -0800)
This closes #600 issue on Github.

test/ts/test.ts
ts/njs_modules/fs.d.ts

index 4662f53f5b65675a7128ec617ea3846e407424e3..5848234a065df12c5190fb9e67da230cc9ae0a81 100644 (file)
@@ -131,6 +131,12 @@ async function fs_module() {
     buffer[1] += 2;
     fs.writeSync(fd, buffer, 0, 16, 4);
     fs.closeSync(fd);
+
+    fs.mkdirSync('a/b/c', {recursive: true});
+    await fs.promises.mkdir('d/e/f', {recursive: false});
+
+    fs.rmdirSync('a/b/c', {recursive: true});
+    await fs.promises.rmdir('d/e/f', {recursive: false});
 }
 
 function qs_module(str: NjsByteString) {
index 8d990a2f9814568d685fb26551ca35272e9ce5dc..72c13f42d92ca7ef23db7d1d791d9c3ec3ec1cd7 100644 (file)
@@ -288,9 +288,12 @@ declare module "fs" {
          *
          * @since 0.4.2
          * @param path A path to a file.
-         * @param options The file mode (or an object specifying the file mode). Defaults to `0o777`.
+         * @param options A number specifying file mode, defaults to `0o777`.
+         * @param options An object with the following optional keys:
+         *   - `mode` - A number specifying file mode, defaults to `0o777`.
+         *   - `recursive` -  If true, perform a recursive directory creation, defaults to `false`.
          */
-        mkdir(path: PathLike, options?: { mode?: number } | number): Promise<void>;
+        mkdir(path: PathLike, options?: { mode?: number; recursive?: boolean; } | number): Promise<void>;
 
         /**
          * Asynchronously reads the contents of a directory at the specified `path`.
@@ -344,8 +347,10 @@ declare module "fs" {
          *
          * @since 0.4.2
          * @param path A path to a file.
+         * @param options An object with the following optional keys:
+         *   - `recursive` -  If true, perform a recursive directory removal, defaults to `false`.
          */
-        rmdir(path: PathLike): Promise<void>;
+        rmdir(path: PathLike, options?: { recursive?: boolean; }): Promise<void>;
 
         /**
          * Asynchronously retrieves `fs.Stats` object for the specified `path`.
@@ -537,9 +542,12 @@ declare module "fs" {
          *
          * @since 0.4.2
          * @param path A path to a file.
-         * @param options The file mode (or an object specifying the file mode). Defaults to `0o777`.
+         * @param options A number specifying file mode. defaults to `0o777`.
+         * @param options An object with the following optional keys:
+         *   - `mode` - A number specifying file mode, defaults to `0o777`.
+         *   - `recursive` -  If true, perform a recursive directory creation, defaults to `false`.
          */
-        mkdirSync(path: PathLike, options?: { mode?: number } | number): void;
+        mkdirSync(path: PathLike, options?: { mode?: number; recursive?: boolean; } | number): void;
 
         /**
          * Synchronously opens a file specified in the `path`.
@@ -635,8 +643,10 @@ declare module "fs" {
          *
          * @since 0.4.2
          * @param path A path to a file.
+         * @param options An object with the following optional keys:
+         *   - `recursive` -  If true, perform a recursive directory removal, defaults to `false`.
          */
-        rmdirSync(path: PathLike): void;
+        rmdirSync(path: PathLike, options?: { recursive?: boolean; }): void;
 
         /**
          * Synchronously retrieves `fs.Stats` object for the specified path.