///
import { Creator, MetadataArgs } from '@metaplex-foundation/mpl-bubblegum';
import { MerkleTree, ValidDepthSizePair } from '@solana/spl-account-compression';
import { Connection, Keypair, PublicKey } from '@solana/web3.js';
export declare const DEFAULT_DEPTH_SIZE: ValidDepthSizePair;
export declare const initCollection: ({ conn, owner, sellerFeeBasisPoints, }: {
conn: Connection;
owner: Keypair;
sellerFeeBasisPoints: number;
}) => Promise<{
collectionMint: PublicKey;
collectionMetadataAccount: PublicKey;
collectionMasterEditionAccount: PublicKey;
}>;
export declare const makeTree: ({ conn, treeOwner, depthSizePair, canopyDepth, }: {
conn: Connection;
treeOwner: Keypair;
depthSizePair?: ValidDepthSizePair | undefined;
canopyDepth?: number | undefined;
}) => Promise<{
merkleTree: PublicKey;
}>;
export declare const makeCNftMeta: ({ nrCreators, sellerFeeBasisPoints, collectionMint, randomizeName, unverifiedCollection, creators, }: {
nrCreators?: number | undefined;
sellerFeeBasisPoints?: number | undefined;
collectionMint?: PublicKey | undefined;
randomizeName?: boolean | undefined;
unverifiedCollection?: boolean | undefined;
creators: Creator[];
}) => MetadataArgs;
export declare const mintCNft: ({ conn, treeOwner, receiver, metadata, merkleTree, unverifiedCollection, }: {
conn: Connection;
treeOwner: Keypair;
receiver: PublicKey;
metadata: MetadataArgs;
merkleTree: PublicKey;
unverifiedCollection?: boolean | undefined;
}) => Promise;
export declare const makeLeaf: ({ index, owner, delegate, merkleTree, metadata, }: {
index: number;
owner: PublicKey;
delegate?: PublicKey | undefined;
merkleTree: PublicKey;
metadata: MetadataArgs;
}) => Promise<{
leaf: Buffer;
assetId: PublicKey;
}>;
export declare const verifyCNft: ({ conn, payer, index, owner, delegate, merkleTree, metadata, proof, }: {
conn: Connection;
payer: Keypair;
index: number;
owner: PublicKey;
delegate?: PublicKey | undefined;
merkleTree: PublicKey;
metadata: MetadataArgs;
proof: Buffer[];
}) => Promise<{
leaf: Buffer;
assetId: PublicKey;
}>;
export declare const verifyCNftCreator: ({ conn, payer, index, owner, delegate, merkleTree, memTree, metadata, proof, verifiedCreator, }: {
conn: Connection;
payer: Keypair;
index: number;
owner: PublicKey;
delegate?: PublicKey | undefined;
merkleTree: PublicKey;
metadata: MetadataArgs;
proof: Buffer[];
verifiedCreator: Keypair;
memTree: MerkleTree;
}) => Promise<{
metadata: MetadataArgs;
leaf: Buffer;
assetId: PublicKey;
}>;
export type TestCnft = {
index: number;
assetId: PublicKey;
metadata: MetadataArgs;
leaf: Buffer;
};
export declare const makeTestNfts: ({ conn, payer, cnftMints, cnftMintsToTraderA, pnftMints, pnftMintsToTraderA, nrCreators, depthSizePair, canopyDepth, randomizeName, verifiedCreator, collectionless, unverifiedCollection, sellerFeeBasisPoints, ruleSetAddr, }: {
conn: Connection;
payer: Keypair;
cnftMints?: number | undefined;
cnftMintsToTraderA?: number | undefined;
pnftMints?: number | undefined;
pnftMintsToTraderA?: number | undefined;
nrCreators?: number | undefined;
depthSizePair?: ValidDepthSizePair | undefined;
canopyDepth?: number | undefined;
randomizeName?: boolean | undefined;
verifiedCreator?: Keypair | undefined;
collectionless?: boolean | undefined;
unverifiedCollection?: boolean | undefined;
sellerFeeBasisPoints?: number | undefined;
ruleSetAddr?: PublicKey | undefined;
}) => Promise<{
merkleTree: PublicKey;
memTree: MerkleTree;
leaves: TestCnft[];
treeOwner: Keypair;
traderA: Keypair;
traderB: Keypair;
collectionMint: PublicKey;
traderACnfts: TestCnft[];
traderBCnfts: TestCnft[];
traderAPnfts: {
mint: PublicKey;
metadata: PublicKey;
ata: PublicKey;
otherAta: PublicKey;
masterEdition: PublicKey;
collectionInfo: {
mint: PublicKey;
metadata: PublicKey;
masterEdition: PublicKey;
} | undefined;
}[];
traderBPnfts: {
mint: PublicKey;
metadata: PublicKey;
ata: PublicKey;
otherAta: PublicKey;
masterEdition: PublicKey;
collectionInfo: {
mint: PublicKey;
metadata: PublicKey;
masterEdition: PublicKey;
} | undefined;
}[];
creators: {
address: PublicKey;
verified: boolean;
share: number;
}[];
}>;
export declare const calcCreatorFees: (amount: number, sellerFeeBasisPoints: number) => number;
export declare const expectHasNftAsync: (conn: Connection, mint: PublicKey, owner: PublicKey) => Promise;
//# sourceMappingURL=nfts.d.ts.map