- Calling
.on(chain)is required after each convenience method to set the target chain, except forrequireLitAction. - Use
validate()during development to catch operator ordering and empty builder issues. - For advanced conditions, prefer
unifiedAccs()when you already have canonical unified condition objects.
Installation
Examples
Using the convenience helpers
Using the raw conditions
Reference
Functions
createAccBuilder()Builder for Access Control Conditions (ACC) supporting EVM, Solana, Cosmos, and Lit Actions with boolean logic, grouping, and helpers.
Parameters
No parameters.Returns
object
Fluent builder with convenience methods, boolean operators, grouping, and utilities.
Custom Access Control Conditions
Manually supply the access control conditions instead of using the chainable helper methods.AccBuilder
AccBuilder
AccBuilder
AccBuilder
AccBuilder
EVM Conditions
ChainableEvmBuilder
Require ETH balance on a chain.
ChainableEvmBuilder
Require ERC‑20 token balance.
ChainableEvmBuilder
Require ERC‑721 or ERC‑1155 ownership.
ChainableEvmBuilder
Verify that :userAddress equals the provided address.
ChainableEvmBuilder
Compare latest block timestamp using comparator (default ’>=’).
ChainableEvmBuilder
Check membership for MolochDAOv2.1.
ChainableEvmBuilder
Check POAP event ownership.
Solana Conditions
ChainableSolBuilder
ChainableSolBuilder
ChainableSolBuilder
Cosmos Conditions
ChainableCosmosBuilder
ChainableCosmosBuilder
ChainableCosmosBuilder
Lit Action Conditions
AccBuilder
Create a condition validated by a Lit Action.
Boolean operations
AccBuilder
AccBuilder
Build and utilities
AccessControlConditions
Finalise and return the conditions array (unformatted; canonical formatting occurs downstream).
{ valid: boolean; errors: string[] }
Promise<string>
Generate a human-readable explanation of the built conditions.