grantPermission<TModularSmartAccount extends undefined | ModularSmartAccount>( 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[]; },): 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}`; },> 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[];
}Optional
chainId?: bigint
Optional
erc7739Policies?: ERC7739Data
Optional
permitERC4337Paymaster?: boolean
redeemer: `0x${string}`
Optional
salt?: `0x${string}`
Optional
sessionValidator?: `0x${string}`
Optional
sessionValidatorInitData?: `0x${string}`
Optional
userOpPolicies?: 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}`;
},
>
Granter Address