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

     1  import { importModule, Application, heap, Pointer } from "@ffi";
     2  
     3  importModule("plat/js/webext/enterprise/platformkeysprivate", (A: Application) => {
     4    const WEBEXT = typeof globalThis.browser === "undefined" ? globalThis.chrome : globalThis.browser;
     5  
     6    return {
     7      "has_ChallengeMachineKey": (): heap.Ref<boolean> => {
     8        if (WEBEXT?.enterprise?.platformKeysPrivate && "challengeMachineKey" in WEBEXT?.enterprise?.platformKeysPrivate) {
     9          return A.H.TRUE;
    10        }
    11        return A.H.FALSE;
    12      },
    13      "func_ChallengeMachineKey": (fn: Pointer): void => {
    14        A.store.Ref(fn, WEBEXT.enterprise.platformKeysPrivate.challengeMachineKey);
    15      },
    16      "call_ChallengeMachineKey": (retPtr: Pointer, challenge: heap.Ref<object>): void => {
    17        const _ret = WEBEXT.enterprise.platformKeysPrivate.challengeMachineKey(A.H.get<object>(challenge));
    18        A.store.Ref(retPtr, _ret);
    19      },
    20      "try_ChallengeMachineKey": (retPtr: Pointer, errPtr: Pointer, challenge: heap.Ref<object>): heap.Ref<boolean> => {
    21        try {
    22          const _ret = WEBEXT.enterprise.platformKeysPrivate.challengeMachineKey(A.H.get<object>(challenge));
    23          A.store.Ref(retPtr, _ret);
    24          return A.H.TRUE;
    25        } catch (err: any) {
    26          A.store.Ref(errPtr, err);
    27          return A.H.FALSE;
    28        }
    29      },
    30      "has_ChallengeUserKey": (): heap.Ref<boolean> => {
    31        if (WEBEXT?.enterprise?.platformKeysPrivate && "challengeUserKey" in WEBEXT?.enterprise?.platformKeysPrivate) {
    32          return A.H.TRUE;
    33        }
    34        return A.H.FALSE;
    35      },
    36      "func_ChallengeUserKey": (fn: Pointer): void => {
    37        A.store.Ref(fn, WEBEXT.enterprise.platformKeysPrivate.challengeUserKey);
    38      },
    39      "call_ChallengeUserKey": (retPtr: Pointer, challenge: heap.Ref<object>, registerKey: heap.Ref<boolean>): void => {
    40        const _ret = WEBEXT.enterprise.platformKeysPrivate.challengeUserKey(
    41          A.H.get<object>(challenge),
    42          registerKey === A.H.TRUE
    43        );
    44        A.store.Ref(retPtr, _ret);
    45      },
    46      "try_ChallengeUserKey": (
    47        retPtr: Pointer,
    48        errPtr: Pointer,
    49        challenge: heap.Ref<object>,
    50        registerKey: heap.Ref<boolean>
    51      ): heap.Ref<boolean> => {
    52        try {
    53          const _ret = WEBEXT.enterprise.platformKeysPrivate.challengeUserKey(
    54            A.H.get<object>(challenge),
    55            registerKey === A.H.TRUE
    56          );
    57          A.store.Ref(retPtr, _ret);
    58          return A.H.TRUE;
    59        } catch (err: any) {
    60          A.store.Ref(errPtr, err);
    61          return A.H.FALSE;
    62        }
    63      },
    64    };
    65  });