/**
 * Zig C++ Compiler Integration
 *
 * Compiles generated C++ code to native binaries using Zig
 */
export interface CompileOptions {
    /** Input C++ files (generated code) */
    sources: Map<string, string>;
    /** Output binary path */
    output: string;
    /** Memory mode: 'gc' or 'ownership' */
    mode: 'gc' | 'ownership';
    /** Target triple (e.g., 'x86_64-linux-gnu', 'wasm32-wasi') */
    target?: string;
    /** Optimization level: 0-3 or 's' (size) or 'z' (size aggressive) */
    optimize?: '0' | '1' | '2' | '3' | 's' | 'z';
    /** Build directory */
    buildDir?: string;
    /** Vendor directory (for dependencies) */
    vendorDir?: string;
    /** Enable debug symbols */
    debug?: boolean;
    /** Enable source maps (embeds #line directives in C++) */
    sourceMap?: boolean;
    /** Additional include paths */
    includePaths?: string[];
    /** Additional compiler flags */
    cxxFlags?: string[];
    /** Additional linker flags */
    ldFlags?: string[];
}
export interface CompileResult {
    success: boolean;
    outputPath?: string;
    diagnostics: string[];
    buildTime?: number;
}
export declare class ZigCompiler {
    private buildDir;
    private vendorDir;
    private cacheDir;
    constructor(buildDir?: string, vendorDir?: string);
    compile(options: CompileOptions): Promise<CompileResult>;
    private ensureDirectories;
    private writeSources;
    private compileVendoredDep;
    private compileGeneratedCode;
    private link;
    private isCached;
    private saveCacheInfo;
    private hashFile;
    private runZigCC;
    private runZigCXX;
    private runCommand;
    /**
     * Check if Zig is available on the system
     */
    static checkZigAvailable(): Promise<boolean>;
    /**
     * Get Zig version
     */
    static getZigVersion(): Promise<string>;
}
//# sourceMappingURL=zig-compiler.d.ts.map