/**
 * ETH and WETH related types and constants
 */
/** Native ETH address (zero address) */
export const NATIVE_ETH_ADDRESS = '0x0000000000000000000000000000000000000000';
/**
 * Check if an address is native ETH (zero address)
 */
export function isNativeEth(address) {
    return address.toLowerCase() === NATIVE_ETH_ADDRESS.toLowerCase();
}
/**
 * Shield operation steps for ETH flow
 */
export var ShieldStep;
(function (ShieldStep) {
    /** Wrapping ETH to WETH */
    ShieldStep["wrapping"] = "wrapping";
    /** Approving token spend */
    ShieldStep["approving"] = "approving";
    /** Executing shield transaction */
    ShieldStep["shielding"] = "shielding";
    /** Registering with indexer */
    ShieldStep["registering"] = "registering";
    /** Waiting for compliance check */
    ShieldStep["compliance"] = "compliance";
})(ShieldStep || (ShieldStep = {}));
/**
 * Unshield operation steps for ETH flow
 */
export var UnshieldStep;
(function (UnshieldStep) {
    /** Fetching notes and proofs */
    UnshieldStep["preparing"] = "preparing";
    /** Signing transaction */
    UnshieldStep["signing"] = "signing";
    /** Generating ZK proof */
    UnshieldStep["proving"] = "proving";
    /** Executing unshield transaction */
    UnshieldStep["unshielding"] = "unshielding";
    /** Unwrapping WETH to ETH */
    UnshieldStep["unwrapping"] = "unwrapping";
})(UnshieldStep || (UnshieldStep = {}));
//# sourceMappingURL=eth.js.map