import { BigNumber, BigNumberish, ethers, Signer } from "ethers"; import { BLSPublicKeyRegistry } from "../typechain-types"; import SignerOrProvider from "./helpers/SignerOrProvider"; import SafeSingletonFactory from "./SafeSingletonFactory"; import { PublicKey } from "./signer"; /** * A wrapper around the `BLSPublicKeyRegistry` contract to provide a more * ergonomic interface, especially for `reverseLookup`. */ export default class BlsPublicKeyRegistryWrapper { registry: BLSPublicKeyRegistry; constructor(registry: BLSPublicKeyRegistry); /** * Deploys a new `BLSPublicKeyRegistry` contract the traditional way. */ static deployNew(signer: Signer): Promise; /** * Uses Gnosis Safe's factory to get an `BLSPublicKeyRegistry` contract at a * predetermined address. Deploys if it doesn't already exist. */ static connectOrDeploy(signerOrFactory: Signer | SafeSingletonFactory, salt?: ethers.utils.BytesLike): Promise; /** * Uses Gnosis Safe's factory to get an `BLSPublicKeyRegistry` contract at a * predetermined address. Returns undefined if it doesn't exist. */ static connectIfDeployed(signerOrProvider: SignerOrProvider, salt?: ethers.utils.BytesLike): Promise; /** * Uses an id to lookup a public key, the same way that happens on chain. */ lookup(id: BigNumberish): Promise; /** * Uses a public key to lookup an id - the reverse of what happens on chain, * by making use of the indexed `BLSPublicKeyRegistered` event. */ reverseLookup(blsPublicKey: PublicKey): Promise; /** * Registers a public key and returns the id. */ register(blsPublicKey: PublicKey): Promise; /** * Registers a public key if it hasn't already been registered, and returns * the id that was assigned to it. */ registerIfNeeded(blsPublicKey: PublicKey): Promise; } //# sourceMappingURL=BlsPublicKeyRegistryWrapper.d.ts.map