import { SDK } from "../../sdk"; import { ethers, BigNumber } from "ethers"; import { TokenGateConfig } from '../Edition'; export declare type DropConfig = { maxTokens: number | BigNumber; tokenPrice: BigNumber; maxTokensPerOwner: number; presaleMerkleRoot: string | null; presaleStart: number; presaleEnd: number | BigNumber; saleStart: number; saleEnd: number | BigNumber; tokenGate: TokenGateConfig | null; }; export declare type DropMap = { tokenIds: number[]; tokenIdDropIds: number[]; dropIds: number[]; drops: DropConfig[]; }; export declare const DropMapNull: { tokenIds: never[]; tokenIdDropIds: never[]; dropIds: never[]; drops: never[]; }; declare const _default: { deploy: (sdk: SDK, name: string, symbol: string, hasAdjustableCaps: boolean, isSoulbound: boolean, startTokenId: number, endTokenId: number, royaltyBPS: number, feeManager: string, payoutAddress: string, currencyOracle: string, contractURI: string, metadataURI: string, defaultDrop: DropConfig, dropOverrides: DropMap | null, onTxPending?: Function | undefined, onTxReceipt?: Function | undefined) => Promise; getContract: (sdk: SDK, address: string) => Promise; }; export default _default;