dop-stick
Version:
Source control tooling for versionable-upgradeable smart contracts
35 lines • 1.16 kB
TypeScript
import { ethers } from 'ethers';
import { LibraryReference } from '../../types/library';
export interface LibraryConfig {
name: string;
address?: string;
bytecode?: string;
abi?: any[];
dependencies?: string[];
}
interface LibraryDeploymentResult {
name: string;
address: string;
deploymentHash?: string;
}
export declare class LibraryManager {
private deployedLibraries;
private libraryConfigs;
private provider;
private signer;
private timeline;
constructor(provider: ethers.providers.Provider, signer: ethers.Signer, libraries?: Record<string, LibraryConfig>);
resolveLibraries(requiredLibraries: string[]): Promise<Record<string, string>>;
private resolveLibrary;
private deployLibrary;
private linkLibrary;
/**
* Deploy a library using a specific wallet
* @param lib Library reference to deploy
* @param wallet Wallet to use for deployment
* @returns Promise<LibraryDeploymentResult>
*/
deployLibraryWithWallet(lib: LibraryReference, wallet: ethers.Wallet): Promise<LibraryDeploymentResult>;
}
export {};
//# sourceMappingURL=libraryManager.d.ts.map