UNPKG

dop-stick

Version:

Source control tooling for versionable-upgradeable smart contracts

33 lines 1.52 kB
import { Signer, Contract, BigNumber } from 'ethers'; import { DopStickConfig } from '../types/config'; import { DiamondCutActionType, FacetCut } from '../types/diamond'; import { ExtendedFacetCut } from '../types/upgrade'; export interface CollisionDetail { selector: string; signature: string; existingFacet?: string; } export interface CollisionCheckResult { hasCollisions: boolean; collisions: CollisionDetail[]; } export declare class DiamondHelper { private static instance; private static readonly DEFAULT_LOUPE_FUNCTIONS; private static readonly DEFAULT_CUT_FUNCTION; private static readonly DEFAULT_OWNER_FUNCTION; private static readonly GAS_BUFFER_PERCENTAGE; private constructor(); static getInstance(): DiamondHelper; private getLoupeFunctions; private getFunctionName; checkSelectorCollisions(selectors: string[], action: DiamondCutActionType, config: DopStickConfig): Promise<CollisionCheckResult>; validateDiamondOwnership(signer: Signer, config?: DopStickConfig): Promise<boolean>; estimateUpgradeGas(cuts: FacetCut[], config: DopStickConfig): Promise<BigNumber>; private getFunctionSignature; validateFacetAddresses(addresses: string[], config?: DopStickConfig): Promise<boolean>; getUpgradeService(signer: Signer, config: DopStickConfig): Promise<Contract>; formatCutsForDiamond(cuts: ExtendedFacetCut[]): FacetCut[]; } export declare const diamondHelper: DiamondHelper; //# sourceMappingURL=diamondHelpers.d.ts.map