///
///
import { BN } from '@project-serum/anchor';
import { Connection, PublicKey } from '@solana/web3.js';
export declare class Creator {
address: PublicKey;
verified: number;
share: number;
constructor(args: {
address: PublicKey;
verified: number;
share: number;
});
}
export declare enum MetadataKey {
Uninitialized = 0,
MetadataV1 = 4,
EditionV1 = 1,
MasterEditionV1 = 2,
MasterEditionV2 = 6,
EditionMarker = 7
}
export declare class MasterEditionV2 {
key: MetadataKey;
supply: BN;
maxSupply?: BN;
constructor(args: {
key: MetadataKey;
supply: BN;
maxSupply?: BN;
});
}
export declare class EditionMarker {
key: MetadataKey;
ledger: number[];
constructor(args: {
key: MetadataKey;
ledger: number[];
});
}
export declare class Edition {
key: MetadataKey;
parent: PublicKey;
edition: BN;
constructor(args: {
key: MetadataKey;
parent: PublicKey;
edition: BN;
});
}
export declare class Data {
name: string;
symbol: string;
uri: string;
sellerFeeBasisPoints: number;
creators: Creator[] | null;
constructor(args: {
name: string;
symbol: string;
uri: string;
sellerFeeBasisPoints: number;
creators: Creator[] | null;
});
}
export declare class Metadata {
key: MetadataKey;
updateAuthority: PublicKey;
mint: PublicKey;
data: Data;
primarySaleHappened: boolean;
isMutable: boolean;
masterEdition?: PublicKey;
edition?: PublicKey;
editionNonce: number;
tokenStandard: number;
collection: Collection;
constructor(args: {
updateAuthority: PublicKey;
mint: PublicKey;
data: Data;
primarySaleHappened: boolean;
isMutable: boolean;
masterEdition?: PublicKey;
edition?: PublicKey;
editionNonce: number;
tokenStandard: number;
collection: Collection;
});
}
export declare class Collection {
verified: boolean;
key: PublicKey;
constructor(args: {
verified: boolean;
key: PublicKey;
});
}
export declare const parseMasterEditionV2: (buffer: Buffer) => MasterEditionV2 | null;
export declare const parseMetadata: (buffer: Buffer) => Metadata;
export declare const parseEditionMarker: (buffer: Buffer) => EditionMarker;
export declare const parseNftUpdateAuthority: (metadataAddress: PublicKey, connection: Connection) => Promise;
export declare const parseEdition: (buffer: Buffer) => Edition | null;