///
import * as web3 from '@solarti/web3.js';
import * as beet from '@miraplex/beet';
import * as beetMiraland from '@miraplex/beet-miraland';
import { Key } from '../types/Key';
import { Data } from '../types/Data';
import { TokenStandard } from '../types/TokenStandard';
import { Collection } from '../types/Collection';
import { Uses } from '../types/Uses';
import { CollectionDetails } from '../types/CollectionDetails';
import { ProgrammableConfig } from '../types/ProgrammableConfig';
export type MetadataArgs = {
key: Key;
updateAuthority: web3.PublicKey;
mint: web3.PublicKey;
data: Data;
primarySaleHappened: boolean;
isMutable: boolean;
editionNonce: beet.COption;
tokenStandard: beet.COption;
collection: beet.COption;
uses: beet.COption;
collectionDetails: beet.COption;
programmableConfig: beet.COption;
};
export declare class Metadata implements MetadataArgs {
readonly key: Key;
readonly updateAuthority: web3.PublicKey;
readonly mint: web3.PublicKey;
readonly data: Data;
readonly primarySaleHappened: boolean;
readonly isMutable: boolean;
readonly editionNonce: beet.COption;
readonly tokenStandard: beet.COption;
readonly collection: beet.COption;
readonly uses: beet.COption;
readonly collectionDetails: beet.COption;
readonly programmableConfig: beet.COption;
private constructor();
static fromArgs(args: MetadataArgs): Metadata;
static fromAccountInfo(accountInfo: web3.AccountInfo, offset?: number): [Metadata, number];
static fromAccountAddress(connection: web3.Connection, address: web3.PublicKey, commitmentOrConfig?: web3.Commitment | web3.GetAccountInfoConfig): Promise;
static gpaBuilder(programId?: web3.PublicKey): beetMiraland.GpaBuilder;
static deserialize(buf: Buffer, offset?: number): [Metadata, number];
serialize(): [Buffer, number];
static byteSize(args: MetadataArgs): number;
static getMinimumBalanceForRentExemption(args: MetadataArgs, connection: web3.Connection, commitment?: web3.Commitment): Promise;
pretty(): {
key: string;
updateAuthority: string;
mint: string;
data: Data;
primarySaleHappened: boolean;
isMutable: boolean;
editionNonce: number;
tokenStandard: TokenStandard;
collection: Collection;
uses: Uses;
collectionDetails: {
__kind: "V1";
} & Omit<{
size: beet.bignum;
}, "void">;
programmableConfig: {
__kind: "V1";
} & Omit<{
ruleSet: web3.PublicKey;
}, "void">;
};
}
export declare const metadataBeet: beet.FixableBeetStruct;