@matterlabs/hardhat-zksync-solc
Version:
Hardhat plugin to compile smart contracts for the ZKsync network
40 lines • 2.82 kB
TypeScript
import { HardhatRuntimeEnvironment, SolcUserConfig } from 'hardhat/types';
import { CompilerOutputSelection, MissingLibrary, ZkSolcConfig } from './types';
import { SolcConfigData } from './config-update';
export declare function filterSupportedOutputSelections(outputSelection: CompilerOutputSelection, zkCompilerVersion: string): CompilerOutputSelection;
export declare function updateDefaultCompilerConfig(solcConfigData: SolcConfigData, zksolc: ZkSolcConfig): void;
export declare function updateBreakableCompilerConfig(solcConfigData: SolcConfigData, zksolc: ZkSolcConfig, latestEraVersion: string, userConfigCompilers: SolcUserConfig[] | Map<string, SolcUserConfig>): void;
export declare function isBreakableCompilerVersion(zksolcVersion: string): boolean;
export declare function zeroxlify(hex: string): string;
export declare function isURL(url: string): boolean;
export declare function sha1(str: string): string;
export declare function saltFromUrl(url: string): string;
export declare function getZksolcUrl(repo: string, version: string): string;
export declare function getZkVmSolcUrl(repo: string, version: string): string;
export declare function pluralize(n: number, singular: string, plural?: string): string;
export declare function getVersionComponents(version: string): number[];
export declare function isVersionForDeprecation(version: string): boolean;
export declare function generateSolcJSExecutableCode(solcJsPath: string, workingDir: string): string;
export declare function findMissingLibraries(zkSolcOutput: any): Set<string>;
export declare function mapMissingLibraryDependencies(zkSolcOutput: any, missingLibraries: Set<string>): MissingLibrary[];
export declare const writeLibrariesToFile: (filePath: string, libraries: any[]) => Promise<void>;
export declare function download(url: string, filePath: string, userAgent: string, timeoutMillis?: number, extraHeaders?: {
[name: string]: string;
}): Promise<void>;
export declare function getLatestRelease(owner: string, repo: string, userAgent: string, defaultValue: string, tagPrefix?: string, timeout?: number): Promise<any>;
export declare function saveDataToFile(data: any, targetPath: string): Promise<void>;
export declare function getZkVmNormalizedVersion(solcVersion: string, zkVmSolcVersion: string): string;
export declare function getLatestEraVersion(): Promise<string>;
export declare function generateFQN(sourceName: string, contractName: string): string;
export declare function getLibraryLink(hre: HardhatRuntimeEnvironment, libraries: {
[contractName: string]: string;
} | undefined, contractZbinPath: string): Promise<{
contractZbinPath: string;
libraries?: undefined;
} | {
contractZbinPath: string;
libraries: {
[contractName: string]: string;
};
}>;
//# sourceMappingURL=utils.d.ts.map