import { Compiler as CompilerApi } from '../../apis/compiler/index.js'; import CompilerBase, { Aci, CompileResult } from './Base.js'; import { Encoded } from '../../utils/encoder.js'; /** * Contract Compiler over HTTP * * This class include api call's related to contract compiler functionality. * @category contract * @example CompilerHttp('COMPILER_URL') */ export default class CompilerHttp extends CompilerBase { readonly api: CompilerApi; /** * @param compilerUrl - Url for compiler API * @param options - Options * @param options.ignoreVersion - Print warning instead of throwing exception if compiler version * is not supported, use with caution */ constructor(compilerUrl: string, { ignoreVersion }?: { ignoreVersion?: boolean; }); compileBySourceCode(sourceCode: string, fileSystem?: Record): CompileResult; compile(path: string): CompileResult; generateAciBySourceCode(sourceCode: string, fileSystem?: Record): Promise; generateAci(path: string): Promise; validateBySourceCode(bytecode: Encoded.ContractBytearray, sourceCode: string, fileSystem?: Record): Promise; validate(bytecode: Encoded.ContractBytearray, path: string): Promise; version(): Promise; }