/**
 * Native Module Handler for Desktop Bundling
 * Manages native Node.js modules that can't be bundled
 */
export interface NativeModuleConfig {
    /**
     * List of native modules to copy to resources
     */
    modules: string[];
    /**
     * Source node_modules directory
     */
    sourceDir: string;
    /**
     * Target resources directory
     */
    targetDir: string;
    /**
     * Whether to rebuild native modules for target platform
     */
    rebuild?: boolean;
    /**
     * Electron version (if rebuilding for Electron)
     */
    electronVersion?: string;
}
/**
 * Default native modules that commonly need special handling
 */
export declare const COMMON_NATIVE_MODULES: string[];
/**
 * Copy native modules to resources directory
 */
export declare function copyNativeModules(config: NativeModuleConfig): Promise<void>;
/**
 * Rebuild native modules for target platform
 */
export declare function rebuildNativeModules(targetDir: string, electronVersion?: string): Promise<void>;
/**
 * Create a loader script that sets up paths for native modules
 */
export declare function createNativeModuleLoader(outputPath: string, nativeModules: string[]): Promise<void>;
/**
 * Check if a module is a native module
 */
export declare function isNativeModule(moduleName: string): Promise<boolean>;
/**
 * Detect all native modules in a project
 */
export declare function detectNativeModules(projectDir: string): Promise<string[]>;
/**
 * Bundle configuration that handles native modules
 */
export interface BundleWithNativeModulesOptions {
    entryPoint: string;
    outputPath: string;
    nativeModules?: string[];
    autoDetect?: boolean;
    rebuild?: boolean;
    electronVersion?: string;
}
/**
 * Create a bundle that properly handles native modules
 */
export declare function bundleWithNativeModules(options: BundleWithNativeModulesOptions): Promise<void>;
//# sourceMappingURL=native-modules.d.ts.map