@kingdomstudios/hardhat-diamond-abi
Version:
Hardhat plugin to combine multiple ABIs into a Diamond ABI artifact. Added support for multiple diamonds.
33 lines (32 loc) • 1.25 kB
TypeScript
import type { HardhatRuntimeEnvironment, RunSuperFunction, TaskArguments } from "hardhat/types";
import { CompilationJob } from "hardhat/internal/solidity/compilation-job";
import { ResolvedFile } from "hardhat/internal/solidity/resolver";
export declare const PLUGIN_NAME = "hardhat-diamond-abi";
export declare const PLUGIN_VERSION: string;
declare type ArtifactsEmittedPerFile = Array<{
file: ResolvedFile;
artifactsEmitted: string[];
}>;
declare type ArtifactsEmittedPerJob = Array<{
compilationJob: CompilationJob;
artifactsEmittedPerFile: ArtifactsEmittedPerFile;
}>;
declare module "hardhat/types/config" {
interface DiamondAbiConfig {
name: string;
include?: string[];
exclude?: string[];
filter?: (abiElement: any, index: number, abi: any[], fullyQualifiedName: string) => boolean;
strict?: boolean;
}
interface HardhatUserConfig {
diamondAbi?: DiamondAbiConfig[];
}
interface HardhatConfig {
diamondAbi: DiamondAbiConfig[];
}
}
export declare function generateDiamondAbi(args: TaskArguments, hre: HardhatRuntimeEnvironment, runSuper: RunSuperFunction<TaskArguments>): Promise<{
artifactsEmittedPerJob: ArtifactsEmittedPerJob;
}>;
export {};