import { SmartContract } from '../smart-contract/smartContract.js'; import { SmartContractLib } from '../smart-contract/smartContractLib.js'; /** * @ignore * The scrypt.index.json file generated by @opcat-labs/cli-opcat */ export type ScryptIndexJson = { scryptBase: string; bindings: { /** * The symbol of the binding, contract name or library name */ symbol: string; /** * The path of the .scrypt file */ path: string; /** * The md5 of lockingScript * exist when the file is a contract */ md5?: string; /** * The state type of the contract * exist when the file is a stateful contract */ stateType?: string; }[]; }; type ContractOrLib = new (...args: any[]) => SmartContract | SmartContractLib; /** @ignore */ export declare function calcArtifactHexMD5(artifactHex: string): string; /** * Check the integrity of the contracts: * * When compiling the contract, @opcat-labs/cli-opcat will generate the scrypt.index.json file, we will use this file to check the the artifact files are consistent with the scrypt.index.json file. * You should add the scrypt.index.json file to version control tools like git. * * @note: make sure you have call loadArtifacts() before calling this function. * @ignore * @param scryptIndexJson The scrypt.index.json file content generated by @opcat-labs/cli-opcat * @param contractClasses The contract classes to check */ export declare function checkIntegrity(scryptIndexJson: ScryptIndexJson, contractClasses: ContractOrLib[]): void; export {}; //# sourceMappingURL=checkIntegrity.d.ts.map