import type { FileAccessObject, Logger, ModuleInfo } from '../types'; import { type SolcInputDescription, type SolcOutput } from './solc'; import type { ResolvedConfig } from '@evmts/config'; import type { Node } from 'solidity-ast/node'; export declare const compileContract: (filePath: string, basedir: string, config: ResolvedConfig['compiler'], includeAst: TIncludeAsts, fao: FileAccessObject, logger: Logger) => Promise<{ artifacts: SolcOutput['contracts'][string] | undefined; modules: Record<'string', ModuleInfo>; asts: TIncludeAsts extends true ? Record : undefined; solcInput: SolcInputDescription; solcOutput: SolcOutput; }>;