import { BigNumber, BytesLike, ContractTransaction, PopulatedTransaction } from 'ethers'; import { CollectionContract } from '../..'; import type { Signerish, WriteOverrides } from '../types'; import { ContractFunction } from './features'; declare const LazyMintPartitions: { v1: "lazymint/ICedarNFTLazyMint.sol:ICedarNFTLazyMintV0"[]; v2: ("lazymint/ILazyMint.sol:ICedarLazyMintV0" | "lazymint/ILazyMint.sol:IRestrictedLazyMintV0" | "lazymint/ILazyMint.sol:IRestrictedLazyMintV1" | "lazymint/ICedarLazyMint.sol:ICedarLazyMintV0" | "lazymint/ICedarLazyMint.sol:IRestrictedLazyMintV0" | "lazymint/ICedarNFTLazyMint.sol:ICedarNFTLazyMintV1" | "lazymint/ICedarSFTLazyMint.sol:ICedarSFTLazyMintV0")[]; }; type LazyMintPartitions = typeof LazyMintPartitions; declare const LazyMintInterfaces: ("lazymint/ILazyMint.sol:ICedarLazyMintV0" | "lazymint/ILazyMint.sol:IRestrictedLazyMintV0" | "lazymint/ILazyMint.sol:IRestrictedLazyMintV1" | "lazymint/ICedarLazyMint.sol:ICedarLazyMintV0" | "lazymint/ICedarLazyMint.sol:IRestrictedLazyMintV0" | "lazymint/ICedarNFTLazyMint.sol:ICedarNFTLazyMintV1" | "lazymint/ICedarSFTLazyMint.sol:ICedarSFTLazyMintV0" | "lazymint/ICedarNFTLazyMint.sol:ICedarNFTLazyMintV0")[]; type LazyMintInterfaces = (typeof LazyMintInterfaces)[number]; export type LazyMintCallArgs = [signer: Signerish, mint: MintAgs, overrides?: WriteOverrides]; export type LazyMintResponse = ContractTransaction; export type MintAgs = { amount: BigNumber; baseURI: string; encryptedBaseURI?: BytesLike; }; export declare class LazyMint extends ContractFunction { readonly functionName = "lazyMint"; constructor(base: CollectionContract); execute(...args: LazyMintCallArgs): Promise; lazyMint(signer: Signerish, { amount, baseURI, encryptedBaseURI }: MintAgs, overrides?: WriteOverrides): Promise; estimateGas(signer: Signerish, { amount, baseURI, encryptedBaseURI }: MintAgs, overrides?: WriteOverrides): Promise; populateTransaction({ amount, baseURI, encryptedBaseURI }: MintAgs, overrides?: WriteOverrides): Promise; } export declare const lazyMint: (new (base: CollectionContract) => ((signer: Signerish, mint: MintAgs, overrides?: WriteOverrides | undefined) => Promise) & LazyMint) & ((base: CollectionContract) => ((signer: Signerish, mint: MintAgs, overrides?: WriteOverrides | undefined) => Promise) & LazyMint); export {};