import IOperationCompressor from "./IOperationCompressor"; import { Bundle, Operation, PublicKey } from "./signer"; import { BLSExpanderDelegator } from "../typechain-types"; /** * Produces compressed bundles that can be passed to `BLSExpanderDelegator.run` * instead of `VerificationGateway.processBundle`. * * The compression of operations is delegated to other compressors that you * inject using `.addCompressor`. For each operation of the bundle, these * compressors are tried in the order they were added, and the first one that * succeeds is used. Note that `expanderIndex` is unrelated to this order - it * just needs to match the index that the corresponding expander contract is * registered at in BLSExpanderDelegator. */ export default class BundleCompressor { blsExpanderDelegator: BLSExpanderDelegator; compressors: [number, IOperationCompressor][]; constructor(blsExpanderDelegator: BLSExpanderDelegator); /** Add an operation compressor. */ addCompressor(compressor: IOperationCompressor): Promise; /** Compresses a single operation. */ compressOperation(blsPublicKey: PublicKey, operation: Operation): Promise; /** Compresses a bundle. */ compress(bundle: Bundle): Promise; } //# sourceMappingURL=BundleCompressor.d.ts.map