import { Hex } from 'viem'; /** * Compute the SHA-256 hashlock from a secret preimage. * * Matches the on-chain validation: `sha256(abi.encodePacked(s))` where `s` is a `bytes32`. * `abi.encodePacked(bytes32)` is just the raw 32 bytes — no ABI padding. * * @param secret - 0x-prefixed bytes32 secret (66 hex chars) * @returns 0x-prefixed bytes32 SHA-256 hash * @throws if secret is not exactly 32 bytes */ export declare function computeHashlock(secret: Hex): Hex; /** * Validate that a secret's SHA-256 hash matches the expected hashlock. * * Use this for client-side pre-validation before sending the activation * transaction to avoid wasting gas on a contract revert. * * @param secret - 0x-prefixed bytes32 secret (66 hex chars) * @param hashlock - 0x-prefixed bytes32 expected hashlock from the vault * @returns true if SHA-256(secret) matches the hashlock * @throws if secret or hashlock is not exactly 32 bytes */ export declare function validateSecretAgainstHashlock(secret: Hex, hashlock: Hex): boolean; //# sourceMappingURL=index.d.ts.map