interface CapacityCreditsReq {
    capacityTokenId?: string;
    dAppOwnerWallet: SignerLike;
    delegateeAddresses?: string[];
    domain?: string;
    expiration?: string;
    statement?: string;
    uses?: string;
}

Properties

capacityTokenId?: string
  1. Provided with values: Scopes the delegation to specific NFTs identified by the IDs in the array. The function will only consider the NFTs whose IDs are listed.
  2. NOT Provided: All NFTs owned by the user are considered eligible under the delegation. The delegation applies universally to all NFTs the user owns.
dAppOwnerWallet: SignerLike
delegateeAddresses?: string[]
  1. Provided: Restricts the use of the delegation to the addresses listed in the array. Only users whose addresses are included can utilize the delegated capabilities.
  2. NOT Provided: The delegation is universally applicable to anyone. There are no restrictions on who can use the delegated capabilities.
  3. Empty Array: No one is allowed to use the delegated capabilities since there are no valid user addresses specified.
domain?: string
expiration?: string
statement?: string
uses?: string
  1. Provided: Sets a limit on the number of times the delegation can be used. The function enforces this limit and prevents use beyond it.
  2. NOT Provided: There is no limit on the number of times the delegation can be used.
  3. Empty Array: Theoretically, an empty value for uses would mean no uses are possible, effectively disabling the delegation, but typically this scenario should either not be allowed by schema/logic or treated as zero, which also disables the delegation.