Function grantPermission

  • Type Parameters

    Parameters

    • nexusClient: Client<Transport, undefined | Chain, TModularSmartAccount>
    • parameters: {
          account?: TModularSmartAccount;
          actions: ActionData[];
          chainId?: bigint;
          erc7739Policies?: ERC7739Data;
          permitERC4337Paymaster?: boolean;
          redeemer: `0x${string}`;
          salt?: `0x${string}`;
          sessionValidator?: `0x${string}`;
          sessionValidatorInitData?: `0x${string}`;
          userOpPolicies?: PolicyData[];
      }
      • Optionalaccount?: TModularSmartAccount
      • actions: ActionData[]
      • OptionalchainId?: bigint
      • Optionalerc7739Policies?: ERC7739Data
      • OptionalpermitERC4337Paymaster?: boolean
      • redeemer: `0x${string}`

        Granter Address

      • Optionalsalt?: `0x${string}`
      • OptionalsessionValidator?: `0x${string}`
      • OptionalsessionValidatorInitData?: `0x${string}`
      • OptionaluserOpPolicies?: PolicyData[]

    Returns Promise<
        {
            enableSessionData: {
                accountType: AccountType;
                enableSession: {
                    chainDigestIndex: number;
                    hashesAndChainIds: { chainId: bigint; sessionDigest: `0x${string}` }[];
                    permissionEnableSig: `0x${string}`;
                    sessionToEnable: Session;
                };
                validator: `0x${string}`;
            };
            mode: `0x${string}`;
            permissionId: `0x${string}`;
            signature: `0x${string}`;
        },
    >