github.com/primecitizens/pcz/std@v0.2.1/plat/js/webext/filesystemprovider/bindings/ffi_bindings.ts (about)

     1  import { importModule, Application, heap, Pointer } from "@ffi";
     2  
     3  importModule("plat/js/webext/filesystemprovider", (A: Application) => {
     4    const WEBEXT = typeof globalThis.browser === "undefined" ? globalThis.chrome : globalThis.browser;
     5  
     6    return {
     7      "store_AbortRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
     8        const x = A.H.get<any>(ref);
     9  
    10        if (typeof x === "undefined") {
    11          A.store.Bool(ptr + 14, false);
    12          A.store.Ref(ptr + 0, undefined);
    13          A.store.Bool(ptr + 12, false);
    14          A.store.Int32(ptr + 4, 0);
    15          A.store.Bool(ptr + 13, false);
    16          A.store.Int32(ptr + 8, 0);
    17        } else {
    18          A.store.Bool(ptr + 14, true);
    19          A.store.Ref(ptr + 0, x["fileSystemId"]);
    20          A.store.Bool(ptr + 12, "requestId" in x ? true : false);
    21          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
    22          A.store.Bool(ptr + 13, "operationRequestId" in x ? true : false);
    23          A.store.Int32(ptr + 8, x["operationRequestId"] === undefined ? 0 : (x["operationRequestId"] as number));
    24        }
    25      },
    26      "load_AbortRequestedOptions": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
    27        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
    28  
    29        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
    30        if (A.load.Bool(ptr + 12)) {
    31          x["requestId"] = A.load.Int32(ptr + 4);
    32        } else {
    33          delete x["requestId"];
    34        }
    35        if (A.load.Bool(ptr + 13)) {
    36          x["operationRequestId"] = A.load.Int32(ptr + 8);
    37        } else {
    38          delete x["operationRequestId"];
    39        }
    40        return create === A.H.TRUE ? A.H.push(x) : ref;
    41      },
    42  
    43      "store_Action": (ptr: Pointer, ref: heap.Ref<any>) => {
    44        const x = A.H.get<any>(ref);
    45  
    46        if (typeof x === "undefined") {
    47          A.store.Bool(ptr + 8, false);
    48          A.store.Ref(ptr + 0, undefined);
    49          A.store.Ref(ptr + 4, undefined);
    50        } else {
    51          A.store.Bool(ptr + 8, true);
    52          A.store.Ref(ptr + 0, x["id"]);
    53          A.store.Ref(ptr + 4, x["title"]);
    54        }
    55      },
    56      "load_Action": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
    57        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
    58  
    59        x["id"] = A.load.Ref(ptr + 0, undefined);
    60        x["title"] = A.load.Ref(ptr + 4, undefined);
    61        return create === A.H.TRUE ? A.H.push(x) : ref;
    62      },
    63  
    64      "store_AddWatcherRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
    65        const x = A.H.get<any>(ref);
    66  
    67        if (typeof x === "undefined") {
    68          A.store.Bool(ptr + 15, false);
    69          A.store.Ref(ptr + 0, undefined);
    70          A.store.Bool(ptr + 13, false);
    71          A.store.Int32(ptr + 4, 0);
    72          A.store.Ref(ptr + 8, undefined);
    73          A.store.Bool(ptr + 14, false);
    74          A.store.Bool(ptr + 12, false);
    75        } else {
    76          A.store.Bool(ptr + 15, true);
    77          A.store.Ref(ptr + 0, x["fileSystemId"]);
    78          A.store.Bool(ptr + 13, "requestId" in x ? true : false);
    79          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
    80          A.store.Ref(ptr + 8, x["entryPath"]);
    81          A.store.Bool(ptr + 14, "recursive" in x ? true : false);
    82          A.store.Bool(ptr + 12, x["recursive"] ? true : false);
    83        }
    84      },
    85      "load_AddWatcherRequestedOptions": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
    86        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
    87  
    88        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
    89        if (A.load.Bool(ptr + 13)) {
    90          x["requestId"] = A.load.Int32(ptr + 4);
    91        } else {
    92          delete x["requestId"];
    93        }
    94        x["entryPath"] = A.load.Ref(ptr + 8, undefined);
    95        if (A.load.Bool(ptr + 14)) {
    96          x["recursive"] = A.load.Bool(ptr + 12);
    97        } else {
    98          delete x["recursive"];
    99        }
   100        return create === A.H.TRUE ? A.H.push(x) : ref;
   101      },
   102      "constof_ChangeType": (ref: heap.Ref<string>): number => {
   103        const idx = ["CHANGED", "DELETED"].indexOf(A.H.get(ref));
   104        return idx < 0 ? 0 : idx + 1;
   105      },
   106  
   107      "store_Change": (ptr: Pointer, ref: heap.Ref<any>) => {
   108        const x = A.H.get<any>(ref);
   109  
   110        if (typeof x === "undefined") {
   111          A.store.Bool(ptr + 8, false);
   112          A.store.Ref(ptr + 0, undefined);
   113          A.store.Enum(ptr + 4, -1);
   114        } else {
   115          A.store.Bool(ptr + 8, true);
   116          A.store.Ref(ptr + 0, x["entryPath"]);
   117          A.store.Enum(ptr + 4, ["CHANGED", "DELETED"].indexOf(x["changeType"] as string));
   118        }
   119      },
   120      "load_Change": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
   121        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   122  
   123        x["entryPath"] = A.load.Ref(ptr + 0, undefined);
   124        x["changeType"] = A.load.Enum(ptr + 4, ["CHANGED", "DELETED"]);
   125        return create === A.H.TRUE ? A.H.push(x) : ref;
   126      },
   127  
   128      "store_CloseFileRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
   129        const x = A.H.get<any>(ref);
   130  
   131        if (typeof x === "undefined") {
   132          A.store.Bool(ptr + 14, false);
   133          A.store.Ref(ptr + 0, undefined);
   134          A.store.Bool(ptr + 12, false);
   135          A.store.Int32(ptr + 4, 0);
   136          A.store.Bool(ptr + 13, false);
   137          A.store.Int32(ptr + 8, 0);
   138        } else {
   139          A.store.Bool(ptr + 14, true);
   140          A.store.Ref(ptr + 0, x["fileSystemId"]);
   141          A.store.Bool(ptr + 12, "requestId" in x ? true : false);
   142          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
   143          A.store.Bool(ptr + 13, "openRequestId" in x ? true : false);
   144          A.store.Int32(ptr + 8, x["openRequestId"] === undefined ? 0 : (x["openRequestId"] as number));
   145        }
   146      },
   147      "load_CloseFileRequestedOptions": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
   148        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   149  
   150        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
   151        if (A.load.Bool(ptr + 12)) {
   152          x["requestId"] = A.load.Int32(ptr + 4);
   153        } else {
   154          delete x["requestId"];
   155        }
   156        if (A.load.Bool(ptr + 13)) {
   157          x["openRequestId"] = A.load.Int32(ptr + 8);
   158        } else {
   159          delete x["openRequestId"];
   160        }
   161        return create === A.H.TRUE ? A.H.push(x) : ref;
   162      },
   163  
   164      "store_CloudIdentifier": (ptr: Pointer, ref: heap.Ref<any>) => {
   165        const x = A.H.get<any>(ref);
   166  
   167        if (typeof x === "undefined") {
   168          A.store.Bool(ptr + 8, false);
   169          A.store.Ref(ptr + 0, undefined);
   170          A.store.Ref(ptr + 4, undefined);
   171        } else {
   172          A.store.Bool(ptr + 8, true);
   173          A.store.Ref(ptr + 0, x["providerName"]);
   174          A.store.Ref(ptr + 4, x["id"]);
   175        }
   176      },
   177      "load_CloudIdentifier": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
   178        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   179  
   180        x["providerName"] = A.load.Ref(ptr + 0, undefined);
   181        x["id"] = A.load.Ref(ptr + 4, undefined);
   182        return create === A.H.TRUE ? A.H.push(x) : ref;
   183      },
   184      "constof_CommonActionId": (ref: heap.Ref<string>): number => {
   185        const idx = ["SAVE_FOR_OFFLINE", "OFFLINE_NOT_NECESSARY", "SHARE"].indexOf(A.H.get(ref));
   186        return idx < 0 ? 0 : idx + 1;
   187      },
   188  
   189      "store_ConfigureRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
   190        const x = A.H.get<any>(ref);
   191  
   192        if (typeof x === "undefined") {
   193          A.store.Bool(ptr + 9, false);
   194          A.store.Ref(ptr + 0, undefined);
   195          A.store.Bool(ptr + 8, false);
   196          A.store.Int32(ptr + 4, 0);
   197        } else {
   198          A.store.Bool(ptr + 9, true);
   199          A.store.Ref(ptr + 0, x["fileSystemId"]);
   200          A.store.Bool(ptr + 8, "requestId" in x ? true : false);
   201          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
   202        }
   203      },
   204      "load_ConfigureRequestedOptions": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
   205        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   206  
   207        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
   208        if (A.load.Bool(ptr + 8)) {
   209          x["requestId"] = A.load.Int32(ptr + 4);
   210        } else {
   211          delete x["requestId"];
   212        }
   213        return create === A.H.TRUE ? A.H.push(x) : ref;
   214      },
   215  
   216      "store_CopyEntryRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
   217        const x = A.H.get<any>(ref);
   218  
   219        if (typeof x === "undefined") {
   220          A.store.Bool(ptr + 17, false);
   221          A.store.Ref(ptr + 0, undefined);
   222          A.store.Bool(ptr + 16, false);
   223          A.store.Int32(ptr + 4, 0);
   224          A.store.Ref(ptr + 8, undefined);
   225          A.store.Ref(ptr + 12, undefined);
   226        } else {
   227          A.store.Bool(ptr + 17, true);
   228          A.store.Ref(ptr + 0, x["fileSystemId"]);
   229          A.store.Bool(ptr + 16, "requestId" in x ? true : false);
   230          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
   231          A.store.Ref(ptr + 8, x["sourcePath"]);
   232          A.store.Ref(ptr + 12, x["targetPath"]);
   233        }
   234      },
   235      "load_CopyEntryRequestedOptions": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
   236        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   237  
   238        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
   239        if (A.load.Bool(ptr + 16)) {
   240          x["requestId"] = A.load.Int32(ptr + 4);
   241        } else {
   242          delete x["requestId"];
   243        }
   244        x["sourcePath"] = A.load.Ref(ptr + 8, undefined);
   245        x["targetPath"] = A.load.Ref(ptr + 12, undefined);
   246        return create === A.H.TRUE ? A.H.push(x) : ref;
   247      },
   248  
   249      "store_CreateDirectoryRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
   250        const x = A.H.get<any>(ref);
   251  
   252        if (typeof x === "undefined") {
   253          A.store.Bool(ptr + 15, false);
   254          A.store.Ref(ptr + 0, undefined);
   255          A.store.Bool(ptr + 13, false);
   256          A.store.Int32(ptr + 4, 0);
   257          A.store.Ref(ptr + 8, undefined);
   258          A.store.Bool(ptr + 14, false);
   259          A.store.Bool(ptr + 12, false);
   260        } else {
   261          A.store.Bool(ptr + 15, true);
   262          A.store.Ref(ptr + 0, x["fileSystemId"]);
   263          A.store.Bool(ptr + 13, "requestId" in x ? true : false);
   264          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
   265          A.store.Ref(ptr + 8, x["directoryPath"]);
   266          A.store.Bool(ptr + 14, "recursive" in x ? true : false);
   267          A.store.Bool(ptr + 12, x["recursive"] ? true : false);
   268        }
   269      },
   270      "load_CreateDirectoryRequestedOptions": (
   271        ptr: Pointer,
   272        create: heap.Ref<boolean>,
   273        ref: heap.Ref<any>
   274      ): heap.Ref<any> => {
   275        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   276  
   277        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
   278        if (A.load.Bool(ptr + 13)) {
   279          x["requestId"] = A.load.Int32(ptr + 4);
   280        } else {
   281          delete x["requestId"];
   282        }
   283        x["directoryPath"] = A.load.Ref(ptr + 8, undefined);
   284        if (A.load.Bool(ptr + 14)) {
   285          x["recursive"] = A.load.Bool(ptr + 12);
   286        } else {
   287          delete x["recursive"];
   288        }
   289        return create === A.H.TRUE ? A.H.push(x) : ref;
   290      },
   291  
   292      "store_CreateFileRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
   293        const x = A.H.get<any>(ref);
   294  
   295        if (typeof x === "undefined") {
   296          A.store.Bool(ptr + 13, false);
   297          A.store.Ref(ptr + 0, undefined);
   298          A.store.Bool(ptr + 12, false);
   299          A.store.Int32(ptr + 4, 0);
   300          A.store.Ref(ptr + 8, undefined);
   301        } else {
   302          A.store.Bool(ptr + 13, true);
   303          A.store.Ref(ptr + 0, x["fileSystemId"]);
   304          A.store.Bool(ptr + 12, "requestId" in x ? true : false);
   305          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
   306          A.store.Ref(ptr + 8, x["filePath"]);
   307        }
   308      },
   309      "load_CreateFileRequestedOptions": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
   310        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   311  
   312        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
   313        if (A.load.Bool(ptr + 12)) {
   314          x["requestId"] = A.load.Int32(ptr + 4);
   315        } else {
   316          delete x["requestId"];
   317        }
   318        x["filePath"] = A.load.Ref(ptr + 8, undefined);
   319        return create === A.H.TRUE ? A.H.push(x) : ref;
   320      },
   321  
   322      "store_DeleteEntryRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
   323        const x = A.H.get<any>(ref);
   324  
   325        if (typeof x === "undefined") {
   326          A.store.Bool(ptr + 15, false);
   327          A.store.Ref(ptr + 0, undefined);
   328          A.store.Bool(ptr + 13, false);
   329          A.store.Int32(ptr + 4, 0);
   330          A.store.Ref(ptr + 8, undefined);
   331          A.store.Bool(ptr + 14, false);
   332          A.store.Bool(ptr + 12, false);
   333        } else {
   334          A.store.Bool(ptr + 15, true);
   335          A.store.Ref(ptr + 0, x["fileSystemId"]);
   336          A.store.Bool(ptr + 13, "requestId" in x ? true : false);
   337          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
   338          A.store.Ref(ptr + 8, x["entryPath"]);
   339          A.store.Bool(ptr + 14, "recursive" in x ? true : false);
   340          A.store.Bool(ptr + 12, x["recursive"] ? true : false);
   341        }
   342      },
   343      "load_DeleteEntryRequestedOptions": (
   344        ptr: Pointer,
   345        create: heap.Ref<boolean>,
   346        ref: heap.Ref<any>
   347      ): heap.Ref<any> => {
   348        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   349  
   350        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
   351        if (A.load.Bool(ptr + 13)) {
   352          x["requestId"] = A.load.Int32(ptr + 4);
   353        } else {
   354          delete x["requestId"];
   355        }
   356        x["entryPath"] = A.load.Ref(ptr + 8, undefined);
   357        if (A.load.Bool(ptr + 14)) {
   358          x["recursive"] = A.load.Bool(ptr + 12);
   359        } else {
   360          delete x["recursive"];
   361        }
   362        return create === A.H.TRUE ? A.H.push(x) : ref;
   363      },
   364  
   365      "store_EntryMetadata": (ptr: Pointer, ref: heap.Ref<any>) => {
   366        const x = A.H.get<any>(ref);
   367  
   368        if (typeof x === "undefined") {
   369          A.store.Bool(ptr + 39, false);
   370          A.store.Bool(ptr + 37, false);
   371          A.store.Bool(ptr + 0, false);
   372          A.store.Ref(ptr + 4, undefined);
   373          A.store.Bool(ptr + 38, false);
   374          A.store.Float64(ptr + 8, 0);
   375          A.store.Ref(ptr + 16, undefined);
   376          A.store.Ref(ptr + 20, undefined);
   377          A.store.Ref(ptr + 24, undefined);
   378  
   379          A.store.Bool(ptr + 28 + 8, false);
   380          A.store.Ref(ptr + 28 + 0, undefined);
   381          A.store.Ref(ptr + 28 + 4, undefined);
   382        } else {
   383          A.store.Bool(ptr + 39, true);
   384          A.store.Bool(ptr + 37, "isDirectory" in x ? true : false);
   385          A.store.Bool(ptr + 0, x["isDirectory"] ? true : false);
   386          A.store.Ref(ptr + 4, x["name"]);
   387          A.store.Bool(ptr + 38, "size" in x ? true : false);
   388          A.store.Float64(ptr + 8, x["size"] === undefined ? 0 : (x["size"] as number));
   389          A.store.Ref(ptr + 16, x["modificationTime"]);
   390          A.store.Ref(ptr + 20, x["mimeType"]);
   391          A.store.Ref(ptr + 24, x["thumbnail"]);
   392  
   393          if (typeof x["cloudIdentifier"] === "undefined") {
   394            A.store.Bool(ptr + 28 + 8, false);
   395            A.store.Ref(ptr + 28 + 0, undefined);
   396            A.store.Ref(ptr + 28 + 4, undefined);
   397          } else {
   398            A.store.Bool(ptr + 28 + 8, true);
   399            A.store.Ref(ptr + 28 + 0, x["cloudIdentifier"]["providerName"]);
   400            A.store.Ref(ptr + 28 + 4, x["cloudIdentifier"]["id"]);
   401          }
   402        }
   403      },
   404      "load_EntryMetadata": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
   405        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   406  
   407        if (A.load.Bool(ptr + 37)) {
   408          x["isDirectory"] = A.load.Bool(ptr + 0);
   409        } else {
   410          delete x["isDirectory"];
   411        }
   412        x["name"] = A.load.Ref(ptr + 4, undefined);
   413        if (A.load.Bool(ptr + 38)) {
   414          x["size"] = A.load.Float64(ptr + 8);
   415        } else {
   416          delete x["size"];
   417        }
   418        x["modificationTime"] = A.load.Ref(ptr + 16, undefined);
   419        x["mimeType"] = A.load.Ref(ptr + 20, undefined);
   420        x["thumbnail"] = A.load.Ref(ptr + 24, undefined);
   421        if (A.load.Bool(ptr + 28 + 8)) {
   422          x["cloudIdentifier"] = {};
   423          x["cloudIdentifier"]["providerName"] = A.load.Ref(ptr + 28 + 0, undefined);
   424          x["cloudIdentifier"]["id"] = A.load.Ref(ptr + 28 + 4, undefined);
   425        } else {
   426          delete x["cloudIdentifier"];
   427        }
   428        return create === A.H.TRUE ? A.H.push(x) : ref;
   429      },
   430  
   431      "store_ExecuteActionRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
   432        const x = A.H.get<any>(ref);
   433  
   434        if (typeof x === "undefined") {
   435          A.store.Bool(ptr + 17, false);
   436          A.store.Ref(ptr + 0, undefined);
   437          A.store.Bool(ptr + 16, false);
   438          A.store.Int32(ptr + 4, 0);
   439          A.store.Ref(ptr + 8, undefined);
   440          A.store.Ref(ptr + 12, undefined);
   441        } else {
   442          A.store.Bool(ptr + 17, true);
   443          A.store.Ref(ptr + 0, x["fileSystemId"]);
   444          A.store.Bool(ptr + 16, "requestId" in x ? true : false);
   445          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
   446          A.store.Ref(ptr + 8, x["entryPaths"]);
   447          A.store.Ref(ptr + 12, x["actionId"]);
   448        }
   449      },
   450      "load_ExecuteActionRequestedOptions": (
   451        ptr: Pointer,
   452        create: heap.Ref<boolean>,
   453        ref: heap.Ref<any>
   454      ): heap.Ref<any> => {
   455        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   456  
   457        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
   458        if (A.load.Bool(ptr + 16)) {
   459          x["requestId"] = A.load.Int32(ptr + 4);
   460        } else {
   461          delete x["requestId"];
   462        }
   463        x["entryPaths"] = A.load.Ref(ptr + 8, undefined);
   464        x["actionId"] = A.load.Ref(ptr + 12, undefined);
   465        return create === A.H.TRUE ? A.H.push(x) : ref;
   466      },
   467      "constof_OpenFileMode": (ref: heap.Ref<string>): number => {
   468        const idx = ["READ", "WRITE"].indexOf(A.H.get(ref));
   469        return idx < 0 ? 0 : idx + 1;
   470      },
   471  
   472      "store_OpenedFile": (ptr: Pointer, ref: heap.Ref<any>) => {
   473        const x = A.H.get<any>(ref);
   474  
   475        if (typeof x === "undefined") {
   476          A.store.Bool(ptr + 13, false);
   477          A.store.Bool(ptr + 12, false);
   478          A.store.Int32(ptr + 0, 0);
   479          A.store.Ref(ptr + 4, undefined);
   480          A.store.Enum(ptr + 8, -1);
   481        } else {
   482          A.store.Bool(ptr + 13, true);
   483          A.store.Bool(ptr + 12, "openRequestId" in x ? true : false);
   484          A.store.Int32(ptr + 0, x["openRequestId"] === undefined ? 0 : (x["openRequestId"] as number));
   485          A.store.Ref(ptr + 4, x["filePath"]);
   486          A.store.Enum(ptr + 8, ["READ", "WRITE"].indexOf(x["mode"] as string));
   487        }
   488      },
   489      "load_OpenedFile": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
   490        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   491  
   492        if (A.load.Bool(ptr + 12)) {
   493          x["openRequestId"] = A.load.Int32(ptr + 0);
   494        } else {
   495          delete x["openRequestId"];
   496        }
   497        x["filePath"] = A.load.Ref(ptr + 4, undefined);
   498        x["mode"] = A.load.Enum(ptr + 8, ["READ", "WRITE"]);
   499        return create === A.H.TRUE ? A.H.push(x) : ref;
   500      },
   501  
   502      "store_Watcher": (ptr: Pointer, ref: heap.Ref<any>) => {
   503        const x = A.H.get<any>(ref);
   504  
   505        if (typeof x === "undefined") {
   506          A.store.Bool(ptr + 13, false);
   507          A.store.Ref(ptr + 0, undefined);
   508          A.store.Bool(ptr + 12, false);
   509          A.store.Bool(ptr + 4, false);
   510          A.store.Ref(ptr + 8, undefined);
   511        } else {
   512          A.store.Bool(ptr + 13, true);
   513          A.store.Ref(ptr + 0, x["entryPath"]);
   514          A.store.Bool(ptr + 12, "recursive" in x ? true : false);
   515          A.store.Bool(ptr + 4, x["recursive"] ? true : false);
   516          A.store.Ref(ptr + 8, x["lastTag"]);
   517        }
   518      },
   519      "load_Watcher": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
   520        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   521  
   522        x["entryPath"] = A.load.Ref(ptr + 0, undefined);
   523        if (A.load.Bool(ptr + 12)) {
   524          x["recursive"] = A.load.Bool(ptr + 4);
   525        } else {
   526          delete x["recursive"];
   527        }
   528        x["lastTag"] = A.load.Ref(ptr + 8, undefined);
   529        return create === A.H.TRUE ? A.H.push(x) : ref;
   530      },
   531  
   532      "store_FileSystemInfo": (ptr: Pointer, ref: heap.Ref<any>) => {
   533        const x = A.H.get<any>(ref);
   534  
   535        if (typeof x === "undefined") {
   536          A.store.Bool(ptr + 31, false);
   537          A.store.Ref(ptr + 0, undefined);
   538          A.store.Ref(ptr + 4, undefined);
   539          A.store.Bool(ptr + 28, false);
   540          A.store.Bool(ptr + 8, false);
   541          A.store.Bool(ptr + 29, false);
   542          A.store.Int32(ptr + 12, 0);
   543          A.store.Ref(ptr + 16, undefined);
   544          A.store.Bool(ptr + 30, false);
   545          A.store.Bool(ptr + 20, false);
   546          A.store.Ref(ptr + 24, undefined);
   547        } else {
   548          A.store.Bool(ptr + 31, true);
   549          A.store.Ref(ptr + 0, x["fileSystemId"]);
   550          A.store.Ref(ptr + 4, x["displayName"]);
   551          A.store.Bool(ptr + 28, "writable" in x ? true : false);
   552          A.store.Bool(ptr + 8, x["writable"] ? true : false);
   553          A.store.Bool(ptr + 29, "openedFilesLimit" in x ? true : false);
   554          A.store.Int32(ptr + 12, x["openedFilesLimit"] === undefined ? 0 : (x["openedFilesLimit"] as number));
   555          A.store.Ref(ptr + 16, x["openedFiles"]);
   556          A.store.Bool(ptr + 30, "supportsNotifyTag" in x ? true : false);
   557          A.store.Bool(ptr + 20, x["supportsNotifyTag"] ? true : false);
   558          A.store.Ref(ptr + 24, x["watchers"]);
   559        }
   560      },
   561      "load_FileSystemInfo": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
   562        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   563  
   564        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
   565        x["displayName"] = A.load.Ref(ptr + 4, undefined);
   566        if (A.load.Bool(ptr + 28)) {
   567          x["writable"] = A.load.Bool(ptr + 8);
   568        } else {
   569          delete x["writable"];
   570        }
   571        if (A.load.Bool(ptr + 29)) {
   572          x["openedFilesLimit"] = A.load.Int32(ptr + 12);
   573        } else {
   574          delete x["openedFilesLimit"];
   575        }
   576        x["openedFiles"] = A.load.Ref(ptr + 16, undefined);
   577        if (A.load.Bool(ptr + 30)) {
   578          x["supportsNotifyTag"] = A.load.Bool(ptr + 20);
   579        } else {
   580          delete x["supportsNotifyTag"];
   581        }
   582        x["watchers"] = A.load.Ref(ptr + 24, undefined);
   583        return create === A.H.TRUE ? A.H.push(x) : ref;
   584      },
   585  
   586      "store_GetActionsRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
   587        const x = A.H.get<any>(ref);
   588  
   589        if (typeof x === "undefined") {
   590          A.store.Bool(ptr + 13, false);
   591          A.store.Ref(ptr + 0, undefined);
   592          A.store.Bool(ptr + 12, false);
   593          A.store.Int32(ptr + 4, 0);
   594          A.store.Ref(ptr + 8, undefined);
   595        } else {
   596          A.store.Bool(ptr + 13, true);
   597          A.store.Ref(ptr + 0, x["fileSystemId"]);
   598          A.store.Bool(ptr + 12, "requestId" in x ? true : false);
   599          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
   600          A.store.Ref(ptr + 8, x["entryPaths"]);
   601        }
   602      },
   603      "load_GetActionsRequestedOptions": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
   604        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   605  
   606        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
   607        if (A.load.Bool(ptr + 12)) {
   608          x["requestId"] = A.load.Int32(ptr + 4);
   609        } else {
   610          delete x["requestId"];
   611        }
   612        x["entryPaths"] = A.load.Ref(ptr + 8, undefined);
   613        return create === A.H.TRUE ? A.H.push(x) : ref;
   614      },
   615  
   616      "store_GetMetadataRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
   617        const x = A.H.get<any>(ref);
   618  
   619        if (typeof x === "undefined") {
   620          A.store.Bool(ptr + 27, false);
   621          A.store.Ref(ptr + 0, undefined);
   622          A.store.Bool(ptr + 19, false);
   623          A.store.Int32(ptr + 4, 0);
   624          A.store.Ref(ptr + 8, undefined);
   625          A.store.Bool(ptr + 20, false);
   626          A.store.Bool(ptr + 12, false);
   627          A.store.Bool(ptr + 21, false);
   628          A.store.Bool(ptr + 13, false);
   629          A.store.Bool(ptr + 22, false);
   630          A.store.Bool(ptr + 14, false);
   631          A.store.Bool(ptr + 23, false);
   632          A.store.Bool(ptr + 15, false);
   633          A.store.Bool(ptr + 24, false);
   634          A.store.Bool(ptr + 16, false);
   635          A.store.Bool(ptr + 25, false);
   636          A.store.Bool(ptr + 17, false);
   637          A.store.Bool(ptr + 26, false);
   638          A.store.Bool(ptr + 18, false);
   639        } else {
   640          A.store.Bool(ptr + 27, true);
   641          A.store.Ref(ptr + 0, x["fileSystemId"]);
   642          A.store.Bool(ptr + 19, "requestId" in x ? true : false);
   643          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
   644          A.store.Ref(ptr + 8, x["entryPath"]);
   645          A.store.Bool(ptr + 20, "isDirectory" in x ? true : false);
   646          A.store.Bool(ptr + 12, x["isDirectory"] ? true : false);
   647          A.store.Bool(ptr + 21, "name" in x ? true : false);
   648          A.store.Bool(ptr + 13, x["name"] ? true : false);
   649          A.store.Bool(ptr + 22, "size" in x ? true : false);
   650          A.store.Bool(ptr + 14, x["size"] ? true : false);
   651          A.store.Bool(ptr + 23, "modificationTime" in x ? true : false);
   652          A.store.Bool(ptr + 15, x["modificationTime"] ? true : false);
   653          A.store.Bool(ptr + 24, "mimeType" in x ? true : false);
   654          A.store.Bool(ptr + 16, x["mimeType"] ? true : false);
   655          A.store.Bool(ptr + 25, "thumbnail" in x ? true : false);
   656          A.store.Bool(ptr + 17, x["thumbnail"] ? true : false);
   657          A.store.Bool(ptr + 26, "cloudIdentifier" in x ? true : false);
   658          A.store.Bool(ptr + 18, x["cloudIdentifier"] ? true : false);
   659        }
   660      },
   661      "load_GetMetadataRequestedOptions": (
   662        ptr: Pointer,
   663        create: heap.Ref<boolean>,
   664        ref: heap.Ref<any>
   665      ): heap.Ref<any> => {
   666        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   667  
   668        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
   669        if (A.load.Bool(ptr + 19)) {
   670          x["requestId"] = A.load.Int32(ptr + 4);
   671        } else {
   672          delete x["requestId"];
   673        }
   674        x["entryPath"] = A.load.Ref(ptr + 8, undefined);
   675        if (A.load.Bool(ptr + 20)) {
   676          x["isDirectory"] = A.load.Bool(ptr + 12);
   677        } else {
   678          delete x["isDirectory"];
   679        }
   680        if (A.load.Bool(ptr + 21)) {
   681          x["name"] = A.load.Bool(ptr + 13);
   682        } else {
   683          delete x["name"];
   684        }
   685        if (A.load.Bool(ptr + 22)) {
   686          x["size"] = A.load.Bool(ptr + 14);
   687        } else {
   688          delete x["size"];
   689        }
   690        if (A.load.Bool(ptr + 23)) {
   691          x["modificationTime"] = A.load.Bool(ptr + 15);
   692        } else {
   693          delete x["modificationTime"];
   694        }
   695        if (A.load.Bool(ptr + 24)) {
   696          x["mimeType"] = A.load.Bool(ptr + 16);
   697        } else {
   698          delete x["mimeType"];
   699        }
   700        if (A.load.Bool(ptr + 25)) {
   701          x["thumbnail"] = A.load.Bool(ptr + 17);
   702        } else {
   703          delete x["thumbnail"];
   704        }
   705        if (A.load.Bool(ptr + 26)) {
   706          x["cloudIdentifier"] = A.load.Bool(ptr + 18);
   707        } else {
   708          delete x["cloudIdentifier"];
   709        }
   710        return create === A.H.TRUE ? A.H.push(x) : ref;
   711      },
   712  
   713      "store_MountOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
   714        const x = A.H.get<any>(ref);
   715  
   716        if (typeof x === "undefined") {
   717          A.store.Bool(ptr + 22, false);
   718          A.store.Ref(ptr + 0, undefined);
   719          A.store.Ref(ptr + 4, undefined);
   720          A.store.Bool(ptr + 18, false);
   721          A.store.Bool(ptr + 8, false);
   722          A.store.Bool(ptr + 19, false);
   723          A.store.Int32(ptr + 12, 0);
   724          A.store.Bool(ptr + 20, false);
   725          A.store.Bool(ptr + 16, false);
   726          A.store.Bool(ptr + 21, false);
   727          A.store.Bool(ptr + 17, false);
   728        } else {
   729          A.store.Bool(ptr + 22, true);
   730          A.store.Ref(ptr + 0, x["fileSystemId"]);
   731          A.store.Ref(ptr + 4, x["displayName"]);
   732          A.store.Bool(ptr + 18, "writable" in x ? true : false);
   733          A.store.Bool(ptr + 8, x["writable"] ? true : false);
   734          A.store.Bool(ptr + 19, "openedFilesLimit" in x ? true : false);
   735          A.store.Int32(ptr + 12, x["openedFilesLimit"] === undefined ? 0 : (x["openedFilesLimit"] as number));
   736          A.store.Bool(ptr + 20, "supportsNotifyTag" in x ? true : false);
   737          A.store.Bool(ptr + 16, x["supportsNotifyTag"] ? true : false);
   738          A.store.Bool(ptr + 21, "persistent" in x ? true : false);
   739          A.store.Bool(ptr + 17, x["persistent"] ? true : false);
   740        }
   741      },
   742      "load_MountOptions": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
   743        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   744  
   745        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
   746        x["displayName"] = A.load.Ref(ptr + 4, undefined);
   747        if (A.load.Bool(ptr + 18)) {
   748          x["writable"] = A.load.Bool(ptr + 8);
   749        } else {
   750          delete x["writable"];
   751        }
   752        if (A.load.Bool(ptr + 19)) {
   753          x["openedFilesLimit"] = A.load.Int32(ptr + 12);
   754        } else {
   755          delete x["openedFilesLimit"];
   756        }
   757        if (A.load.Bool(ptr + 20)) {
   758          x["supportsNotifyTag"] = A.load.Bool(ptr + 16);
   759        } else {
   760          delete x["supportsNotifyTag"];
   761        }
   762        if (A.load.Bool(ptr + 21)) {
   763          x["persistent"] = A.load.Bool(ptr + 17);
   764        } else {
   765          delete x["persistent"];
   766        }
   767        return create === A.H.TRUE ? A.H.push(x) : ref;
   768      },
   769  
   770      "store_MoveEntryRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
   771        const x = A.H.get<any>(ref);
   772  
   773        if (typeof x === "undefined") {
   774          A.store.Bool(ptr + 17, false);
   775          A.store.Ref(ptr + 0, undefined);
   776          A.store.Bool(ptr + 16, false);
   777          A.store.Int32(ptr + 4, 0);
   778          A.store.Ref(ptr + 8, undefined);
   779          A.store.Ref(ptr + 12, undefined);
   780        } else {
   781          A.store.Bool(ptr + 17, true);
   782          A.store.Ref(ptr + 0, x["fileSystemId"]);
   783          A.store.Bool(ptr + 16, "requestId" in x ? true : false);
   784          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
   785          A.store.Ref(ptr + 8, x["sourcePath"]);
   786          A.store.Ref(ptr + 12, x["targetPath"]);
   787        }
   788      },
   789      "load_MoveEntryRequestedOptions": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
   790        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   791  
   792        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
   793        if (A.load.Bool(ptr + 16)) {
   794          x["requestId"] = A.load.Int32(ptr + 4);
   795        } else {
   796          delete x["requestId"];
   797        }
   798        x["sourcePath"] = A.load.Ref(ptr + 8, undefined);
   799        x["targetPath"] = A.load.Ref(ptr + 12, undefined);
   800        return create === A.H.TRUE ? A.H.push(x) : ref;
   801      },
   802  
   803      "store_NotifyOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
   804        const x = A.H.get<any>(ref);
   805  
   806        if (typeof x === "undefined") {
   807          A.store.Bool(ptr + 25, false);
   808          A.store.Ref(ptr + 0, undefined);
   809          A.store.Ref(ptr + 4, undefined);
   810          A.store.Bool(ptr + 24, false);
   811          A.store.Bool(ptr + 8, false);
   812          A.store.Enum(ptr + 12, -1);
   813          A.store.Ref(ptr + 16, undefined);
   814          A.store.Ref(ptr + 20, undefined);
   815        } else {
   816          A.store.Bool(ptr + 25, true);
   817          A.store.Ref(ptr + 0, x["fileSystemId"]);
   818          A.store.Ref(ptr + 4, x["observedPath"]);
   819          A.store.Bool(ptr + 24, "recursive" in x ? true : false);
   820          A.store.Bool(ptr + 8, x["recursive"] ? true : false);
   821          A.store.Enum(ptr + 12, ["CHANGED", "DELETED"].indexOf(x["changeType"] as string));
   822          A.store.Ref(ptr + 16, x["changes"]);
   823          A.store.Ref(ptr + 20, x["tag"]);
   824        }
   825      },
   826      "load_NotifyOptions": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
   827        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   828  
   829        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
   830        x["observedPath"] = A.load.Ref(ptr + 4, undefined);
   831        if (A.load.Bool(ptr + 24)) {
   832          x["recursive"] = A.load.Bool(ptr + 8);
   833        } else {
   834          delete x["recursive"];
   835        }
   836        x["changeType"] = A.load.Enum(ptr + 12, ["CHANGED", "DELETED"]);
   837        x["changes"] = A.load.Ref(ptr + 16, undefined);
   838        x["tag"] = A.load.Ref(ptr + 20, undefined);
   839        return create === A.H.TRUE ? A.H.push(x) : ref;
   840      },
   841  
   842      "store_OpenFileRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
   843        const x = A.H.get<any>(ref);
   844  
   845        if (typeof x === "undefined") {
   846          A.store.Bool(ptr + 17, false);
   847          A.store.Ref(ptr + 0, undefined);
   848          A.store.Bool(ptr + 16, false);
   849          A.store.Int32(ptr + 4, 0);
   850          A.store.Ref(ptr + 8, undefined);
   851          A.store.Enum(ptr + 12, -1);
   852        } else {
   853          A.store.Bool(ptr + 17, true);
   854          A.store.Ref(ptr + 0, x["fileSystemId"]);
   855          A.store.Bool(ptr + 16, "requestId" in x ? true : false);
   856          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
   857          A.store.Ref(ptr + 8, x["filePath"]);
   858          A.store.Enum(ptr + 12, ["READ", "WRITE"].indexOf(x["mode"] as string));
   859        }
   860      },
   861      "load_OpenFileRequestedOptions": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
   862        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   863  
   864        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
   865        if (A.load.Bool(ptr + 16)) {
   866          x["requestId"] = A.load.Int32(ptr + 4);
   867        } else {
   868          delete x["requestId"];
   869        }
   870        x["filePath"] = A.load.Ref(ptr + 8, undefined);
   871        x["mode"] = A.load.Enum(ptr + 12, ["READ", "WRITE"]);
   872        return create === A.H.TRUE ? A.H.push(x) : ref;
   873      },
   874      "constof_ProviderError": (ref: heap.Ref<string>): number => {
   875        const idx = [
   876          "OK",
   877          "FAILED",
   878          "IN_USE",
   879          "EXISTS",
   880          "NOT_FOUND",
   881          "ACCESS_DENIED",
   882          "TOO_MANY_OPENED",
   883          "NO_MEMORY",
   884          "NO_SPACE",
   885          "NOT_A_DIRECTORY",
   886          "INVALID_OPERATION",
   887          "SECURITY",
   888          "ABORT",
   889          "NOT_A_FILE",
   890          "NOT_EMPTY",
   891          "INVALID_URL",
   892          "IO",
   893        ].indexOf(A.H.get(ref));
   894        return idx < 0 ? 0 : idx + 1;
   895      },
   896  
   897      "store_ReadDirectoryRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
   898        const x = A.H.get<any>(ref);
   899  
   900        if (typeof x === "undefined") {
   901          A.store.Bool(ptr + 25, false);
   902          A.store.Ref(ptr + 0, undefined);
   903          A.store.Bool(ptr + 18, false);
   904          A.store.Int32(ptr + 4, 0);
   905          A.store.Ref(ptr + 8, undefined);
   906          A.store.Bool(ptr + 19, false);
   907          A.store.Bool(ptr + 12, false);
   908          A.store.Bool(ptr + 20, false);
   909          A.store.Bool(ptr + 13, false);
   910          A.store.Bool(ptr + 21, false);
   911          A.store.Bool(ptr + 14, false);
   912          A.store.Bool(ptr + 22, false);
   913          A.store.Bool(ptr + 15, false);
   914          A.store.Bool(ptr + 23, false);
   915          A.store.Bool(ptr + 16, false);
   916          A.store.Bool(ptr + 24, false);
   917          A.store.Bool(ptr + 17, false);
   918        } else {
   919          A.store.Bool(ptr + 25, true);
   920          A.store.Ref(ptr + 0, x["fileSystemId"]);
   921          A.store.Bool(ptr + 18, "requestId" in x ? true : false);
   922          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
   923          A.store.Ref(ptr + 8, x["directoryPath"]);
   924          A.store.Bool(ptr + 19, "isDirectory" in x ? true : false);
   925          A.store.Bool(ptr + 12, x["isDirectory"] ? true : false);
   926          A.store.Bool(ptr + 20, "name" in x ? true : false);
   927          A.store.Bool(ptr + 13, x["name"] ? true : false);
   928          A.store.Bool(ptr + 21, "size" in x ? true : false);
   929          A.store.Bool(ptr + 14, x["size"] ? true : false);
   930          A.store.Bool(ptr + 22, "modificationTime" in x ? true : false);
   931          A.store.Bool(ptr + 15, x["modificationTime"] ? true : false);
   932          A.store.Bool(ptr + 23, "mimeType" in x ? true : false);
   933          A.store.Bool(ptr + 16, x["mimeType"] ? true : false);
   934          A.store.Bool(ptr + 24, "thumbnail" in x ? true : false);
   935          A.store.Bool(ptr + 17, x["thumbnail"] ? true : false);
   936        }
   937      },
   938      "load_ReadDirectoryRequestedOptions": (
   939        ptr: Pointer,
   940        create: heap.Ref<boolean>,
   941        ref: heap.Ref<any>
   942      ): heap.Ref<any> => {
   943        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
   944  
   945        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
   946        if (A.load.Bool(ptr + 18)) {
   947          x["requestId"] = A.load.Int32(ptr + 4);
   948        } else {
   949          delete x["requestId"];
   950        }
   951        x["directoryPath"] = A.load.Ref(ptr + 8, undefined);
   952        if (A.load.Bool(ptr + 19)) {
   953          x["isDirectory"] = A.load.Bool(ptr + 12);
   954        } else {
   955          delete x["isDirectory"];
   956        }
   957        if (A.load.Bool(ptr + 20)) {
   958          x["name"] = A.load.Bool(ptr + 13);
   959        } else {
   960          delete x["name"];
   961        }
   962        if (A.load.Bool(ptr + 21)) {
   963          x["size"] = A.load.Bool(ptr + 14);
   964        } else {
   965          delete x["size"];
   966        }
   967        if (A.load.Bool(ptr + 22)) {
   968          x["modificationTime"] = A.load.Bool(ptr + 15);
   969        } else {
   970          delete x["modificationTime"];
   971        }
   972        if (A.load.Bool(ptr + 23)) {
   973          x["mimeType"] = A.load.Bool(ptr + 16);
   974        } else {
   975          delete x["mimeType"];
   976        }
   977        if (A.load.Bool(ptr + 24)) {
   978          x["thumbnail"] = A.load.Bool(ptr + 17);
   979        } else {
   980          delete x["thumbnail"];
   981        }
   982        return create === A.H.TRUE ? A.H.push(x) : ref;
   983      },
   984  
   985      "store_ReadFileRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
   986        const x = A.H.get<any>(ref);
   987  
   988        if (typeof x === "undefined") {
   989          A.store.Bool(ptr + 36, false);
   990          A.store.Ref(ptr + 0, undefined);
   991          A.store.Bool(ptr + 32, false);
   992          A.store.Int32(ptr + 4, 0);
   993          A.store.Bool(ptr + 33, false);
   994          A.store.Int32(ptr + 8, 0);
   995          A.store.Bool(ptr + 34, false);
   996          A.store.Float64(ptr + 16, 0);
   997          A.store.Bool(ptr + 35, false);
   998          A.store.Float64(ptr + 24, 0);
   999        } else {
  1000          A.store.Bool(ptr + 36, true);
  1001          A.store.Ref(ptr + 0, x["fileSystemId"]);
  1002          A.store.Bool(ptr + 32, "requestId" in x ? true : false);
  1003          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
  1004          A.store.Bool(ptr + 33, "openRequestId" in x ? true : false);
  1005          A.store.Int32(ptr + 8, x["openRequestId"] === undefined ? 0 : (x["openRequestId"] as number));
  1006          A.store.Bool(ptr + 34, "offset" in x ? true : false);
  1007          A.store.Float64(ptr + 16, x["offset"] === undefined ? 0 : (x["offset"] as number));
  1008          A.store.Bool(ptr + 35, "length" in x ? true : false);
  1009          A.store.Float64(ptr + 24, x["length"] === undefined ? 0 : (x["length"] as number));
  1010        }
  1011      },
  1012      "load_ReadFileRequestedOptions": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
  1013        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
  1014  
  1015        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
  1016        if (A.load.Bool(ptr + 32)) {
  1017          x["requestId"] = A.load.Int32(ptr + 4);
  1018        } else {
  1019          delete x["requestId"];
  1020        }
  1021        if (A.load.Bool(ptr + 33)) {
  1022          x["openRequestId"] = A.load.Int32(ptr + 8);
  1023        } else {
  1024          delete x["openRequestId"];
  1025        }
  1026        if (A.load.Bool(ptr + 34)) {
  1027          x["offset"] = A.load.Float64(ptr + 16);
  1028        } else {
  1029          delete x["offset"];
  1030        }
  1031        if (A.load.Bool(ptr + 35)) {
  1032          x["length"] = A.load.Float64(ptr + 24);
  1033        } else {
  1034          delete x["length"];
  1035        }
  1036        return create === A.H.TRUE ? A.H.push(x) : ref;
  1037      },
  1038  
  1039      "store_RemoveWatcherRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
  1040        const x = A.H.get<any>(ref);
  1041  
  1042        if (typeof x === "undefined") {
  1043          A.store.Bool(ptr + 15, false);
  1044          A.store.Ref(ptr + 0, undefined);
  1045          A.store.Bool(ptr + 13, false);
  1046          A.store.Int32(ptr + 4, 0);
  1047          A.store.Ref(ptr + 8, undefined);
  1048          A.store.Bool(ptr + 14, false);
  1049          A.store.Bool(ptr + 12, false);
  1050        } else {
  1051          A.store.Bool(ptr + 15, true);
  1052          A.store.Ref(ptr + 0, x["fileSystemId"]);
  1053          A.store.Bool(ptr + 13, "requestId" in x ? true : false);
  1054          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
  1055          A.store.Ref(ptr + 8, x["entryPath"]);
  1056          A.store.Bool(ptr + 14, "recursive" in x ? true : false);
  1057          A.store.Bool(ptr + 12, x["recursive"] ? true : false);
  1058        }
  1059      },
  1060      "load_RemoveWatcherRequestedOptions": (
  1061        ptr: Pointer,
  1062        create: heap.Ref<boolean>,
  1063        ref: heap.Ref<any>
  1064      ): heap.Ref<any> => {
  1065        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
  1066  
  1067        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
  1068        if (A.load.Bool(ptr + 13)) {
  1069          x["requestId"] = A.load.Int32(ptr + 4);
  1070        } else {
  1071          delete x["requestId"];
  1072        }
  1073        x["entryPath"] = A.load.Ref(ptr + 8, undefined);
  1074        if (A.load.Bool(ptr + 14)) {
  1075          x["recursive"] = A.load.Bool(ptr + 12);
  1076        } else {
  1077          delete x["recursive"];
  1078        }
  1079        return create === A.H.TRUE ? A.H.push(x) : ref;
  1080      },
  1081  
  1082      "store_TruncateRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
  1083        const x = A.H.get<any>(ref);
  1084  
  1085        if (typeof x === "undefined") {
  1086          A.store.Bool(ptr + 26, false);
  1087          A.store.Ref(ptr + 0, undefined);
  1088          A.store.Bool(ptr + 24, false);
  1089          A.store.Int32(ptr + 4, 0);
  1090          A.store.Ref(ptr + 8, undefined);
  1091          A.store.Bool(ptr + 25, false);
  1092          A.store.Float64(ptr + 16, 0);
  1093        } else {
  1094          A.store.Bool(ptr + 26, true);
  1095          A.store.Ref(ptr + 0, x["fileSystemId"]);
  1096          A.store.Bool(ptr + 24, "requestId" in x ? true : false);
  1097          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
  1098          A.store.Ref(ptr + 8, x["filePath"]);
  1099          A.store.Bool(ptr + 25, "length" in x ? true : false);
  1100          A.store.Float64(ptr + 16, x["length"] === undefined ? 0 : (x["length"] as number));
  1101        }
  1102      },
  1103      "load_TruncateRequestedOptions": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
  1104        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
  1105  
  1106        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
  1107        if (A.load.Bool(ptr + 24)) {
  1108          x["requestId"] = A.load.Int32(ptr + 4);
  1109        } else {
  1110          delete x["requestId"];
  1111        }
  1112        x["filePath"] = A.load.Ref(ptr + 8, undefined);
  1113        if (A.load.Bool(ptr + 25)) {
  1114          x["length"] = A.load.Float64(ptr + 16);
  1115        } else {
  1116          delete x["length"];
  1117        }
  1118        return create === A.H.TRUE ? A.H.push(x) : ref;
  1119      },
  1120  
  1121      "store_UnmountOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
  1122        const x = A.H.get<any>(ref);
  1123  
  1124        if (typeof x === "undefined") {
  1125          A.store.Bool(ptr + 4, false);
  1126          A.store.Ref(ptr + 0, undefined);
  1127        } else {
  1128          A.store.Bool(ptr + 4, true);
  1129          A.store.Ref(ptr + 0, x["fileSystemId"]);
  1130        }
  1131      },
  1132      "load_UnmountOptions": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
  1133        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
  1134  
  1135        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
  1136        return create === A.H.TRUE ? A.H.push(x) : ref;
  1137      },
  1138  
  1139      "store_UnmountRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
  1140        const x = A.H.get<any>(ref);
  1141  
  1142        if (typeof x === "undefined") {
  1143          A.store.Bool(ptr + 9, false);
  1144          A.store.Ref(ptr + 0, undefined);
  1145          A.store.Bool(ptr + 8, false);
  1146          A.store.Int32(ptr + 4, 0);
  1147        } else {
  1148          A.store.Bool(ptr + 9, true);
  1149          A.store.Ref(ptr + 0, x["fileSystemId"]);
  1150          A.store.Bool(ptr + 8, "requestId" in x ? true : false);
  1151          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
  1152        }
  1153      },
  1154      "load_UnmountRequestedOptions": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
  1155        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
  1156  
  1157        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
  1158        if (A.load.Bool(ptr + 8)) {
  1159          x["requestId"] = A.load.Int32(ptr + 4);
  1160        } else {
  1161          delete x["requestId"];
  1162        }
  1163        return create === A.H.TRUE ? A.H.push(x) : ref;
  1164      },
  1165  
  1166      "store_WriteFileRequestedOptions": (ptr: Pointer, ref: heap.Ref<any>) => {
  1167        const x = A.H.get<any>(ref);
  1168  
  1169        if (typeof x === "undefined") {
  1170          A.store.Bool(ptr + 31, false);
  1171          A.store.Ref(ptr + 0, undefined);
  1172          A.store.Bool(ptr + 28, false);
  1173          A.store.Int32(ptr + 4, 0);
  1174          A.store.Bool(ptr + 29, false);
  1175          A.store.Int32(ptr + 8, 0);
  1176          A.store.Bool(ptr + 30, false);
  1177          A.store.Float64(ptr + 16, 0);
  1178          A.store.Ref(ptr + 24, undefined);
  1179        } else {
  1180          A.store.Bool(ptr + 31, true);
  1181          A.store.Ref(ptr + 0, x["fileSystemId"]);
  1182          A.store.Bool(ptr + 28, "requestId" in x ? true : false);
  1183          A.store.Int32(ptr + 4, x["requestId"] === undefined ? 0 : (x["requestId"] as number));
  1184          A.store.Bool(ptr + 29, "openRequestId" in x ? true : false);
  1185          A.store.Int32(ptr + 8, x["openRequestId"] === undefined ? 0 : (x["openRequestId"] as number));
  1186          A.store.Bool(ptr + 30, "offset" in x ? true : false);
  1187          A.store.Float64(ptr + 16, x["offset"] === undefined ? 0 : (x["offset"] as number));
  1188          A.store.Ref(ptr + 24, x["data"]);
  1189        }
  1190      },
  1191      "load_WriteFileRequestedOptions": (ptr: Pointer, create: heap.Ref<boolean>, ref: heap.Ref<any>): heap.Ref<any> => {
  1192        const x = create === A.H.TRUE ? {} : A.H.get<any>(ref);
  1193  
  1194        x["fileSystemId"] = A.load.Ref(ptr + 0, undefined);
  1195        if (A.load.Bool(ptr + 28)) {
  1196          x["requestId"] = A.load.Int32(ptr + 4);
  1197        } else {
  1198          delete x["requestId"];
  1199        }
  1200        if (A.load.Bool(ptr + 29)) {
  1201          x["openRequestId"] = A.load.Int32(ptr + 8);
  1202        } else {
  1203          delete x["openRequestId"];
  1204        }
  1205        if (A.load.Bool(ptr + 30)) {
  1206          x["offset"] = A.load.Float64(ptr + 16);
  1207        } else {
  1208          delete x["offset"];
  1209        }
  1210        x["data"] = A.load.Ref(ptr + 24, undefined);
  1211        return create === A.H.TRUE ? A.H.push(x) : ref;
  1212      },
  1213      "has_Get": (): heap.Ref<boolean> => {
  1214        if (WEBEXT?.fileSystemProvider && "get" in WEBEXT?.fileSystemProvider) {
  1215          return A.H.TRUE;
  1216        }
  1217        return A.H.FALSE;
  1218      },
  1219      "func_Get": (fn: Pointer): void => {
  1220        A.store.Ref(fn, WEBEXT.fileSystemProvider.get);
  1221      },
  1222      "call_Get": (retPtr: Pointer, fileSystemId: heap.Ref<object>): void => {
  1223        const _ret = WEBEXT.fileSystemProvider.get(A.H.get<object>(fileSystemId));
  1224        A.store.Ref(retPtr, _ret);
  1225      },
  1226      "try_Get": (retPtr: Pointer, errPtr: Pointer, fileSystemId: heap.Ref<object>): heap.Ref<boolean> => {
  1227        try {
  1228          const _ret = WEBEXT.fileSystemProvider.get(A.H.get<object>(fileSystemId));
  1229          A.store.Ref(retPtr, _ret);
  1230          return A.H.TRUE;
  1231        } catch (err: any) {
  1232          A.store.Ref(errPtr, err);
  1233          return A.H.FALSE;
  1234        }
  1235      },
  1236      "has_GetAll": (): heap.Ref<boolean> => {
  1237        if (WEBEXT?.fileSystemProvider && "getAll" in WEBEXT?.fileSystemProvider) {
  1238          return A.H.TRUE;
  1239        }
  1240        return A.H.FALSE;
  1241      },
  1242      "func_GetAll": (fn: Pointer): void => {
  1243        A.store.Ref(fn, WEBEXT.fileSystemProvider.getAll);
  1244      },
  1245      "call_GetAll": (retPtr: Pointer): void => {
  1246        const _ret = WEBEXT.fileSystemProvider.getAll();
  1247        A.store.Ref(retPtr, _ret);
  1248      },
  1249      "try_GetAll": (retPtr: Pointer, errPtr: Pointer): heap.Ref<boolean> => {
  1250        try {
  1251          const _ret = WEBEXT.fileSystemProvider.getAll();
  1252          A.store.Ref(retPtr, _ret);
  1253          return A.H.TRUE;
  1254        } catch (err: any) {
  1255          A.store.Ref(errPtr, err);
  1256          return A.H.FALSE;
  1257        }
  1258      },
  1259      "has_Mount": (): heap.Ref<boolean> => {
  1260        if (WEBEXT?.fileSystemProvider && "mount" in WEBEXT?.fileSystemProvider) {
  1261          return A.H.TRUE;
  1262        }
  1263        return A.H.FALSE;
  1264      },
  1265      "func_Mount": (fn: Pointer): void => {
  1266        A.store.Ref(fn, WEBEXT.fileSystemProvider.mount);
  1267      },
  1268      "call_Mount": (retPtr: Pointer, options: Pointer): void => {
  1269        const options_ffi = {};
  1270  
  1271        options_ffi["fileSystemId"] = A.load.Ref(options + 0, undefined);
  1272        options_ffi["displayName"] = A.load.Ref(options + 4, undefined);
  1273        if (A.load.Bool(options + 18)) {
  1274          options_ffi["writable"] = A.load.Bool(options + 8);
  1275        }
  1276        if (A.load.Bool(options + 19)) {
  1277          options_ffi["openedFilesLimit"] = A.load.Int32(options + 12);
  1278        }
  1279        if (A.load.Bool(options + 20)) {
  1280          options_ffi["supportsNotifyTag"] = A.load.Bool(options + 16);
  1281        }
  1282        if (A.load.Bool(options + 21)) {
  1283          options_ffi["persistent"] = A.load.Bool(options + 17);
  1284        }
  1285  
  1286        const _ret = WEBEXT.fileSystemProvider.mount(options_ffi);
  1287        A.store.Ref(retPtr, _ret);
  1288      },
  1289      "try_Mount": (retPtr: Pointer, errPtr: Pointer, options: Pointer): heap.Ref<boolean> => {
  1290        try {
  1291          const options_ffi = {};
  1292  
  1293          options_ffi["fileSystemId"] = A.load.Ref(options + 0, undefined);
  1294          options_ffi["displayName"] = A.load.Ref(options + 4, undefined);
  1295          if (A.load.Bool(options + 18)) {
  1296            options_ffi["writable"] = A.load.Bool(options + 8);
  1297          }
  1298          if (A.load.Bool(options + 19)) {
  1299            options_ffi["openedFilesLimit"] = A.load.Int32(options + 12);
  1300          }
  1301          if (A.load.Bool(options + 20)) {
  1302            options_ffi["supportsNotifyTag"] = A.load.Bool(options + 16);
  1303          }
  1304          if (A.load.Bool(options + 21)) {
  1305            options_ffi["persistent"] = A.load.Bool(options + 17);
  1306          }
  1307  
  1308          const _ret = WEBEXT.fileSystemProvider.mount(options_ffi);
  1309          A.store.Ref(retPtr, _ret);
  1310          return A.H.TRUE;
  1311        } catch (err: any) {
  1312          A.store.Ref(errPtr, err);
  1313          return A.H.FALSE;
  1314        }
  1315      },
  1316      "has_Notify": (): heap.Ref<boolean> => {
  1317        if (WEBEXT?.fileSystemProvider && "notify" in WEBEXT?.fileSystemProvider) {
  1318          return A.H.TRUE;
  1319        }
  1320        return A.H.FALSE;
  1321      },
  1322      "func_Notify": (fn: Pointer): void => {
  1323        A.store.Ref(fn, WEBEXT.fileSystemProvider.notify);
  1324      },
  1325      "call_Notify": (retPtr: Pointer, options: Pointer): void => {
  1326        const options_ffi = {};
  1327  
  1328        options_ffi["fileSystemId"] = A.load.Ref(options + 0, undefined);
  1329        options_ffi["observedPath"] = A.load.Ref(options + 4, undefined);
  1330        if (A.load.Bool(options + 24)) {
  1331          options_ffi["recursive"] = A.load.Bool(options + 8);
  1332        }
  1333        options_ffi["changeType"] = A.load.Enum(options + 12, ["CHANGED", "DELETED"]);
  1334        options_ffi["changes"] = A.load.Ref(options + 16, undefined);
  1335        options_ffi["tag"] = A.load.Ref(options + 20, undefined);
  1336  
  1337        const _ret = WEBEXT.fileSystemProvider.notify(options_ffi);
  1338        A.store.Ref(retPtr, _ret);
  1339      },
  1340      "try_Notify": (retPtr: Pointer, errPtr: Pointer, options: Pointer): heap.Ref<boolean> => {
  1341        try {
  1342          const options_ffi = {};
  1343  
  1344          options_ffi["fileSystemId"] = A.load.Ref(options + 0, undefined);
  1345          options_ffi["observedPath"] = A.load.Ref(options + 4, undefined);
  1346          if (A.load.Bool(options + 24)) {
  1347            options_ffi["recursive"] = A.load.Bool(options + 8);
  1348          }
  1349          options_ffi["changeType"] = A.load.Enum(options + 12, ["CHANGED", "DELETED"]);
  1350          options_ffi["changes"] = A.load.Ref(options + 16, undefined);
  1351          options_ffi["tag"] = A.load.Ref(options + 20, undefined);
  1352  
  1353          const _ret = WEBEXT.fileSystemProvider.notify(options_ffi);
  1354          A.store.Ref(retPtr, _ret);
  1355          return A.H.TRUE;
  1356        } catch (err: any) {
  1357          A.store.Ref(errPtr, err);
  1358          return A.H.FALSE;
  1359        }
  1360      },
  1361      "has_OnAbortRequested": (): heap.Ref<boolean> => {
  1362        if (
  1363          WEBEXT?.fileSystemProvider?.onAbortRequested &&
  1364          "addListener" in WEBEXT?.fileSystemProvider?.onAbortRequested
  1365        ) {
  1366          return A.H.TRUE;
  1367        }
  1368        return A.H.FALSE;
  1369      },
  1370      "func_OnAbortRequested": (fn: Pointer): void => {
  1371        A.store.Ref(fn, WEBEXT.fileSystemProvider.onAbortRequested.addListener);
  1372      },
  1373      "call_OnAbortRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1374        const _ret = WEBEXT.fileSystemProvider.onAbortRequested.addListener(A.H.get<object>(callback));
  1375      },
  1376      "try_OnAbortRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  1377        try {
  1378          const _ret = WEBEXT.fileSystemProvider.onAbortRequested.addListener(A.H.get<object>(callback));
  1379          return A.H.TRUE;
  1380        } catch (err: any) {
  1381          A.store.Ref(errPtr, err);
  1382          return A.H.FALSE;
  1383        }
  1384      },
  1385      "has_OffAbortRequested": (): heap.Ref<boolean> => {
  1386        if (
  1387          WEBEXT?.fileSystemProvider?.onAbortRequested &&
  1388          "removeListener" in WEBEXT?.fileSystemProvider?.onAbortRequested
  1389        ) {
  1390          return A.H.TRUE;
  1391        }
  1392        return A.H.FALSE;
  1393      },
  1394      "func_OffAbortRequested": (fn: Pointer): void => {
  1395        A.store.Ref(fn, WEBEXT.fileSystemProvider.onAbortRequested.removeListener);
  1396      },
  1397      "call_OffAbortRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1398        const _ret = WEBEXT.fileSystemProvider.onAbortRequested.removeListener(A.H.get<object>(callback));
  1399      },
  1400      "try_OffAbortRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  1401        try {
  1402          const _ret = WEBEXT.fileSystemProvider.onAbortRequested.removeListener(A.H.get<object>(callback));
  1403          return A.H.TRUE;
  1404        } catch (err: any) {
  1405          A.store.Ref(errPtr, err);
  1406          return A.H.FALSE;
  1407        }
  1408      },
  1409      "has_HasOnAbortRequested": (): heap.Ref<boolean> => {
  1410        if (
  1411          WEBEXT?.fileSystemProvider?.onAbortRequested &&
  1412          "hasListener" in WEBEXT?.fileSystemProvider?.onAbortRequested
  1413        ) {
  1414          return A.H.TRUE;
  1415        }
  1416        return A.H.FALSE;
  1417      },
  1418      "func_HasOnAbortRequested": (fn: Pointer): void => {
  1419        A.store.Ref(fn, WEBEXT.fileSystemProvider.onAbortRequested.hasListener);
  1420      },
  1421      "call_HasOnAbortRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1422        const _ret = WEBEXT.fileSystemProvider.onAbortRequested.hasListener(A.H.get<object>(callback));
  1423        A.store.Bool(retPtr, _ret);
  1424      },
  1425      "try_HasOnAbortRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  1426        try {
  1427          const _ret = WEBEXT.fileSystemProvider.onAbortRequested.hasListener(A.H.get<object>(callback));
  1428          A.store.Bool(retPtr, _ret);
  1429          return A.H.TRUE;
  1430        } catch (err: any) {
  1431          A.store.Ref(errPtr, err);
  1432          return A.H.FALSE;
  1433        }
  1434      },
  1435      "has_OnAddWatcherRequested": (): heap.Ref<boolean> => {
  1436        if (
  1437          WEBEXT?.fileSystemProvider?.onAddWatcherRequested &&
  1438          "addListener" in WEBEXT?.fileSystemProvider?.onAddWatcherRequested
  1439        ) {
  1440          return A.H.TRUE;
  1441        }
  1442        return A.H.FALSE;
  1443      },
  1444      "func_OnAddWatcherRequested": (fn: Pointer): void => {
  1445        A.store.Ref(fn, WEBEXT.fileSystemProvider.onAddWatcherRequested.addListener);
  1446      },
  1447      "call_OnAddWatcherRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1448        const _ret = WEBEXT.fileSystemProvider.onAddWatcherRequested.addListener(A.H.get<object>(callback));
  1449      },
  1450      "try_OnAddWatcherRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  1451        try {
  1452          const _ret = WEBEXT.fileSystemProvider.onAddWatcherRequested.addListener(A.H.get<object>(callback));
  1453          return A.H.TRUE;
  1454        } catch (err: any) {
  1455          A.store.Ref(errPtr, err);
  1456          return A.H.FALSE;
  1457        }
  1458      },
  1459      "has_OffAddWatcherRequested": (): heap.Ref<boolean> => {
  1460        if (
  1461          WEBEXT?.fileSystemProvider?.onAddWatcherRequested &&
  1462          "removeListener" in WEBEXT?.fileSystemProvider?.onAddWatcherRequested
  1463        ) {
  1464          return A.H.TRUE;
  1465        }
  1466        return A.H.FALSE;
  1467      },
  1468      "func_OffAddWatcherRequested": (fn: Pointer): void => {
  1469        A.store.Ref(fn, WEBEXT.fileSystemProvider.onAddWatcherRequested.removeListener);
  1470      },
  1471      "call_OffAddWatcherRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1472        const _ret = WEBEXT.fileSystemProvider.onAddWatcherRequested.removeListener(A.H.get<object>(callback));
  1473      },
  1474      "try_OffAddWatcherRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  1475        try {
  1476          const _ret = WEBEXT.fileSystemProvider.onAddWatcherRequested.removeListener(A.H.get<object>(callback));
  1477          return A.H.TRUE;
  1478        } catch (err: any) {
  1479          A.store.Ref(errPtr, err);
  1480          return A.H.FALSE;
  1481        }
  1482      },
  1483      "has_HasOnAddWatcherRequested": (): heap.Ref<boolean> => {
  1484        if (
  1485          WEBEXT?.fileSystemProvider?.onAddWatcherRequested &&
  1486          "hasListener" in WEBEXT?.fileSystemProvider?.onAddWatcherRequested
  1487        ) {
  1488          return A.H.TRUE;
  1489        }
  1490        return A.H.FALSE;
  1491      },
  1492      "func_HasOnAddWatcherRequested": (fn: Pointer): void => {
  1493        A.store.Ref(fn, WEBEXT.fileSystemProvider.onAddWatcherRequested.hasListener);
  1494      },
  1495      "call_HasOnAddWatcherRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1496        const _ret = WEBEXT.fileSystemProvider.onAddWatcherRequested.hasListener(A.H.get<object>(callback));
  1497        A.store.Bool(retPtr, _ret);
  1498      },
  1499      "try_HasOnAddWatcherRequested": (
  1500        retPtr: Pointer,
  1501        errPtr: Pointer,
  1502        callback: heap.Ref<object>
  1503      ): heap.Ref<boolean> => {
  1504        try {
  1505          const _ret = WEBEXT.fileSystemProvider.onAddWatcherRequested.hasListener(A.H.get<object>(callback));
  1506          A.store.Bool(retPtr, _ret);
  1507          return A.H.TRUE;
  1508        } catch (err: any) {
  1509          A.store.Ref(errPtr, err);
  1510          return A.H.FALSE;
  1511        }
  1512      },
  1513      "has_OnCloseFileRequested": (): heap.Ref<boolean> => {
  1514        if (
  1515          WEBEXT?.fileSystemProvider?.onCloseFileRequested &&
  1516          "addListener" in WEBEXT?.fileSystemProvider?.onCloseFileRequested
  1517        ) {
  1518          return A.H.TRUE;
  1519        }
  1520        return A.H.FALSE;
  1521      },
  1522      "func_OnCloseFileRequested": (fn: Pointer): void => {
  1523        A.store.Ref(fn, WEBEXT.fileSystemProvider.onCloseFileRequested.addListener);
  1524      },
  1525      "call_OnCloseFileRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1526        const _ret = WEBEXT.fileSystemProvider.onCloseFileRequested.addListener(A.H.get<object>(callback));
  1527      },
  1528      "try_OnCloseFileRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  1529        try {
  1530          const _ret = WEBEXT.fileSystemProvider.onCloseFileRequested.addListener(A.H.get<object>(callback));
  1531          return A.H.TRUE;
  1532        } catch (err: any) {
  1533          A.store.Ref(errPtr, err);
  1534          return A.H.FALSE;
  1535        }
  1536      },
  1537      "has_OffCloseFileRequested": (): heap.Ref<boolean> => {
  1538        if (
  1539          WEBEXT?.fileSystemProvider?.onCloseFileRequested &&
  1540          "removeListener" in WEBEXT?.fileSystemProvider?.onCloseFileRequested
  1541        ) {
  1542          return A.H.TRUE;
  1543        }
  1544        return A.H.FALSE;
  1545      },
  1546      "func_OffCloseFileRequested": (fn: Pointer): void => {
  1547        A.store.Ref(fn, WEBEXT.fileSystemProvider.onCloseFileRequested.removeListener);
  1548      },
  1549      "call_OffCloseFileRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1550        const _ret = WEBEXT.fileSystemProvider.onCloseFileRequested.removeListener(A.H.get<object>(callback));
  1551      },
  1552      "try_OffCloseFileRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  1553        try {
  1554          const _ret = WEBEXT.fileSystemProvider.onCloseFileRequested.removeListener(A.H.get<object>(callback));
  1555          return A.H.TRUE;
  1556        } catch (err: any) {
  1557          A.store.Ref(errPtr, err);
  1558          return A.H.FALSE;
  1559        }
  1560      },
  1561      "has_HasOnCloseFileRequested": (): heap.Ref<boolean> => {
  1562        if (
  1563          WEBEXT?.fileSystemProvider?.onCloseFileRequested &&
  1564          "hasListener" in WEBEXT?.fileSystemProvider?.onCloseFileRequested
  1565        ) {
  1566          return A.H.TRUE;
  1567        }
  1568        return A.H.FALSE;
  1569      },
  1570      "func_HasOnCloseFileRequested": (fn: Pointer): void => {
  1571        A.store.Ref(fn, WEBEXT.fileSystemProvider.onCloseFileRequested.hasListener);
  1572      },
  1573      "call_HasOnCloseFileRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1574        const _ret = WEBEXT.fileSystemProvider.onCloseFileRequested.hasListener(A.H.get<object>(callback));
  1575        A.store.Bool(retPtr, _ret);
  1576      },
  1577      "try_HasOnCloseFileRequested": (
  1578        retPtr: Pointer,
  1579        errPtr: Pointer,
  1580        callback: heap.Ref<object>
  1581      ): heap.Ref<boolean> => {
  1582        try {
  1583          const _ret = WEBEXT.fileSystemProvider.onCloseFileRequested.hasListener(A.H.get<object>(callback));
  1584          A.store.Bool(retPtr, _ret);
  1585          return A.H.TRUE;
  1586        } catch (err: any) {
  1587          A.store.Ref(errPtr, err);
  1588          return A.H.FALSE;
  1589        }
  1590      },
  1591      "has_OnConfigureRequested": (): heap.Ref<boolean> => {
  1592        if (
  1593          WEBEXT?.fileSystemProvider?.onConfigureRequested &&
  1594          "addListener" in WEBEXT?.fileSystemProvider?.onConfigureRequested
  1595        ) {
  1596          return A.H.TRUE;
  1597        }
  1598        return A.H.FALSE;
  1599      },
  1600      "func_OnConfigureRequested": (fn: Pointer): void => {
  1601        A.store.Ref(fn, WEBEXT.fileSystemProvider.onConfigureRequested.addListener);
  1602      },
  1603      "call_OnConfigureRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1604        const _ret = WEBEXT.fileSystemProvider.onConfigureRequested.addListener(A.H.get<object>(callback));
  1605      },
  1606      "try_OnConfigureRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  1607        try {
  1608          const _ret = WEBEXT.fileSystemProvider.onConfigureRequested.addListener(A.H.get<object>(callback));
  1609          return A.H.TRUE;
  1610        } catch (err: any) {
  1611          A.store.Ref(errPtr, err);
  1612          return A.H.FALSE;
  1613        }
  1614      },
  1615      "has_OffConfigureRequested": (): heap.Ref<boolean> => {
  1616        if (
  1617          WEBEXT?.fileSystemProvider?.onConfigureRequested &&
  1618          "removeListener" in WEBEXT?.fileSystemProvider?.onConfigureRequested
  1619        ) {
  1620          return A.H.TRUE;
  1621        }
  1622        return A.H.FALSE;
  1623      },
  1624      "func_OffConfigureRequested": (fn: Pointer): void => {
  1625        A.store.Ref(fn, WEBEXT.fileSystemProvider.onConfigureRequested.removeListener);
  1626      },
  1627      "call_OffConfigureRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1628        const _ret = WEBEXT.fileSystemProvider.onConfigureRequested.removeListener(A.H.get<object>(callback));
  1629      },
  1630      "try_OffConfigureRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  1631        try {
  1632          const _ret = WEBEXT.fileSystemProvider.onConfigureRequested.removeListener(A.H.get<object>(callback));
  1633          return A.H.TRUE;
  1634        } catch (err: any) {
  1635          A.store.Ref(errPtr, err);
  1636          return A.H.FALSE;
  1637        }
  1638      },
  1639      "has_HasOnConfigureRequested": (): heap.Ref<boolean> => {
  1640        if (
  1641          WEBEXT?.fileSystemProvider?.onConfigureRequested &&
  1642          "hasListener" in WEBEXT?.fileSystemProvider?.onConfigureRequested
  1643        ) {
  1644          return A.H.TRUE;
  1645        }
  1646        return A.H.FALSE;
  1647      },
  1648      "func_HasOnConfigureRequested": (fn: Pointer): void => {
  1649        A.store.Ref(fn, WEBEXT.fileSystemProvider.onConfigureRequested.hasListener);
  1650      },
  1651      "call_HasOnConfigureRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1652        const _ret = WEBEXT.fileSystemProvider.onConfigureRequested.hasListener(A.H.get<object>(callback));
  1653        A.store.Bool(retPtr, _ret);
  1654      },
  1655      "try_HasOnConfigureRequested": (
  1656        retPtr: Pointer,
  1657        errPtr: Pointer,
  1658        callback: heap.Ref<object>
  1659      ): heap.Ref<boolean> => {
  1660        try {
  1661          const _ret = WEBEXT.fileSystemProvider.onConfigureRequested.hasListener(A.H.get<object>(callback));
  1662          A.store.Bool(retPtr, _ret);
  1663          return A.H.TRUE;
  1664        } catch (err: any) {
  1665          A.store.Ref(errPtr, err);
  1666          return A.H.FALSE;
  1667        }
  1668      },
  1669      "has_OnCopyEntryRequested": (): heap.Ref<boolean> => {
  1670        if (
  1671          WEBEXT?.fileSystemProvider?.onCopyEntryRequested &&
  1672          "addListener" in WEBEXT?.fileSystemProvider?.onCopyEntryRequested
  1673        ) {
  1674          return A.H.TRUE;
  1675        }
  1676        return A.H.FALSE;
  1677      },
  1678      "func_OnCopyEntryRequested": (fn: Pointer): void => {
  1679        A.store.Ref(fn, WEBEXT.fileSystemProvider.onCopyEntryRequested.addListener);
  1680      },
  1681      "call_OnCopyEntryRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1682        const _ret = WEBEXT.fileSystemProvider.onCopyEntryRequested.addListener(A.H.get<object>(callback));
  1683      },
  1684      "try_OnCopyEntryRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  1685        try {
  1686          const _ret = WEBEXT.fileSystemProvider.onCopyEntryRequested.addListener(A.H.get<object>(callback));
  1687          return A.H.TRUE;
  1688        } catch (err: any) {
  1689          A.store.Ref(errPtr, err);
  1690          return A.H.FALSE;
  1691        }
  1692      },
  1693      "has_OffCopyEntryRequested": (): heap.Ref<boolean> => {
  1694        if (
  1695          WEBEXT?.fileSystemProvider?.onCopyEntryRequested &&
  1696          "removeListener" in WEBEXT?.fileSystemProvider?.onCopyEntryRequested
  1697        ) {
  1698          return A.H.TRUE;
  1699        }
  1700        return A.H.FALSE;
  1701      },
  1702      "func_OffCopyEntryRequested": (fn: Pointer): void => {
  1703        A.store.Ref(fn, WEBEXT.fileSystemProvider.onCopyEntryRequested.removeListener);
  1704      },
  1705      "call_OffCopyEntryRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1706        const _ret = WEBEXT.fileSystemProvider.onCopyEntryRequested.removeListener(A.H.get<object>(callback));
  1707      },
  1708      "try_OffCopyEntryRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  1709        try {
  1710          const _ret = WEBEXT.fileSystemProvider.onCopyEntryRequested.removeListener(A.H.get<object>(callback));
  1711          return A.H.TRUE;
  1712        } catch (err: any) {
  1713          A.store.Ref(errPtr, err);
  1714          return A.H.FALSE;
  1715        }
  1716      },
  1717      "has_HasOnCopyEntryRequested": (): heap.Ref<boolean> => {
  1718        if (
  1719          WEBEXT?.fileSystemProvider?.onCopyEntryRequested &&
  1720          "hasListener" in WEBEXT?.fileSystemProvider?.onCopyEntryRequested
  1721        ) {
  1722          return A.H.TRUE;
  1723        }
  1724        return A.H.FALSE;
  1725      },
  1726      "func_HasOnCopyEntryRequested": (fn: Pointer): void => {
  1727        A.store.Ref(fn, WEBEXT.fileSystemProvider.onCopyEntryRequested.hasListener);
  1728      },
  1729      "call_HasOnCopyEntryRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1730        const _ret = WEBEXT.fileSystemProvider.onCopyEntryRequested.hasListener(A.H.get<object>(callback));
  1731        A.store.Bool(retPtr, _ret);
  1732      },
  1733      "try_HasOnCopyEntryRequested": (
  1734        retPtr: Pointer,
  1735        errPtr: Pointer,
  1736        callback: heap.Ref<object>
  1737      ): heap.Ref<boolean> => {
  1738        try {
  1739          const _ret = WEBEXT.fileSystemProvider.onCopyEntryRequested.hasListener(A.H.get<object>(callback));
  1740          A.store.Bool(retPtr, _ret);
  1741          return A.H.TRUE;
  1742        } catch (err: any) {
  1743          A.store.Ref(errPtr, err);
  1744          return A.H.FALSE;
  1745        }
  1746      },
  1747      "has_OnCreateDirectoryRequested": (): heap.Ref<boolean> => {
  1748        if (
  1749          WEBEXT?.fileSystemProvider?.onCreateDirectoryRequested &&
  1750          "addListener" in WEBEXT?.fileSystemProvider?.onCreateDirectoryRequested
  1751        ) {
  1752          return A.H.TRUE;
  1753        }
  1754        return A.H.FALSE;
  1755      },
  1756      "func_OnCreateDirectoryRequested": (fn: Pointer): void => {
  1757        A.store.Ref(fn, WEBEXT.fileSystemProvider.onCreateDirectoryRequested.addListener);
  1758      },
  1759      "call_OnCreateDirectoryRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1760        const _ret = WEBEXT.fileSystemProvider.onCreateDirectoryRequested.addListener(A.H.get<object>(callback));
  1761      },
  1762      "try_OnCreateDirectoryRequested": (
  1763        retPtr: Pointer,
  1764        errPtr: Pointer,
  1765        callback: heap.Ref<object>
  1766      ): heap.Ref<boolean> => {
  1767        try {
  1768          const _ret = WEBEXT.fileSystemProvider.onCreateDirectoryRequested.addListener(A.H.get<object>(callback));
  1769          return A.H.TRUE;
  1770        } catch (err: any) {
  1771          A.store.Ref(errPtr, err);
  1772          return A.H.FALSE;
  1773        }
  1774      },
  1775      "has_OffCreateDirectoryRequested": (): heap.Ref<boolean> => {
  1776        if (
  1777          WEBEXT?.fileSystemProvider?.onCreateDirectoryRequested &&
  1778          "removeListener" in WEBEXT?.fileSystemProvider?.onCreateDirectoryRequested
  1779        ) {
  1780          return A.H.TRUE;
  1781        }
  1782        return A.H.FALSE;
  1783      },
  1784      "func_OffCreateDirectoryRequested": (fn: Pointer): void => {
  1785        A.store.Ref(fn, WEBEXT.fileSystemProvider.onCreateDirectoryRequested.removeListener);
  1786      },
  1787      "call_OffCreateDirectoryRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1788        const _ret = WEBEXT.fileSystemProvider.onCreateDirectoryRequested.removeListener(A.H.get<object>(callback));
  1789      },
  1790      "try_OffCreateDirectoryRequested": (
  1791        retPtr: Pointer,
  1792        errPtr: Pointer,
  1793        callback: heap.Ref<object>
  1794      ): heap.Ref<boolean> => {
  1795        try {
  1796          const _ret = WEBEXT.fileSystemProvider.onCreateDirectoryRequested.removeListener(A.H.get<object>(callback));
  1797          return A.H.TRUE;
  1798        } catch (err: any) {
  1799          A.store.Ref(errPtr, err);
  1800          return A.H.FALSE;
  1801        }
  1802      },
  1803      "has_HasOnCreateDirectoryRequested": (): heap.Ref<boolean> => {
  1804        if (
  1805          WEBEXT?.fileSystemProvider?.onCreateDirectoryRequested &&
  1806          "hasListener" in WEBEXT?.fileSystemProvider?.onCreateDirectoryRequested
  1807        ) {
  1808          return A.H.TRUE;
  1809        }
  1810        return A.H.FALSE;
  1811      },
  1812      "func_HasOnCreateDirectoryRequested": (fn: Pointer): void => {
  1813        A.store.Ref(fn, WEBEXT.fileSystemProvider.onCreateDirectoryRequested.hasListener);
  1814      },
  1815      "call_HasOnCreateDirectoryRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1816        const _ret = WEBEXT.fileSystemProvider.onCreateDirectoryRequested.hasListener(A.H.get<object>(callback));
  1817        A.store.Bool(retPtr, _ret);
  1818      },
  1819      "try_HasOnCreateDirectoryRequested": (
  1820        retPtr: Pointer,
  1821        errPtr: Pointer,
  1822        callback: heap.Ref<object>
  1823      ): heap.Ref<boolean> => {
  1824        try {
  1825          const _ret = WEBEXT.fileSystemProvider.onCreateDirectoryRequested.hasListener(A.H.get<object>(callback));
  1826          A.store.Bool(retPtr, _ret);
  1827          return A.H.TRUE;
  1828        } catch (err: any) {
  1829          A.store.Ref(errPtr, err);
  1830          return A.H.FALSE;
  1831        }
  1832      },
  1833      "has_OnCreateFileRequested": (): heap.Ref<boolean> => {
  1834        if (
  1835          WEBEXT?.fileSystemProvider?.onCreateFileRequested &&
  1836          "addListener" in WEBEXT?.fileSystemProvider?.onCreateFileRequested
  1837        ) {
  1838          return A.H.TRUE;
  1839        }
  1840        return A.H.FALSE;
  1841      },
  1842      "func_OnCreateFileRequested": (fn: Pointer): void => {
  1843        A.store.Ref(fn, WEBEXT.fileSystemProvider.onCreateFileRequested.addListener);
  1844      },
  1845      "call_OnCreateFileRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1846        const _ret = WEBEXT.fileSystemProvider.onCreateFileRequested.addListener(A.H.get<object>(callback));
  1847      },
  1848      "try_OnCreateFileRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  1849        try {
  1850          const _ret = WEBEXT.fileSystemProvider.onCreateFileRequested.addListener(A.H.get<object>(callback));
  1851          return A.H.TRUE;
  1852        } catch (err: any) {
  1853          A.store.Ref(errPtr, err);
  1854          return A.H.FALSE;
  1855        }
  1856      },
  1857      "has_OffCreateFileRequested": (): heap.Ref<boolean> => {
  1858        if (
  1859          WEBEXT?.fileSystemProvider?.onCreateFileRequested &&
  1860          "removeListener" in WEBEXT?.fileSystemProvider?.onCreateFileRequested
  1861        ) {
  1862          return A.H.TRUE;
  1863        }
  1864        return A.H.FALSE;
  1865      },
  1866      "func_OffCreateFileRequested": (fn: Pointer): void => {
  1867        A.store.Ref(fn, WEBEXT.fileSystemProvider.onCreateFileRequested.removeListener);
  1868      },
  1869      "call_OffCreateFileRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1870        const _ret = WEBEXT.fileSystemProvider.onCreateFileRequested.removeListener(A.H.get<object>(callback));
  1871      },
  1872      "try_OffCreateFileRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  1873        try {
  1874          const _ret = WEBEXT.fileSystemProvider.onCreateFileRequested.removeListener(A.H.get<object>(callback));
  1875          return A.H.TRUE;
  1876        } catch (err: any) {
  1877          A.store.Ref(errPtr, err);
  1878          return A.H.FALSE;
  1879        }
  1880      },
  1881      "has_HasOnCreateFileRequested": (): heap.Ref<boolean> => {
  1882        if (
  1883          WEBEXT?.fileSystemProvider?.onCreateFileRequested &&
  1884          "hasListener" in WEBEXT?.fileSystemProvider?.onCreateFileRequested
  1885        ) {
  1886          return A.H.TRUE;
  1887        }
  1888        return A.H.FALSE;
  1889      },
  1890      "func_HasOnCreateFileRequested": (fn: Pointer): void => {
  1891        A.store.Ref(fn, WEBEXT.fileSystemProvider.onCreateFileRequested.hasListener);
  1892      },
  1893      "call_HasOnCreateFileRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1894        const _ret = WEBEXT.fileSystemProvider.onCreateFileRequested.hasListener(A.H.get<object>(callback));
  1895        A.store.Bool(retPtr, _ret);
  1896      },
  1897      "try_HasOnCreateFileRequested": (
  1898        retPtr: Pointer,
  1899        errPtr: Pointer,
  1900        callback: heap.Ref<object>
  1901      ): heap.Ref<boolean> => {
  1902        try {
  1903          const _ret = WEBEXT.fileSystemProvider.onCreateFileRequested.hasListener(A.H.get<object>(callback));
  1904          A.store.Bool(retPtr, _ret);
  1905          return A.H.TRUE;
  1906        } catch (err: any) {
  1907          A.store.Ref(errPtr, err);
  1908          return A.H.FALSE;
  1909        }
  1910      },
  1911      "has_OnDeleteEntryRequested": (): heap.Ref<boolean> => {
  1912        if (
  1913          WEBEXT?.fileSystemProvider?.onDeleteEntryRequested &&
  1914          "addListener" in WEBEXT?.fileSystemProvider?.onDeleteEntryRequested
  1915        ) {
  1916          return A.H.TRUE;
  1917        }
  1918        return A.H.FALSE;
  1919      },
  1920      "func_OnDeleteEntryRequested": (fn: Pointer): void => {
  1921        A.store.Ref(fn, WEBEXT.fileSystemProvider.onDeleteEntryRequested.addListener);
  1922      },
  1923      "call_OnDeleteEntryRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1924        const _ret = WEBEXT.fileSystemProvider.onDeleteEntryRequested.addListener(A.H.get<object>(callback));
  1925      },
  1926      "try_OnDeleteEntryRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  1927        try {
  1928          const _ret = WEBEXT.fileSystemProvider.onDeleteEntryRequested.addListener(A.H.get<object>(callback));
  1929          return A.H.TRUE;
  1930        } catch (err: any) {
  1931          A.store.Ref(errPtr, err);
  1932          return A.H.FALSE;
  1933        }
  1934      },
  1935      "has_OffDeleteEntryRequested": (): heap.Ref<boolean> => {
  1936        if (
  1937          WEBEXT?.fileSystemProvider?.onDeleteEntryRequested &&
  1938          "removeListener" in WEBEXT?.fileSystemProvider?.onDeleteEntryRequested
  1939        ) {
  1940          return A.H.TRUE;
  1941        }
  1942        return A.H.FALSE;
  1943      },
  1944      "func_OffDeleteEntryRequested": (fn: Pointer): void => {
  1945        A.store.Ref(fn, WEBEXT.fileSystemProvider.onDeleteEntryRequested.removeListener);
  1946      },
  1947      "call_OffDeleteEntryRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1948        const _ret = WEBEXT.fileSystemProvider.onDeleteEntryRequested.removeListener(A.H.get<object>(callback));
  1949      },
  1950      "try_OffDeleteEntryRequested": (
  1951        retPtr: Pointer,
  1952        errPtr: Pointer,
  1953        callback: heap.Ref<object>
  1954      ): heap.Ref<boolean> => {
  1955        try {
  1956          const _ret = WEBEXT.fileSystemProvider.onDeleteEntryRequested.removeListener(A.H.get<object>(callback));
  1957          return A.H.TRUE;
  1958        } catch (err: any) {
  1959          A.store.Ref(errPtr, err);
  1960          return A.H.FALSE;
  1961        }
  1962      },
  1963      "has_HasOnDeleteEntryRequested": (): heap.Ref<boolean> => {
  1964        if (
  1965          WEBEXT?.fileSystemProvider?.onDeleteEntryRequested &&
  1966          "hasListener" in WEBEXT?.fileSystemProvider?.onDeleteEntryRequested
  1967        ) {
  1968          return A.H.TRUE;
  1969        }
  1970        return A.H.FALSE;
  1971      },
  1972      "func_HasOnDeleteEntryRequested": (fn: Pointer): void => {
  1973        A.store.Ref(fn, WEBEXT.fileSystemProvider.onDeleteEntryRequested.hasListener);
  1974      },
  1975      "call_HasOnDeleteEntryRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  1976        const _ret = WEBEXT.fileSystemProvider.onDeleteEntryRequested.hasListener(A.H.get<object>(callback));
  1977        A.store.Bool(retPtr, _ret);
  1978      },
  1979      "try_HasOnDeleteEntryRequested": (
  1980        retPtr: Pointer,
  1981        errPtr: Pointer,
  1982        callback: heap.Ref<object>
  1983      ): heap.Ref<boolean> => {
  1984        try {
  1985          const _ret = WEBEXT.fileSystemProvider.onDeleteEntryRequested.hasListener(A.H.get<object>(callback));
  1986          A.store.Bool(retPtr, _ret);
  1987          return A.H.TRUE;
  1988        } catch (err: any) {
  1989          A.store.Ref(errPtr, err);
  1990          return A.H.FALSE;
  1991        }
  1992      },
  1993      "has_OnExecuteActionRequested": (): heap.Ref<boolean> => {
  1994        if (
  1995          WEBEXT?.fileSystemProvider?.onExecuteActionRequested &&
  1996          "addListener" in WEBEXT?.fileSystemProvider?.onExecuteActionRequested
  1997        ) {
  1998          return A.H.TRUE;
  1999        }
  2000        return A.H.FALSE;
  2001      },
  2002      "func_OnExecuteActionRequested": (fn: Pointer): void => {
  2003        A.store.Ref(fn, WEBEXT.fileSystemProvider.onExecuteActionRequested.addListener);
  2004      },
  2005      "call_OnExecuteActionRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2006        const _ret = WEBEXT.fileSystemProvider.onExecuteActionRequested.addListener(A.H.get<object>(callback));
  2007      },
  2008      "try_OnExecuteActionRequested": (
  2009        retPtr: Pointer,
  2010        errPtr: Pointer,
  2011        callback: heap.Ref<object>
  2012      ): heap.Ref<boolean> => {
  2013        try {
  2014          const _ret = WEBEXT.fileSystemProvider.onExecuteActionRequested.addListener(A.H.get<object>(callback));
  2015          return A.H.TRUE;
  2016        } catch (err: any) {
  2017          A.store.Ref(errPtr, err);
  2018          return A.H.FALSE;
  2019        }
  2020      },
  2021      "has_OffExecuteActionRequested": (): heap.Ref<boolean> => {
  2022        if (
  2023          WEBEXT?.fileSystemProvider?.onExecuteActionRequested &&
  2024          "removeListener" in WEBEXT?.fileSystemProvider?.onExecuteActionRequested
  2025        ) {
  2026          return A.H.TRUE;
  2027        }
  2028        return A.H.FALSE;
  2029      },
  2030      "func_OffExecuteActionRequested": (fn: Pointer): void => {
  2031        A.store.Ref(fn, WEBEXT.fileSystemProvider.onExecuteActionRequested.removeListener);
  2032      },
  2033      "call_OffExecuteActionRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2034        const _ret = WEBEXT.fileSystemProvider.onExecuteActionRequested.removeListener(A.H.get<object>(callback));
  2035      },
  2036      "try_OffExecuteActionRequested": (
  2037        retPtr: Pointer,
  2038        errPtr: Pointer,
  2039        callback: heap.Ref<object>
  2040      ): heap.Ref<boolean> => {
  2041        try {
  2042          const _ret = WEBEXT.fileSystemProvider.onExecuteActionRequested.removeListener(A.H.get<object>(callback));
  2043          return A.H.TRUE;
  2044        } catch (err: any) {
  2045          A.store.Ref(errPtr, err);
  2046          return A.H.FALSE;
  2047        }
  2048      },
  2049      "has_HasOnExecuteActionRequested": (): heap.Ref<boolean> => {
  2050        if (
  2051          WEBEXT?.fileSystemProvider?.onExecuteActionRequested &&
  2052          "hasListener" in WEBEXT?.fileSystemProvider?.onExecuteActionRequested
  2053        ) {
  2054          return A.H.TRUE;
  2055        }
  2056        return A.H.FALSE;
  2057      },
  2058      "func_HasOnExecuteActionRequested": (fn: Pointer): void => {
  2059        A.store.Ref(fn, WEBEXT.fileSystemProvider.onExecuteActionRequested.hasListener);
  2060      },
  2061      "call_HasOnExecuteActionRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2062        const _ret = WEBEXT.fileSystemProvider.onExecuteActionRequested.hasListener(A.H.get<object>(callback));
  2063        A.store.Bool(retPtr, _ret);
  2064      },
  2065      "try_HasOnExecuteActionRequested": (
  2066        retPtr: Pointer,
  2067        errPtr: Pointer,
  2068        callback: heap.Ref<object>
  2069      ): heap.Ref<boolean> => {
  2070        try {
  2071          const _ret = WEBEXT.fileSystemProvider.onExecuteActionRequested.hasListener(A.H.get<object>(callback));
  2072          A.store.Bool(retPtr, _ret);
  2073          return A.H.TRUE;
  2074        } catch (err: any) {
  2075          A.store.Ref(errPtr, err);
  2076          return A.H.FALSE;
  2077        }
  2078      },
  2079      "has_OnGetActionsRequested": (): heap.Ref<boolean> => {
  2080        if (
  2081          WEBEXT?.fileSystemProvider?.onGetActionsRequested &&
  2082          "addListener" in WEBEXT?.fileSystemProvider?.onGetActionsRequested
  2083        ) {
  2084          return A.H.TRUE;
  2085        }
  2086        return A.H.FALSE;
  2087      },
  2088      "func_OnGetActionsRequested": (fn: Pointer): void => {
  2089        A.store.Ref(fn, WEBEXT.fileSystemProvider.onGetActionsRequested.addListener);
  2090      },
  2091      "call_OnGetActionsRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2092        const _ret = WEBEXT.fileSystemProvider.onGetActionsRequested.addListener(A.H.get<object>(callback));
  2093      },
  2094      "try_OnGetActionsRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2095        try {
  2096          const _ret = WEBEXT.fileSystemProvider.onGetActionsRequested.addListener(A.H.get<object>(callback));
  2097          return A.H.TRUE;
  2098        } catch (err: any) {
  2099          A.store.Ref(errPtr, err);
  2100          return A.H.FALSE;
  2101        }
  2102      },
  2103      "has_OffGetActionsRequested": (): heap.Ref<boolean> => {
  2104        if (
  2105          WEBEXT?.fileSystemProvider?.onGetActionsRequested &&
  2106          "removeListener" in WEBEXT?.fileSystemProvider?.onGetActionsRequested
  2107        ) {
  2108          return A.H.TRUE;
  2109        }
  2110        return A.H.FALSE;
  2111      },
  2112      "func_OffGetActionsRequested": (fn: Pointer): void => {
  2113        A.store.Ref(fn, WEBEXT.fileSystemProvider.onGetActionsRequested.removeListener);
  2114      },
  2115      "call_OffGetActionsRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2116        const _ret = WEBEXT.fileSystemProvider.onGetActionsRequested.removeListener(A.H.get<object>(callback));
  2117      },
  2118      "try_OffGetActionsRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2119        try {
  2120          const _ret = WEBEXT.fileSystemProvider.onGetActionsRequested.removeListener(A.H.get<object>(callback));
  2121          return A.H.TRUE;
  2122        } catch (err: any) {
  2123          A.store.Ref(errPtr, err);
  2124          return A.H.FALSE;
  2125        }
  2126      },
  2127      "has_HasOnGetActionsRequested": (): heap.Ref<boolean> => {
  2128        if (
  2129          WEBEXT?.fileSystemProvider?.onGetActionsRequested &&
  2130          "hasListener" in WEBEXT?.fileSystemProvider?.onGetActionsRequested
  2131        ) {
  2132          return A.H.TRUE;
  2133        }
  2134        return A.H.FALSE;
  2135      },
  2136      "func_HasOnGetActionsRequested": (fn: Pointer): void => {
  2137        A.store.Ref(fn, WEBEXT.fileSystemProvider.onGetActionsRequested.hasListener);
  2138      },
  2139      "call_HasOnGetActionsRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2140        const _ret = WEBEXT.fileSystemProvider.onGetActionsRequested.hasListener(A.H.get<object>(callback));
  2141        A.store.Bool(retPtr, _ret);
  2142      },
  2143      "try_HasOnGetActionsRequested": (
  2144        retPtr: Pointer,
  2145        errPtr: Pointer,
  2146        callback: heap.Ref<object>
  2147      ): heap.Ref<boolean> => {
  2148        try {
  2149          const _ret = WEBEXT.fileSystemProvider.onGetActionsRequested.hasListener(A.H.get<object>(callback));
  2150          A.store.Bool(retPtr, _ret);
  2151          return A.H.TRUE;
  2152        } catch (err: any) {
  2153          A.store.Ref(errPtr, err);
  2154          return A.H.FALSE;
  2155        }
  2156      },
  2157      "has_OnGetMetadataRequested": (): heap.Ref<boolean> => {
  2158        if (
  2159          WEBEXT?.fileSystemProvider?.onGetMetadataRequested &&
  2160          "addListener" in WEBEXT?.fileSystemProvider?.onGetMetadataRequested
  2161        ) {
  2162          return A.H.TRUE;
  2163        }
  2164        return A.H.FALSE;
  2165      },
  2166      "func_OnGetMetadataRequested": (fn: Pointer): void => {
  2167        A.store.Ref(fn, WEBEXT.fileSystemProvider.onGetMetadataRequested.addListener);
  2168      },
  2169      "call_OnGetMetadataRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2170        const _ret = WEBEXT.fileSystemProvider.onGetMetadataRequested.addListener(A.H.get<object>(callback));
  2171      },
  2172      "try_OnGetMetadataRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2173        try {
  2174          const _ret = WEBEXT.fileSystemProvider.onGetMetadataRequested.addListener(A.H.get<object>(callback));
  2175          return A.H.TRUE;
  2176        } catch (err: any) {
  2177          A.store.Ref(errPtr, err);
  2178          return A.H.FALSE;
  2179        }
  2180      },
  2181      "has_OffGetMetadataRequested": (): heap.Ref<boolean> => {
  2182        if (
  2183          WEBEXT?.fileSystemProvider?.onGetMetadataRequested &&
  2184          "removeListener" in WEBEXT?.fileSystemProvider?.onGetMetadataRequested
  2185        ) {
  2186          return A.H.TRUE;
  2187        }
  2188        return A.H.FALSE;
  2189      },
  2190      "func_OffGetMetadataRequested": (fn: Pointer): void => {
  2191        A.store.Ref(fn, WEBEXT.fileSystemProvider.onGetMetadataRequested.removeListener);
  2192      },
  2193      "call_OffGetMetadataRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2194        const _ret = WEBEXT.fileSystemProvider.onGetMetadataRequested.removeListener(A.H.get<object>(callback));
  2195      },
  2196      "try_OffGetMetadataRequested": (
  2197        retPtr: Pointer,
  2198        errPtr: Pointer,
  2199        callback: heap.Ref<object>
  2200      ): heap.Ref<boolean> => {
  2201        try {
  2202          const _ret = WEBEXT.fileSystemProvider.onGetMetadataRequested.removeListener(A.H.get<object>(callback));
  2203          return A.H.TRUE;
  2204        } catch (err: any) {
  2205          A.store.Ref(errPtr, err);
  2206          return A.H.FALSE;
  2207        }
  2208      },
  2209      "has_HasOnGetMetadataRequested": (): heap.Ref<boolean> => {
  2210        if (
  2211          WEBEXT?.fileSystemProvider?.onGetMetadataRequested &&
  2212          "hasListener" in WEBEXT?.fileSystemProvider?.onGetMetadataRequested
  2213        ) {
  2214          return A.H.TRUE;
  2215        }
  2216        return A.H.FALSE;
  2217      },
  2218      "func_HasOnGetMetadataRequested": (fn: Pointer): void => {
  2219        A.store.Ref(fn, WEBEXT.fileSystemProvider.onGetMetadataRequested.hasListener);
  2220      },
  2221      "call_HasOnGetMetadataRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2222        const _ret = WEBEXT.fileSystemProvider.onGetMetadataRequested.hasListener(A.H.get<object>(callback));
  2223        A.store.Bool(retPtr, _ret);
  2224      },
  2225      "try_HasOnGetMetadataRequested": (
  2226        retPtr: Pointer,
  2227        errPtr: Pointer,
  2228        callback: heap.Ref<object>
  2229      ): heap.Ref<boolean> => {
  2230        try {
  2231          const _ret = WEBEXT.fileSystemProvider.onGetMetadataRequested.hasListener(A.H.get<object>(callback));
  2232          A.store.Bool(retPtr, _ret);
  2233          return A.H.TRUE;
  2234        } catch (err: any) {
  2235          A.store.Ref(errPtr, err);
  2236          return A.H.FALSE;
  2237        }
  2238      },
  2239      "has_OnMountRequested": (): heap.Ref<boolean> => {
  2240        if (
  2241          WEBEXT?.fileSystemProvider?.onMountRequested &&
  2242          "addListener" in WEBEXT?.fileSystemProvider?.onMountRequested
  2243        ) {
  2244          return A.H.TRUE;
  2245        }
  2246        return A.H.FALSE;
  2247      },
  2248      "func_OnMountRequested": (fn: Pointer): void => {
  2249        A.store.Ref(fn, WEBEXT.fileSystemProvider.onMountRequested.addListener);
  2250      },
  2251      "call_OnMountRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2252        const _ret = WEBEXT.fileSystemProvider.onMountRequested.addListener(A.H.get<object>(callback));
  2253      },
  2254      "try_OnMountRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2255        try {
  2256          const _ret = WEBEXT.fileSystemProvider.onMountRequested.addListener(A.H.get<object>(callback));
  2257          return A.H.TRUE;
  2258        } catch (err: any) {
  2259          A.store.Ref(errPtr, err);
  2260          return A.H.FALSE;
  2261        }
  2262      },
  2263      "has_OffMountRequested": (): heap.Ref<boolean> => {
  2264        if (
  2265          WEBEXT?.fileSystemProvider?.onMountRequested &&
  2266          "removeListener" in WEBEXT?.fileSystemProvider?.onMountRequested
  2267        ) {
  2268          return A.H.TRUE;
  2269        }
  2270        return A.H.FALSE;
  2271      },
  2272      "func_OffMountRequested": (fn: Pointer): void => {
  2273        A.store.Ref(fn, WEBEXT.fileSystemProvider.onMountRequested.removeListener);
  2274      },
  2275      "call_OffMountRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2276        const _ret = WEBEXT.fileSystemProvider.onMountRequested.removeListener(A.H.get<object>(callback));
  2277      },
  2278      "try_OffMountRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2279        try {
  2280          const _ret = WEBEXT.fileSystemProvider.onMountRequested.removeListener(A.H.get<object>(callback));
  2281          return A.H.TRUE;
  2282        } catch (err: any) {
  2283          A.store.Ref(errPtr, err);
  2284          return A.H.FALSE;
  2285        }
  2286      },
  2287      "has_HasOnMountRequested": (): heap.Ref<boolean> => {
  2288        if (
  2289          WEBEXT?.fileSystemProvider?.onMountRequested &&
  2290          "hasListener" in WEBEXT?.fileSystemProvider?.onMountRequested
  2291        ) {
  2292          return A.H.TRUE;
  2293        }
  2294        return A.H.FALSE;
  2295      },
  2296      "func_HasOnMountRequested": (fn: Pointer): void => {
  2297        A.store.Ref(fn, WEBEXT.fileSystemProvider.onMountRequested.hasListener);
  2298      },
  2299      "call_HasOnMountRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2300        const _ret = WEBEXT.fileSystemProvider.onMountRequested.hasListener(A.H.get<object>(callback));
  2301        A.store.Bool(retPtr, _ret);
  2302      },
  2303      "try_HasOnMountRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2304        try {
  2305          const _ret = WEBEXT.fileSystemProvider.onMountRequested.hasListener(A.H.get<object>(callback));
  2306          A.store.Bool(retPtr, _ret);
  2307          return A.H.TRUE;
  2308        } catch (err: any) {
  2309          A.store.Ref(errPtr, err);
  2310          return A.H.FALSE;
  2311        }
  2312      },
  2313      "has_OnMoveEntryRequested": (): heap.Ref<boolean> => {
  2314        if (
  2315          WEBEXT?.fileSystemProvider?.onMoveEntryRequested &&
  2316          "addListener" in WEBEXT?.fileSystemProvider?.onMoveEntryRequested
  2317        ) {
  2318          return A.H.TRUE;
  2319        }
  2320        return A.H.FALSE;
  2321      },
  2322      "func_OnMoveEntryRequested": (fn: Pointer): void => {
  2323        A.store.Ref(fn, WEBEXT.fileSystemProvider.onMoveEntryRequested.addListener);
  2324      },
  2325      "call_OnMoveEntryRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2326        const _ret = WEBEXT.fileSystemProvider.onMoveEntryRequested.addListener(A.H.get<object>(callback));
  2327      },
  2328      "try_OnMoveEntryRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2329        try {
  2330          const _ret = WEBEXT.fileSystemProvider.onMoveEntryRequested.addListener(A.H.get<object>(callback));
  2331          return A.H.TRUE;
  2332        } catch (err: any) {
  2333          A.store.Ref(errPtr, err);
  2334          return A.H.FALSE;
  2335        }
  2336      },
  2337      "has_OffMoveEntryRequested": (): heap.Ref<boolean> => {
  2338        if (
  2339          WEBEXT?.fileSystemProvider?.onMoveEntryRequested &&
  2340          "removeListener" in WEBEXT?.fileSystemProvider?.onMoveEntryRequested
  2341        ) {
  2342          return A.H.TRUE;
  2343        }
  2344        return A.H.FALSE;
  2345      },
  2346      "func_OffMoveEntryRequested": (fn: Pointer): void => {
  2347        A.store.Ref(fn, WEBEXT.fileSystemProvider.onMoveEntryRequested.removeListener);
  2348      },
  2349      "call_OffMoveEntryRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2350        const _ret = WEBEXT.fileSystemProvider.onMoveEntryRequested.removeListener(A.H.get<object>(callback));
  2351      },
  2352      "try_OffMoveEntryRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2353        try {
  2354          const _ret = WEBEXT.fileSystemProvider.onMoveEntryRequested.removeListener(A.H.get<object>(callback));
  2355          return A.H.TRUE;
  2356        } catch (err: any) {
  2357          A.store.Ref(errPtr, err);
  2358          return A.H.FALSE;
  2359        }
  2360      },
  2361      "has_HasOnMoveEntryRequested": (): heap.Ref<boolean> => {
  2362        if (
  2363          WEBEXT?.fileSystemProvider?.onMoveEntryRequested &&
  2364          "hasListener" in WEBEXT?.fileSystemProvider?.onMoveEntryRequested
  2365        ) {
  2366          return A.H.TRUE;
  2367        }
  2368        return A.H.FALSE;
  2369      },
  2370      "func_HasOnMoveEntryRequested": (fn: Pointer): void => {
  2371        A.store.Ref(fn, WEBEXT.fileSystemProvider.onMoveEntryRequested.hasListener);
  2372      },
  2373      "call_HasOnMoveEntryRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2374        const _ret = WEBEXT.fileSystemProvider.onMoveEntryRequested.hasListener(A.H.get<object>(callback));
  2375        A.store.Bool(retPtr, _ret);
  2376      },
  2377      "try_HasOnMoveEntryRequested": (
  2378        retPtr: Pointer,
  2379        errPtr: Pointer,
  2380        callback: heap.Ref<object>
  2381      ): heap.Ref<boolean> => {
  2382        try {
  2383          const _ret = WEBEXT.fileSystemProvider.onMoveEntryRequested.hasListener(A.H.get<object>(callback));
  2384          A.store.Bool(retPtr, _ret);
  2385          return A.H.TRUE;
  2386        } catch (err: any) {
  2387          A.store.Ref(errPtr, err);
  2388          return A.H.FALSE;
  2389        }
  2390      },
  2391      "has_OnOpenFileRequested": (): heap.Ref<boolean> => {
  2392        if (
  2393          WEBEXT?.fileSystemProvider?.onOpenFileRequested &&
  2394          "addListener" in WEBEXT?.fileSystemProvider?.onOpenFileRequested
  2395        ) {
  2396          return A.H.TRUE;
  2397        }
  2398        return A.H.FALSE;
  2399      },
  2400      "func_OnOpenFileRequested": (fn: Pointer): void => {
  2401        A.store.Ref(fn, WEBEXT.fileSystemProvider.onOpenFileRequested.addListener);
  2402      },
  2403      "call_OnOpenFileRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2404        const _ret = WEBEXT.fileSystemProvider.onOpenFileRequested.addListener(A.H.get<object>(callback));
  2405      },
  2406      "try_OnOpenFileRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2407        try {
  2408          const _ret = WEBEXT.fileSystemProvider.onOpenFileRequested.addListener(A.H.get<object>(callback));
  2409          return A.H.TRUE;
  2410        } catch (err: any) {
  2411          A.store.Ref(errPtr, err);
  2412          return A.H.FALSE;
  2413        }
  2414      },
  2415      "has_OffOpenFileRequested": (): heap.Ref<boolean> => {
  2416        if (
  2417          WEBEXT?.fileSystemProvider?.onOpenFileRequested &&
  2418          "removeListener" in WEBEXT?.fileSystemProvider?.onOpenFileRequested
  2419        ) {
  2420          return A.H.TRUE;
  2421        }
  2422        return A.H.FALSE;
  2423      },
  2424      "func_OffOpenFileRequested": (fn: Pointer): void => {
  2425        A.store.Ref(fn, WEBEXT.fileSystemProvider.onOpenFileRequested.removeListener);
  2426      },
  2427      "call_OffOpenFileRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2428        const _ret = WEBEXT.fileSystemProvider.onOpenFileRequested.removeListener(A.H.get<object>(callback));
  2429      },
  2430      "try_OffOpenFileRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2431        try {
  2432          const _ret = WEBEXT.fileSystemProvider.onOpenFileRequested.removeListener(A.H.get<object>(callback));
  2433          return A.H.TRUE;
  2434        } catch (err: any) {
  2435          A.store.Ref(errPtr, err);
  2436          return A.H.FALSE;
  2437        }
  2438      },
  2439      "has_HasOnOpenFileRequested": (): heap.Ref<boolean> => {
  2440        if (
  2441          WEBEXT?.fileSystemProvider?.onOpenFileRequested &&
  2442          "hasListener" in WEBEXT?.fileSystemProvider?.onOpenFileRequested
  2443        ) {
  2444          return A.H.TRUE;
  2445        }
  2446        return A.H.FALSE;
  2447      },
  2448      "func_HasOnOpenFileRequested": (fn: Pointer): void => {
  2449        A.store.Ref(fn, WEBEXT.fileSystemProvider.onOpenFileRequested.hasListener);
  2450      },
  2451      "call_HasOnOpenFileRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2452        const _ret = WEBEXT.fileSystemProvider.onOpenFileRequested.hasListener(A.H.get<object>(callback));
  2453        A.store.Bool(retPtr, _ret);
  2454      },
  2455      "try_HasOnOpenFileRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2456        try {
  2457          const _ret = WEBEXT.fileSystemProvider.onOpenFileRequested.hasListener(A.H.get<object>(callback));
  2458          A.store.Bool(retPtr, _ret);
  2459          return A.H.TRUE;
  2460        } catch (err: any) {
  2461          A.store.Ref(errPtr, err);
  2462          return A.H.FALSE;
  2463        }
  2464      },
  2465      "has_OnReadDirectoryRequested": (): heap.Ref<boolean> => {
  2466        if (
  2467          WEBEXT?.fileSystemProvider?.onReadDirectoryRequested &&
  2468          "addListener" in WEBEXT?.fileSystemProvider?.onReadDirectoryRequested
  2469        ) {
  2470          return A.H.TRUE;
  2471        }
  2472        return A.H.FALSE;
  2473      },
  2474      "func_OnReadDirectoryRequested": (fn: Pointer): void => {
  2475        A.store.Ref(fn, WEBEXT.fileSystemProvider.onReadDirectoryRequested.addListener);
  2476      },
  2477      "call_OnReadDirectoryRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2478        const _ret = WEBEXT.fileSystemProvider.onReadDirectoryRequested.addListener(A.H.get<object>(callback));
  2479      },
  2480      "try_OnReadDirectoryRequested": (
  2481        retPtr: Pointer,
  2482        errPtr: Pointer,
  2483        callback: heap.Ref<object>
  2484      ): heap.Ref<boolean> => {
  2485        try {
  2486          const _ret = WEBEXT.fileSystemProvider.onReadDirectoryRequested.addListener(A.H.get<object>(callback));
  2487          return A.H.TRUE;
  2488        } catch (err: any) {
  2489          A.store.Ref(errPtr, err);
  2490          return A.H.FALSE;
  2491        }
  2492      },
  2493      "has_OffReadDirectoryRequested": (): heap.Ref<boolean> => {
  2494        if (
  2495          WEBEXT?.fileSystemProvider?.onReadDirectoryRequested &&
  2496          "removeListener" in WEBEXT?.fileSystemProvider?.onReadDirectoryRequested
  2497        ) {
  2498          return A.H.TRUE;
  2499        }
  2500        return A.H.FALSE;
  2501      },
  2502      "func_OffReadDirectoryRequested": (fn: Pointer): void => {
  2503        A.store.Ref(fn, WEBEXT.fileSystemProvider.onReadDirectoryRequested.removeListener);
  2504      },
  2505      "call_OffReadDirectoryRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2506        const _ret = WEBEXT.fileSystemProvider.onReadDirectoryRequested.removeListener(A.H.get<object>(callback));
  2507      },
  2508      "try_OffReadDirectoryRequested": (
  2509        retPtr: Pointer,
  2510        errPtr: Pointer,
  2511        callback: heap.Ref<object>
  2512      ): heap.Ref<boolean> => {
  2513        try {
  2514          const _ret = WEBEXT.fileSystemProvider.onReadDirectoryRequested.removeListener(A.H.get<object>(callback));
  2515          return A.H.TRUE;
  2516        } catch (err: any) {
  2517          A.store.Ref(errPtr, err);
  2518          return A.H.FALSE;
  2519        }
  2520      },
  2521      "has_HasOnReadDirectoryRequested": (): heap.Ref<boolean> => {
  2522        if (
  2523          WEBEXT?.fileSystemProvider?.onReadDirectoryRequested &&
  2524          "hasListener" in WEBEXT?.fileSystemProvider?.onReadDirectoryRequested
  2525        ) {
  2526          return A.H.TRUE;
  2527        }
  2528        return A.H.FALSE;
  2529      },
  2530      "func_HasOnReadDirectoryRequested": (fn: Pointer): void => {
  2531        A.store.Ref(fn, WEBEXT.fileSystemProvider.onReadDirectoryRequested.hasListener);
  2532      },
  2533      "call_HasOnReadDirectoryRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2534        const _ret = WEBEXT.fileSystemProvider.onReadDirectoryRequested.hasListener(A.H.get<object>(callback));
  2535        A.store.Bool(retPtr, _ret);
  2536      },
  2537      "try_HasOnReadDirectoryRequested": (
  2538        retPtr: Pointer,
  2539        errPtr: Pointer,
  2540        callback: heap.Ref<object>
  2541      ): heap.Ref<boolean> => {
  2542        try {
  2543          const _ret = WEBEXT.fileSystemProvider.onReadDirectoryRequested.hasListener(A.H.get<object>(callback));
  2544          A.store.Bool(retPtr, _ret);
  2545          return A.H.TRUE;
  2546        } catch (err: any) {
  2547          A.store.Ref(errPtr, err);
  2548          return A.H.FALSE;
  2549        }
  2550      },
  2551      "has_OnReadFileRequested": (): heap.Ref<boolean> => {
  2552        if (
  2553          WEBEXT?.fileSystemProvider?.onReadFileRequested &&
  2554          "addListener" in WEBEXT?.fileSystemProvider?.onReadFileRequested
  2555        ) {
  2556          return A.H.TRUE;
  2557        }
  2558        return A.H.FALSE;
  2559      },
  2560      "func_OnReadFileRequested": (fn: Pointer): void => {
  2561        A.store.Ref(fn, WEBEXT.fileSystemProvider.onReadFileRequested.addListener);
  2562      },
  2563      "call_OnReadFileRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2564        const _ret = WEBEXT.fileSystemProvider.onReadFileRequested.addListener(A.H.get<object>(callback));
  2565      },
  2566      "try_OnReadFileRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2567        try {
  2568          const _ret = WEBEXT.fileSystemProvider.onReadFileRequested.addListener(A.H.get<object>(callback));
  2569          return A.H.TRUE;
  2570        } catch (err: any) {
  2571          A.store.Ref(errPtr, err);
  2572          return A.H.FALSE;
  2573        }
  2574      },
  2575      "has_OffReadFileRequested": (): heap.Ref<boolean> => {
  2576        if (
  2577          WEBEXT?.fileSystemProvider?.onReadFileRequested &&
  2578          "removeListener" in WEBEXT?.fileSystemProvider?.onReadFileRequested
  2579        ) {
  2580          return A.H.TRUE;
  2581        }
  2582        return A.H.FALSE;
  2583      },
  2584      "func_OffReadFileRequested": (fn: Pointer): void => {
  2585        A.store.Ref(fn, WEBEXT.fileSystemProvider.onReadFileRequested.removeListener);
  2586      },
  2587      "call_OffReadFileRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2588        const _ret = WEBEXT.fileSystemProvider.onReadFileRequested.removeListener(A.H.get<object>(callback));
  2589      },
  2590      "try_OffReadFileRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2591        try {
  2592          const _ret = WEBEXT.fileSystemProvider.onReadFileRequested.removeListener(A.H.get<object>(callback));
  2593          return A.H.TRUE;
  2594        } catch (err: any) {
  2595          A.store.Ref(errPtr, err);
  2596          return A.H.FALSE;
  2597        }
  2598      },
  2599      "has_HasOnReadFileRequested": (): heap.Ref<boolean> => {
  2600        if (
  2601          WEBEXT?.fileSystemProvider?.onReadFileRequested &&
  2602          "hasListener" in WEBEXT?.fileSystemProvider?.onReadFileRequested
  2603        ) {
  2604          return A.H.TRUE;
  2605        }
  2606        return A.H.FALSE;
  2607      },
  2608      "func_HasOnReadFileRequested": (fn: Pointer): void => {
  2609        A.store.Ref(fn, WEBEXT.fileSystemProvider.onReadFileRequested.hasListener);
  2610      },
  2611      "call_HasOnReadFileRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2612        const _ret = WEBEXT.fileSystemProvider.onReadFileRequested.hasListener(A.H.get<object>(callback));
  2613        A.store.Bool(retPtr, _ret);
  2614      },
  2615      "try_HasOnReadFileRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2616        try {
  2617          const _ret = WEBEXT.fileSystemProvider.onReadFileRequested.hasListener(A.H.get<object>(callback));
  2618          A.store.Bool(retPtr, _ret);
  2619          return A.H.TRUE;
  2620        } catch (err: any) {
  2621          A.store.Ref(errPtr, err);
  2622          return A.H.FALSE;
  2623        }
  2624      },
  2625      "has_OnRemoveWatcherRequested": (): heap.Ref<boolean> => {
  2626        if (
  2627          WEBEXT?.fileSystemProvider?.onRemoveWatcherRequested &&
  2628          "addListener" in WEBEXT?.fileSystemProvider?.onRemoveWatcherRequested
  2629        ) {
  2630          return A.H.TRUE;
  2631        }
  2632        return A.H.FALSE;
  2633      },
  2634      "func_OnRemoveWatcherRequested": (fn: Pointer): void => {
  2635        A.store.Ref(fn, WEBEXT.fileSystemProvider.onRemoveWatcherRequested.addListener);
  2636      },
  2637      "call_OnRemoveWatcherRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2638        const _ret = WEBEXT.fileSystemProvider.onRemoveWatcherRequested.addListener(A.H.get<object>(callback));
  2639      },
  2640      "try_OnRemoveWatcherRequested": (
  2641        retPtr: Pointer,
  2642        errPtr: Pointer,
  2643        callback: heap.Ref<object>
  2644      ): heap.Ref<boolean> => {
  2645        try {
  2646          const _ret = WEBEXT.fileSystemProvider.onRemoveWatcherRequested.addListener(A.H.get<object>(callback));
  2647          return A.H.TRUE;
  2648        } catch (err: any) {
  2649          A.store.Ref(errPtr, err);
  2650          return A.H.FALSE;
  2651        }
  2652      },
  2653      "has_OffRemoveWatcherRequested": (): heap.Ref<boolean> => {
  2654        if (
  2655          WEBEXT?.fileSystemProvider?.onRemoveWatcherRequested &&
  2656          "removeListener" in WEBEXT?.fileSystemProvider?.onRemoveWatcherRequested
  2657        ) {
  2658          return A.H.TRUE;
  2659        }
  2660        return A.H.FALSE;
  2661      },
  2662      "func_OffRemoveWatcherRequested": (fn: Pointer): void => {
  2663        A.store.Ref(fn, WEBEXT.fileSystemProvider.onRemoveWatcherRequested.removeListener);
  2664      },
  2665      "call_OffRemoveWatcherRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2666        const _ret = WEBEXT.fileSystemProvider.onRemoveWatcherRequested.removeListener(A.H.get<object>(callback));
  2667      },
  2668      "try_OffRemoveWatcherRequested": (
  2669        retPtr: Pointer,
  2670        errPtr: Pointer,
  2671        callback: heap.Ref<object>
  2672      ): heap.Ref<boolean> => {
  2673        try {
  2674          const _ret = WEBEXT.fileSystemProvider.onRemoveWatcherRequested.removeListener(A.H.get<object>(callback));
  2675          return A.H.TRUE;
  2676        } catch (err: any) {
  2677          A.store.Ref(errPtr, err);
  2678          return A.H.FALSE;
  2679        }
  2680      },
  2681      "has_HasOnRemoveWatcherRequested": (): heap.Ref<boolean> => {
  2682        if (
  2683          WEBEXT?.fileSystemProvider?.onRemoveWatcherRequested &&
  2684          "hasListener" in WEBEXT?.fileSystemProvider?.onRemoveWatcherRequested
  2685        ) {
  2686          return A.H.TRUE;
  2687        }
  2688        return A.H.FALSE;
  2689      },
  2690      "func_HasOnRemoveWatcherRequested": (fn: Pointer): void => {
  2691        A.store.Ref(fn, WEBEXT.fileSystemProvider.onRemoveWatcherRequested.hasListener);
  2692      },
  2693      "call_HasOnRemoveWatcherRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2694        const _ret = WEBEXT.fileSystemProvider.onRemoveWatcherRequested.hasListener(A.H.get<object>(callback));
  2695        A.store.Bool(retPtr, _ret);
  2696      },
  2697      "try_HasOnRemoveWatcherRequested": (
  2698        retPtr: Pointer,
  2699        errPtr: Pointer,
  2700        callback: heap.Ref<object>
  2701      ): heap.Ref<boolean> => {
  2702        try {
  2703          const _ret = WEBEXT.fileSystemProvider.onRemoveWatcherRequested.hasListener(A.H.get<object>(callback));
  2704          A.store.Bool(retPtr, _ret);
  2705          return A.H.TRUE;
  2706        } catch (err: any) {
  2707          A.store.Ref(errPtr, err);
  2708          return A.H.FALSE;
  2709        }
  2710      },
  2711      "has_OnTruncateRequested": (): heap.Ref<boolean> => {
  2712        if (
  2713          WEBEXT?.fileSystemProvider?.onTruncateRequested &&
  2714          "addListener" in WEBEXT?.fileSystemProvider?.onTruncateRequested
  2715        ) {
  2716          return A.H.TRUE;
  2717        }
  2718        return A.H.FALSE;
  2719      },
  2720      "func_OnTruncateRequested": (fn: Pointer): void => {
  2721        A.store.Ref(fn, WEBEXT.fileSystemProvider.onTruncateRequested.addListener);
  2722      },
  2723      "call_OnTruncateRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2724        const _ret = WEBEXT.fileSystemProvider.onTruncateRequested.addListener(A.H.get<object>(callback));
  2725      },
  2726      "try_OnTruncateRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2727        try {
  2728          const _ret = WEBEXT.fileSystemProvider.onTruncateRequested.addListener(A.H.get<object>(callback));
  2729          return A.H.TRUE;
  2730        } catch (err: any) {
  2731          A.store.Ref(errPtr, err);
  2732          return A.H.FALSE;
  2733        }
  2734      },
  2735      "has_OffTruncateRequested": (): heap.Ref<boolean> => {
  2736        if (
  2737          WEBEXT?.fileSystemProvider?.onTruncateRequested &&
  2738          "removeListener" in WEBEXT?.fileSystemProvider?.onTruncateRequested
  2739        ) {
  2740          return A.H.TRUE;
  2741        }
  2742        return A.H.FALSE;
  2743      },
  2744      "func_OffTruncateRequested": (fn: Pointer): void => {
  2745        A.store.Ref(fn, WEBEXT.fileSystemProvider.onTruncateRequested.removeListener);
  2746      },
  2747      "call_OffTruncateRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2748        const _ret = WEBEXT.fileSystemProvider.onTruncateRequested.removeListener(A.H.get<object>(callback));
  2749      },
  2750      "try_OffTruncateRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2751        try {
  2752          const _ret = WEBEXT.fileSystemProvider.onTruncateRequested.removeListener(A.H.get<object>(callback));
  2753          return A.H.TRUE;
  2754        } catch (err: any) {
  2755          A.store.Ref(errPtr, err);
  2756          return A.H.FALSE;
  2757        }
  2758      },
  2759      "has_HasOnTruncateRequested": (): heap.Ref<boolean> => {
  2760        if (
  2761          WEBEXT?.fileSystemProvider?.onTruncateRequested &&
  2762          "hasListener" in WEBEXT?.fileSystemProvider?.onTruncateRequested
  2763        ) {
  2764          return A.H.TRUE;
  2765        }
  2766        return A.H.FALSE;
  2767      },
  2768      "func_HasOnTruncateRequested": (fn: Pointer): void => {
  2769        A.store.Ref(fn, WEBEXT.fileSystemProvider.onTruncateRequested.hasListener);
  2770      },
  2771      "call_HasOnTruncateRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2772        const _ret = WEBEXT.fileSystemProvider.onTruncateRequested.hasListener(A.H.get<object>(callback));
  2773        A.store.Bool(retPtr, _ret);
  2774      },
  2775      "try_HasOnTruncateRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2776        try {
  2777          const _ret = WEBEXT.fileSystemProvider.onTruncateRequested.hasListener(A.H.get<object>(callback));
  2778          A.store.Bool(retPtr, _ret);
  2779          return A.H.TRUE;
  2780        } catch (err: any) {
  2781          A.store.Ref(errPtr, err);
  2782          return A.H.FALSE;
  2783        }
  2784      },
  2785      "has_OnUnmountRequested": (): heap.Ref<boolean> => {
  2786        if (
  2787          WEBEXT?.fileSystemProvider?.onUnmountRequested &&
  2788          "addListener" in WEBEXT?.fileSystemProvider?.onUnmountRequested
  2789        ) {
  2790          return A.H.TRUE;
  2791        }
  2792        return A.H.FALSE;
  2793      },
  2794      "func_OnUnmountRequested": (fn: Pointer): void => {
  2795        A.store.Ref(fn, WEBEXT.fileSystemProvider.onUnmountRequested.addListener);
  2796      },
  2797      "call_OnUnmountRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2798        const _ret = WEBEXT.fileSystemProvider.onUnmountRequested.addListener(A.H.get<object>(callback));
  2799      },
  2800      "try_OnUnmountRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2801        try {
  2802          const _ret = WEBEXT.fileSystemProvider.onUnmountRequested.addListener(A.H.get<object>(callback));
  2803          return A.H.TRUE;
  2804        } catch (err: any) {
  2805          A.store.Ref(errPtr, err);
  2806          return A.H.FALSE;
  2807        }
  2808      },
  2809      "has_OffUnmountRequested": (): heap.Ref<boolean> => {
  2810        if (
  2811          WEBEXT?.fileSystemProvider?.onUnmountRequested &&
  2812          "removeListener" in WEBEXT?.fileSystemProvider?.onUnmountRequested
  2813        ) {
  2814          return A.H.TRUE;
  2815        }
  2816        return A.H.FALSE;
  2817      },
  2818      "func_OffUnmountRequested": (fn: Pointer): void => {
  2819        A.store.Ref(fn, WEBEXT.fileSystemProvider.onUnmountRequested.removeListener);
  2820      },
  2821      "call_OffUnmountRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2822        const _ret = WEBEXT.fileSystemProvider.onUnmountRequested.removeListener(A.H.get<object>(callback));
  2823      },
  2824      "try_OffUnmountRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2825        try {
  2826          const _ret = WEBEXT.fileSystemProvider.onUnmountRequested.removeListener(A.H.get<object>(callback));
  2827          return A.H.TRUE;
  2828        } catch (err: any) {
  2829          A.store.Ref(errPtr, err);
  2830          return A.H.FALSE;
  2831        }
  2832      },
  2833      "has_HasOnUnmountRequested": (): heap.Ref<boolean> => {
  2834        if (
  2835          WEBEXT?.fileSystemProvider?.onUnmountRequested &&
  2836          "hasListener" in WEBEXT?.fileSystemProvider?.onUnmountRequested
  2837        ) {
  2838          return A.H.TRUE;
  2839        }
  2840        return A.H.FALSE;
  2841      },
  2842      "func_HasOnUnmountRequested": (fn: Pointer): void => {
  2843        A.store.Ref(fn, WEBEXT.fileSystemProvider.onUnmountRequested.hasListener);
  2844      },
  2845      "call_HasOnUnmountRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2846        const _ret = WEBEXT.fileSystemProvider.onUnmountRequested.hasListener(A.H.get<object>(callback));
  2847        A.store.Bool(retPtr, _ret);
  2848      },
  2849      "try_HasOnUnmountRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2850        try {
  2851          const _ret = WEBEXT.fileSystemProvider.onUnmountRequested.hasListener(A.H.get<object>(callback));
  2852          A.store.Bool(retPtr, _ret);
  2853          return A.H.TRUE;
  2854        } catch (err: any) {
  2855          A.store.Ref(errPtr, err);
  2856          return A.H.FALSE;
  2857        }
  2858      },
  2859      "has_OnWriteFileRequested": (): heap.Ref<boolean> => {
  2860        if (
  2861          WEBEXT?.fileSystemProvider?.onWriteFileRequested &&
  2862          "addListener" in WEBEXT?.fileSystemProvider?.onWriteFileRequested
  2863        ) {
  2864          return A.H.TRUE;
  2865        }
  2866        return A.H.FALSE;
  2867      },
  2868      "func_OnWriteFileRequested": (fn: Pointer): void => {
  2869        A.store.Ref(fn, WEBEXT.fileSystemProvider.onWriteFileRequested.addListener);
  2870      },
  2871      "call_OnWriteFileRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2872        const _ret = WEBEXT.fileSystemProvider.onWriteFileRequested.addListener(A.H.get<object>(callback));
  2873      },
  2874      "try_OnWriteFileRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2875        try {
  2876          const _ret = WEBEXT.fileSystemProvider.onWriteFileRequested.addListener(A.H.get<object>(callback));
  2877          return A.H.TRUE;
  2878        } catch (err: any) {
  2879          A.store.Ref(errPtr, err);
  2880          return A.H.FALSE;
  2881        }
  2882      },
  2883      "has_OffWriteFileRequested": (): heap.Ref<boolean> => {
  2884        if (
  2885          WEBEXT?.fileSystemProvider?.onWriteFileRequested &&
  2886          "removeListener" in WEBEXT?.fileSystemProvider?.onWriteFileRequested
  2887        ) {
  2888          return A.H.TRUE;
  2889        }
  2890        return A.H.FALSE;
  2891      },
  2892      "func_OffWriteFileRequested": (fn: Pointer): void => {
  2893        A.store.Ref(fn, WEBEXT.fileSystemProvider.onWriteFileRequested.removeListener);
  2894      },
  2895      "call_OffWriteFileRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2896        const _ret = WEBEXT.fileSystemProvider.onWriteFileRequested.removeListener(A.H.get<object>(callback));
  2897      },
  2898      "try_OffWriteFileRequested": (retPtr: Pointer, errPtr: Pointer, callback: heap.Ref<object>): heap.Ref<boolean> => {
  2899        try {
  2900          const _ret = WEBEXT.fileSystemProvider.onWriteFileRequested.removeListener(A.H.get<object>(callback));
  2901          return A.H.TRUE;
  2902        } catch (err: any) {
  2903          A.store.Ref(errPtr, err);
  2904          return A.H.FALSE;
  2905        }
  2906      },
  2907      "has_HasOnWriteFileRequested": (): heap.Ref<boolean> => {
  2908        if (
  2909          WEBEXT?.fileSystemProvider?.onWriteFileRequested &&
  2910          "hasListener" in WEBEXT?.fileSystemProvider?.onWriteFileRequested
  2911        ) {
  2912          return A.H.TRUE;
  2913        }
  2914        return A.H.FALSE;
  2915      },
  2916      "func_HasOnWriteFileRequested": (fn: Pointer): void => {
  2917        A.store.Ref(fn, WEBEXT.fileSystemProvider.onWriteFileRequested.hasListener);
  2918      },
  2919      "call_HasOnWriteFileRequested": (retPtr: Pointer, callback: heap.Ref<object>): void => {
  2920        const _ret = WEBEXT.fileSystemProvider.onWriteFileRequested.hasListener(A.H.get<object>(callback));
  2921        A.store.Bool(retPtr, _ret);
  2922      },
  2923      "try_HasOnWriteFileRequested": (
  2924        retPtr: Pointer,
  2925        errPtr: Pointer,
  2926        callback: heap.Ref<object>
  2927      ): heap.Ref<boolean> => {
  2928        try {
  2929          const _ret = WEBEXT.fileSystemProvider.onWriteFileRequested.hasListener(A.H.get<object>(callback));
  2930          A.store.Bool(retPtr, _ret);
  2931          return A.H.TRUE;
  2932        } catch (err: any) {
  2933          A.store.Ref(errPtr, err);
  2934          return A.H.FALSE;
  2935        }
  2936      },
  2937      "has_Unmount": (): heap.Ref<boolean> => {
  2938        if (WEBEXT?.fileSystemProvider && "unmount" in WEBEXT?.fileSystemProvider) {
  2939          return A.H.TRUE;
  2940        }
  2941        return A.H.FALSE;
  2942      },
  2943      "func_Unmount": (fn: Pointer): void => {
  2944        A.store.Ref(fn, WEBEXT.fileSystemProvider.unmount);
  2945      },
  2946      "call_Unmount": (retPtr: Pointer, options: Pointer): void => {
  2947        const options_ffi = {};
  2948  
  2949        options_ffi["fileSystemId"] = A.load.Ref(options + 0, undefined);
  2950  
  2951        const _ret = WEBEXT.fileSystemProvider.unmount(options_ffi);
  2952        A.store.Ref(retPtr, _ret);
  2953      },
  2954      "try_Unmount": (retPtr: Pointer, errPtr: Pointer, options: Pointer): heap.Ref<boolean> => {
  2955        try {
  2956          const options_ffi = {};
  2957  
  2958          options_ffi["fileSystemId"] = A.load.Ref(options + 0, undefined);
  2959  
  2960          const _ret = WEBEXT.fileSystemProvider.unmount(options_ffi);
  2961          A.store.Ref(retPtr, _ret);
  2962          return A.H.TRUE;
  2963        } catch (err: any) {
  2964          A.store.Ref(errPtr, err);
  2965          return A.H.FALSE;
  2966        }
  2967      },
  2968    };
  2969  });