import { type NoirCompiledContract } from '../noir/index.js'; import { type ContractArtifact, type FunctionArtifact } from './abi.js'; /** * Serializes a contract artifact to a buffer for storage. * @param artifact - Artifact to serialize. * @returns A buffer. */ export declare function contractArtifactToBuffer(artifact: ContractArtifact): Buffer; /** * Deserializes a contract artifact from storage. * @param buffer - Buffer to deserialize. * @returns Deserialized artifact. */ export declare function contractArtifactFromBuffer(buffer: Buffer): ContractArtifact; /** * Gets nargo build output and returns a valid contract artifact instance. * Does not include public bytecode, apart from the public_dispatch function. * @param input - Input object as generated by nargo compile. * @returns A valid contract artifact instance. */ export declare function loadContractArtifact(input: NoirCompiledContract): ContractArtifact; /** * Gets nargo build output and returns a valid contract artifact instance. * Differs from loadContractArtifact() by retaining all bytecode. * @param input - Input object as generated by nargo compile. * @returns A valid contract artifact instance. */ export declare function loadContractArtifactForPublic(input: NoirCompiledContract): ContractArtifact; /** Function from a noir contract compilation artifact */ type NoirCompiledContractFunction = NoirCompiledContract['functions'][number]; /** * Returns true if we should retain bytecode */ export declare function retainBytecode(input: NoirCompiledContractFunction | FunctionArtifact): boolean; export {}; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RfYXJ0aWZhY3QuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hYmkvY29udHJhY3RfYXJ0aWZhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQU9MLEtBQUssb0JBQW9CLEVBQzFCLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxFQU1MLEtBQUssZ0JBQWdCLEVBSXJCLEtBQUssZ0JBQWdCLEVBS3RCLE1BQU0sVUFBVSxDQUFDO0FBRWxCOzs7O0dBSUc7QUFDSCx3QkFBZ0Isd0JBQXdCLENBQUMsUUFBUSxFQUFFLGdCQUFnQixHQUFHLE1BQU0sQ0FFM0U7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLDBCQUEwQixDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsZ0JBQWdCLENBRTNFO0FBRUQ7Ozs7O0dBS0c7QUFDSCx3QkFBZ0Isb0JBQW9CLENBQUMsS0FBSyxFQUFFLG9CQUFvQixHQUFHLGdCQUFnQixDQVNsRjtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLDZCQUE2QixDQUFDLEtBQUssRUFBRSxvQkFBb0IsR0FBRyxnQkFBZ0IsQ0FFM0Y7QUErREQseURBQXlEO0FBQ3pELEtBQUssNEJBQTRCLEdBQUcsb0JBQW9CLENBQUMsV0FBVyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7QUFFOUU7O0dBRUc7QUFDSCx3QkFBZ0IsY0FBYyxDQUFDLEtBQUssRUFBRSw0QkFBNEIsR0FBRyxnQkFBZ0IsR0FBRyxPQUFPLENBSTlGIn0=