import { ethers, Signer } from "ethers"; import { ERC20Expander, AggregatorUtilities } from "../typechain-types"; import AddressRegistryWrapper from "./AddressRegistryWrapper"; import BlsPublicKeyRegistryWrapper from "./BlsPublicKeyRegistryWrapper"; import SignerOrProvider from "./helpers/SignerOrProvider"; import IOperationCompressor from "./IOperationCompressor"; import SafeSingletonFactory from "./SafeSingletonFactory"; import { Operation, PublicKey } from "./signer/types"; export default class Erc20Compressor implements IOperationCompressor { erc20Expander: ERC20Expander; blsPublicKeyRegistry: BlsPublicKeyRegistryWrapper; addressRegistry: AddressRegistryWrapper; aggregatorUtilities: AggregatorUtilities; private constructor(); static wrap(erc20Expander: ERC20Expander): Promise; static deployNew(signer: Signer): Promise; static connectOrDeploy(signerOrFactory: Signer | SafeSingletonFactory, salt?: ethers.utils.BytesLike): Promise; static connectIfDeployed(signerOrProvider: SignerOrProvider, salt?: ethers.utils.BytesLike): Promise; getExpanderAddress(): string; compress(blsPublicKey: PublicKey, operation: Operation): Promise; private compressFunctionCall; private compressTransfer; private compressTransferFrom; private compressApprove; private compressMint; private compressAddress; } //# sourceMappingURL=Erc20Compressor.d.ts.map